Çince kelime segmentasyon teknolojisi derin öğrenme makaleleri

Önceki makalede "Çince kelime segmentasyon teknolojisi ve 58 aramada pratik", kelime segmentasyon teknolojisinin gelişimi boyunca, temel olarak sözlük kelime segmentasyonu, sözlük ve istatistiksel kelime segmentasyonu ve istatistiksel model tabanlı olmak üzere çeşitli temsili kelime segmentasyon yöntemlerini tanıttık. Sıfat (CRF). Bu makale, önceki bağlamı devam ettirecek ve NLP alanındaki daha popüler yöntemlerden bazılarını tanıtacaktır.NLP alanındaki sorunların çoğunu halledebilirler ve Çince kelime segmentasyonu ile sınırlı değildirler.

Bu makalede açıklanan tüm derin öğrenme yöntemleri, kelime segmentasyonunu, önceki makaledeki CRF kelime segmentasyonu gibi bir dizi etiketleme görevi olarak ele alır. CRF kelime segmentasyonuna dönüp bakıldığında, karakteristiği, yerel bağlam özelliklerini manuel olarak yapılandırılmış özellik şablonları aracılığıyla hedeflenen bir şekilde çıkarmak ve ardından özellik ağırlıklarını öğrenmektir. Orijinal verilerin önceden insan bilgisi ile özelliklere ön işlemden geçirilmesi ve ardından öğrenme için modelin girilmesi için bu tür bir yöntem, genellikle daha sonra da kullanılacak olan geleneksel veya klasik makine öğrenimi yöntemleri olarak adlandırılır. Bu şekilde, alan uzmanlarının enerjilerinin çoğunu özellik tasarımına ayırmaları gerekir, bu nedenle özellik mühendisliği bunun için özellikle önemlidir. Bunun tersi, derin sinir ağı modelleri aracılığıyla uygulanabilen "özellik öğrenme" veya "temsil öğrenme" yaklaşımıdır.

Bir sinir ağı, uyarlanabilir basit birimlerden oluşan geniş ölçüde paralel birbirine bağlı bir ağdır Buradaki basit birim bir nöron modelidir. Nöron modeli doğrusal ağırlıklı bağlantılardan ve aktivasyon fonksiyonlarından oluşur ve bağlantı ağırlıklarının eğitim yoluyla elde edilmesi gerekir. Belirli bir hiyerarşik yapıda birbirine bağlı nöronlardan oluşan sinir ağı, özellik öğrenme amacına ulaşabilir. Bu mantığa göre, ağ ara bağlantı düzeyini derinleştirerek, model daha fazla özellik gösterimi düzeyini öğrenebilir ve son görevin etkisi daha iyi olacaktır. Teorik olarak, aynı görünüyor Daha fazla parametresi olan model daha yüksek karmaşıklığa ve "daha büyük kapasiteye" sahiptir, bu da daha karmaşık öğrenme görevlerini tamamlayabileceği anlamına gelir. Ancak normal şartlar altında, karmaşık modellerin eğitim verimi düşüktür ve aşırı uyuma düşmesi kolaydır, bu nedenle insanlar tarafından tercih edilmek zordur. Bulut bilişimin ve büyük veri çağının ortaya çıkmasıyla birlikte, bilgi işlem gücünde önemli bir artış, eğitimin verimsizliğini azaltabilir ve eğitim verilerinde önemli bir artış, aşırı uyum riskini azaltabilir. Bu nedenle, bu tür derin ve karmaşık model popüler hale geldi.

NLP alanındaki görevlerin çoğu cümle düzeyinde görevlerdir. İşlem hedefi bir cümle veya makaledir. Bununla birlikte, Çince metin morfoloji, sözdizimi ve anlambilim gibi karmaşık özellikler içerir. Bunları yalnızca insanın önceki bilgilerine dayanarak çıkarmak zordur. Çok kapsamlı olun. Bu nedenle modelin verilerden iyi özellikler öğrenmesini sağlayan temsil öğrenme, NLP alanında daha popüler bir yöntem haline gelmiştir. Sinir ağı modeli genellikle girdi katmanı, gizli katman ve çıktı katmanı olarak ikiye ayrılır, çekirdeği veya derinliği gizli katmana yansıtılır.Bu nedenle gizli katmanın yapısı özellikle önemlidir ve öznitelik çıkarımının kalitesini belirler. Örneğin, CNN, RNN, vb. İle aşinayız, görüntü alanında daha çok CNN kullanılacaktır ve NLP alanı daha fazla RNN kullanacaktır.

