Проблема для lsi - PullRequest
       21

Проблема для lsi

2 голосов
/ 21 января 2010

Я использую скрытый семантический анализ для сходства текста. У меня есть 2 вопроса.

  1. Как выбрать значение K для уменьшения размера?

  2. Я много читаю везде, где эта БИС работает для сходных по смыслу слов, например, автомобиль и автомобиль. Как это возможно??? Какой магический шаг я здесь пропускаю?

Ответы [ 2 ]

1 голос
/ 01 апреля 2011
  1. Типичным выбором для k является 300. В идеале вы устанавливаете k на основе метрики оценки, в которой используются уменьшенные векторы. Например, если вы кластеризуете документы, вы можете выбрать k , который максимизирует оценку решения кластеризации. Если у вас нет эталона для сравнения, я бы установил k в зависимости от размера вашего набора данных. Если у вас есть только 100 документов, то вам не потребуется несколько сотен скрытых факторов для их представления. Аналогично, если у вас есть миллион документов, то 300 могут быть слишком маленькими. Однако, по моему опыту, полученные векторы достаточно устойчивы к большим изменениям k , при условии, что k не слишком мало (то есть k = 300 делает около а также k = 1000).

  2. Возможно, вы путаете LSI с Скрытый семантический анализ (LSA). Это очень родственные методы, с той разницей, что LSI работает с документами, а LSA - со словами. Оба подхода используют один и тот же вход (термин x матрица документа). Есть несколько хороших реализаций LSA с открытым исходным кодом, если вы хотите попробовать их. Страница LSA в Википедии содержит полный список.

0 голосов
/ 05 июля 2010
  1. попробуйте несколько различных значений из [1..n] и посмотрите, что работает для любой задачи, которую вы пытаетесь выполнить

  2. Составьте слово-матрица корреляции слов [т.е. ячейка (i, j) содержит количество документов, в которых (i, j) сосуществуют) и использует в ней что-то вроде PCA

...