Google'dan 46 kat daha hızlı olan GPU, IBM Snap ML 4 milyar örnek eğitim modeline yalnızca 91,5 saniyede yardımcı olur

[Xinzhiyuan Kılavuzu] Son zamanlarda IBM, lojistik regresyon sınıflandırıcılarını eğitmek ve POWER9 sunucularında ve GPU'larda kendi makine öğrenimi kitaplığı Snap ML'yi çalıştırmak için Criteo Labs tarafından yayınlanan bir dizi reklam veri setini kullandıklarını duyurdu. Sonuçlar, Google'ın önceki sonuçlarından daha iyi. En iyi sonuçlar 46 kat daha hızlıdır.

Xinzhiyuan Raporu

Kaynak: IBM Research

Yazar: Liu Xiaoqin, Zhang Qian

NVIDIA CEO'su Huang Renxun ve IBM Kıdemli Başkan Yardımcısı John Kelly Think Konferansında

Son zamanlarda, Las Vegas'taki IBM THINK konferansında IBM, POWER9 ve NVIDIAV100GPU'nun bir kombinasyonunun kullanılması da dahil olmak üzere optimize edilmiş donanım üzerinde yeni yazılım ve algoritmalar kullanarak yapay zeka performansında bir atılım yaptığını duyurdu.

Google Cloud'da TensorFlow ve POWER9 (AC922) kümesinde IBM Snap'in karşılaştırması (çalışma zamanı, veri yükleme süresini ve eğitim süresini içerir)

Yukarıdaki şekilde gösterildiği gibi, iş yükü, veri kümesi ve modelin tümü aynıdır. Karşılaştırma, Google Cloud'da TensorFlow ve Power9'da Snap ML eğitimini kullanan eğitim süresidir. Bunların arasında TensorFlow 89 makine (60 çalışan makine ve 29 parametrik makine) ve Snap ML 9 Power9 CPU ve 16 NVIDIA Tesla V100 GPU kullandı.

TensorFlow ile karşılaştırıldığında, Snap ML aynı kaybı elde ediyor ancak 46 kat daha hızlı.

Nasıl oldu?

Anlık ML: TensorFlow'dan beklenmedik şekilde 46 kat daha hızlı

Geçtiğimiz Şubat ayı gibi erken bir tarihte, Google yazılım mühendisi Andreas Sterbenz, reklamların tıklamalarını ve öneri senaryolarını büyük ölçekte tahmin etmek için Google Cloud ML ve TensorFlow'u kullanma hakkında bir blog yazdı.

Sterbenz, Criteo Labs'ta görüntülenen reklamların tıklanma sayısını tahmin etmek için bir model eğitti. Bu günlüklerin boyutu 1 TB'ın üzerindedir ve milyonlarca görüntülü reklamdan özellik değerleri ve tıklama geri bildirimleri içerir.

Veri ön işlemesini (60 dakika), eğitim için 60 çalışan makine ve 29 parametre makinesi kullanarak gerçek öğrenme izler. Modelin eğitilmesi 70 dakika sürdü ve değerlendirme kaybı 0.1293 idi.

Sterbenz daha sonra daha iyi sonuçlar elde etmek ve değerlendirme kaybını azaltmak için farklı modeller kullansa da, bunların hepsi daha uzun sürdü ve sonunda üç dönemli derin bir sinir ağı kullandı (ağırlıkları bir kerede güncellemek için tüm eğitim vektörlerinin kaç kez kullanıldığını ölçerek) 78 saat sürdü.

Ancak IBM'in POWER9 sunucusu ve GPU üzerinde çalışan kendi eğitim kitaplığından sonra, temel ilk eğitimde Google Cloud Platform'da 89 makineden daha iyi performans gösterebilir.

Snap ML, Google TensorFlow ve diğer üç karşılaştırma sonucunu gösteren bir grafik gösterdiler:

TensorFlow'dan 46 kat daha hızlı, bunu nasıl başardı?

Araştırmacılar, Snap ML'nin iş yüklerini kümedeki farklı düğümler arasında dağıtabilen, hızlandırıcı birimleri kullanabilen ve her bir bilgi işlem biriminin çok çekirdekli paralelliğinden yararlanabilen çok düzeyli paralelliğe sahip olduğunu söyledi.

1. Her şeyden önce, veriler kümedeki her bir çalışan düğüme dağıtılır.

2. Düğümde, veriler ana CPU ile CPU ve GPU'nun paralel olarak çalıştığı hızlandırılmış GPU arasında ayrılır

3. Veriler GPU'daki birden çok çekirdeğe gönderilir ve CPU iş yükü çok iş parçacıklıdır

Snap ML, bu üç paralellik düzeyinden yararlanabilen iç içe geçmiş bir hiyerarşik algoritmik işleve sahiptir.

Kısacası, Snap ML'nin üç temel özelliği şunlardır:

Dağıtılmış eğitim: Snap ML, büyük uygulamalar için kritik olan tek bir makinenin bellek kapasitesini aşabilen büyük veri kümeleri üzerinde genişletilebilen ve eğitilebilen bir veri paralel çerçevesidir.

