Ustalaşılacak bir makale: Metin verilerinin NLP'de kodlanması nasıl gerçekleştirilir?

Doğal dil işlemede, sistemdeki verileri temsil etmenin bir yolunu bulmak (bir metin sınıflandırıcıda bir dizi metni temsil etmek gibi) çok önemlidir. İstatistiksel sınıflandırıcıların gereksinimlerini karşılamak için bu sınıflandırma verileri nasıl kodlanır? Cevap, giriş kelime vektörüdür. Bu makale, metin verileri için iki kodlama yöntemi sunar: seyrek vektörler ("tek sıcak kodlama" olarak da bilinir) ve yoğun vektörler.

Doğal dil işlemede, doğal dil işlemenin veri temsili çok önemli bir husustur. Diğer makine öğrenimi görevleri gibi, doğal dil işlemenin de verilerimizi (bir dizi metin) bir sistemde (metin sınıflandırıcı gibi) temsil etmenin bir yolunu bulması gerekir. Yoav Goldberg'in sorduğu gibi, "Bu kategorik verileri istatistiksel sınıflandırıcıların gereksinimlerini karşılamak için nasıl kodlayabiliriz?" Cevap, giriş kelime vektörüdür.

Kaynak: Yandex Data School Doğal Dil İşleme Kursu

Öncelikle, "kelimeleri dijital temsillere nasıl dönüştürebiliriz" sorusunu tartışmadan önce, verileri kodlamakla neyle ilgilendiğimizi düşünelim? Daha doğrusu neyi kodluyoruz?

Orijinal metindeki veya önceden işlenmiş metindeki sözcükler, harfler, konuşma bölümü etiketleri, sözcük düzenlemesi, sözcük sırası vb. Gibi bir dizi sözcük özelliklerinden bir dizi vektöre kadar bunlar kodlanacak içeriklerdir. Metin verilerinin kodlamasını gerçekleştirmenin iki yolu vardır: seyrek vektör ("tek sıcak kodlama" olarak da bilinir) ve yoğun vektör.

tek sıcak kodlama

Yapay sinir ağları, doğal dil işlemede (NLP), yani geleneksel doğal dil işlemede yaygın olarak kullanılmadan önce, metnin vektörleştirilmesi tek sıcak kodlama ile gerçekleştiriliyordu. Bazı uygulamalarda tek sıcak kodlamanın hala etkili bir kodlama yöntemi olduğu ve sinir ağı teknolojisini içerdiği, bu nedenle şu anda güncel olmadığı unutulmamalıdır. Tek sıcak kodlamada, her kelime veya sembol bir vektöre karşılık gelir.

Kaynak: Adrian Colyer

Örneğin, yukarıdaki resimdeki kod, "Kraliçe odaya girdi" yi temsil eden bir cümle vektörüyle temsil edilen kısa bir paragraf olarak kullanılabilir. Burada sadece "kraliçe" öğesinin etkinleştirildiğini ve "kral" ve "insan" gibi diğer öğelerin etkinleştirilmediğini unutmayın. Yukarıdaki şekil vektörünün eleman parçası "Kral bir zamanlar bir insandı, ama şimdi bir çocuk" anlamına geliyorsa, onun tek sıcak vektör temsili farklı olacaktır.

Veritabanının tek sıcak kodlamasının sonucu, seyrek bir matristir. 20.000 kelimeden oluşan bir külliyatınız olduğunu düşünün Bu külliyatta, 40 kelimeden oluşan kısa bir belgeyi tek seferde kodladıktan sonra, sonuç 20.000 satırlık bir matristir. Her satır bir kelimeyi temsil eder. Matris maksimum 40 sıfır olmayan elemana sahiptir Bu 40 kelimede çok sayıda benzersiz olmayan kelime varsa, sıfır olmayan daha az eleman olabilir. Bu şekilde, matriste bu yedek gösterimleri depolamak için sonunda büyük miktarda bellek gerektiren birçok sıfır eleman olacaktır.