BiLSTM + CRF kelime bölütleme yöntemi

Model tanıtımı

BiLSTM'yi tanıtmadan önce, önce RNN, LSTM ve BiLSTM arasındaki ilişkiyi anlayın. RNN yapısı, tekrarlanan sinir ağı modüllerinden oluşan bir zincir yapısına sahip olan aşağıdaki şekilde gösterildiği gibi basitleştirilebilir (şekilde gizli katman düğümü A). Her girdi bir gizli katman düğümüne karşılık gelir ve gizli katman düğümleri arasında yönlendirilmiş bir doğrusal sıra oluşturulur Gizli katman düğümünün çıktısı, önceki düğümün girişine ve durum çıktısına bağlıdır. RNN'nin NLP'de popüler olmasının ve baskın bir pozisyonda olmasının nedeni, esas olarak, NLP'deki belirsiz uzunluktaki dizi problemiyle başa çıkmak için RNN yapısının doğal adaptasyonundan kaynaklanmaktadır. Aşağıdaki şeklin sağ kısmında gösterilen yapı, kelime bölütleme, konuşma parçası etiketleme, varlık tanıma ve anlamsal etiketleme gibi dizi etiketleme problemini çözebilir.

LSTM, özel bir RNN türüdür ve genel yapısı da yukarıdaki şekilde gösterildiği gibidir.Standart RNN'den farkı, tekrarlanan sinir ağı modüllerinin yapısıdır. LSTM, kasıtlı tasarım yoluyla uzun vadeli bağımlılık sorununu ortadan kaldırırken, standart RNN, uzun vadeli bağımlılık elde etmek için genellikle daha yüksek maliyet (eğitilmesi zor) gerektirir. BiLSTM, aynı anda geçmiş ve gelecek özellikleri yakalayabilen iki LSTM'nin farklı yönlerde birikimidir. BiLSTM kendi başına sekans etiketleme problemini halledebilir Aşağıdaki şekil yapısını gösterir ve sağ kısım BiLSTM ünitesinin kısmi bir yapı diyagramıdır.

Giriş bir kelime dizisidir ve her kelime Word2Vec, GloVe vb. Gibi harici bir model tarafından ön eğitimle elde edilebilen (doğrudan kullanılan) Kelime Gömme olarak ifade edilebilir veya bu modelde bir parametre olarak doğrudan eğitilebilir. Burada, Kelime Gömme'nin dim_embedding boyutunu belirtmeniz gerekir. BiLSTM katmanının üç parametre belirtmesi gerekir: 1) BiLSTM sayı_adımlarının maksimum zincir uzunluğu (veya zaman adımlarının sayısı, yani modelin işleyebileceği metin dizisinin maksimum uzunluğu); 2) BiLSTM katman sayısı katmanlar, bir BiLSTM katmanı soldan sağa 3) LSTM birimindeki her ağ modülünün gizli katman düğümlerinin sayısı (LSTM biriminde 4 ağ modülü vardır) hidden_size'dir, daha sonra her LSTM birimi tarafından durum vektörü çıktısının boyutu da gizli_boyutlu olur. Çıktı katmanının, gizli katmanın çıktısını her etiket olarak bir sözcüğün işaretlenme olasılığıyla eşleştirmek için bir softmax katmanı eklemesi gerekir Burada, etiket sayısı etiketlerinin belirtilmesi gerekir.

Bu yapı sekans etiketleme problemini çözmek için kullanıldığında küçük bir problem vardır.Her kelime için, model en yüksek olasılığa sahip etiketi tahmin edebilir, ancak nihai etiketleme sekansı en iyi olmayabilir. Örneğin aşağıdaki resim görünecektir.

Sonunda, açıkça yanlış olan "BBME" dizisi tahmin edilecektir. Bu sırada, başka bir CRF katmanı eklenirse, bu tür durumlardan geçiş olasılığı dikkate alınarak etkin bir şekilde önlenebilir.Tam yapı aşağıdaki gibidir.

Her bir X giriş dizisi için, y dizisi olarak işaretlenen puan:

Formülde, P, kelimenin karşılık gelen etiketle işaretlenme olasılığıdır; A, geçiş olasılığı matrisidir. Puan, etiketli dizinin olasılığını elde etmek için normalleştirilebilir:

