Metin verileri üzerinde bir model eğitebilmeniz için genellikle metni işlemeniz (veya önceden işlemeniz) gerekir. Çoğu durumda, metnin bir modele beslenmeden önce simgeleştirilmesi ve vektörleştirilmesi gerekir ve bazı durumlarda metin, normalleştirme ve özellik seçimi gibi ek ön işleme adımları gerektirir.
Metin uygun bir formatta işlendikten sonra, metin sınıflandırma, metin oluşturma, özetleme ve çeviri gibi doğal dil işleme (NLP) iş akışlarında kullanabilirsiniz.
TensorFlow, metin ve doğal dil işleme için iki kitaplık sağlar: KerasNLP ( GitHub ) ve TensorFlow Text ( GitHub ).
KerasNLP, en yeni trafo tabanlı modellerin yanı sıra alt düzey simgeleştirme yardımcı programlarını içeren üst düzey bir NLP modelleme kitaplığıdır. Çoğu NLP kullanım durumu için önerilen çözümdür. TensorFlow Metin üzerine inşa edilen KerasNLP, düşük seviyeli metin işleme işlemlerini kullanım kolaylığı için tasarlanmış bir API'ye soyutlar. Ancak Keras API ile çalışmayı tercih etmiyorsanız veya alt düzey metin işleme işlemlerine erişmeniz gerekiyorsa, doğrudan TensorFlow Text'i kullanabilirsiniz.
KerasNLP
TensorFlow'da metin işlemeye başlamanın en kolay yolu KerasNLP kullanmaktır. KerasNLP, son teknoloji önceden ayarlanmış ağırlıklara ve mimarilere sahip modüler bileşenlerden oluşturulmuş iş akışlarını destekleyen bir doğal dil işleme kitaplığıdır. KerasNLP bileşenlerini kullanıma hazır yapılandırmalarıyla kullanabilirsiniz. Daha fazla kontrole ihtiyacınız varsa bileşenleri kolayca özelleştirebilirsiniz. KerasNLP, tüm iş akışları için grafik içi hesaplama sağlar, böylece TensorFlow ekosistemini kullanarak kolay üretim bekleyebilirsiniz.
KerasNLP, BERT ve FNet gibi popüler model mimarilerinin uçtan uca uygulamalarını içerir. KerasNLP modellerini, katmanlarını ve belirteçlerini kullanarak, makine çevirisi , metin oluşturma , metin sınıflandırma ve dönüştürücü model eğitimi dahil olmak üzere birçok son teknoloji NLP iş akışını tamamlayabilirsiniz.
KerasNLP, çekirdek Keras API'sinin bir uzantısıdır ve her üst düzey KerasNLP modülü bir Layer
veya Model
. Keras'a aşina iseniz, KerasNLP'nin çoğunu zaten anlamışsınızdır.
TensorFlow Metni
KerasNLP, katmanlar veya modeller olarak kullanılabilen üst düzey metin işleme modülleri sağlar. Alt düzey araçlara erişmeniz gerekiyorsa TensorFlow Text'i kullanabilirsiniz. TensorFlow Text, ham metin dizileri ve belgelerle çalışmanıza yardımcı olacak işlemler ve kitaplıklar sağlar. TensorFlow Text, metin tabanlı modellerin gerektirdiği ön işlemeyi düzenli olarak gerçekleştirebilir ve ayrıca sıralı modelleme için faydalı diğer özellikleri içerir.
TensorFlow Text'i kullanarak aşağıdakileri yapabilirsiniz:
- Dizeleri boşlukta bölebilen, sözcükleri ve noktalama işaretlerini ayırabilen ve belirteçlerle bayt ofsetlerini döndürebilen zengin özelliklere sahip belirteçler uygulayın, böylece bir dizenin kaynak metinde nerede bulunabileceğini bilirsiniz.
- Bir jetonun belirtilen bir dizi modeliyle eşleşip eşleşmediğini kontrol edin. Büyük harf kullanımı, noktalama işaretleri, sayısal veriler ve diğer belirteç özelliklerini kontrol edebilirsiniz.
- Belirteçleri n-gram olarak birleştirin.
- Metni TensorFlow grafiği içinde işleyin, böylece eğitim sırasında belirteçleştirme, çıkarımdaki belirteçlendirmeyle eşleşir.
nereden başlamalı
Aşağıdaki kaynaklar, TensorFlow metin işlemeye başlamanıza yardımcı olacaktır:
- TensorFlow Text : TensorFlow Text ve KerasNLP kullanarak metni işlemenize yardımcı olacak öğreticiler, kılavuzlar ve diğer kaynaklar.
- KerasNLP : KerasNLP için belgeler ve kaynaklar.
- TensorFlow öğreticileri : Temel TensorFlow belgeleri (bu kılavuz), birkaç metin işleme öğreticisi içerir.
- Google Machine Learning: Metin Sınıflandırma kılavuzu : Metin sınıflandırmaya adım adım giriş. Makine öğreniminde yeniyseniz, burası başlamak için iyi bir yerdir.