Facebook açık kaynak Horizon: büyük ölçekli ürün ve hizmetler için ilk öğrenme platformu

  • Horizon, büyük ölçekli üretim ortamlarında sistemleri optimize etmek için uygulamalı güçlendirme öğrenimi (RL) kullanan ilk uçtan uca açık kaynaklı platformdur.
  • Bu sürümde bulunan iş akışı ve algoritmalar, açık bir çerçeve (PyTorch 1.0, Caffe2 ve Spark) üzerine inşa edilmiştir, böylece RL'yi büyük ölçekte kullanan herkes Horizon kullanabilir.
  • Geçtiğimiz yıl, Horizon'u M önerilerini özelleştirmeye yardımcı olmak, daha anlamlı bildirimler göndermek ve video akışı kalitesini optimize etmek dahil olmak üzere birçok uygulamada dahili olarak kullandık.

Bugün, milyarlarca insan tarafından kullanılan ürün ve hizmetleri optimize etmek için RL'yi kullanan uçtan uca bir uygulama güçlendirme öğrenme platformu olan kaynaklı Horizon'u açıyoruz. Bu platformu, RL'nin araştırma alanındaki artan etkisi ile üretim alanındaki tarihsel olarak dar uygulama aralığı arasındaki boşluğu kapatmak için geliştirdik. Geçtiğimiz yıl, platformun RL'nin karar temelli yaklaşımını büyük ölçekli uygulamalara uygulama becerisini geliştirmek için Horizon'u Facebook'ta devreye aldık. İnsanlar gelişmiş öğrenme uygulamaları geliştiriyor olsalar da Horizon, üretim için ilk açık kaynaklı RL platformudur.

Performansı iyileştirmek için geri bildirimi kullanan çeşitli pekiştirmeli öğrenme projeleri üzerinde çalışıyor olsak da, Horizon'un ana odağı RL'yi büyük sistemlere uygulamaktır. Bu sürüm, üretim ortamı modellerinin ön işleme, eğitim ve dışa aktarımı için simülasyon ortamları ve dağıtılmış platformlar için iş akışlarını içerir. Platform, daha alakalı bildirimler gönderme, video akışlarının bit hızını optimize etme ve Messenger'da M önerilerini iyileştirme dahil olmak üzere Facebook'a şimdiden performans avantajları getirdi. Bununla birlikte, Horizon'un açık tasarımı ve araç seti, alandaki diğerlerine, özellikle de RL'yi büyük miktarda bilgiden stratejiler öğrenmek için kullanmak isteyen şirketler ve araştırma ekiplerine de fayda sağlayabilir. Horizon, yalnızca RL alanına yaptığımız sürekli yatırımları kanıtlamakla kalmıyor, aynı zamanda bu umut verici yapay zeka araştırma alanının artık pratik uygulamalara da uygulanabileceğini kanıtlıyor.

Büyük ölçekli karar verme: Horizon, RL'yi üretim ortamına nasıl uygular?

Makine öğrenimi (ML) sistemleri genellikle tahminler üretir, ancak daha sonra mühendislerin bu tahminleri stratejilere (yani eylem stratejilerine) dönüştürmesi gerekir. Öte yandan, RL tarafından oluşturulan sistem kararlar alabilir, harekete geçebilir ve ardından geri bildirime göre ayarlayabilir. Bu yöntem, manuel strateji formülasyonuna gerek kalmadan bir dizi kararın optimize edilmesini mümkün kılar. Örneğin, RL sistemi, diğer ML sistemlerinin tahminine ve video arabelleğinin durumuna bağlı olarak oynatılan belirli bir video için doğrudan yüksek bir bit hızı veya düşük bir bit hızı seçebilir.