Yx, X giriş dizisinin tüm olası etiketlenmiş dizilerinin kümesidir. Daha sonra kayıp işlevi şu şekilde ifade edilebilir:

En küçük kayıp işlevi, gerçek etiket dizisinin en büyük olasılığı anlamına gelir ve model parametreleri, kayıp işlevi optimize edilerek çözülebilir.

Model eğitildikten sonra, nihai sonuç olan eğitilmiş parametrelere göre maksimum puana karşılık gelen etiket dizisi y elde edilir ve burada Viterbi algoritması da kullanılabilir. Tahmin süreci aşağıdaki formülü çözmektir:

Model eğitimi

Model eğitimi TensorFlow çerçevesi kullanılarak uygulanır.Eğitim verileri manuel olarak 58 sahne külliyatına ve toplamda 30w cümle içeren az miktarda Halkın Günlüğü hizalanmış külliyatına ek açıklamalıdır. İşte uygulama sürecine göre dikkat edilmesi gereken birkaç ayrıntı:

  • Eğitimden önce iki veri parçasının hazırlanması gerekir: eğitim örnekleri (giriş metni dizisi ve çıktı etiketi dizisi dahil) ve WordEmbedding. Harici bir WE varsa, model başlatma sırasında okunacak ve kilitlenecektir, yani bir eğitim parametresi olarak kullanılmayacaktır, değilse, WE başlatılmalı ve eğitime katılmak için bir parametre olarak kullanılmalıdır.
  • Sıranın maksimum uzunluğunu num_steps olarak ayarlayın, ardından giriş metni gömerken, fazla kısmın kesilmesi ve yetersiz kısmın Dolgu olması gerekir. Toplu eğitim için, bir seferde BiLSTM katmanına beslenen veri boyutu batch_size * num_steps * embedding_size şeklindedir.
  • TensorFlow'da iyi tanımlanmış temel LSTM birimleri ve çok katmanlı RNN ağ birimleri vardır. Num_layers, hidden_size ve drop_out ayarlandığı sürece, BiLSTM katmanı kolayca yapılandırılabilir. Her bir LSTM ünitesi bir hidden_size vektörü çıkarır, çift yönlü olduğu için, BiLSTM katmanının çıktısı olan veri boyutu batch_size * num_steps * 2 * hidden_size şeklindedir. Her düğümün etiket olasılığını elde etmek için BiLSTM katmanında tam bağlantılı bir softmax katmanı ayarlanır.Veri boyutu batch_size * num_steps * num_class'tır ve num_class'lar etiketlerin sayısıdır.
  • CRF katmanının sağlaması gereken şey, önceki bölümde verilen formüle göre softmax katmanının düğüm etiketleme olasılığı çıktısı ile birleştirilen durum geçiş matrisidir, herhangi bir etiketleme dizisinin puanı hesaplanabilir ve ardından normalize edilmiş olasılık elde edilebilir. Kayıp değeri, numune ikame edilerek elde edilebilir ve kayıp değerini optimize etmek için uygulamada AdamOptimizer kullanılır.

Nihai karşılaştırmalı deney sonuçları, BiLSTM + CRF'nin geleneksel CRF segmentasyonuna göre bariz avantajlara sahip olmadığını ve doğruluk ve geri çağırmada sadece hafif bir iyileşme (her ikisi de% 95 düzeyinde) ve segmentasyonun ortalama zaman tüketiminin doğru olduğunu göstermektedir. CRF'nin 3-20 katıdır (model parametrelerinin ölçeğine bağlı olarak) Yetersiz veri olması durumunda (deneyde yaklaşık 26 w cümle), sayısal katmanlar ve gizli_boyutu artırılması etkiyi iyileştirmeyecek, ancak modelin farklı olmasına neden olacaktır. Performans, doğrulama kümesinde istikrarsız. BiLSTM + CRF, Çince kelime segmentasyonunda istenen etkiyi elde edemiyor.Bunun nedeni, yetersiz ek açıklama verisine ek olarak, LSTM'nin uzun mesafe bağımlılığı ve daha derin anlamsal özellikleri yakalamadaki avantajlarının kelime segmentasyon görevlerinde kullanılamaması olabilir. Bu aynı zamanda kelime bölütleme görevinin kendisinin karmaşık sözdizimi ve dilbilgisi özelliklerine bağlı olmadığını da gösterebilir. Bununla birlikte, LSTM, anlamsal açıklama ve dil modelleri gibi uzun vadeli bilgiye bağımlı görevlerde hala potansiyele sahip olmalıdır. Kamu hesabı önündeki "Dil Modeli ve Uygulaması" makalesi, LSTM'nin dil modelinde uygulanmasını tanıtır ve ilgilenen okuyucular bunu anlayabilir.

