this is for holding javascript data
Andrew Krizhanovsky edited section_Thesaurus_expansion_algorithm_word2vec__.tex
about 8 years ago
Commit id: cc230f909d5a210c19617641598b0357d2866c9a
deletions | additions
diff --git a/section_Thesaurus_expansion_algorithm_word2vec__.tex b/section_Thesaurus_expansion_algorithm_word2vec__.tex
index e6962d7..ca5d1d3 100644
--- a/section_Thesaurus_expansion_algorithm_word2vec__.tex
+++ b/section_Thesaurus_expansion_algorithm_word2vec__.tex
...
Благодаря интеграции данных корпусов (в модели, построенной программой word2vec) и тезаурусов (тезаурус Викисловаря) мы с минимальными усилиями получаем ответы на множество важных вопросов. Например, такая прикладная задача как поиск семантически близких слов:
Алгоритм проверки гипотезы (2)$\implies$(1):
\begin{enumerate}
\item Input data: $L$~--- list of synonyms (synset) (What about antonyms, hyponyms, hyperonyms?)
\item Split L to two subsets: $l_1$ and $l_2$. Известно, что оба этих списка являются синсетами (synset) для одного и того же слова $w$. (Можно рассмотреть аналогичные списки антонимов, гиперонимов...)
\item Обойти все слова в словаре. Для каждого слова $w$:
\item Вычислить расстояние между двумя подмножествами слов с помощью функции n_similarity так: $sim_0 = model.n\_similarity (l_1, l_2)$
\item То же, но заданное слово $w$ добавляется к первому подмножеству: $sim_1 = model.n\_similarity (l_1 + w, l_2)$
\item Ко второму: $sim_2 = model.n_similarity (l_1, l_2 + w)$
\item $if( sim_1 < sim_0 AND sim_2 < sim_0 ) then w \rightarrow L$ // Если добавление слова $w$ сближает подмножества, то это слово является синонимом (добавляем это слово в синсет $L$).
\end{enumerate}
\begin{definition}
Границей синсета $S$ называется множество $Bd S= S\setminus Int S$ (synset's edge)~$s$~--- это такие синонимы из $s$, добавление которых в любые непустые разбиения синсета не сближает средние вектора этих разбиений.
\end{definition}