tg-me.com/rusvectores/63
Last Update:
начало здесьIn [4]: texts = [['мама', 'мыла', 'раму'], ['лук', 'это', 'овощ'], ['тараканов', 'обычно', 'травят', 'дустом']]
Как видим, метод
In [5]: vectors = model.get_elmo_vectors(texts)
INFO : Warming up ELMo on 3 sentences...
INFO : Warming up finished.
INFO : Texts in the current batch: 3
In [6]: vectors.shape
Out[6]: (3, 4, 1024)get_elmo_vectors()
выдал нам нам трехмёрный тензор размерности 3 на 4 на 1024. Легко догадаться, что 3 - это число наших предложений, 4 - максимальное количество слов в предложении, а 1024 - это размерность ELMo-вектора для каждого слова в данной модели. Например, вот так вы можете получить вектор для слова "тараканов" (третье предложение, первое слово):In [11]: vectors[2,0,:]
Out[11]:
array([ 0.86000252, 0.90977991, 0.03276846, ..., 0.4229666 , -0.31060731, -0.09132621])
Мы также предоставляем метод get_elmo_vector_average()
, который генерирует средний вектор для каждого предложения (если вас интересуют они, а не отдельные слова):In [13]: sentence_vectors = model.get_elmo_vector_average(texts)
Ну а дальше делайте с этими векторами всё, что вам заблагорассудится. Для быстрого старта мы подготовили три скрипта с примерами использования simple_elmo:
2020-10-23 21:46:45,807 : INFO : Warming up ELMo on 3 sentences...
2020-10-23 21:46:46,442 : INFO : Warming up finished.
2020-10-23 21:46:46,443 : INFO : Sentences in this batch: 3
In [14]: sentence_vectors.shape
Out[14]: (3, 1024)
1) Генерация векторов слов для корпуса из файла на диске
2) Оценка качества модели на задаче классификации текстов
3) Оценка качества модели на задаче word sense disambiguation
Последние два скрипта позволят вам при желании воспроизвести результаты наших моделей на датасетах RUSSE'18 и ParaPhraser.
Вот и всё на сегодня. Если у вас есть вопросы - пишите в комментарии 👇 или в issues в репозитории simple_elmo.
BY RusVectōrēs
Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283
Share with your friend now:
tg-me.com/rusvectores/63