Семантические сети: как представить значения слов в виде графа
Команда компьютерных лингвистов из школы лингвистики НИУ ВШЭ, университета Тренто и университета Осло под руководством Андрея Кутузова представила на конференции AIST библиотеку vec2graph для Python (github). Vec2graph умеет визуализировать семантическую близость слов в виде сети. Информацию о близости слов vec2graph получает из векторной семантической модели.
«Системный Блокъ» уже рассказывал о том, что в основе дистрибутивной семантики — простая идея: близкие по значению слова будут встречаться в похожих контекстах. Чтобы передать знание о контекстной близости слов компьютеру, ученые и инженеры обучают векторные семантические модели — например, с помощью word2vec.
Но как отображать семантические близости из векторной модели так, чтобы они снова стали понятны человеку? Самый простой вариант — выдавать для любого слова столбик ближайших к нему «семантических ассоциатов».
Можно попытаться сжать многомерное векторное пространство модели обратно в двумерное. Алгоритмов такого снижения размерности (PCA, MDS, t-SNE) множество.
Третья альтернатива — использовать сети (они же графы). Для каждого слова можно строить сеть из его семантических ассоциатов. При этом сам показатель близости отображать, например, через длину линии: чем короче связь — тем ближе слово в векторной модели. Именно такие визуализации делает vec2graph.
https://sysblok.ru/nlp/semanticheskie-seti-kak-predstavit-znachenija-slov-v-vide-grafa/
Команда компьютерных лингвистов из школы лингвистики НИУ ВШЭ, университета Тренто и университета Осло под руководством Андрея Кутузова представила на конференции AIST библиотеку vec2graph для Python (github). Vec2graph умеет визуализировать семантическую близость слов в виде сети. Информацию о близости слов vec2graph получает из векторной семантической модели.
«Системный Блокъ» уже рассказывал о том, что в основе дистрибутивной семантики — простая идея: близкие по значению слова будут встречаться в похожих контекстах. Чтобы передать знание о контекстной близости слов компьютеру, ученые и инженеры обучают векторные семантические модели — например, с помощью word2vec.
Но как отображать семантические близости из векторной модели так, чтобы они снова стали понятны человеку? Самый простой вариант — выдавать для любого слова столбик ближайших к нему «семантических ассоциатов».
Можно попытаться сжать многомерное векторное пространство модели обратно в двумерное. Алгоритмов такого снижения размерности (PCA, MDS, t-SNE) множество.
Третья альтернатива — использовать сети (они же графы). Для каждого слова можно строить сеть из его семантических ассоциатов. При этом сам показатель близости отображать, например, через длину линии: чем короче связь — тем ближе слово в векторной модели. Именно такие визуализации делает vec2graph.
https://sysblok.ru/nlp/semanticheskie-seti-kak-predstavit-znachenija-slov-v-vide-grafa/