레플리
글 수 72

문서에서 핵심 단어를 찾는 TF-IDF 알고리즘

조회 수 4253 추천 수 0 2017.09.07 03:05:13


http://www.bloter.net/archives/264262

https://thinkwarelab.wordpress.com/2016

 

 

 

TF-IDF(Term Frequency-Inverse Document Frequency)는 문서(Document)내에서 단어(Term)의 중요도를 빈도(Frequency)를 사용해서 계산하는 방법입니다.

 

뉴스 기사에서 가장 핵심이 되는 단어가 무엇인지 찾는 방법을 생각해 보겠습니다. 우선 가장 먼저 떠오르는 것은 전체 문서에서 가장 많이 반복되는 단어를 구하는 것입니다. 예를 들어 인공지능에 대한 기사라면 당연히 인공지능이란 용어가 여러번 사용될 것입니다. 이것이 바로 TF입니다. 

 

 

 

하지만 이것만 가지고는 정확한 결과를 얻기 힘듭니다. 컴퓨터나 회사, 개발 등 크게 중요하지 않지만 여러번 반복되는 단어가 있을 가능성이 크기 때문입니다. 그렇기 때문에 이런 단어들을 제외시킬 수 있는 새로운 방법이 필요합니다.

 

이 문서에 많이 반복되지만 다른 문서에도 동일하게 여러번 나오는 단어들은 크게 중요하지 않다고 판단할 수 있습니다. 그래서 각 단어가 문서 전체에 나오는 빈도를 구한 다음 이를 역으로 곱하면 그 단어의 중요도를 감소시킬 수 있습니다. 이것이 IDF입니다.

 

 

 

td-idf-graphic-765x255.png

 

수식은 위와 같습니다. w는 문서 y에서 단어 x의 중요도입니다. 오른쪽의 IDF 부분을 로그로 계산한 것은 숫자가 너무 커지는 것을 방지하기 위해서 입니다. 로그 함수의 특성상 입력에 비해 출력이 서서히 증가하기 때문입니다.

 

List of Articles
제목 글쓴이 날짜sort 조회 수
APEACH – 혐오 발화 평가데이터를 만드는 새로운 방법 깊은바다 2022-04-22 1103
윈도우에서 간편하게 Mecab 설치방법 - pyeunjeon 깊은바다 2021-06-15 497
자연어처리 벤치마크 GLUE의 한글 버전인 KLUE 공개 file 깊은바다 2021-05-22 688
모두의 말뭉치에 새로운 일상 대화 추가 file 깊은바다 2021-04-06 562
자연어처리 벤치마크인 SuperGLUE도 인간의 기록을 경신 [1] 깊은바다 2021-01-21 550
한국어 문장 분리기, KSS(Korean Sentence Splitter) 파이썬 포팅 file 깊은바다 2020-12-23 6152
파이썬 한국어 말뭉치 패키지 - Korpora file 깊은바다 2020-09-12 1510
세종 말뭉치보다 9배 더 큰 한글 코퍼스 공개 - 모두의 말뭉치 file 깊은바다 2020-08-27 3143
한국어 전처리 기법 모음 깊은바다 2020-07-31 4539
예일대의 자연어-SQL 데이터셋, Spider 깊은바다 2020-07-12 525
IBM 왓슨의 자연어처리 방식 깊은바다 2020-06-26 626
매주 한편씩 글을 작성하는 자연어처리 블로그 - 위클리 NLP 깊은바다 2020-06-12 1129
인간의 언어를 이해하는 기계, NLU에는 어떤 것이 있을까? 깊은바다 2020-06-05 417
한글 자모 분리 및 합치기 파이썬 패키지 [1] 깊은바다 2020-03-03 3241
Machine Learning for Kids로 감정분석 깊은바다 2020-02-09 932