В ожидании ответов от исследователей в области ИИ, я дам вам несколько подсказок о том, что вы можете сделать быстро.
Несмотря на то, что эта тема требует знаний от обработки естественного языка, машинного обучения и даже психологии, вам не нужно начинать с нуля, если вы не в отчаянии или не доверяете качеству исследований, проводимых вfield.
Один из возможных подходов к анализу настроений состоит в том, чтобы рассматривать его как контролируемую проблему обучения, когда у вас есть небольшой учебный корпус, включающий сделанные человеком аннотации (позже об этом) и тестовый корпус, на котором вы тестируетенасколько хорошо вы подходите / система работает.Для обучения вам понадобятся некоторые классификаторы, такие как SVM, HMM или другие, но не усложняйте их.Я бы начал с бинарной классификации: хорошо, плохо.Вы можете сделать то же самое для непрерывного спектра мнений, от положительного до отрицательного, то есть для получения рейтинга, такого как Google, где самые ценные результаты стоят на первом месте.
Для проверки начала Классификатор libsvm , он может выполнять как классификацию {хорошо, плохо}, так и регрессию (ранжирование).Качество аннотаций будет иметь огромное влияние на результаты, которые вы получите, но где их получить?
Я нашел один проект по анализу настроений , который касается ресторанов.Здесь есть и данные, и код, так что вы можете увидеть, как они извлекали признаки из естественного языка и какие функции получили высокую оценку в классификации или регрессии.Корпус состоит из мнений клиентов о ресторанах, которые они недавно посещали, и дал некоторые отзывы о еде, услугах или атмосфере.Связь их мнений и числового мира выражается в количестве звезд, которые они дали ресторану.У вас есть естественный язык на одном сайте и рейтинг ресторана на другом.
Глядя на этот пример, вы можете разработать свой собственный подход к указанной проблеме.Взгляните также на nltk .С помощью nltk вы можете выполнять часть речевых тегов и, если повезет, получить имена.Сделав это, вы можете добавить в свой классификатор функцию, которая будет присваивать оценку имени, если в пределах n слов (пропустить n-грамм) есть слова, выражающие мнения (посмотрите на корпус ресторана), или использовать веса, которые у вас уже есть, но этолучше всего полагаться на классников, чтобы узнать вес, это его работа.