BiLSTM modelindeki diğer bir kilit nokta da WordEmbedding seçimidir.Önceden, WE'nin Word2Vector, GloVe gibi harici modellerden elde edilebileceği ve daha sonra doğrudan veya model eğitiminde bir parametre öğrenimi olarak kullanılabileceği söylendi. Her iki yöntemi de denedik.İlk yöntem, 58 sahneden oluşan külliyat üzerinde eğitilmiş Word2Vec modelini kullanır.Son sonuç, ikinci yöntemin daha iyi kelime segmentasyonuna sahip olmasıdır. Ancak, bu ilk yöntemi inkar etmez.Önceden eğitilmiş Kelime Gömme uygulamamızın kendisi iyi olmayabilir. Mevcut eğilime göre, ön eğitim artı transfer öğrenme modeli birçok NLP görevinde iyi performans gösteriyor. Diğer bir deyişle, iyi bir harici Kelime Gömme işleminiz varsa, BiLSTM + CRF modelini kullanmak daha iyi sonuçlar verebilir. Aşağıdaki sayfaların içeriği de bunu yansıtabilir.

BERT'ye dayalı kelime segmentasyon yöntemi

Model tanıtımı

Pek çok kişinin BERT adını duyduğuna inanıyorum.Bu, belirli NLP problemlerini büyük ölçekli eğitim öncesi dil modelleri aracılığıyla çözmenin mevcut yolunun en iyi temsilcisi olmalıdır. Problemlerle bu şekilde başa çıkmanın yolu BERT'den önce de mevcuttu Burada, geçişi kolaylaştırmak için bu yolu kısaca tanıtmak için LSTM'yi örnek olarak alalım.

Bir önceki bölümde bahsedildiği gibi LSTM bir dil modeli olarak kullanılabilir ve yapısı aşağıda gösterildiği gibi olabilir.

Giriş, bir cümlenin ilk N kelimesi dizisidir ve çıktı N + 1. kelimedir. Dil modeli eğitimi, büyük miktarda örnek veriyi kolayca elde edebilen ve zengin dil özelliklerini öğrenebilen, denetimsiz bir eğitim sürecidir. Dikkatli okuyucular, yukarıdaki şeklin yapısının metin sınıflandırma görevleri için de çok uygun olduğunu ve yalnızca alt çıktı katmanının yapısını biraz değiştirmesi gerektiğini görebilir. Örneğin, dil modeli eğitimi sırasında, çıktı katmanı gizli katman değişkenlerini tam bağlantılar aracılığıyla sözlük alanına eşlerken, sınıflandırma görevi etiket boyutlarına (0 ve 1 gibi) eşlenir ve bunların girdi ve gizli katman yapısı temelde aynıdır. Ön eğitim fikri, bir dil modelindeki model parametrelerini çok sayıda metin aracılığıyla önceden eğitmek ve ardından çıktı katmanı yapısını doğrudan sınıflandırma görevleri için kullanılacak şekilde dönüştürmektir. Önceden eğitilmiş parametreler artık sınıflandırma görevinin başlatma parametreleri olarak kullanılabilir ve ardından sınıflandırma görevinin örnek verileri, ağ parametrelerinin ince ayarını yapmak (ince ayar) için modele beslenir. Bunun birçok avantajı vardır: 1) Yalnızca az miktarda etiketlenmiş veri olması durumunda, karmaşık modeller kullanılabilir; 2) eğitimi hızlandırmak için; 3) çok sayıda metin derlemesinde eğitilmiş dil özelliklerinden tam olarak yararlanmak için.

