NanoNets: Veriler sınırlı olduğunda derin öğrenme nasıl uygulanır?

Lei Feng Net Not: Bu makale, Lei Feng'in altyazı grubu tarafından derlenen ve orijinal adıyla NanoNets: Sınırlı Verileriniz Olduğunda Derin Öğrenme Nasıl Kullanılır, Sarthak Jain tarafından derlenen teknik bir blogdur.

Tercüme | Ye Qing ve Hong Zhenya bitirme | Wu Xuan

Yapay zekanın bir roket gemisi yapmak gibi olduğunu düşünüyorum. Büyük bir motora ve çok fazla yakıta ihtiyacınız var. Eğer büyük bir motorunuz varsa ancak yeterli yakıtınız yoksa, o zaman roketi kesinlikle yörüngeye koyamazsınız; küçük bir motorunuz varsa ancak yeterli yakıtınız varsa, o zaman belki de başarılı bir şekilde kalkış yapamazsınız. Bu nedenle, bir roket gemisi inşa etmek için çok büyük bir motorunuz ve çok fazla yakıtınız olması gerekir.

Derin öğrenme (yapay zeka oluşturmanın temel süreçlerinden biri) aynıdır. Roket motoru derin öğrenme modelidir ve yakıt, algoritmalarımızın uygulanabilmesi için devasa verilerdir. Wu Enda

Problemleri çözmek için derin öğrenmeyi kullanmanın önündeki yaygın bir engel, modeli eğitmek için gereken veri miktarıdır. Büyük veriye duyulan ihtiyaç, modelde öğrenilecek çok sayıda parametre bulunmasıdır.

İşte bazı yeni modellerin gerektirdiği parametre sayısını gösteren birkaç örnek:

Derin öğrenme modelinin detayları

