[TIL]Day 119

검색어 토큰화
1. Mecab 형태소 분석으로 필요 없는 형태소 제거
2. 신조어를 위해서 마지막 형태소만 비교

stop_tags = ['JKS','JKC','JKG','JKO','JKB','JKV','JKQ','JX','JC','EP','EF','EC','ETN','ETM','XSN','XSV','XSA','SF','SE','SSO','SSC','SC','SY']
stop_words = ['한','곳','집','식당','장소','음식점']
def get_search_token(sent):
    spl_tokens = sent.split(' ')
    res = []
    for st in spl_tokens:
        pos_st = tagger.pos(st)
        mor_st = tagger.morphs(st)
        while pos_st and ( pos_st[-1][1] in stop_tags or pos_st[-1][0] in stop_words ):
            pos_st = pos_st[:-1]
            mor_st = mor_st[:-1]
        tmp = ''.join(mor_st)
        if len(tmp) > 1:
            res.append(tmp)
    return res

토큰들의 벡터 유사도 단어를 구하는 함수 구현
1. 검색어 토큰화 할때 사용한 토큰들을 사용한다
2. 토큰이 겹치는 단어는 제외하면서 5개씩 뽑는다
3. 벡터유사도는 0.7 이상으로 한다

좋은 웹페이지 즐겨찾기