Подтвердить что ты не робот

НЛП: любые легкие и хорошие методы для поиска семантического сходства между словами?

Я не знаю, покрывает ли StackOverflow НЛП, так что я сделаю это. Мне интересно найти смысловую взаимосвязь двух слов из определенного домена, то есть "качество изображения" и "шум". Я делаю некоторые исследования, чтобы определить, являются ли отзывы камер положительными или отрицательными для конкретного атрибута камеры. (например, качество изображения в каждом из обзоров).

Однако не все используют ту же формулировку "качество изображения" в сообщениях, поэтому я хочу посмотреть, есть ли способ для меня построить что-то вроде этого:

"качество изображения" , которое включает ( "шум", "цвет", "резкость" и т.д. и т.д.), поэтому я могу обернуть все в одном большом зонтике.

Я делаю это для другого языка, поэтому Wordnet не обязательно помогает. И нет, я не работаю для Google или Microsoft, поэтому у меня нет данных от людей, которые нажимают поведение в качестве входных данных.

Однако у меня есть много текстовых, позиционных, сегментированных и т.д.

4b9b3361

Ответ 1

Посмотрите расстояние сходства google - http://arxiv.org/abs/cs.CL/0412098 например. если множество веб-страниц включают их обоих, они, вероятно, связаны между собой.

демо-программа http://mechanicalcinderella.com

Кроме этого, вы можете попытаться перевести проект как wordnet ((может помочь перевод google translate) или начать совместную онтологию.

Ответ 2

Ваш комментарий:

Также см. следующие вопросы: поиск связанных слов, семантическое сходство двух фраз.

Ответ 3

Чтобы найти семантическое сходство между словами, модель пространства слов должна сделать трюк. Такая модель может быть реализована очень легко и достаточно эффективно. Скорее всего, вам захочется реализовать какое-то уменьшение размерности. Самый простой, о котором я могу думать, - Случайная индексация, которая широко используется в НЛП.

Когда у вас есть модель пространства слов, вы можете рассчитать расстояния (например, косинусное расстояние) между словами. В такой модели вы должны получить результаты, о которых вы говорили ранее (расстояние между "фокусом" и "деталями" должно быть выше, чем "вес камеры" против "вспышки" ).

Надеюсь, это поможет!

Ответ 4

Взгляните на скрытое семантическое индексирование http://en.wikipedia.org/wiki/Latent_semantic_indexing, в котором конкретно рассматривается ваша проблема. Однако вам нужно каким-то образом сопоставить эти мета-концепции с положительными или отрицательными чувствами. Анализ настроений http://en.wikipedia.org/wiki/Sentiment_analysis должен помочь вам.

Ответ 5

Я видел word2vec на HackerNews пару недель назад, выглядит довольно близко к тому, что вы хотите.

Ответ 6

Word-Space - определенно способ пойти здесь. Если LSA замедляется для вашего приложения и если семантика в случайном индексировании слишком мелкая, вы должны рассмотреть api.cortical.io. Этот REST API может дать вам семантическое представление отпечатка пальца любого слова. Этот семантический отпечаток содержит все различные контексты, к которым относятся слова. Вы можете рассортировать любое слово с одним вызовом, как "орган" возвращается (мышца, фортепиано, церковь, членство...) И для каждого контекста вы можете получить контекстуальные термины: "фортепиано" даст (орган, кларнет, скрипка, флейта, виолончель, композиции, клавесин, оркестровые) Что касается вашего последнего аспекта, эти семантические отпечатки пальцев полностью независимы от языка. В настоящее время cortical.io API охватывает: английский, испанский, французский, немецкий, датский, арабский, русский, китайский. Дополнительные языки публикуются до конца 2014 года.