Potansiyel bellek kapasitesi sorunlarına ek olarak, tek sıcak kodlamanın büyük bir kusuru, anlamlı ifade eksikliğidir. Bu yöntemi, belirli bir metindeki kelimelerin varlığı hakkında bilgi elde etmek için kullanabilsek de, bu kelimelerden herhangi bir anlam belirleyemeyiz. Bu sorunun nedenlerinden biri, tek sıcak kodlama kullanarak, kelimeler arasındaki konumsal ilişkiyi veya kelime sırasını bilmememizdir. Bu sıra, daha sonra bahsedilecek olan anlamın kelimelerle ifade edilmesi açısından en önemlisidir.

Ek olarak, tek sıcak kodlamada, kelime benzerliğinin görülmesi de zordur çünkü kelime vektörleri istatistiksel olarak ortogonaldir. Örnek olarak "köpek" ve "köpekler" veya "araba" ve "otomobil" i alın. Bu iki cümle çifti şüphesiz farklı açılardan benzerdir. Doğrusal bir sistemde tek sıcak kodlama gerçekleştirirken, ilk kelime grubu arasındaki benzerlik, kök oluşturma ve morfolojik onarım gibi ön işleme sürecinde geleneksel doğal dil işleme araçları kullanılarak görüntülenebilir. Bununla birlikte, gösterilmeyen ikinci kelime grubu arasındaki benzerlikleri bulmak için daha güvenilir bir yönteme ihtiyacımız var. Bu aşağıda açıklanmıştır.

Tek sıcak kodlanmış kelime vektörlerinin ana avantajı, bu alanda en yararlı olanlar gibi çok çeşitli doğal dil işleme görevlerinin gerçekleştirilmesine olanak tanıyan ikili kelimelerin ("bir grup kelime" olarak da adlandırılır) birlikte oluşmasını sağlamasıdır. Ve en yaygın görevlerden biri olan metin sınıflandırması. Bu tür bir kelime vektörü, doğrusal makine öğrenme algoritmaları ve sinir ağları için kullanışlıdır, ancak her ikisi de esas olarak doğrusal sistemlerle ilişkilendirilir. Doğrusal sistemler için yararlı olan ve yukarıda bahsedilen sorunların üstesinden gelmeye yardımcı olabilecek One-hot kodlamanın varyantları arasında n-gram ve TF-IDF gösterimi vardır. Tek sıcak kodlamadan farklı olsalar da, aşağıda tanıtılacak olan yerleştirmeden tamamen farklı basit vektör temsilleri olmaları bakımından benzerdirler.

Yoğun vektör

Spesifik metin verilerini belirli bir şekilde ifade ederken, özellikle ikili kelimelerin birlikte oluşması düşünüldüğünde, seyrek kelime vektörleri tamamen uygulanabilir bir yol gibi görünmektedir. Tek sıcak kodlamanın en ciddi ve bariz eksikliklerini çözmek için N-gram ve TF-IDF gibi ilgili doğrusal yöntemleri de kullanabiliriz. Bununla birlikte, başka bir yöntem yerine bu yöntem hala benimsenirse, metnin temel anlamını ve semboller arasındaki anlamsal ilişkiyi anlamak yine de zordur ve kelime gömme vektörü yukarıdaki problemleri çözebilecek bir yöntemdir.

"Geleneksel" doğal dil işlemede, insan manipülasyonu veya öğrenilmiş konuşma parçası etiketleme (POS) gibi yöntemler, metindeki farklı semboller (isimler, fiiller, zarflar, belirsiz makaleler, vb.) Tarafından hangi işlevlerin gerçekleştirildiğini belirlemek için kullanılabilir. ). Bu, doğal dil işleme işlevlerinin çeşitli yöntemlerinde kullanılabilen bir insan özelliği görevleri biçimidir. Örneğin, adlandırılmış varlık tanıma, bir metin parçasında adlandırılmış varlıkları ararsak, mantıklı bir yaklaşım, önce isimlere (veya isim cümlelerine) bakmaktır, çünkü adlandırılmış varlıklar neredeyse özel bir isim alt kümesidir.

Bununla birlikte, özelliği yoğun bir vektör olarak ifade edersek, yani çekirdek unsuru d boyutlu bir gömme uzayına gömün. 20.000 kelimeyi temsil etmek için kullanılan bir boyutu 50 veya 100 boyuta sıkıştırabiliriz. Bu yöntemde, her unsurun artık kendi boyutu yoktur, ancak bir vektöre ayrı ayrı eşlenir.

