Word converteren naar vectoronderdeel

In dit artikel wordt beschreven hoe u het onderdeel Convert Word to Vector in Azure Machine Learning Designer gebruikt om de volgende taken uit te voeren:

  • Verschillende Word2Vec-modellen (Word2Vec, FastText, Vooraf getraind GloVe-model) toepassen op de tekst die u als invoer hebt opgegeven.
  • Genereer een vocabulaire met insluitingen van woorden.

Dit onderdeel maakt gebruik van de Gensim-bibliotheek. Zie voor meer informatie over Gensim de officiële website, die zelfstudies en een uitleg van algoritmen bevat.

Meer informatie over het converteren van woorden naar vectoren

Het converteren van woorden naar vectoren, of woordvectorisatie, is een proces voor natuurlijke taalverwerking (NLP). Het proces maakt gebruik van taalmodellen om woorden toe te wijzen aan de vectorruimte. Een vectorruimte vertegenwoordigt elk woord door een vector van reële getallen. Het staat ook toe dat woorden met vergelijkbare betekenissen vergelijkbare representaties hebben.

Gebruik word-insluitingen als eerste invoer voor DOWNSTREAM-taken van NLP, zoals tekstclassificatie en sentimentanalyse.

Onder verschillende technologieën voor het insluiten van woorden hebben we in dit onderdeel drie veelgebruikte methoden geïmplementeerd. Twee, Word2Vec en FastText, zijn onlinetrainingsmodellen. De andere is een vooraf getraind model, glove-wiki-gigaword-100.

Onlinetrainingsmodellen worden getraind op basis van uw invoergegevens. Vooraf getrainde modellen worden offline getraind op een groter tekstcorpus (bijvoorbeeld Wikipedia, Google Nieuws) dat meestal ongeveer 100 miljard woorden bevat. Word-insluiting blijft dan constant tijdens woordvectorisatie. Vooraf getrainde woordmodellen bieden voordelen zoals kortere trainingstijd, betere woordvectoren gecodeerd en verbeterde algehele prestaties.

Hier volgt informatie over de methoden:

Word naar vector converteren configureren

Voor dit onderdeel is een gegevensset vereist die een kolom met tekst bevat. Voorverwerkte tekst is beter.

  1. Voeg het onderdeel Word naar Vector converteren toe aan uw pijplijn.

  2. Geef als invoer voor het onderdeel een gegevensset op die een of meer tekstkolommen bevat.

  3. Kies voor Doelkolom slechts één kolom die tekst bevat die moet worden verwerkt.

    Omdat met dit onderdeel een woordenschat wordt gemaakt op basis van tekst, verschilt de inhoud van kolommen, wat leidt tot verschillende woordenschatinhoud. Daarom accepteert het onderdeel slechts één doelkolom.

  4. Kies voor word2Vec-strategie uit GloVe vooraf getraind Engels model, Gensim Word2Vec en Gensim FastText.

  5. Als word2Vec-strategieGensim Word2Vec of Gensim FastText is:

    • Kies voor Word2Vec-trainingsalgoritmen uit Skip_gram en CBOW. Het verschil wordt geïntroduceerd in het oorspronkelijke document (PDF).

      De standaardmethode is Skip_gram.

    • Geef bij Lengte van woord insluiten de dimensionaliteit van de woordvectoren op. Deze instelling komt overeen met de size parameter in Gensim.

      De standaardgrootte voor insluiten is 100.

    • Geef bij Grootte van contextvenster de maximale afstand op tussen het woord dat wordt voorspeld en het huidige woord. Deze instelling komt overeen met de window parameter in Gensim.

      De standaardvenstergrootte is 5.

    • Geef bij Aantal tijdvakken het aantal tijdvakken (iteraties) over het corpus op. Komt overeen met de iter parameter in Gensim.

      Het standaardtijdperknummer is 5.

  6. Geef bij Maximale woordenschatgrootte het maximum aantal woorden in de gegenereerde woordenlijst op.

    Als er meer unieke woorden zijn dan de maximale grootte, snoei dan de onregelmatige.

    De standaard woordenlijstgrootte is 10.000.

  7. Geef voor Minimumaantal woorden een minimumaantal woorden op. Het onderdeel negeert alle woorden met een frequentie die lager is dan deze waarde.

    De standaardwaarde is 5.

  8. Verzend de pijplijn.

Voorbeelden

Het onderdeel heeft één uitvoer:

  • Woordenlijst met insluitingen: bevat de gegenereerde woordenschat, samen met de insluiting van elk woord. Eén dimensie neemt één kolom in beslag.

