Takže než jsme se vytvořit Slovo Embeddings, který vytváří význam reprezentace slov a snižuje rozměrů, jak jsme se vytvořit dobrou slovní zásobu, která zachycuje některé esence v našem jazyce. Existují různé jazyky po celém světě a různé struktury pro každý jazyk. Aglutinativní jazyky jako turecký aglutinát (přidat na vrcholu) každého slova vytvořit jiný význam ze stejného počátečního slova. Podobně, v angličtině, přípona část smart-est je Est, kde může být použita v mnoha slovech.
například, v našem slovníku asi nebudeme mít slovo nejhlasitější, ale může mít slovo nahlas, když to tokenizes tak hlasitě, – est vkládání tokenu bude mít zastoupení est takže to bude mít informace pro slovo nejhlasitější.
u dítěte probíhá také podobná struktura. Dítě nemusí slyšet každé slovo a jejich množné číslo, aby pochopilo. Po vyslechnutí spousty množného čísla objektů, jako jsou automobily, včely a další předměty, dítě mozkových struktur to způsobem, kde, kdy dítě ví, co klobouk je on/ona nemusí slyšet slovo klobouky, aby se ji používat. Jazykové modely by měly také tokenizovat strukturální mechanismus naší slovní zásoby.
BPH má dvě výhody to víte, jak se vypořádat s neznámými slovy a umí odvodit význam neznámých slov
Jak funguje
potřebujeme soubor, který je dobrý zástupce jazyk, který se snaží tokenize.
- zavolejte .txt soubor rozdělit každé slovo v řetězci a přidat < / w> na konec každého slova. Vytvořte slovník frekvence slov.
2. Vytvořte funkci, která dostane slovní zásobu a v každém slově ve slovníku rozdělte každé slovo na znaky a vytvořte frekvenční slovník většiny spárovaných znaků.
3. Během našeho tréninkového procesu budeme průběžně aktualizovat naši slovní zásobu. Funkce merge_vocabulary získá Starý slovník slovníku a aktualizuje jej nejčastějším párem znaků.
4. Získat žetony budou použity později k tokenize vstupy řetězce
Vytváření slovní zásoby
Takže po krmení naše počáteční slovní zásobu a frekvence slova. Vytvoříme smyčku, která vytvoří tokenizaci ze slovní zásoby. Každá iterace najde znak, který se vyskytuje společně, a přidá je do slovní zásoby.
V Příkladu řekněme, že naše slovní zásoba je
- přidáme náš konec slovo token
- počáteční žetony bude
- slovní zásoba a zkontrolujte, zda bigrams a spočítat frekvence bigrams v tomto případě jeho “ r “ a ‚</w>‘ aktualizovat token slovník
- přidat nový znak do našeho slovníku ‚r</w>‘
rozhodnout, kolik opakování by to mělo probíhat. Může to být 10.000 nebo 100.000. VY rozhodnete, jaká by měla být vaše velikost slovní zásoby.
Kódování a Dekódování
Pro enkódování dané věty nejprve musíme převést naše token slovník z nejdelší slovo na nejkratší slovo. Přidáme rozdělit každé slovo ve větě a přidat < / w> na konec slova. Iterujeme každý token a pokud podřetězec slova obsahuje token, vložíme tento token jako proces tokenizace. Dekódování je vzhledem k naší tokeny jsme sloučit slovo nemají </w> přidat „“ pokud slovo má </w> na konci.