수업정리
텍스트 마이닝
자연어
- 자연어 처리 - NLP (Natural Language Processing)
인공언어
자연어처리 응용 분야
텍스트 마이닝의 영역
- 텍스트분류
- 감성분석
- 리뷰에 쓰임
텍스트 데이터의 구조
- 단어를 쪼개면 형태소
텍스트 마이닝 분석 프로세스
- 토큰화 : 하나의 클립, 어떤 단위로 자를지에 대한 선택, 원하는 방향으로 자름
프로세스 - 텍스트 데이터 수집
프로세스 - 텍스트 전처리
- 정규화 - 같은 의미의 다른 단어를 같은 단어로 만든다.
- 어간 추출 - 같은 의미의 조금씩 다른 단어의 중요 부분만 추출
- 표제어 추출
- 빈도수로 중요도를 추측한다.
- 가중치도 줄 수 있다.
- 자주나오는 데이터이지만 불용어에 대해서는 중요도를 낮춰 준다.
- 머신러닝에서는 데이터 전처리가 중요하다
토큰화
- 내가 원하는 단위로 나누는 작업
- 분석 방법에 따라 다름
- 감성 분석 - 동사 형용사
프로세스 - 특징 값 추출
- 빈도수
- count vector 수치화
- 자른 문자를 숫자로 수치 표현 - 문자의 빈도수로 선별
프로세스 - 데이터 분석
수업시작
토큰화 n-gram
- 하나씩 나누어 벡터화 해주고 또 묶어서 벡터화 해준다
- 단어를 묶어서 하나의 토큰으로 만든다.
데이터 수치화
- BOW - 결과를 수치화 하는 것
- CounterVectorize : 수치화
- TF-IDF : CounterVectorize 의 단점을 보완한 것
원핫 인코딩
BOW
CounterVectorize
- 단순 하게 빈도수 로 벡터화 하는 방식
TF-IDF
- 전체 문서에 많이 나오는 것은 역수를 취한다. -> 중요하지 않음
- 패널티 부여
- 특정 문서에 많이 나오는 것은 가중치를 줘서 중요한 것을 책정하는 방법
CounterVectorize - 방식
- 문맥을 무시 문맥을 고려하지 못하는 단점
- n-gram 사용 용도로 쓴다.
knn = 유클리디안 거리 공식 사용
TF-IDF
- 적은 문서에 상대적으로 많이 발견될수록 가치 있는 정보
TF-IDF 공식
감성분석
- 긍정인지 부정인지 판별하는 방식
실습
머신러닝의 7과정
1. 문제정의
2. 데이터수집
3. 데이터 전처리
4. 탐색적 데이터 분석
5. 모델 선택 및 하이퍼파라미터 조절
6. 모델 학습
7. 모델 평가
- bunch(다발, 묶음) -> 번치객체
- 머신러닝 데이터셋 구조, 딕셔너리처럼 사용한다!
머신러닝 내부적으로
- 학습과 테스트 모두 하기 위해 7:3 비율로 나누는 것이다.
- 테스트는
데이터 전처리
- 의미 없는 br 태그 제거하기
- list 내 for문 사용
- [결과값 for 변수 in 범위] -> append 를 하지 않아도 결과값이 list에 차곡차곡 쌓임
'수업 > 머신러닝' 카테고리의 다른 글
[머신러닝] 9일차 - 선형 분류 모델 사용 (0) | 2023.04.27 |
---|---|
[머신러닝] (ㄱㅅㄱ쌤) 8일차 - Lasso / Ridge 모델 사용, 데이터 스케일링 (0) | 2023.04.25 |
[머신러닝] 7일차 (0) | 2023.04.24 |
[머신러닝] 6일차 - (ㅎㅎㄷ쌤) 선형모델 (0) | 2023.04.21 |
[머신러닝] 5일차 (0) | 2023.04.20 |