RL'nin strateji optimizasyon yetenekleri araştırmada iyi sonuçlar vermiş olsa da, yapay zeka topluluğunun üretim ortamında çok farklı gerçek ihtiyaçlarla başa çıkmak için bu modelleri kullanması zordur. Horizon ile, tamamen farklı iki uygulama türünü birbirine nasıl bağlayacağımızla ilgileniyoruz: karmaşık ancak nihai olarak sınırlı bir araştırma simülatörü ortamı; doğası gereği gürültülü, seyrek ve rastgele dağıtılan bir ML tabanlı strateji optimizasyon sistemi veri. Sınırlı sayıda öngörülebilir ve tekrarlanabilir kurallara yanıt verebilen oyunlarda RL tabanlı robotların aksine, gerçek dünya senaryolarının taklit edilmesi zordur ve geri bildirimin konuşlandırılmış koda dahil edilmesi daha zordur. Kontrollü deneysel bir ortamla karşılaştırıldığında, Herhangi bir değişiklik genellikle daha fazla özen gerektirir.

Derin öğrenmenin sinir ağlarının uygulamasını tamamen değiştirmesi gibi, Horizon gibi projeler de bilim insanlarının ve mühendislerin bir etki yaratmak için strateji optimizasyonunu kullanarak üretim ortamlarına RL'yi nasıl uyguladıklarını tanımlayabilir. Horizon, özellikle, özellik normalleştirme, dağıtılmış eğitim, büyük ölçekli dağıtım ve hizmetler, binlerce farklı özellik türü ve dağıtımına sahip veri kümeleri ve yüksek boyutlu ayrık sürekli eylem alanları dahil olmak üzere üretim ortamına özgü sorunları dikkate alır.

Horizon'un boru hattı üç bileşenden oluşur:

(1) Binlerce CPU üzerinde çalışan zaman ekseni üretimi;

(2) Birden fazla GPU'da eğitim;

(3) Binlerce makineyi de kapsayan hizmet.

Bu ardışık düzen, Horizon'un Facebook'un veri kümesine genişlemesine izin veriyor. Strateji öğrenimi için (örneğin, OpenAI Gym kullanarak) Horizon, verileri kapalı bir döngüde eğitim sürecine doğrudan sağlamayı seçebilir.

Horizon aynı zamanda RL sistemlerini büyük ölçekte oluşturmanın ve dağıtmanın benzersiz zorluklarını da ele alıyor. RL genellikle çevrimiçi olarak eğitilir.Sistem rastgele seçilen eylemlerle başlar ve ardından gerçek zamanlı olarak güncellenir. Bu sistemlerin Facebook üzerindeki ölçeği ve etkisi düşünüldüğünde, bu tür bir rastgelelik ve gerçek zamanlı güncellemeler şu anda bir seçenek değil. Bunun yerine, modelimiz bir ürün mühendisi tarafından tasarlanan bir strateji üzerine eğitimle başladı. Bu modeller, geçmiş kararlarda RL modelinin ne yapacağını tahmin etmek için politika dışı yöntemler ve karşı olgusal politika değerlendirmesi (CPE) kullanılarak çevrimdışı eğitilmelidir. CPE sonuçları kabul edildikten sonra, sonuç bilgilerini toplamak için RL modelini küçük bir deneyde devreye alacağız. İlginç bir şekilde, önceki nispeten kararlı sistemin aksine, RL sisteminin zaman içinde öğrenmeye ve gelişmeye devam edeceğini gördük.

Endüstri veri kümeleri genellikle milyarlarca kayıt ve keyfi dağıtım ve yüksek boyutlu ayrık sürekli eylem uzayına sahip binlerce durum özelliği içerir. Araştırma ve gözlem yoluyla, geleneksel derin ağ ile karşılaştırıldığında, RL modelinin uygulamasının gürültüye ve normalleştirilmemiş verilere daha duyarlı olduğunu bulduk. Horizon, bu durum ve eylem özelliklerini paralel olarak önceden işlemek için Apache Spark'ı kullanır ve Spark ardışık düzenimiz de açık kaynak sürümüne dahildir. Eğitim verilerini önceden işledikten sonra, grafik işleme birimini normalleştirmek ve eğitmek için PyTorch tabanlı algoritmalar kullanıyoruz.

