일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 에라토스테네스의 체
- 튜플
- 쿼드압축 후 개수세기
- Dynamic Programming
- HashSet
- Stack
- 보이어무어
- HashMap
- 완전탐색
- 완전 탐색
- 점프와 순간이동
- 영문자 확인
- 어려웠던 문제
- 후위 표기법
- 메뉴리뉴얼
- pandas
- python
- 최소공배수
- 조합
- 프로그래머스
- 순열
- 2017 카카오 코드
- 규칙찾기
- fragment identifier
- Java
- 문자열
- 알고리즘
- 동적계획법
- 반복문
- dfs
- Today
- Total
csmoon1010의 SW 블로그
자연어 처리 - 딥 러닝을 이용한 자연어 처리 입문(9) 본문
05. 문서 유사도(Document Similarity)
- 기준 : 문서들 간 동일한 단어 / 비슷한 단어가 얼마나 공통적으로 많이 사용?
--> 단어의 수치화 방법(DTM, Word2Vec), 단어들 간 차이의 계산 방법(유클리드 거리, 코사인 유사도)
위키독스
온라인 책을 제작 공유하는 플랫폼 서비스
wikidocs.net
1) 코사인 유사도(Cosine Similarity)
- BoW, DTM, TF-IDF, 워드투벡터로 단어 수치화 --> 코사인 유사도로 문서의 유사도 구하기!
1. 코사인 유사도(Cosine Similarity)
- 코사인 유사도 : 두 벡터 간의 코사인 각도를 이용하여 두 벡터의 유사도를 구함. = 벡터가 가리키는 방향의 유사도
- 범위 : -1 <= Cosine Similarity <= 1
--> 1에 가까울수록 유사도가 높음
- 식 : A, B - 문서 단어 행렬(DTM) OR TF-IDF 행렬
- 예제 :
2. 유사도를 이용한 추천 시스템 구현하기
- movies_metadata를 읽어오고 data['overview']의 null값을 제거한다.
- 불용어 제거하고 tfdif를 수행한다. 이를 바탕으로 코사인 유사도를 구한다.
- 매개변수로 준 title과 유사한 순서대로 10개만 나열하는 함수 get_recommendations를 만든다.
2) 여러가지 유사도 기법
1. 유클리드 거리(Euclidean distance)
- 문서의 유사도를 구할 때는 그리 유용하진 않음
- 공식 : 점 p , 점 q의 좌표 간의 거리 구하기
- 예제 :
2. 자카드 유사도(Jaccard similarity)
- A집합과 B집합의 합집합에서 교집합의 비율
- 공식 : 자카드 유사도 함수 J
- 예제 :
'데이터&인공지능 > 자연어처리' 카테고리의 다른 글
자연어 처리 - 딥 러닝을 이용한 자연어 처리 입문(11) (0) | 2020.02.16 |
---|---|
자연어 처리 - 딥 러닝을 이용한 자연어 처리 입문(10) (0) | 2020.02.16 |
자연어 처리 - 딥 러닝을 이용한 자연어 처리 입문(8) (0) | 2020.02.15 |
자연어 처리 - 딥 러닝을 이용한 자연어 처리 입문(7) (0) | 2020.02.13 |
자연어 처리 - 딥 러닝을 이용한 자연어 처리 입문(6) (0) | 2020.02.13 |