GPU hızlandırma: Veri aktarım yükünü azaltmak için GPU belleğindeki veri konumunu korurken GPU'nun büyük ölçüde paralel mimarisini kullanmak için özel bir çözücü uygulanır. Bu yöntemi ölçeklenebilir hale getirmek için, heterojen öğrenmedeki son gelişmeler kullanılarak, hızlandırıcının belleğinde saklanabilen verilerin sadece küçük bir kısmı bile GPU hızlandırma elde edilebilir.

Seyrek veri yapısı: Çoğu makine öğrenimi veri seti seyrek olduğundan, seyrek veri yapılarına uygulandığında, sistemde kullanılan algoritmalara bazı yeni optimizasyonlar yapılmıştır.

Teknik süreç: 91,5 saniyede 0,1292 test kaybı elde edildi

İlk önce Tera-Scale Benchmark'ı ayarlayın.

Terabyte Click Logs, Criteo Labs tarafından dağıtılmış makine öğrenimi alanındaki araştırmalar için yayınlanan büyük bir çevrimiçi reklamcılık veri kümesidir. 4 milyar eğitim örneğinden oluşur.

Bunların arasında, her örneğin bir "etiketi", yani kullanıcının çevrimiçi bir reklama tıklayıp tıklamadığı ve karşılık gelen bir dizi anonim özellik vardır. Bu verilere dayanarak, makine öğrenimi modeli eğitilir. Amaç, yeni bir kullanıcının bir reklamı tıklayıp tıklamayacağını tahmin etmektir.

Bu veri seti şu anda en büyük halka açık veri kümelerinden biridir. Veriler 24 gün içinde toplanır ve her gün ortalama 160 milyon eğitim örneği toplanır.

Araştırmacılar, Terabyte Click Logs veri setinin tamamını eğitmek için Snap ML'yi dört IBM Power System AC922 sunucusuna yerleştirdiler. Her sunucu, ana bilgisayarla NVIDIA NVLink arabirimi üzerinden iletişim kurabilen 4 NVIDIA Tesla V100 GPU ve 2 Power9 CPU'ya sahiptir. Sunucular birbirleriyle Infiniband ağı üzerinden iletişim kurar. Araştırmacılar, böyle bir altyapı üzerinde bir lojistik regresyon sınıflandırıcısı eğitirken, 91,5 saniyede 0,1292'lik bir test kaybına ulaştı.

Önceki makaledeki resme tekrar bakın:

Bu tür büyük ölçekli uygulamalar için GPU hızlandırmayı dağıtırken, büyük bir teknik zorluk ortaya çıkar: eğitim verileri, GPU'da bulunan bellekte saklanamayacak kadar büyüktür. Bu nedenle, eğitim sırasında, verileri seçici olarak işlemeniz ve tekrar tekrar GPU belleğine girip çıkmanız gerekir. Uygulamanın çalışma süresini açıklamak için araştırmacılar, GPU çekirdeğinde harcanan zamanı ve GPU'ya veri kopyalamak için harcanan zamanı analiz ettiler.

Bu çalışmada, ilk 200 milyon eğitim örneği dahil olmak üzere Terabyte Tıklama Günlükleri verilerinin küçük bir kısmı kullanılmış ve iki donanım yapılandırması karşılaştırılmıştır:

PCI Gen 3 arabirimine bağlı 1 NVIDIA Tesla V100 GPU ile Intel x86 tabanlı makine (Xeon Gold 6150 CPU @ 2.70GHz).

4 Tesla V100 GPU'lu bir IBM POWER AC922 sunucusuna bağlanmak için NVLink arayüzünü kullanın (karşılaştırmada, GPU'lardan yalnızca biri kullanılır).

Şekil a, x86 tabanlı ayarların performans analizi sonuçlarını gösterir. İki S1 ve S2 hattını görebilirsiniz. S1 hattında, gerçek eğitim tamamlanmak üzere (yani, lojistik regresyon çekirdeği çağrılır). Her veri bloğu için eğitim süresi yaklaşık 90 milisaniyedir (ms).

Eğitim devam ederken, S2 hattında araştırmacılar bir sonraki veri bloğunu GPU'ya kopyalar. Verilerin kopyalanmasının 318 milisaniye sürdüğü gözlemlendi, bu da GPU'nun önemli bir süredir boşta kaldığı ve veri kopyalama süresinin açıkça bir darboğaz olduğu anlamına geliyor.

Şekil b'de, GÜÇ tabanlı ayar için, NVIDIA NVLink daha hızlı bant genişliği sağladığından, bir sonraki veri bloğunu GPU'ya kopyalama süresi önemli ölçüde 55 ms'ye (neredeyse 6 kat) düşürülmüştür. Bu hızlanma, veri kopyalama süresinin çekirdek yürütmenin arkasına gizlenmesi, kritik yoldaki kopyalama süresinin etkin bir şekilde ortadan kaldırılması ve 3,5 kat hızlanma elde edilmesinden kaynaklanmaktadır.

