state-of-the-art pre-training method XLNet

--

Merhaba arkadaşlar bugün ki yazım NLP üzerine olacak , NLP için olmazsa olmaz pre-training kavramının en önemli yöntemlerinden biri olan XLNet’i anlatacağım tabi ara ara BERT’e de değineceğim.Elbette bir kaç gün önce öğrendiğim kadarıyla artık XLNet en iyi çözüm değil Facebook RoBERTa adında yeni bir yöntem tanıttı ve şuan en iyisi bu.Onunla’da ilgili yeni bir yazı yazmayı düşünüyorum.Artık hikayeyi bırakıp gerçekleri anlatmaya başlayabiliriz…

XLNet, NLP projelerinde en son yüksek sonuçları elde etmek için kullanılan yeni bir pre-treaning yöntemidir.

Transfer learning NLP’DE kullanılan pretraining , sinir ağları için başarılı olan iki pretraining hedefi, autoregressive (AR) dil modellemesi ve autoencodingdir (AE).

Otoregresif dil modellemesi, son zamanlarda duygu analizi ve question-answering gibi çeşitli akış gerektiren NLP görevlerinde etkili olduğu tespit edilen deep bidirectional bağlamını modelleyemez.

Öte yandan, autoencoding tabanlı pretraining, orijinal verileri bozuk verilerden yeniden yapılandırmayı amaçlamaktadır. Bu modellemenin popüler bir örneği,bir başka başarılı pretraining methodu olan BERT’DE kullanılıyor.

BERT gibi modellerin bir avantajı, iki yönlü bağlamların yeniden yapılanma sürecinde kullanılabilmesidir, AR dil modellemesinin eksik olduğu bir şeydir.Bununla birlikte, Bert, pretraining sırasında girişi (yani belirteçleri) kısmen maskeler ve bu da pre-training-finetune tutarsızlığına neden olur. Buna ek olarak, BERT, AR modelleri ile tahmin edilen tokenların ortak olasılığını çarpanlara ayırmak için kullanılan product rule yoluyla izin verdiği tahmin edilen tokenlarda bağımsızlık olduğunu varsaymaktadır.Bu, potansiyel olarak BERT’de bulunan pretraining-finetune tutarsızlığına yardımcı olabilir.

XLNet, kısıtlamalardan kaçınırken iki tür dil pretraining modelinden (AR ve AE) fikir alır.

The XLNet Model

XLNet, eğitim süresi boyunca içeriğin hem sol tarafında hem de sağ tarafıda ki belirteçlerden oluşmasına izin veren, bidirectional contexti yakalayan ve onu genelleştirilmiş bir sıralamaya duyarlı AR dili modeli haline getiren bir permütasyon işleminden yararlanır.Pretraining sırasında, XLNet, Transformer-XL’de önerilen segment recurrent mechanizmanı ve relative encoding şemasını benimser.

Temel olarak, yeni permütasyon dili modelleme hedefi model parametrelerinin tüm izin verilen faktörizasyon emirleri arasında paylaşılmasına izin vermektedir. Bu, AR modelinin, BERT’ın tabi olduğu bağımsızlık varsayımını ve pretrain-finetune tutarsızlığını önlerken bidirectional contexti doğru ve etkili bir şekilde yakalamasını sağlar.

Basitçe söylemek gerekirse, XLNet orijinal sırasını korur, konumsal kodlamalar kullanır ve faktörizasyon sırasının söz konusu permütasyonunu elde etmek için Transformers’taki özel bir attention maskesine güvenir. Diğer bir deyişle, orijinal Transformer mimarisi, hedef belirsizliği ve pretrain-finetune uyumsuzluğu gibi sorunlardan kaçınmak için değiştirilmiş ve yeniden parametrelenmiştir.

XLNet, pretraining frameworkü olarak kullandığı Transformer-XL tabanlıdır. Açıkça, önerilen permütasyon işleminin çalışması için, gizli durumların önceki bölümlerden uygun şekilde yeniden kullanılmasını zorunlu kılan birkaç değişiklik önerilmiştir. BERT’den gelen bazı tasarım fikirleri kısmi tahmin yapmak ve question answering de soru ve bağlam paragrafı gibi çoklu bölümlerden oluşan belirli görevleri desteklemek için de kullanılır.

Aşağıdaki örneklerden, hem BERT hem de XLNet’in hedefi farklı şekilde hesapladığını gözlemleyebiliriz. Genelde, XLNet, BERT’in ihmal ettiği (New, York) gibi tahmin hedefleri arasındaki daha önemli bağımlılıkları yakalar.

XLNet ayrıca GPT ve ELMo ile karşılaştırıldığında daha fazla bağımlılıkları kapsadığı kanıtladı.

Genel olarak, XLNet, dil modelleme ve ön eğitim arasındaki boşluğu doldurmak için zorlayıcı bir durum ortaya koymaktadır, hepsi AR modellemesi ve ödünç alma(borrowing) tekniklerinin BERT ve Transformer-XL gibi önceki yöntemlerden ödünç alınmasıyla başarılmıştır. Daha da önemlisi, XLNet, mevcut durumdaki geleceğin uyumsuzluğunu ele almayı hedeflemektedir, bu da dil modellerinin bu yararlı genelleme ile aşağı akış yönünde ki görevleri potansiyel olarak iyileştirebileceği anlamına gelir.

SONUÇ

RACE, modelin question-answering ve reading comprehensionı test etmek için kullanılan veri setini içerir. Aşağıdaki tabloda gösterildiği gibi, XLNet hem GPT hem de BERT pre-training modellerinden daha iyi performans göstermektedir (doğruluk açısından).

SQuAD ve NewsQA popüler reading comprehension veri setleridir. Spesifik olarak, Özellikle, XLNet hem SQuAD 2.0 hemde NewsQA üzerinde eğitilir ve oldukça başarılı bir sonuç elde ediyor, dev sette bile BERT’DEN daha iyi performans gösteriyor.

GLUE, 9 doğal dil anlama görevinden oluşmaktadır. XLNet kullanarak, tek ve çoklu görev gibi birden fazla ayarın yanı sıra tekli modeller ve topluluklar da GLUE’da test edilir. Sonunda, çok görevli bir topluluk XLNet, 9 datasetin 7'sinde state-of-the-art sonuçları elde etti. XLNet, aşağıdaki tabloda görüldüğü gibi farklı veri kümelerinde BERT’den daha iyi performans göstermektedir.

Yazının başında söylediğim gibi XLNet BERT ve diğer muadillerine göre gayet başarılı bir yöntem ancak Facebook’un geliştirmiş olduğu RoBERTa şuanda bunu geçmiş durumda. Güncel durumu görmek için şu linki kullanabilirsiniz:

https://gluebenchmark.com/leaderboard/submission/JuLiHrAkS9VSQRh1W6TJ9V9SOu23/submission/JuLiHrAkS9VSQRh1W6TJ9V9SOu23/-Lk5ZrckAabWVeQBoxrA

SEVGİYLE KALIN…

REFERANS

XLNet: Generalized Autoregressive Pretraining for Language Understanding — (Zhilin Yang, Zihang Dai, Yiming Yang, Jaime Carbonell, Ruslan Salakhutdinov, and Quoc V. Le)

https://medium.com/dair-ai/xlnet-outperforms-bert-on-several-nlp-tasks-9ec867bb563b

--

--