Ön eğitimin ince ayar işlemine ek olarak, başka bir etkili yol, kelime gömme gibi önceden eğitilmiş ağ parametrelerini doğrudan başka bir özel göreve aktarmaktır (model yapısı orijinal modelden tamamen farklı olabilir Doğrudan kullanılır. BERT makalesi ayrıca ince ayar yönteminin ikincisinden biraz daha iyi olduğundan bahsetti. Bu nedenle, ince ayar yöntemini de kullanıyoruz.

NLP görevleri kabaca dört kategoriye ayrılabilir: 1) kelime segmentasyonu, varlık tanıma, anlamsal etiketleme vb. Gibi sıralı etiketleme; 2) metin sınıflandırması, duyarlılık analizi, metin benzerliği vb. Gibi sınıflandırma görevleri; 3) QA gibi cümle ilişkisi yargısı , Doğal dil çıkarımı vb .; 4) makine çevirisi, özetleme vb. Gibi üretken görevler. Ve BERT, ilk üç kategorideki problemlerin çoğunu çözebilir ve birçok görevde mevcut en iyi performansa sahiptir. BERT modeli, çok katmanlı çift yönlü bir Transformatör kodlayıcı yapısıdır ve basitleştirilmiş yapı şeması aşağıdaki gibidir.

Bir dizi etiketleme görevi olarak kullanıldığında, bu rakamın önceki BiLSTM yapısına biraz benzer olduğu görülebilir. Temel fark, gizli katmanda kullanılan temel birimlerin farklı olmasıdır.BERT'de kullanılan Transformatör, giriş ile gizli katman arasında tam olarak bağlanır.Aynı katmandaki Transformatörler arasında bilgi aktarımı yoktur.Bu bağlantı yapısı da Transformatörün özellikleri ile belirlenir. nın-nin. Transformer şu anda NLP alanındaki en iyi özellik çıkarıcıdır. Özü, öz dikkatin üst üste binmesidir. Bu model, Google ekibi tarafından Attentionis tüm ihtiyaçlarınız için önerilmiştir.

Dikkat mekanizması ilk olarak görüntü alanında önerilmiştir.Bir sahne hakkında belirli bir yargıya varıldığında, çoğu zaman sahnenin tüm alanlarına dikkat etmenin gerekli olmadığına inanırlar.Yargı yapmak için birkaç alana dikkat etmek yeterlidir. Örneğin, beğenip beğenmediğinize karar verebilmeniz için size bir portre resmi verin. Hızlı ve doğru bir şekilde tespit etmek için (dikkat kaynakları sınırlıdır), o zaman bir karar vermek için yalnızca birkaç pozisyona dikkat etmeniz gerekir ve diğer pozisyonları görmezden gelebilirsiniz. Bilgi müdahalesi. Dikkat modelinin basit bir özeti, odaklanması gereken hedef alana (ağırlık olarak anlaşılabilir) daha önemli bir dikkat verirken, çevredeki alanlara daha az dikkat göstermektir.

NLP alanında, ilk olarak makine çevirisi görevine etkili bir şekilde uygulandı: kelimeyi hedef cümlede (çevrilmiş cümle) belirli bir konumda tahmin etmek için, dikkat vektörü (ağırlık vektörü) onunla kaynak cümle arasındaki farkı tahmin etmek için kullanılır ( Çevrilen cümleler) her bir kelimenin korelasyonunun ne kadar güçlü olduğu ve ağırlıklı toplamı hedef kelimenin yaklaşık değeri olarak kullanın. Örneğin, "makine öğrenimi" kaynak cümlesi "makine öğrenimi" hedef cümlesine çevrildiğinde, "makine" ve "" çevirileri yapılırken, "makine" ye, "öğrenme" ve "uygulama" ise "öğrenmeye" daha fazla önem veririz.

Transformer bir öz-dikkat mekanizması kullanır.Makine çevirisinden dikkat mekanizmasının hedef cümledeki her kelime ile kaynak cümledeki her kelime arasındaki korelasyon derecesi olduğu anlaşılır, o zaman öz dikkat aynı cümledeki her kelime arasındaki ilişkiyi tanımlamaktır. İkisi arasındaki korelasyon, yani cümlenin hem kaynak hem de hedef olduğu anlamına gelir. Her bir pozisyonun hedef vektörü, diğer pozisyonların kelime vektörlerinin ağırlıklı toplamı ve dikkat ağırlığıdır. RNN'nin yapısını hatırlatarak, kelimeler arasındaki korelasyonun doğrusal bir yapı aracılığıyla adım adım aktarılması gerekir ve Transformer'in dikkat mekanizması, her kelimenin rolünü ve diğer kelimeleri basitleştirir. Bu yapı aynı zamanda Transformatörün paralel olarak hesaplanmasına da izin verir ki bu da RNN'nin yapması zor.