Bu IBM makine öğrenimi kitaplığı, çok hızlı eğitim hızları sağlar. Ana makine öğrenimi modellerini modern CPU / GPU bilgi işlem sistemlerinde eğitebilir ve yeni ilginç kalıpları keşfetmek veya yeni veriler mevcut olduğunda yeniden eğitmek için modelleri eğitmek için de kullanılabilir. Çevrimiçi hız seviyesini (yani, ağın destekleyebileceği en yüksek hız) korumak için mevcut modelleri eğitin. Bu, daha düşük kullanıcı bilgi işlem maliyetleri, daha az enerji tüketimi, daha çevik geliştirme ve daha hızlı tamamlama süresi anlamına gelir.

Ancak IBM araştırmacıları, TensorFlow'un paralellikten yararlanmadığını ve Snap ML ile TensorFlow arasında herhangi bir karşılaştırma sağlamadığını iddia etmedi.

Ancak şunu söylediler: "Büyük miktarda veri aktarım yükünden kaçınmak için GPU belleğindeki veri alanına saygı gösterirken GPU'nun devasa paralel mimarisinden yararlanmak için özel bir çözüm uyguluyoruz."

Makaleye göre NVLink 2.0 arayüzlü AC922 sunucusu, Tesla GPU'nun arayüzü olan Tesla GPU'nun PCIe arayüzü ile Xeon sunucusundan (Xeon Gold 6150 CPU @ 2.70GHz) daha hızlı. "PCIe tabanlı kurulum için, 11,8 GB / sn'lik etkili bant genişliğini ölçtük. NVLink tabanlı kurulum için, 68,1 GB / sn'lik etkili bant genişliğini ölçtük."

Eğitim verileri GPU'ya gönderilir ve orada işlenir. NVLink sistemi, veri bloklarını GPU'ya PCIe sisteminden çok daha hızlı bir hızda gönderir ve süre 318ms yerine 55ms'dir.

IBM ekibi ayrıca, "Seyrek veri yapılarına uygulandığında, sistemde kullanılan algoritmalarda bazı yeni optimizasyonlar yaptık" dedi.

Genel olarak, Snap ML'nin Nvidia GPU'ları daha fazla kullanabileceği ve NVLink'teki verileri x86 sunucularındaki PCIe bağlantısından daha hızlı aktarabileceği görülüyor. Ancak POWER9 CPU'nun Xeon'lara kıyasla nasıl olduğunu bilmiyorum. IBM henüz POWER9 ve Xeon SP'nin doğrudan bir karşılaştırmasını kamuya açık olarak yayınlamadı.

Bu nedenle, Snap ML'nin aynı donanım konfigürasyonunda iki emici çalıştırmadan önce TensorFlow'dan çok daha iyi olduğu söylenemez.

Sebep ne olursa olsun, 46 kat düşüş etkileyici ve IBM'e, POWER9 sunucusunu Nvidia GPU'ları takmak, Snap ML kitaplıklarını çalıştırmak ve makine öğrenimi gerçekleştirmek için bir yer olarak tanıtması için çok yer sağlıyor.

Tam deney ve sonuçlar için makaleye bakın: https://arxiv.org/abs/1803.06333

https://www.theregister.co.uk/2018/03/21/ibm_machine_learning_models_trained_fast/

https://cloud.google.com/blog/big-data/2017/02/using-google-cloud-machine-learning-to-predict-clicks-at-scale

"Çok noktalı + Wumart" dijital perakendeciliği, Ali'nin önünde ise
önceki
Sürekli intihal anlaşmazlıkları olan MINISO + Kaldıraçlı Ye Guofu = yenilmez mi?
Sonraki
Jingdezhen ve Ningbo arasındaki çözülmez bağı biliyor musunuz?
Mısır'a gitmek ve Luksor Tapınağı'nı özlemek tüm dünyayı özlemek gibidir ...
Yıllık maaşı on milyonlarca olan süper madenciler: sinir ağlarını eğitmek için madencilik makinelerini paylaşmak, gelir madenciliğin 4 katı
Bahar Şenliği çok yakında Yeni Yılda eve gitmenin beş tabusunu biliyor musunuz?
485 milyon ABD doları zimmetine geçirildi, 17 yıllığına kaçtı ve sonunda ülkesine geri gönderildi
Hayatımın geri kalanını bu 7 harikalar diyarı gölünde seninle geçirmek istiyorum.
Çin İtfaiyesinden Yuan Shanshan, artık tüm ülke sırrını biliyor.
Musk, Facebook kampına katılıp silindi, Tesla ve SpaceX sattı
Google, cennete şempanze robotları geliştirmek için bu AI araştırma enstitüsüne büyük yatırım yaptı!
Adam topluma misilleme yaptı ve 40'tan fazla kötü niyetli araba yapımı vakası işledi ve sonunda polis tarafından tutuklandı.
Boss Dai mükemmel bir dönüşüm geçirdi ve kariyerinin en iyi sezonunu attı. Milli takıma dönmenin ne kadar uzağında?
Bir haftalık perakende | Ali, Big Tmall'ı yükseltti; Hand Tao, Xiaohongshu'ya bağlanır; Hema'nın 100. mağazası açıldı
To Top