Horizon tek bir GPU veya CPU üzerinde çalışabilse de, platformun tasarımı büyük kümelere odaklanır. Dağıtılmış eğitim aynı anda birden fazla GPU üzerinde gerçekleştirilir ve mühendislerin sorunları çözmek ve daha hızlı yineleme yapmak için milyonlarca örnek kullanmasına olanak tanır Onların modeli. Dağıtılmış eğitim için PyTorch'ta veri paralelliği ve dağıtılmış veri paralelliği kullanıyoruz. Bu sürüm, derin Q ağı (DQN), parametreli DQN ve derin deterministik politika gradyan (DDPG) modellerini içerir. Eğitim sürecinde ayrıca CPE'yi çalıştırıyoruz ve değerlendirme sonuçlarını TensorBoard'a kaydediyoruz. Eğitim tamamlandıktan sonra Horizon, büyük ölçekli ve verimli hizmetler elde etmek için bu modelleri dışa aktarmak için ONNX'i kullanacak.

Birçok RL alanında, deneyerek modelin performansını ölçebilirsiniz. Facebook'ta, modellerin büyük ölçekte uygulanmadan önce kapsamlı bir şekilde test edilmesini sağlamak istiyoruz. Horizon strateji optimizasyonu görevini çözerken, eğitim iş akışı aynı zamanda sıralı çift sağlamlık stratejisi değerlendirmesi ve MAGIC dahil olmak üzere çeşitli son teknoloji strateji değerlendirme tekniklerini otomatik olarak çalıştırır. Oluşturulan strateji değerlendirme raporu eğitim akışından aktarılır ve TensorBoard kullanılarak gözlemlenebilir. Değerlendirme anormallik tespiti ile birleştirilebilir Strateji herkese açık olarak uygulanmadan önce, model yinelemesinin performansı önceki yinelemeden önemli ölçüde farklıysa, mühendis otomatik olarak uyarılacaktır.

İş yerinde öğrenmek: Horizon'un Messenger, 360 video vb. Üzerindeki etkisi.

Horizon'u dahili olarak kullanmaya başladığımızdan beri platform, üretim uygulamalarını etkileyebilecek performans artırıcı kararlar almak için RL'nin anında geri bildirimi nasıl kullanabileceğini gösterdi.

Örneğin Horizon, bit hızı parametrelerini gerçek zamanlı olarak optimize ederek Facebook'taki 360 videoların görüntü kalitesini iyileştirmemize izin veriyor. Platform, daha yüksek kaliteli bir videoya dönüştürmenin mümkün olup olmadığını belirlemek için hem kullanılabilir bant genişliği miktarını hem de arabelleğe alınmış video miktarını dikkate alır. Bu süreç, RL'nin yeni denetimsiz verileri kullanarak herhangi bir zamanda ödül üretme yeteneğinden yararlanır - performansı analiz etmek ve gerçeğin ardından dikkatlice etiketlenmiş veriler yerine belirli bir video oynatılırken çalışır.

Karşı-olgusal politika değerlendirmeleri, çevrimdışı ortamlarda RL modellerini kullanan mühendisler için içgörüler sağlar. Bu şekil, birkaç CPE yöntemini ve kayıt stratejisini (eğitim verilerini orijinal olarak oluşturan sistem) karşılaştırır. 1,0 puanı, RL ve günlük tutma stratejilerinin performans açısından eşleştiği anlamına gelir. Bu sonuçlar, RL modelinin kümülatif ödülünün, günlük sistemininkinin yaklaşık iki katı olduğunu göstermektedir.

Bu yüksek seviyeli şema, Horizon'un geri bildirim döngüsünü göstermektedir. İlk olarak, mevcut sistem tarafından kaydedilen bazı verileri önceden işleriz. Ardından, bir model eğitiyor ve karşı olgusal strateji sonuçlarını çevrimdışı bir ortamda analiz ediyoruz. Son olarak, modeli bir grup insana dağıtıyoruz ve gerçek stratejiyi ölçüyoruz. Yeni modelden elde edilen veriler bir sonraki yinelemeye geri beslenir ve çoğu ekip her gün yeni bir model dağıtır.