Derin öğrenme olarak da bilinen sinir ağı, istiflenebilen katmanlı bir yapıdır (Lego'yu düşünün)

Derin öğrenme, büyük ölçekli sinir ağlarından başka bir şey değildir. Bir taraftan gelen veriler ve diğer taraftan gelen akıl yürütme veya bilgi ile akış şemaları olarak düşünülebilirler.

Sinir ağını bölebilir, parçalarına ayırabilir ve mantığı istediğiniz yerden çıkarabilirsiniz. Anlamlı bir şey alamayabilirsiniz, ancak yine de Google DeepDream gibi yapabilirsiniz.

Model boyutu Veri boyutu Problem karmaşıklığı

Gerekli veri miktarı ile modelin boyutu arasında ilginç ve neredeyse doğrusal bir ilişki vardır. Temel mantık, modelinizin verilerdeki ilişkileri (görüntülerdeki doku ve şekil, metindeki dilbilgisi ve konuşmadaki ses birimleri gibi) ve problemin belirli ayrıntılarını (kategori sayısı gibi) yakalayacak kadar büyük olmasıdır. Modelin ilk katmanları, girdinin farklı bölümleri arasındaki üst düzey ilişkileri (kenarlar ve desenler gibi) yakalar. Sonraki katmanlar, nihai kararın verilmesine yardımcı olan bilgileri yakalar ve genellikle istenen çıktılar arasında ayrım yapmaya yardımcı olabilir. Bu nedenle, problemin karmaşıklığı yüksekse (görüntü sınıflandırması gibi), gerekli olan parametre sayısı ve veri hacmi de çok büyüktür.

AlexNet'in her adımda görebilecekleri

Sorunu çözmek için öğrenmeyi aktarın!

Kendi alanınızdaki bir problemle uğraşırken, bu büyüklükte bir model oluşturmak için gereken veri miktarını bulmak genellikle imkansızdır. Ancak, bir görev üzerine eğitilmiş bir model, veri türlerindeki ilişkileri yakalar ve aynı alandaki farklı sorunlar için kolayca yeniden kullanılabilir. Bu tekniğe transfer öğrenimi denir.

Transfer öğrenimi, kimsenin saklamaya çalışmadığı ama sakladığı en iyi sır gibidir. Sektördeki herkes biliyor ama dışarıda kimse yok.

Google Trends Makine Öğrenimi - Derin Öğrenme - Transfer Öğrenimi

Derin öğrenmedeki en iyi makaleleri görmek için Harika - En Çok Alıntı Yapılan Derin Öğrenme Makalelerine bakın: En çok alıntı yapılan derin öğrenme makaleleri, makalelerin% 50'den fazlası bir tür transfer öğrenme veya ön eğitim kullanır. Transfer öğrenimi, sınırlı kaynakları (veri ve hesaplama) olan insanlar için gittikçe daha uygun hale geliyor, ancak maalesef bu fikir olması gerektiği gibi sosyalleşmedi. En çok ihtiyacı olan insanlar henüz bilmiyor.

Derin öğrenme kutsal kâse ise, veri bekçidir ve aktarım öğrenmesi anahtardır.

Transfer öğrenimi yoluyla, büyük hazır veri kümeleri üzerinde eğitilmiş önceden eğitilmiş modelleri kullanabiliriz (tamamen farklı görevler üzerinde eğitilmiş, aynı girdiyle ancak farklı çıktılarla). Ardından, yeniden kullanılabilir özellikleri veren katmanı bulmaya çalışın. Bu katmanın çıktısını, daha az parametre gerektiren çok daha küçük bir ağı eğitmek için girdi özellikleri olarak kullanıyoruz. Bu daha küçük ağ, verilerdeki kalıpları önceden eğitilmiş modelden öğrenmiştir ve şimdi yalnızca sizin özel probleminizle olan ilişkisini anlamaya ihtiyaç duyar. Kedi algılama modeli Van Gogh'un çalışmasında yeniden kullanılabilir, model bu şekilde eğitilir.

Transfer öğrenmeyi kullanmanın bir diğer önemli avantajı, modelin genelleme etkisinin çok iyi olmasıdır. Daha büyük modeller verilere fazla uyma eğilimindedir (yani, altta yatan fenomenden ziyade verileri modelleme) ve görünmeyen veriler üzerinde test edildiğinde iyi performans göstermeyecektir. Transfer öğrenmesi, modelin farklı veri türlerini görmesine izin verdiği için, dünyanın temel kurallarını daha iyi öğrenir.

Aşırı uymayı öğrenmek yerine hafıza olarak düşünün. James Faghmous

Transfer öğrenimi nedeniyle veri azaltma

Mavi-siyah elbise ile platin elbise tartışmasını bitirmek istediğinizi varsayalım. Doğrulanmış mavi ve siyah elbiseler ile platin elbiselerin resimlerini toplamaya başlıyorsunuz. Yukarıda belirtildiği kadar doğru bir model oluşturmak istiyorsanız (140 milyon parametreli). Bu modeli eğitmek için 1,2 milyon görüntü bulmanız gerekiyor ki bu imkansız bir görev. Böylece transfer öğrenmeyi deneyebilirsiniz.

Transfer öğrenmeyi kullanarak sorunu çözmek için gereken parametre sayısını hesaplayın:

Parametre sayısı = *

= * ~ 4098 parametreleri

Parametre sayısının 1,4 × 10'den 4 × 10³'ye, yani 5 büyüklük mertebesine düştüğünü görüyoruz. Bu yüzden yüzden fazla elbise resmi toplamalıyız ki bu iyi olmalı. Yo!

Sabırsızsanız ve elbisenin gerçek rengini bulmak için sabırsızlanıyorsanız, kendi elbise modelinizi nasıl oluşturacağınızı görmek için aşağı kaydırın.

· · ·

Duygu analiziyle ilgili öğrenmeyi kullanan örnekleri aktarmak için adım adım bir kılavuz

Bu örnekte 72 film incelememiz var

1. 62 atanmış bir duygu yok, bunlar ön modelleme için kullanılacak

2, 8 duygu atanır, bunlar modeli eğitmek için kullanılır

3, 2 duygu atanır, bunlar modeli test etmek için kullanılır

Yalnızca 8 etiketli cümleye sahip olduğumuz için (duygusal olarak ilişkili olanlar), önce bağlamı tahmin etmek için modeli doğrudan eğitiyoruz. Sadece 8 cümleden oluşan bir model eğitirsek,% 50 doğruluğu olacaktır (% 50 karar vermek için yazı tura atmak gibidir).

Bu sorunu çözmek için, önce 62 cümle üzerinde bir model eğitmek için transfer öğrenmeyi kullanacağız. Ardından, ilk modelin bir bölümünü kullanır ve duyarlılık sınıflandırıcısını ona göre eğitiriz. Kalan 2 cümle üzerinde eğitim ve test için 8 cümle kullanıldığında, model% 100 doğruluk sağlayacaktır.

adım bir

Kelimeler arasındaki ilişkiyi modelleyen bir ağ eğiteceğiz. Bir kelimeyi cümle içinde geçirin ve kelimenin aynı cümlede görüneceğini tahmin etmeye çalışın. Aşağıdaki kodda gömülü olan matrisin boyutu, her kelimeyi temsil eden bir vektörü saklayan kelime x gömme_boyutu'dur (buradaki boyut "4" dür).

Github adresi: https://gist.github.com/sjain07/98266a854d19e01608fa13d1ae9962e3#file-pretraining_model-py

İkinci adım

Bu simgeyi, aynı bağlamda görünen kelimelerin benzer vektör temsilleri elde edebilmesi için eğiteceğiz. Bu cümleleri önceden işleyeceğiz, tüm durdurma kelimeleri kaldıracağız ve işaretleyeceğiz. Sonra her seferinde bir kelime geçirin, kelime vektörü ile çevresindeki kelimeler arasındaki mesafeyi kısaltmaya çalışın ve bağlama dahil olmayan rastgele kelimeler arasındaki mesafeyi artırın.

Github adresi: https://gist.github.com/sjain07/3e9ef53a462a9fc065511aeecdfc22fd#file-training_the_pretrained_model-py

Adım üç

Sonra cümlenin istediği duyguyu tahmin etmeye çalışacağız. Pozitif ve negatif etiketlerle zaten 10 cümle (eğitim için 8 ve test için 2) var. Önceki adımda elde edilen model, tüm kelimelerden öğrenilen vektörleri zaten içerdiğinden ve bu vektörlerin sayısal nitelikleri kelimelerin bağlamını temsil edebildiğinden, duygu tahmini daha da basitleştirilebilir.

Şu anda, cümleyi doğrudan kullanmıyoruz, ancak cümlenin vektörünü içinde yer alan tüm kelimelerin ortalama değerine ayarlıyoruz (bu görev aslında LSTM'ye benzer bir teknoloji ile gerçekleştirilir). Cümle vektörü, ağa girdi olarak geçirilecek ve çıktı, içeriğin olumlu mu yoksa olumsuz mu olduğuna ilişkin puan olacaktır. Gizli bir orta katman kullandık ve modeli etiketli cümlelerle eğittik. Gördüğünüz gibi, her seferinde yalnızca 10 örnek kullanılmasına rağmen, bu model% 100 doğruluk elde ediyor.

Github adresi: https://gist.github.com/sjain07/a45ef4ff088e01abbcc89e91b030b380#file-training_the_sentiment_model-py

Bu sadece bir örnek olmakla birlikte, transfer öğrenme teknolojisinin yardımıyla doğruluk oranının hızla% 50'den% 100'e çıktığı görülebilir. Tam örneği ve kodu görüntülemek için lütfen aşağıdaki adresi ziyaret edin:

https://gist.github.com/prats226/9fffe8ba08e378e3d027610921c51a78

Bazı gerçek transfer öğrenme vakaları

Görüntü tanıma: görüntü iyileştirme, stil aktarımı, nesne algılama, cilt kanseri algılama.

Metin tanıma: Zero Shot çevirisi, duygu sınıflandırması.

Transfer öğrenmenin gerçekleştirilmesindeki zorluklar

Model daha az miktarda veri ile eğitilebilmesine rağmen, bu teknolojinin uygulanması daha yüksek beceri gereksinimlerine sahiptir. Sadece yukarıdaki örnekteki sabit kodlanmış parametrelerin sayısına bakın ve bu parametrelerin model eğitimi tamamlanmadan önce sürekli olarak ayarlanması gerektiğini hayal edin Transfer öğrenme teknolojisini kullanmanın zorluğu tahmin edilebilir.

1. Transfer öğrenme teknolojisinin karşılaştığı mevcut sorunlar şunları içerir:

2. Ön eğitim için gereken büyük ölçekli veri kümesini bulun

3. Ön eğitim için hangi modelin kullanılacağına karar verin

4. İki modelden herhangi biri beklendiği gibi çalışamazsa, hata ayıklamak daha zor olacaktır.

5. Modeli eğitmek için ne kadar ek veriye ihtiyaç duyulduğundan emin değilim

6. Önceden eğitilmiş bir model kullanırken nerede duracağınıza karar vermek zordur

7. Önceden eğitilmiş modele bağlı olarak, modelin gerektirdiği katman ve parametre sayısını belirleyin

8. Birleşik modeli barındırın ve sağlayın

9. Daha fazla veri veya daha iyi teknoloji ortaya çıktığında, eğitim öncesi modeli güncelleyin

Veri bilimcileri bulmak zor. Veri bilimcilerini keşfedebilecek insanları bulmak da bir o kadar zor --Krzysztof Zawadzki

Transfer öğrenmeyi kolaylaştırın

Bu sorunları bizzat yaşadıktan sonra, geçiş öğrenme teknolojisini destekleyen bulut derin öğrenme hizmetleri oluşturmaya başladık ve bu sorunları bu basit ve kullanımı kolay hizmet ile çözmeye çalıştık. Hizmet, milyonlarca parametre üzerinde eğittiğimiz bir dizi önceden eğitilmiş model içerir. Yalnızca kendi verilerinizi yüklemeniz (veya İnternette veri aramanız) gerekir ve hizmet, belirli göreviniz için en uygun modeli seçebilir, mevcut önceden eğitilmiş modeli temel alan yeni bir NanoNet oluşturabilir ve verilerinizi girebilir İşlem için NanoNet'e.

NanoNets, öğrenme teknolojisini aktarır (mimari yalnızca temel bir sunumdur)

İlk NanoNet'inizi oluşturun (görüntü sınıflandırması)

1. İşlemek istediğiniz kategoriyi buradan seçin.

2. Ağı aramaya ve bir model oluşturmaya başlamak için tek tıklayın (kendi resimlerinizi de yükleyebilirsiniz).

3. Mavi altın eteğin anlaşmazlığını çözün (model hazır olduktan sonra, basit ve kullanımı kolay bir web arayüzü aracılığıyla test görüntülerini yüklemenize ve ayrıca belirli bir dile bağlı olmayan bir API sağlamanıza izin vereceğiz).

Lei Feng Ağı Lei Feng Ağı

Alibaba akıllı kilit sektörüne girdi ve akıllı bir ekosistem geliştirmek için Kadis ile el ele verdi
önceki
"Bebek" Toronto devam ediyor, yönetmen Liu Jie: Cevapsız tartışma daha anlamlı
Sonraki
Altın satın alma paniği: Çinli teyzelerin yanı sıra tüm ülkelerin merkez bankaları da çekim yaptı
Akıllı bir gaz ocağının doğuşu mutfağınızın sihrini daha da güçlü kılar
vivo X9Plus tadım toplantısı 26 Aralık'ta yapılacak: Peng Yuyan katılacak
Bilmeden 22 yıldır koruyor! Detective Conan'daki en unutulmaz karakterlerin envanteri
Dikkatli ol! Bu bilgisayar korsanlığı aracı, özel videolarınızı büyük ölçekli web sitelerine yükleyebilir
Sahte bir süpermarketi ziyaret etmiş olabilirsiniz! RT-Mart, ticari marka ihlali nedeniyle Shanzhai "RT-Mart" a dava açtı
Her senaryoda akıllı Ev Yapay Zekasının yeni çağına liderlik eden Oribo MixPad, öne monte akıllı ev girişi oluşturur
Charm blue note5 / note5 metal pozlama: 999 yuan'dan başlayan 2,5 GB RAM
Trafikte en çok etkileyen kişi olan Wang Sicong, çalınırken para kazanıyor!
Sabah Okuma | Büyük ölçekli soğutma ve yaklaşan yağmur ve kar
CSHIA Changsha Paylaşım Oturumu Önizlemesi
Birçok yabancı medya, yerel iş amiral gemisi Gionee M2017'yi övdü: pil ömrü canavarı!
To Top