In het volgende voorbeeld ziet u hoe het onderdeel Word converteren naar vector werkt. Het maakt gebruik van Convert Word to Vector met standaardinstellingen voor de voorbewerkte Wikipedia SP 500-gegevensset.

Brongegevensset

De gegevensset bevat een categoriekolom, samen met de volledige tekst die is opgehaald uit Wikipedia. In de volgende tabel ziet u enkele representatieve voorbeelden.

Tekst
nasdaq 100 component s p 500 component foundation oprichter locatie stad apple campus 1 oneindige lus straat oneindige lus cupertino california cupertino california locatie land verenigde staten...
br nasdaq 100 nasdaq 100 component br s p 500 s p 500 component industrie computer software foundation br oprichter charles geschke br john warnock locatie adobe systems...
s p 500 s p 500 component industrie auto-industrie auto-voorganger general motors corporation 1908 2009 opvolger...
s p 500 s p 500 component industrie conglomeraat bedrijf conglomeraat stichting oprichter locatie stad provincie connecticut connecticut locatie land usa gebied...
br s p 500 s p 500 component foundation 1903 oprichter william s harley br arthur davidson founder arthur davidson br walter davidson br william a davidson locatie...

Uitvoerwoordenlijst met insluitingen

De volgende tabel bevat de uitvoer van dit onderdeel, waarbij de Wikipedia SP 500-gegevensset als invoer wordt gebruikt. De meest linkse kolom geeft de woordenlijst aan. De insluitvector wordt vertegenwoordigd door waarden van resterende kolommen in dezelfde rij.

Woordenschat Insluiten dim 0 Insluiten dim 1 Insluiten dim 2 Insluiten dim 3 Insluiten dim 4 Insluiten dim 5 ... Insluiten dim 99
Nasdaq -0.375865 0.609234 0.812797 -0.002236 0.319071 -0.591986 ... 0.364276
component 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
Stichting -0.166819 0.10883 -0.07933 -0.073753 0.262137 0.045725 ... 0.27487
Oprichter -0.297408 0.493067 0.316709 -0.031651 0.455416 -0.284208 ... 0.22798
location -0.375213 0.461229 0.310698 0.213465 0.200092 0.314288 ... 0.14228
city -0.460828 0.505516 -0.074294 -0.00639 0.116545 0.494368 ... -0.2403
Apple 0.05779 0.672657 0.597267 -0.898889 0.099901 0.11833 ... 0.4636
Campus -0.281835 0.29312 0.106966 -0.031385 0.100777 -0.061452 ... 0.05978
Oneindige -0.263074 0.245753 0.07058 -0.164666 0.162857 -0.027345 ... -0.0525
Lus -0.391421 0.52366 0.141503 -0.105423 0.084503 -0.018424 ... -0.0521

In dit voorbeeld hebben we de standaard gensim Word2Vec voor Word2Vec-strategie gebruikt en trainingsalgoritme is Skip-gram. De lengte van het woord Insluiten is 100, dus we hebben 100 insluitkolommen.

Technische opmerkingen

Deze sectie bevat tips en antwoorden op veelgestelde vragen.

  • Verschil tussen onlinetraining en vooraf getraind model:

    In dit onderdeel Word converteren naar vector hebben we drie verschillende strategieën gegeven: twee onlinetrainingsmodellen en één vooraf getraind model. De onlinetrainingsmodellen gebruiken uw invoergegevensset als trainingsgegevens en genereren woordenschat- en woordvectoren tijdens de training. Het vooraf getrainde model is al getraind door een veel groter tekstcorpus, zoals Wikipedia- of Twitter-tekst. Het vooraf getrainde model is eigenlijk een verzameling woord-/insluitparen.

    Het vooraf getrainde GloVe-model vat een woordenlijst samen uit de invoergegevensset en genereert een insluitvector voor elk woord van het vooraf getrainde model. Zonder onlinetraining kan het gebruik van een vooraf getraind model trainingstijd besparen. Het biedt betere prestaties, vooral wanneer de grootte van de invoergegevensset relatief klein is.

  • Insluitingsgrootte:

    Over het algemeen is de lengte van het insluiten van woorden ingesteld op een paar honderd. Bijvoorbeeld 100, 200, 300. Een kleine insluitingsgrootte betekent een kleine vectorruimte, die conflicten kan veroorzaken bij het insluiten van woorden.

    De lengte van woord-insluitingen is vast voor vooraf getrainde modellen. In dit voorbeeld is de insluitingsgrootte van glove-wiki-gigaword-100 100.

Volgende stappen

Bekijk de set onderdelen die beschikbaar zijn voor Azure Machine Learning.

Zie Machine Learning-foutcodes voor een lijst met fouten die specifiek zijn voor de ontwerponderdelen.