Korzystam z biblioteki Gensim w Pythonie do używania i szkolenia modelu word2vector. Ostatnio zastanawiałem się nad zainicjowaniem wag modelu za pomocą wstępnie wyszkolonego modelu word2vec, takiego jak (model wstępnie przeszkolony GoogleNewDataset). Walczyłem z tym od kilku tygodni. Teraz właśnie sprawdziłem, że w gesim jest funkcja, która może mi pomóc zainicjować wagi mojego modelu przy pomocy wstępnie wyszkolonych odważników modelu. Zostało to wspomniane poniżej:
reset_from(other_model)
Borrow shareable pre-built structures (like vocab) from the other_model. Useful if testing multiple models in parallel on the same corpus.
Nie wiem, czy ta funkcja może zrobić to samo, czy nie. Proszę pomóż!!!
Odpowiedzi:
Dziękuję Abhishek. Rozpracowałem to! Oto moje eksperymenty.
1). narysujemy prosty przykład:
Z powyższych wykresów widzimy, że proste zdania nie potrafią rozróżnić znaczenia różnych słów według odległości.
2). Załaduj wstępnie wyszkolone osadzanie słów:
Na powyższym rysunku widać, że osadzanie słów jest bardziej znaczące.
Mam nadzieję, że ta odpowiedź będzie pomocna.
źródło
Spójrzmy na przykładowy kod:
Stąd obserwujemy, że model1 jest resetowany przez model2 i stąd słowo „trzeci” i „zdanie” znajdują się w jego słowniku, ostatecznie nadając swoje podobieństwo. Jest to podstawowe zastosowanie, możesz również sprawdzić reset_weights (), aby zresetować wagi do stanu niewytrenowanego / początkowego.
źródło
Jeśli szukasz wstępnie wyszkolonej sieci do osadzania słów, proponuję GloVe. Poniższy blog z Keras jest bardzo pouczający o tym, jak to zaimplementować. Zawiera również link do wstępnie przeszkolonych osadzeń GloVe. Istnieją wstępnie wyszkolone wektory słów, od 50 wektorów do 300 wymiarów. Zostały one zbudowane na Wikipedii, wspólnych danych indeksowania lub na Twitterze. Możesz je pobrać tutaj: http://nlp.stanford.edu/projects/glove/ . Ponadto powinieneś sprawdzić blog keras, w jaki sposób je wdrożyć. https://blog.keras.io/using-pre-trained-word-embeddings-in-a-keras-model.html
źródło
Zrobiłem to tutaj: https://gist.github.com/AbhishekAshokDubey/054af6f92d67d5ef8300fac58f59fcc9
Sprawdź, czy tego właśnie potrzebujesz
źródło