Transformer'in kodlayıcısına bir göz atalım (tam kod çözücü modülü de dahildir ve BERT'de sadece kodlayıcı kısmı kullanılır) yapısı aşağıdaki şekilde gösterilmektedir.

İlk katman Multi-HeadAttention'dır. Çoklu-başlık olarak adlandırılan, birden fazla dikkat ağırlıkları setine sahip olarak anlaşılabilir.Her pozisyon birden fazla hedef vektörü alabilir ve daha sonra çoklu hedef vektörler, bu katmanın çıktısı olacak şekilde bir vektöre eklenebilir. Bunun nedeni, yazarın sözcükler arasında birden fazla ilişki olacağını düşünmesidir. Üstte ileri beslemeli bir sinir ağı katmanı var, amaç modeldeki parametrelerin daha fazla etkileşime sahip olmasını sağlamak. Eğitimi kolaylaştırmak için her bir alt katman arasında artık bağlantı ve katman normalizasyonu kullanılır. Çok katmanlı Trafo ara bağlantısı BERT modelini oluşturur.

BERT tabanı ve BERT büyük resmi iki modeli verilmiştir.Çin BERT temel modelini kullanıyoruz.Gizli katman derinliği (Transformatörün üst üste bindirildiği katman sayısı) katman = 12, hidden_size = 768 (Transformer çıkış vektörünün boyutu), uzun kafa sayısı 12, tüm model yaklaşık 110M parametreler, resmi olarak eğitilmiş eğitim öncesi modeli doğrudan kullanabiliriz.

Gizli katmanın karakteristik yapısına ek olarak, BERT, girdi ve çıktı katmanlarının ayrıntılı tasarımında, her metin girişinin ilk konumuna CLS vektör bitleri (sınıflandırma görevleri için) eklemek ve metnin ortasına eklemek gibi bazı karmaşık tasarımlar da yapmıştır. SEP vektör biti (cümle ilişkisi yargı görevi için kullanılır) ön ve arkanın sırasıyla iki cümle olup olmadığını ayırt etmek için kullanılır. Model eğitiminde, artık hedef görev olarak bir sonraki kelimenin standart soldan sağa tahminini kullanmazlar, ancak iki yeni görev önerirler: biri cümledeki bazı kelimeleri rastgele bloke etmek ve ardından engellenen kelimeyi tahmin etmektir; Diğer bir görev, bir sonraki cümleyi tahmin etmek, yani girilen iki cümlenin bir sınıflandırma görevi olan SONRAKİ ilişkileri olup olmadığını tahmin etmektir. Muhtemelen, bu ustaca tasarımlar, güçlü bir BERT performansı yaratmak için büyük miktarda metin külliyatı ile birleştirildi. Daha detaylı bir giriş için orijinal metni veya diğer giriş makalelerini okuyabilirsiniz, burada detaylı olarak tanıtmayacağım.

Model eğitimi

BERT model eğitimine dayanarak, yapmamız gereken temel şey kendi veri setimizde ince ayar yapmaktır. Aşağıdakiler de sürece göre bazı ayrıntıları kısaca açıklamaktadır:

  • Kaynak kodu ve eğitimli Çin BERT temel modeli, esas olarak kontrol noktası dosyasını ve vocab.txt sözlük dosyasını içeren github'daki Google açık kaynak projesinde indirilebilir.
  • Sınıflandırma görevleri için ince ayar uygulaması run_classsifier.py kaynak kodda sağlanmıştır.Sıra etiketleme görevleri için çoğu yeniden kullanılabilir ve örnek verilerin işlenmesinde ve nihai kayıp değerinin hesaplanmasında yalnızca biraz değiştirilmeleri gerekir. Her şeyden önce, kendi kelime bölütleme örnek verilerimiz için karşılık gelen işlemciyi uygulamalıyız.Giriş tarafı için bir metin cümlesidir (eğer üst ve alt cümleler ise, SEP ile ayrılır ve kelime segmentasyon görevi bir metin cümlesidir) İşlem aynıdır. Fark etikettir. Sınıflandırma bir etiket çıkarır ve sıra etiketi çıktısı da bir dizi etikettir.
  • Sınıflandırma görevinin gizli katmanının çıktısı, CLS bitine karşılık gelen çıktıdır. Kaynak kodu get_pooled_output () ile elde edilir. Veri boyutu batch_size * hidden_size olmalıdır. Sıra etiketlendiğinde, gizli CLS bitinden sonraki tüm dizinin çıktısı elde edilmelidir. Get_sequence_output () aracılığıyla elde edilebilir ve veri boyutu batch_size * num_steps * hidden_size şeklindedir.
  • Çıktı katmanı, gizli değişkeni (boyut gizli_boyutu) her etiketin olasılık değeriyle eşleyen softmax katmanıdır (boyut 4). Olasılık negatifse kayıp değeridir ve tüm örneklemlerin ve dizideki tüm konumların kayıp değerlerinin toplamı buna dayanır. Girdi örneklerinin toplam kaybı.