Daha önce belirtildiği gibi sonuçlar, anlamın ikili kelimelerin birlikte oluşmasıyla değil, kelimelerin konumsal ilişkisiyle ilgili olduğunu göstermektedir. Şöyle düşünün: "Foo" ve "bar" kelimelerinin aynı anda bir cümlede yer aldığını söylerseniz, anlamı yargılamak zordur. Ancak "Genç barı ürküten foo havladı" derseniz, bu kelimelerin anlamını yargılamak daha kolay. Sözcüğün konumu ve onu çevreleyen sözcüklerle ilişkisi çok önemlidir.

"Bir kelimeyle eşleşen kelime sayesinde anlamı netleşir" -John Rupert Firth

Kaynak: Adrian Colyer

Peki, bu özellikler nelerdir? Kelimeler arasındaki ilişkinin önemli düzeyini sinir ağı belirler. Bu özelliklerin insan yorumu tam olarak doğru olmasa da yukarıdaki şekil ünlü "kral-erkek + kadın = kraliçe" örneğiyle ilgili temel süreci göstermektedir.

Bu özellikler nasıl öğrenilir? Cevap, iki katmanlı (sığ) bir sinir ağı kullanmaktır ve kelime gömme genellikle doğal dil işlemenin "derin öğrenimi" ile birleştirilir, ancak kelime gömme oluşturma süreci derinliği kullanmaz. Öğrenme, öğrenilen ağırlıklar genellikle derin öğrenme görevlerinin sonraki aşamalarında kullanılmasına rağmen.

Popüler orijinal word2vec kelime gömme yöntemleri, her ikisi de verilen bağlam altındaki hedef kelimeyi veya verilen kelimenin altındaki kelimeyi tahmin eden sürekli kelime torbası (yani CBOW modeli) ve Skip-gram modelini içerir. Bağlam (buradaki "bağlam" ın metindeki sözcüklerin kayan penceresini ifade ettiğini unutmayın).

Modelin çıktı katmanı umurumuzda değil, çünkü çıktı katmanı eğitimden sonra atılacak ve gömme katmanının ağırlıkları sonraki doğal dil işleme sinir ağında kullanılacaktır. Bu gömme katmanı, tek sıcak kodlama yönteminde oluşturulan kelime vektörüne benzer.

Derleme grubu: Di Siyun, Hu Ting İlgili bağlantılar: https://www.kdnuggets.com/2018/11/data-representation-natural-language-processing.html Yeniden yazdırmanız gerekirse, lütfen arka planda bir mesaj bırakın ve yeniden yazdırma şartnamelerine uyun
IOS12 Eylül ayında piyasaya sürülecek ve minimum destek iPhone 5s'e kadar.
önceki
O yıllarda oynadığımız şaheserlerin arkasındaki oyun yapımcısı Tencent gözyaşı dökmeden ağlamak istiyor
Sonraki
Spor paketi kutsaması, yeni Ford Edge ST-Line tanıtıldı / 8 ileri otomatik manuel şanzıman
Apple, iPhone satışlarının her geçen yıl azaldığı krizi çoktan sezmişti, bu yüzden bunu yaptı ...
Han'da 7 günlük yemek fuarı düzenleniyor
Yeni kız arkadaş mı? Neymar özel bir partiye kadın manken getiriyor
Apple Store'dan sonra Google, Google Store'u açacak mı?
Fiyat çok beklenmedik! Xiaomi tarihin en güzel televizyonunu resmen yayınladı!
Yabancı web sitesi, yerli otobüste gerçek bir makine olan Huawei Honor 8X'i ortaya çıkardı
Sütlü çay dükkanının cazibesi nedir? Hangzhou'da ortalama altı veya yedi alışveriş merkezi var!
Yapay Sinir Ağlarının Düzenlenmesi (Teori) Makine öğreniminde karşılaşacağınız "çukurlar"
DS7 CROSSBACK E-TENSE 4X4 resmi olarak tanıtıldı, bu yıl içinde lansmanı planlanıyor
Google'ın oğlu Pixel 3 tekrar patladı, Liu Haiping hala başarısız oldu
Bugünün temel sesi | Samsung korkuyor mu? Grubu Huawei'ye katlanabilir ekran teknolojisi sağlamaması konusunda uyarıyor
To Top