Open smbslt3 opened 4 years ago
안녕하세요
윈도우 10 환경에서 eunjeon으로 Mecab을 사용중입니다. 코퍼스 분석 중에 에러가 발생하는 것을 확인하고, 글 남깁니다.
캘리 에듀 라는 단어가, 뒤에 공백이 올 경우 공백까지 포함하여 토크나이즈가 됩니다. 즉, 캘리 라는 토큰과 캘리라는 토큰이 각각 존재합니다. 에듀도 마찬가지구요. 아래 스크린샷 확인해주세요.
캘리
에듀
# tokenizer = Mecab() sent1 = [x for (x,y) in tokenizer.pos('고구마참치비빔밥')] sent1 >>> ['고구마', '참치', '비빔밥'] sent2 = [x for (x,y) in tokenizer.pos('고구마 참치 비빔밥')] sent2 >>> ['고구마', '참치', '비빔밥'] sent1 = [x for (x,y) in tokenizer.pos('캘리참치비빔밥')] sent1 >>> ['캘리', '참치', '비빔밥'] sent2 = [x for (x,y) in tokenizer.pos('캘리 참치 비빔밥')] sent2 >>> ['캘리 ', '참치', '비빔밥'] sent3 = [x for (x,y) in tokenizer.pos('고구마 캘리 비빔밥')] sent3 >>> ['고구마', '캘리 ', '비빔밥'] sent1[0] == sent2[0] >>> False # '캘리' != '캘리 ' sent2[0] == sent3[1] >>> True sent1[0] == sent2[0].strip() >>> True # 공백을 제거하면 해결 sent3[1][-1] == ' ' # 마지막에 덧붙는 것이 공백인지 확인 >>> True sent1 = [x for (x,y) in tokenizer.pos('고구마에듀비빔밥')] sent1 >>> ['고구마', '에듀', '비빔밥'] sent2 = [x for (x,y) in tokenizer.pos('고구마 에듀 비빔밥')] sent2 >>> ['고구마', '에듀 ', '비빔밥'] sent1[1] == sent2[1] >>> False # '에듀' != '에듀 ' sent1[1] == sent2[1].strip() >>> True sent2[1][-1] == ' ' # 마지막에 덧붙는 것이 공백인지 확인 >>> True sent3 = [x for (x,y) in tokenizer.pos('고구마초코비빔밥')] sent3 >>> ['고구마', '초코', '비빔밥'] sent4 = [x for (x,y) in tokenizer.pos('고구마 초코 비빔밥')] sent4 >>> ['고구마', '초코', '비빔밥']
제가 사용한 코퍼스 안에서 저렇게 나타난것이지, 다른 오작동 토큰들이 있을지도 모릅니다.
안녕하세요
윈도우 10 환경에서 eunjeon으로 Mecab을 사용중입니다. 코퍼스 분석 중에 에러가 발생하는 것을 확인하고, 글 남깁니다.
캘리
에듀
라는 단어가, 뒤에 공백이 올 경우 공백까지 포함하여 토크나이즈가 됩니다. 즉,캘리
라는 토큰과캘리
라는 토큰이 각각 존재합니다.에듀
도 마찬가지구요. 아래 스크린샷 확인해주세요.제가 사용한 코퍼스 안에서 저렇게 나타난것이지, 다른 오작동 토큰들이 있을지도 모릅니다.