머신러닝 스터디/텍스트마이닝
자연어 처리 유사도 분석 정리
hozy연
2023. 4. 22. 16:41
참고: 메가코드M https://www.youtube.com/watch?v=9ea7Ja52ezQ
단어와 단어 사이에 문장과 문장 사이의 관계가 얼마나 비슷한가?
벡터의 유사도가 중요하다!!
*(기본) 코사인 유사도를 알아보자
직접 코사인 세타를 구해보자 (내적 = 길이 *길이 * cos세타)
본격적으로 유사도 분석 유형을 알아보자
1) Bag of words
1) I love apple. (Norm: root 2)
2) Apple is delicious which I love too. (Norm: root 3)
3) I want a delicious food, but an apple. (Norm: root 3)
4) Deep learning is difficult. (Norm: root 1)
각 문장의 유사도를 보면! (겹치는 갯수/Norm곱)
1번 문장과 2번 문장이 가장 비슷하고, 그 다음에 1번과 3번문장, 2번과 4번 문장이 비슷하다는 걸 알 수 있다
2) Euclidean Metric
2) Levenshtein Distance _ 전처리에 있어 중요한 역할을 한다.!
단어 사이의 거리를 나타내는 대표적인 척도 (최소의 수를 뜻함)
- 단어A를 단어B로 수정하기 위한 최소 횟수 (단어 삽입(1로 인코딩), 삭제(2), 삽입(3))
Tabular Method로 구해봅시다
가장 작은 수인 1을 채택하게 된다!
3) Jaccard Distance