2016-10-11 1 views
0

SGD를 사용하여 선형 회귀를 수행하여 yelp에 대한 리뷰가 양수인지 음수인지 예측하려고합니다.
두 개의 다른 피쳐 추출기를 사용해 보았습니다.
첫 번째 문자는 n-gram 문자이고 두 번째 문자는 공백 문자로 구분됩니다.
그러나 문자 n-gram에 대해 다른 n 값을 시도했는데 가장 좋은 테스트 오류가 발생한 n 값을 발견했습니다.
이 테스트 오류 (내 테스트 데이터의 0.27)는 공백으로 분리 된 단어를 추출한 테스트 오류와 거의 동일하다는 것을 알게되었습니다.

이 우연의 배경에는 이유가 있습니까?
문자 n-gram은 단어 피쳐보다 많은 기능을 추출했기 때문에 테스트 오류가 낮습니까?문자 N 그램과 NLP의 단어 기능

문자 n-gram : ex. N = 7 "좋은 레스토랑"taurant => "Goodres" "oodrest" "odresta" "drestau" "RESTAUR" "estaura" "stauran" ""

워드 기능 : "좋은 레스토랑"=> "좋은 ""restaurant "

+0

귀하의 질문은 NLP의 기능 선택 및 기능 엔지니어링에 관한 것입니다. 이와 같이 자매 사이트에 속해 있습니다 [CrossValidated] (http://stats.stackexchange.com) – smci

+0

문자 n-gram은 NLP에 적합하지 않습니다. NLP 세계에서, n-gram은 "단어"n-gram을 의미한다고 생각합니다. 우리는 CJK 토큰 화기를 사용하는 Solr을 보유하고 있으며, NLP 또는 텍스트 마이닝 IMHO에는 그 용어가 전혀 쓸모가 없습니다. 나는 2018 년에 텍스트 마이닝 프로젝트를 위해 다른 사전 기반의 토크 나이저를 찾고 있습니다. 또한 R 스튜디오와 RWordseg를 사용하여 Solr 대신 뭔가를 사용하여 텍스트 마이닝을 할 것을 고려합니다. –

답변

3

n-gram 방법은 단순히 정밀도에 영향을주지 않는 중복 된 중복 기능을 많이 생성 한 것처럼 보입니다.