Konwertowanie składnika Word na wektorowy
W tym artykule opisano sposób używania składnika Convert Word to Vector w projektancie usługi Azure Machine Learning w celu wykonywania następujących zadań:
- Zastosuj różne modele Word2Vec (Word2Vec, FastText, wstępnie wytrenowany model GloVe) w korpusie tekstu określonego jako dane wejściowe.
- Wygeneruj słownictwo przy użyciu wyrazów osadzania.
Ten składnik używa biblioteki Gensim. Aby uzyskać więcej informacji na temat usługi Gensim, zobacz oficjalną witrynę internetową, która zawiera samouczki i wyjaśnienie algorytmów.
Więcej informacji na temat konwertowania wyrazów na wektory
Konwertowanie wyrazów na wektory lub wektoryzacja wyrazów jest procesem przetwarzania języka naturalnego (NLP). Proces używa modeli językowych do mapowania wyrazów na przestrzeń wektorową. Przestrzeń wektorowa reprezentuje każde słowo według wektora liczb rzeczywistych. Umożliwia również wyrazom o podobnych znaczeniach podobne reprezentacje.
Użyj osadzania wyrazów jako początkowych danych wejściowych dla podrzędnych zadań nlp, takich jak klasyfikacja tekstu i analiza tonacji.
Wśród różnych technologii osadzania wyrazów w tym składniku zaimplementowaliśmy trzy powszechnie używane metody. Dwa, Word2Vec i FastText, to modele trenowania online. Drugi to wstępnie wytrenowany model, glove-wiki-gigaword-100.
Modele trenowania online są trenowane na danych wejściowych. Wstępnie wytrenowane modele są trenowane w trybie offline w większym korpusie tekstowym (na przykład Wikipedia, Google News), który zwykle zawiera około 100 miliardów słów. Osadzanie wyrazów pozostaje stałe podczas wektoryzacji wyrazów. Wstępnie wytrenowane modele słów zapewniają korzyści, takie jak skrócony czas trenowania, lepsze wektory słów zakodowane i zwiększona ogólna wydajność.
Oto kilka informacji o metodach:
Word2Vec to jedna z najpopularniejszych technik uczenia się osadzania słów przy użyciu płytkiej sieci neuronowej. Teoria została omówiona w tym dokumencie, dostępnym jako plik PDF do pobrania: Wydajne szacowanie reprezentacji słów w przestrzeni wektorowej. Implementacja w tym składniku jest oparta na bibliotece Gensim dla word2Vec.
Teoria FastText jest wyjaśniona w tym dokumencie, dostępnym jako plik PDF do pobrania: Wzbogacanie wektorów słów za pomocą informacji o podwordach. Implementacja w tym składniku jest oparta na bibliotece Gensim dla języka FastText.
Wstępnie wytrenowany model GloVe to glove-wiki-gigaword-100. Jest to zbiór wstępnie wytrenowanych wektorów opartych na korpusie tekstowym Wikipedii, który zawiera 5,6 miliarda tokenów i 400 000 słów słownictwa bez liter. Dostępny jest plik PDF: GloVe: Global Vectors for Word Representation.
Jak skonfigurować konwertowanie programu Word na wektor
Ten składnik wymaga zestawu danych zawierającego kolumnę tekstu. Wstępnie przetworzony tekst jest lepszy.
Dodaj składnik Konwertuj program Word na wektor do potoku.
Jako dane wejściowe dla składnika podaj zestaw danych zawierający co najmniej jedną kolumnę tekstową.
W polu Docelowa kolumna wybierz tylko jedną kolumnę zawierającą tekst do przetworzenia.
Ponieważ ten składnik tworzy słownictwo na podstawie tekstu, zawartość kolumn różni się, co prowadzi do różnych treści słownictwa. Dlatego składnik akceptuje tylko jedną kolumnę docelową.
W przypadku strategii Word2Vec wybierz wstępnie wytrenowany angielski model GloVe, Gensim Word2Vec i Gensim FastText.
Jeśli strategia Word2Vec to Gensim Word2Vec lub Gensim FastText:
W przypadku algorytmu trenowania Word2Vec wybierz spośród Skip_gram i CBOW. Różnica jest wprowadzana w oryginalnym dokumencie (PDF).
Domyślna metoda to Skip_gram.
W polu Długość osadzania wyrazów określ wymiarowość wektorów wyrazów. To ustawienie odpowiada parametrowi
size
w usłudze Gensim.Domyślny rozmiar osadzania to 100.
W polu Rozmiar okna kontekstowego określ maksymalną odległość między przewidywanym wyrazem a bieżącym słowem. To ustawienie odpowiada parametrowi
window
w usłudze Gensim.Domyślny rozmiar okna to 5.
W polu Liczba epok określ liczbę epok (iteracji) nad korpusem. Odpowiada parametrowi
iter
w usłudze Gensim.Domyślna liczba epok to 5.
W polu Maksymalny rozmiar słownictwa określ maksymalną liczbę słów w wygenerowanych słownictwie.
Jeśli istnieje więcej unikatowych słów niż maksymalny rozmiar, przycinaj rzadko występujące wyrazy.
Domyślny rozmiar słownictwa to 10 000.
W obszarze Minimalna liczba wyrazów podaj minimalną liczbę wyrazów. Składnik zignoruje wszystkie wyrazy, które mają częstotliwość niższą niż ta wartość.
Domyślna wartość wynosi 5.
Prześlij potok.
Przykłady
Składnik ma jedno dane wyjściowe:
- Słownictwo z osadzaniem: zawiera wygenerowane słownictwo wraz z osadzaniem każdego słowa. Jeden wymiar zajmuje jedną kolumnę.
W poniższym przykładzie pokazano, jak działa składnik Convert Word to Vector. Używa on funkcji Konwertuj program Word na wektor z ustawieniami domyślnymi do wstępnie przetworzonego zestawu danych Wikipedia SP 500.
Zestaw danych źródłowych
Zestaw danych zawiera kolumnę kategorii wraz z pełnym tekstem pobranym z Witryny Wikipedia. W poniższej tabeli przedstawiono kilka reprezentatywnych przykładów.
Text |
---|
nasdaq 100 component s p 500 składowych założyciel założyciel lokalizacja miasta apple campus 1 nieskończona pętla ulica nieskończona pętla cupertino california cupertino kalifornijskiej lokalizacji kraju stany zjednoczone... |
br nasdaq 100 nasdaq 100 component br s p 500 s p 500 component industry computer software foundation br założyciel charles geschke br john warnock location adobe systems... |
s p 500 s p 500 przemysłu motoryzacyjnego przemysłu motoryzacyjnego poprzednik general motors corporation 1908 2009 następca... |
s p 500 s p 500 branży składników konglomeratu firmy konglomeratu założyciela lokalizacji miasta fairfield connecticut fairfield connecticut lokalizacja kraju usa area... |
br s p 500 s p 500 składowej fundacji 1903 założyciel william s harley br arthur davidson założyciel arthur davidson arthur davidson br walter davidson br william a davidson lokalizacji ... |
Słownictwo wyjściowe z osadzanymi
Poniższa tabela zawiera dane wyjściowe tego składnika, przyjmując zestaw danych Wikipedia SP 500 jako dane wejściowe. Kolumna po lewej stronie wskazuje słownictwo. Jego wektor osadzania jest reprezentowany przez wartości pozostałych kolumn w tym samym wierszu.
Słownictwo | Osadzanie przygaszone 0 | Osadzanie przygaszone 1 | Osadzanie dim 2 | Osadzanie przygaszone 3 | Osadzanie przygaszone 4 | Osadzanie przygaszone 5 | ... | Osadzanie przygaszone 99 |
---|---|---|---|---|---|---|---|---|
Nasdaq | -0.375865 | 0.609234 | 0.812797 | -0.002236 | 0.319071 | -0.591986 | ... | 0.364276 |
składnik | 0.081302 | 0.40001 | 0.121803 | 0.108181 | 0.043651 | -0.091452 | ... | 0.636587 |
s | -0.34355 | -0.037092 | -0.012167 | 0.151542 | 0.601019 | 0.084501 | ... | 0.149419 |
p | -0.133407 | 0.073244 | 0.170396 | 0.326706 | 0.213463 | -0.700355 | ... | 0.530901 |
fundacja | -0.166819 | 0.10883 | -0.07933 | -0.073753 | 0.262137 | 0.045725 | ... | 0.27487 |
założyciel | -0.297408 | 0.493067 | 0.316709 | -0.031651 | 0.455416 | -0.284208 | ... | 0.22798 |
lokalizacja | -0.375213 | 0.461229 | 0.310698 | 0.213465 | 0.200092 | 0.314288 | ... | 0.14228 |
miejscowość | -0.460828 | 0.505516 | -0.074294 | -0.00639 | 0.116545 | 0.494368 | ... | -0.2403 |
jabłko | 0.05779 | 0.672657 | 0.597267 | -0.898889 | 0.099901 | 0.11833 | ... | 0.4636 |
kampus | -0.281835 | 0.29312 | 0.106966 | -0.031385 | 0.100777 | -0.061452 | ... | 0.05978 |
nieskończony | -0.263074 | 0.245753 | 0.07058 | -0.164666 | 0.162857 | -0.027345 | ... | -0.0525 |
loop | -0.391421 | 0.52366 | 0.141503 | -0.105423 | 0.084503 | -0.018424 | ... | -0.0521 |
W tym przykładzie użyliśmy domyślnej strategii Gensim Word2Vec dla word2Vec, a algorytm trenowania to Skip-gram. Długość wyrazu Osadzanie wynosi 100, dlatego mamy 100 osadzonych kolumn.
Uwagi techniczne
Ta sekcja zawiera porady i odpowiedzi na często zadawane pytania.
Różnica między trenowania online i wstępnie wytrenowanego modelu:
W tym składniku Convert Word to Vector udostępniliśmy trzy różne strategie: dwa modele trenowania online i jeden wstępnie wytrenowany model. Modele trenowania online używają wejściowego zestawu danych jako danych treningowych oraz generowania słownictwa i wektorów słów podczas trenowania. Wstępnie wytrenowany model jest już trenowany przez znacznie większy korpus tekstu, taki jak Wikipedia lub X. Wstępnie wytrenowany model jest w rzeczywistości kolekcją par słów/osadzania.
Wstępnie wytrenowany model GloVe podsumowuje słownictwo z wejściowego zestawu danych i generuje wektor osadzania dla każdego słowa z wstępnie wytrenowanego modelu. Bez trenowania online użycie wstępnie wytrenowanego modelu może zaoszczędzić czas trenowania. Ma lepszą wydajność, zwłaszcza gdy rozmiar wejściowego zestawu danych jest stosunkowo mały.
Rozmiar osadzania:
Ogólnie rzecz biorąc, długość osadzania wyrazów jest ustawiona na kilkaset. Na przykład 100, 200, 300. Mały rozmiar osadzania oznacza małą przestrzeń wektorową, co może spowodować kolizje osadzania wyrazów.
Długość osadzania wyrazów jest stała dla wstępnie wytrenowanych modeli. W tym przykładzie rozmiar osadzania glove-wiki-gigaword-100 wynosi 100.
Następne kroki
Zobacz zestaw składników dostępnych dla usługi Azure Machine Learning.
Aby uzyskać listę błędów specyficznych dla składników projektanta, zobacz Kody błędów usługi Machine Learning.