Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje, jak pomocí komponenty Convert Word to Vector v návrháři služby Azure Machine Learning provádět tyto úlohy:
- Na korpus textu, který jste zadali jako vstup, použijte různé modely Word2Vec (Word2Vec, FastText, GloVe předem natrénovaný model).
- Vygenerujte slovní zásobu pomocí vkládání slov.
Tato komponenta používá knihovnu Gensim. Další informace o Gensim naleznete na oficiálních stránkách, které zahrnují kurzy a vysvětlení algoritmů.
Další informace o převodu slov na vektory
Převod slov na vektory nebo vektorizaci slov je proces zpracování přirozeného jazyka (NLP). Tento proces používá jazykové modely k mapování slov do vektorového prostoru. Vektorový prostor představuje každé slovo vektorem skutečných čísel. Umožňuje také slova s podobnými významy mít podobné reprezentace.
Použití vkládání slov jako počátečního vstupu pro podřízené úkoly NLP, jako je klasifikace textu a analýza mínění.
Mezi různé technologie vkládání slov jsme v této komponentě implementovali tři široce používané metody. Dva, Word2Vec a FastText, jsou online trénovací modely. Druhý je předem natrénovaný model, rukave-wiki-gigaword-100.
Modely online trénování se trénují na vstupních datech. Předtrénované modely jsou trénovány offline na větší textové korpus (například Wikipedie, Google News), který obvykle obsahuje asi 100 miliard slov. Vkládání slov pak zůstane konstantní během vektorizace slov. Předtrénované modely slov poskytují výhody, jako je kratší doba trénování, lepší vektory slov kódované a lepší celkový výkon.
Tady jsou některé informace o metodách:
Word2Vec je jednou z nejoblíbenějších technik, jak se naučit vkládání slov pomocí mělké neurální sítě. Teorie je popsána v tomto dokumentu, k dispozici jako PDF ke stažení: Efektivní odhad reprezentací slov v vektorovém prostoru. Implementace v této komponentě je založena na knihovně Gensim pro Word2Vec.
Teorie FastText je vysvětlena v tomto dokumentu, k dispozici jako PDF ke stažení: Obohacení wordových vektorů pomocí subword informace. Implementace v této komponentě je založena na knihovně Gensim pro FastText.
Předtrénovaný model GloVe je rukave-wiki-gigaword-100. Jedná se o kolekci předem natrénovaných vektorů založených na textovém korpusu Wikipedie, který obsahuje 5,6 miliardy tokenů a 400 000 necasovaných slov slovníku. Ke stažení PDF je k dispozici: GloVe: Global Vectors for Word Representation.
Jak nakonfigurovat převod aplikace Word na vektor
Tato komponenta vyžaduje datovou sadu, která obsahuje sloupec textu. Předzpracovaný text je lepší.
Přidejte do kanálu komponentu Převést word na vektor .
Jako vstup pro komponentu zadejte datovou sadu, která obsahuje jeden nebo více textových sloupců.
Pro cílový sloupec zvolte pouze jeden sloupec, který obsahuje text, který chcete zpracovat.
Vzhledem k tomu, že tato komponenta vytváří slovní zásobu z textu, liší se obsah sloupců, což vede k různým obsahům slovníku. Proto komponenta přijímá pouze jeden cílový sloupec.
Pro strategii Word2Vec si vyberte z předtrénovaného anglického modelu GloVe, Gensim Word2Vec a Gensim FastText.
Pokud je strategie Word2Vec Gensim Word2Vec nebo Gensim FastText:
Pro trénovací algoritmus Word2Vec zvolte Skip_gram a CBOW. Rozdíl je zaveden v původním dokumentu (PDF).
Výchozí metoda je Skip_gram.
Pro délku vkládání slov zadejte rozměrnost vektorů slova. Toto nastavení odpovídá parametru
size
v Gensim.Výchozí velikost vkládání je 100.
Pro velikost kontextového okna zadejte maximální vzdálenost mezi slovem, které se predikuje, a aktuálním slovem. Toto nastavení odpovídá parametru
window
v Gensim.Výchozí velikost okna je 5.
V poli Počet epoch zadejte počet epoch (iterací) v korpusu. Odpovídá parametru
iter
v Gensim.Výchozí epocha je 5.
Pro maximální velikost slovníku zadejte maximální počet slov ve vygenerovaném slovníku.
Pokud existuje více jedinečných slov, než je maximální velikost, vyřízte zřídka používané slova.
Výchozí velikost slovníku je 10 000.
Pro minimální počet slov zadejte minimální počet slov. Komponenta bude ignorovat všechna slova, která mají frekvenci nižší než tato hodnota.
Výchozí hodnota je 5.
Odešlete kanál.
Příklady
Komponenta má jeden výstup:
- Slovní zásoba se vkládáním: Obsahuje vygenerovaný slovník společně se vkládáním jednotlivých slov. Jedna dimenze zabírá jeden sloupec.
Následující příklad ukazuje, jak funguje komponenta Convert Word to Vector. Používá funkci Convert Word to Vector s výchozím nastavením na předem zpracovanou sadu Wikipedia SP 500 Dataset.
Zdrojová datová sada
Datová sada obsahuje sloupec kategorií spolu s úplným textem načteným z Wikipedie. Následující tabulka uvádí několik reprezentativních příkladů.
Text |
---|
nasdaq 100 komponent s p 500 komponent nadace nadace zakladatel umístění city apple campus 1 nekonečné smyčky street nekonečná smyčka cupertino california cupertino kalifornie umístění země usa ... |
br nasdaq 100 nasdaq 100 component br s p 500 s p 500 komponent průmyslu počítačový software nadace br zakladatel Charles geschke br john warnock umístění adobe systems... |
s p 500 s p 500 komponent průmyslu automobilový průmysl automobilový předchůdce general motors corporation 1908 2009 následník... |
s p 500 s p 500 komponentní průmyslnglomerate společnost conglomerate nadace zakladatel umístění city fairfield connecticut fairfield connecticut location country usa area... |
br s p 500 s p 500 component foundation 1903 zakladatel william s harley davidson davidson zakladatel arthur davidson br walter davidson br william a davidson umístění... |
Výstupní slovník se vkládáním
Následující tabulka obsahuje výstup této komponenty, který jako vstup přebírá datovou sadu Wikipedia SP 500. Sloupec úplně vlevo označuje slovník. Jeho vložený vektor je reprezentován hodnotami zbývajících sloupců ve stejném řádku.
Slovní zásoba | Vkládání šedě 0 | Vkládání šedě 1 | Vkládání šedě 2 | Vkládání šedě 3 | Vkládání šedě 4 | Vkládání šedě 5 | ... | Vkládání šedě 99 |
---|---|---|---|---|---|---|---|---|
Nasdaq | -0.375865 | 0.609234 | 0.812797 | -0.002236 | 0.319071 | -0.591986 | ... | 0.364276 |
komponenta | 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 |
nadace | -0.166819 | 0.10883 | -0.07933 | -0.073753 | 0.262137 | 0.045725 | ... | 0.27487 |
zakladatel | -0.297408 | 0.493067 | 0.316709 | -0.031651 | 0.455416 | -0.284208 | ... | 0.22798 |
místo | -0.375213 | 0.461229 | 0.310698 | 0.213465 | 0.200092 | 0.314288 | ... | 0.14228 |
město | -0.460828 | 0.505516 | -0.074294 | -0.00639 | 0.116545 | 0.494368 | ... | -0.2403 |
jablko | 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 |
nekonečný | -0.263074 | 0.245753 | 0.07058 | -0.164666 | 0.162857 | -0.027345 | ... | -0.0525 |
smyčka | -0.391421 | 0.52366 | 0.141503 | -0.105423 | 0.084503 | -0.018424 | ... | -0.0521 |
V tomto příkladu jsme použili výchozí strategii Gensim Word2Vec pro Word2Vec a trénovací algoritmus je Skip-gram. Délka vkládání slov je 100, takže máme 100 sloupců pro vložení.
Technické poznámky
Tato část obsahuje tipy a odpovědi na nejčastější dotazy.
Rozdíl mezi online trénováním a předem natrénovaným modelem:
V tomto převodu wordové komponenty na vektor jsme poskytli tři různé strategie: dva modely online trénování a jeden předem natrénovaný model. Modely online trénování používají vstupní datovou sadu jako trénovací data a během trénování generují slovník a vektory slov. Předtrénovaný model je již trénován mnohem větším textovým korpusem, jako je Wikipedie nebo X text. Předtrénovaný model je ve skutečnosti kolekce párů slov a vkládání.
Předem natrénovaný model GloVe shrnuje slovní zásobu ze vstupní datové sady a generuje vektor vkládání pro každé slovo z předem natrénovaného modelu. Bez online trénování může použití předem natrénovaného modelu ušetřit čas trénování. Má lepší výkon, zejména pokud je velikost vstupní datové sady relativně malá.
Velikost vkládání:
Obecně platí, že délka vkládání slov je nastavená na několik stovek. Například 100, 200, 300. Malá velikost vkládání znamená malý vektorový prostor, který by mohl způsobit kolize vkládání slov.
Délka vkládání slov je pevná pro předem natrénované modely. V tomto příkladu je velikost vkládání rukavic-wiki-gigaword-100 100.
Další kroky
Podívejte se na sadu komponent dostupných pro Azure Machine Learning.
Seznam chyb specifických pro komponenty návrháře najdete v tématu Kódy chyb služby Machine Learning.