Son olarak, karşılaştırma deneyinin sonuçlarını tanıtacağım.Genel olarak konuşursak, BERT, geleneksel CRF modeline kıyasla önemli bir etkiye sahiptir. Mevcut en büyük veri hacmimiz üzerinde test edilmiştir (eğitim verilerinde 26 w cümle, test verilerinde 4 w cümle), doğruluk oranı Geri çağırma oranı, CRF'den% 1 -% 2 daha yüksek olan% 96-% 97'ye ulaşabilir. Etiketleme verileri nispeten az olduğunda, BERT'nin avantajı daha belirgindir ve bu, CRF'ye kıyasla% 4'ten fazla artırılabilir. Performans açısından, daha önce de belirtildiği gibi, Transformer paralel hesaplamayı destekler ve GPU performansını oynamak için daha uygundur. BERT kelime segmentasyon modelinin çevrimiçi tahmin hizmetini Tensorflow Serving (kaynak kodundaki model çıktısı, SavedModel formatına dönüştürülmesi gereken kontrol noktası formatındadır) (modelin maksimum sıra uzunluğu 64'tür) ve CPU'da tek bir isteğin ortalama zaman tüketimini devreye aldık 250ms'de, P40 GPU üzerindeki tek bir istek ortalama 10ms sürer. Qps yaklaşık 400'e çıktığında, GPU tamamen meşgul olabilir.

Sonuç

Aslında, daha önce de belirtildiği gibi, bu sefer tanıtılan derin öğrenme yöntemi NLP'de daha genel bir yöntemdir ve kelime bölütleme ile sınırlı değildir. Dahası, kelime segmentasyonu uzun vadeli ilişkilere ve derin anlamsal özelliklere o kadar bağlı olmayabilir ve bazı aşırı karmaşık modellerin kullanılması biraz fazla olabilir. BERT kelime segmentasyonunun CRF kelime segmentasyonuna kıyasla bariz bir şekilde iyileştirilmesi, BERT'in (eğitim öncesi büyük ölçekli metin külliyatının) güçlü yabancı yardımından kaynaklanıyor olabilir. BERT'e dayalı kelime bölümleme görevinin yanı sıra, metin sınıflandırması ve metin benzerliği hesaplaması gibi başka işler de yaptık ve güzel sonuçlar elde ettik. Daha sonra bir giriş olacak ve bizi takip etmeye devam edebilirsiniz.

58 aramada Çince kelime segmentasyon teknolojisi ve uygulaması
önceki
Alimama: E-ticaret tahmin modellerinin gelişimi ve zorlukları
Sonraki
Kuaishou Druid'in hassas veri tekilleştirmesinin tasarımı ve uygulaması
Ses içeriğini anlamanın temel teknolojisi
Alibaba, DIN ve Google WDL'den daha iyi olan Taobao e-ticaret önerisi için Transformer kullanıyor
KNN optimizasyon algoritması 1: mesafe ağırlıklandırma
Başkan Xinin ordu için yetenek geliştirme sorumluluğunu aklınızda bulundurun
Genişletilmiş Evrişim (Genişletilmiş Evrişim): Karlı olan, ancak yararlı olmayan nedir
GOTCHA! Dolandırıcılık Tespitinde Kişiselleştirilmiş PageRank Uygulaması
Ev yapımı köpek pirinci hızlı, lezzetli ve besleyicidir, bu nedenle köpekler bırakamaz ~
Pony.ai altyapı zorlukları ve uygulamaları
Kuru mal paylaşımı | Alibaba'nın PB seviyesi Kubernetes günlük platformu inşaat uygulaması
Yaz geliyor, köpeğimde sıcak çarpması varsa ne yapmalıyım?
Oğlan, 3 yaşındayken komşu bir köyde Tibet çoban köpeği tarafından ısırıldı. Şimdi normal bir yaşam sürmesi bekleniyor.
To Top