딥러닝/자연어처리

자연어 처리 과정 정리하기

데이터요리사 2020. 8. 7. 18:01

ㅈPseudo coding: (국문)영화 데이터 리뷰 -> 감정 분석(긍정, 부정, 중립)

 

1.크롤링

2.전처리 : 문자만 가져오기, Null, 라벨링        / 데이터 분리(테스트, 트레이닝)

3.토큰화(Konlpy) :

1.사전만들기

1.딕셔너리 형태, k-v, 단어-형태소, 인덱스-단어)

2.불용어제거

1.불용어 리스트 :

1.명사: 직접 만들기

2.형태소분석을 통해서 어미, 조사, .!” 그런거 제거

2.For문을 돌면서 불용어에 포함되지 않으면 새로운 사전에 넣는다

4.벡터화

1.카운트 : CountVecector(BoW), TfIDF

2.예측 : Word2Vec, FastText

3.카운트 + 예측 : Glove

4.(정답값) : One-hot

5.모델링

1.분류 모델 : RandomForestClassifer, SVM, DecisionTree, DNN,

2.유사도 분석: cos 유사도

6.학습

7.적용

8.사업화

 

 

 

-----------------

Pseudo coding: (동일) 작가의 (여러) 작품 분석

 

1.크롤링

2.불용어, “.!

3.단어를 토큰화해서 벡터화

4.카운트: 각각의 단어가 얼마나 많이 사용되는지 본다

5.TF-IDF 기반으로 특정 문서에만 자주 나오는 단어들을 본다

6.그리고 그런 단어들을 벡터화 한것을 코사인 유사도를 사용해서 내적 계산을 한다 

       -> 얼마나 비슷한지 정도가 수치화되서 나온다

 

 

------------------------

 

Pseudo coding: 번역

 

1.크롤링: 두 쌍 아니면 한 쌍을 크롤링 한다음에 사전을 돌려서 또 한쌍을 만든다

2.불용어, “.!

3.단어를 토큰화해서 벡터화

4.End2End 기반으로 본다

   Seq2Seq : 인코딩 + 디코딩

[한영번역]

 인코딩:  한국어를 입력으로 받아서, 그것을 아주 잘 표현하는 압축된 하나의 벡터를

만든다. 걔 이름이 ‘Context Vector’이다.

 Context Vector를 받아서 디코더가 해석을하고, 영어 문장을 내뱉는다.

 Context Vector가 모든 정보를 다 가지고 있기에는 부족해요.

동적으로 중요한 정보에 대해서 업데이트하기 위해 새로운 모델이 나왔는데,

그 아이의 이름은?????????? 어텐션!

어텐션 스코어를 기반으로 우리가 번역을해요!!

어텐션이 양방향으로 왔다갔다 하는애도 있고, 그래요. (트랜스포머, 버트)

728x90