2016-10-11 5 views
0

Я пытаюсь предсказать, положительны или отрицательны ли отзывы на визге, выполняя линейную регрессию с использованием SGD.
Я попробовал два разных экстрактора.
Первым был символ n-грамм, а второй - разделение слов по пространству.
Однако я пробовал разные n значений для символа n-gram и обнаружил, что значение n, которое дало мне лучшую тестовую ошибку.
Я заметил, что эта тестовая ошибка (0,27 в моих тестовых данных) была почти идентична тестовой ошибке извлечения слов, разделенных пробелом.

Есть ли причина этого совпадения?
Не должен ли символ n-грамм иметь более низкую тестовую ошибку, так как он извлекал больше функций, чем функции слова?Характер n-gram против словесных функций в NLP

Характер n-грамм: напр. п = 7 "Хороший ресторан" => "Goodres" "oodrest" "odresta" "drestau" "регресс" "estaura" "stauran" "taurant"

особенности слова: "Хороший ресторан" => «Хороший "" ресторан "

+0

Ваш вопрос касается выбора функций и особенностей для НЛП. Как таковой он принадлежит на сайте сестры [CrossValidated] (http://stats.stackexchange.com) – smci

+0

Символ n-gram не подходит для NLP. В мире НЛП я считаю, что n-грамм означает «слово» n-грамм. У нас есть Solr, использующий токенизатор CJK, и его термин абсолютно бесполезен для NLP или текстового интеллектуального анализа, IMHO. Я ищу другой токенизатор на основе словаря вместо этого для нашего проекта интеллектуального интеллектуального анализа данных в 2018 году. Я также считаю, что использовать R studio и RWordseg для обработки текста вместо использования Solr с чем-то другим. –

ответ

3

Похоже, что метод n-gram просто произвел множество избыточных, перекрывающихся функций, которые не способствуют точности.