Horizon ayrıca Messenger'daki akıllı yardımcı M'den gelen önerileri de filtreler. M, insanların açık konuşmalarındaki alakalı içerik için öneriler sunar, insanların iletişim yöntemlerini zenginleştirir ve Messenger'daki çalışmaları tamamlar. Horizon, M'nin kademeli olarak öğrenmesine yardımcı olmak için, kural tabanlı diyalog öğrenme stratejisi yönteminden daha ölçeklenebilir, ileriye dönük ve kullanıcı geri bildirimlerine daha duyarlı olan RL'yi kullanıyor. Örneğin, insanlar bir öneriyle daha düzenli etkileşime girerse, M öneriyi daha fazla sağlayabilir. Horizon'un yardımıyla M, her gün milyonlarca insanın iletişim kurmasına yardımcı olduğu için daha akıllı ve son derece kişisel hale geldi.

Platform ayrıca, yapay zeka kullanma şeklimizi geliştirerek, kullanıcılara hangi Facebook bildirimlerini ne sıklıkla göndereceğimize karar vermemize yardımcı oluyor. Geçmişte, olası tüm bildirimleri göndermek yerine (yeni gönderiler, yorumlar vb. Belirtilerek), hangilerinin en anlamlı veya alakalı olabileceğini tahmin etmeye ve diğerlerini filtrelemeye yardımcı olması için ML modellerini kullandık. Ancak bu modeller denetimli öğrenmeye dayanır ve bildirim göndermenin uzun vadeli değerini dikkate almaz. Örneğin, platformu günde birden çok kez ziyaret eden kişiler sistemin gördükleri gönderiler için bildirim yayınlamasına ihtiyaç duymayabilirken, daha az aktif kişiler bildirimlerden faydalanabilir ve bu da aileleri ve arkadaşları tarafından gönderilen gönderileri kaçırmamalarını sağlayabilir. Takip etmeye değer gönderiler.

Bu uzun vadeli sinyalleri daha iyi idare etmek - ve bildirimlerin beklendiği gibi çalışmasını sağlamak ve platformdaki herkese değer sağlamak için - Horizon'u kullanarak push bildirimleri göndermek için ayrık bir DQN modeli eğittik. Birisi kaçırabileceği bir gönderiye katıldığında, bu model bir ödül alırken, bildirim göndermek cezalandırılır. RL modeli, yalnızca kullanıcıya verilen değer (örneğin, bir arkadaşından veya aile üyesinden kayda değer bir gönderi fark etmelerine izin verme) ceza değerinden yüksek olduğunda bildirimlere izin verir (cihazlarında ekstra bir uyarı açılır). Model ayrıca, çok sayıda durum geçişini düzenli olarak güncelleyerek kademeli olarak iyileştirilmesine ve sonunda bildirimlerin sayısını ayarlamasına olanak tanır. Önceki denetimli öğrenim tabanlı sistemi Horizon tabanlı bir sürümle değiştirdiğimizden, gönderilen bildirimlerin toplam sayısının artmadığını, ancak bildirimlerin alaka düzeyinin arttığını gözlemledik. Bildirimlere tıklayarak veya tıklayarak alaka düzeyini tanımlamak yerine, gerçek faydalar sağladıklarından emin olmak için bilgilere daha geniş ve derinlemesine bakabiliriz.

Herkesin bir üretim ortamında RL dağıtmasına olanak tanıyan araçlar

Bu faydalar, RL'nin sektöre neler sağlayabileceğini vurgulamaktadır, yani önceki alt-optimal stratejilerden doğrudan örnekler toplayabilir ve bunlardan optimal stratejileri öğrenebilir. RL için çok uygun özel senaryolar ve uygulamalar belirlemiş olsak da, bu heyecan verici bir yolculuğun yalnızca başlangıcıdır. Yapay zeka topluluğunun ortak yeteneği ve yaratıcılığı göz önüne alındığında, Horizon'un ilham verdiği fikirleri, özellikleri ve ürünleri görmek için sabırsızlanıyoruz.

Karar vermek için makine öğrenimini kullanan herkes Horizon'u deneyebilir. İlk adım, eğilimi (harekete geçme olasılığı) ve alternatifleri (diğer olası eylemler) kaydetmektir. Horizon, daha iyi eylemlerin ne zaman yapılabileceğini anlamak için eğilimleri ve alternatifleri kullanır. İkinci adım, ödülü (eylemi gerçekleştirerek elde edilen değer) tanımlamak ve kaydetmektir. Bu verileri topladıktan sonra, yeni kararlar verebilecek ve toplam getirileri en üst düzeye çıkarabilecek bir model elde etmek için Horizon'un eğitim döngüsünü çalıştırabilirsiniz.

Horizon, AI'nın açık gelişimine olan bağlılığımızın bir parçasıdır - Facebook'un dahili platformudur, artık açık kaynak durumundayız ve PyTorch 1.0 ve Caffe2 dahil olmak üzere kullandığı araçlar topluluğa sağlanmıştır. Horizon, üretim ortamlarında kullanılmak üzere optimize edilmiş olsa da, platformla ilgili deneyimimiz, RL'nin diğer sistemlere entegrasyonu ile ilgili önemli araştırmaları da ortaya koymaktadır. Model tabanlı RL'yi keşfetmek ve yeni teknolojileri "ödüllendirmek" için Horizon platformunu kullanıyoruz ve platformu Facebook'taki veri merkezi kaynak tahsisi ve video önerileri gibi diğer uygulamaları daha geniş bir şekilde keşfetmek için kullanıyoruz. Ayrıca başkalarının RL'nin uzun vadeli taahhüdünü acil eyleme dönüştürmesine yardımcı olmak için daha fazla model ve iş akışı eklemeyi planlıyoruz.

Daha fazla bilgi için lütfen Horizon geliştirme ve dahili kullanım örnekleriyle ilgili tam teknik raporu okuyun: https://arxiv.org/abs/1811.00260

Horizon, yeni uygulamalar üzerinde bir etkiye sahip olmanın yanı sıra, mühendislerin ve makine öğrenimi modellerinin birlikte çalışma şeklini de değiştirebilir. Modelleri yönlendirmek için anlaşılması zor kurallar yazmak ve sürdürmek yerine, mühendisler ve kullandıkları modeller arasında iki yönlü bir diyalog olduğunu öngörüyoruz.Mühendisler, üst düzey hedeflerini belirleyebilir ve bu hedeflere ulaşmak için makine öğrenimi ile işbirliği yapabilir. Sürekli değişen bir karar verme ortamına uygulayın. Horizon, bu yolculuğun ilk adımıdır ve sizi GitHub depomuzu kopyalayıp denemeye davet ediyoruz.

Orijinal İngilizce metni görüntüleyin:

https://code.fb.com/ml-applications/horizon/

Afrikalı genç Chu Ke: Çin'de çiftçilik okudum
önceki
"İsa'nın Hikayesi", tarihin en çok izleyiciye sahip en etkili filmi.
Sonraki
AirDots paylaşımı kullanır
Bu ay dinlemeniz gereken bu birkaç yeni hip-hop şarkısı, hip-hop trendlerini mümkün olan en kısa sürede anlamanıza yardımcı olacaktır.
Ekonomi hakkında on film önerin, bu ekonomik sağduyuyu bilmeniz gerekir
Kafka tasarım analizi (1): Kafka arka planı ve mimariye giriş
"Terminatör" deki sıvı metal bir "çip devrimi" başlatacak mı?
Yılda 200 milyon yuan kazanan bir hip-hop şarkıcısı, Auto-Tune'u çok iyi çaldı.
"EXO" "Paylaş" 190330 D.O.'nun gıda işleme duruşundan bilmediği uzmanlık nedir?
Lüks evler satın almak için yüz milyonlar harcayın ve lüks arabalar sürekli değişiyor. Servetini sergileyen en yüksek profilli hip-hop yapımcısı.
"TWICE" "Paylaş" 190330 Söz verildiği gibi kulis grup fotoğrafı ve ruh hali de "Lovely Lovely" i izliyor!
Herkesin saf İngilizce öğrenmesi için seçilmiş 10 klasik film
Övünen Baba'nın net değeri 825 milyon ABD dolarıdır ve hip-hop dünyasının en başarılı iş adamlarından biri haline gelmiştir.
"Final Fantasy 15 Kings Sword" dublajı öne çıkanları duyurdu, dublaj da çok yakışıklı olabilir
To Top