[자연어 처리 스터디 기록] 3월 28일~4월 4일(3주차)

김수빈·2022년 4월 4일
0

자연어 공부하기

목록 보기
2/4

[자연어 처리 입문과정 공부하는 기록입니다.]

전문가가 아닌 학부 1학년이 혼자 공부하고 남기는 기록이다 보니 잘못된 정보가 다소 포함되어 있을수도 있습니다. 잘못된 부분이 있다면 댓글로 알려주시면 감사하겠습니다.

PC환경에서 읽어주시면 감사하겠습니다. _

NLP코드 및 기타 자료를 올려둔 "Github" 주소입니다*
[Github about NLP]

문장이 아닌 문서 분석

내가 고른 자연어 처리 주제 (총 2개)

    1. 영화 리뷰 감정 분석 (영어)
    1. 텍스트 워드클라우드 (한글)

어떤 형태로 분석할것인가? - 1

Keypoint !!

기존의 오픈소스 및 오픈데이터를 이용하는것을 넘어 웹사이트 내의 데이터를 추출하여 그 데이터를 자연어처리를 하는 형태가 목표이다.

분석 과정

1.영화리뷰 감정 분석: 웹크롤링 > 엑셀화 > 토큰화 > 문장 감정분석 > 워드클라우드

  • 웹 크롤링 : 웹속성중 보통 div영역으로 나누게 되는데 Imdb라는 데이터베이스 저장 사이트에서는 div 하위에 span태그로 영화 리뷰가 묶여있었다. 그래서 우리가 원하는 정보를 뽑아내기 위하여 반복문과 .get_text()함수를 사용하여 데이터(별점, 제목,작성 날짜, 작성자, 내용)를 뽑아낼수있다.

  • 엑셀화 : list1.append(score).. 와 같이 리스트로 데이터를 받아와 한 곳에 모으게 된다.

  • 토큰화 : lines_list = tokenize.sent_tokenize(content) 문장 단위로 나누어 토큰화 진행, 데이터 전처리과정을 거친다.

  • 감정분석 : 반복문을 사용하여 각 데이터마다(1~N번까지) 문장별로 감정을 분석한다. 감정분석이 끝난 수치값의 평균을 내어 감정 점수를 계산한다.

  • 엑셀 완성 : excell.save('imdb_.xlsx') 파일명 imdb.xlsx로 데이터가 담긴 파일 생성

  • 워드클라우드 : plt.plot함수를 이용하여 숫자로만 보여지는 데이터를 시각화 하여 보기 쉽게 보여줌. !주의! 구글 코랩에서 이와 같은 코드를 실행 할 경우 폰트를 다운받아 적용해야한다.

    [IMDB site]


영화리뷰 참고자료


어떤 형태로 분석할것인가? -2

Keypoint !!!
내가 가지고 있는 파일(한국어로 작성된)을 한국어 형태소 분석기로


분석과정

2. 한국어 워드클라우드: txt파일 토큰화 > 명사만 추출 > 단어별 빈도수 카운팅 > 시각화
  • txt파일 토큰화 : 준비된 txt파일을 불러와 리딩과정을 거친다.

  • 명사만 추출 : 과거 트위터에서 개발한 한국어 형태소 분석기인 Okt를 사용하여 txt파일내에 명사만 분리하는 과정을 거친다. 추가로, 한 글자인 단어는 큰 요소로 작용하지 않는다고 판단하여 제외 시킨다.

  • 단어별 빈도수 카운트 : 토큰화된 단어중 길이가 '1'이상인 단어를 카운트하여 word라는 리스트에 담아 각 단어별 횟수를 센다.

  • 시각화 : 위의 방법과 동일하게 plt.plot함수를 이용하여 많이 카운트 된 명사를 크게 보여준다.

한국어 워드클라우드 참고자료


크롤링 후 자연어처리 과정 모식도.

느낀점

우선 영어와 한글 모두 워드클라우드 형태로 만들어봄으로써 상황에 따라 어떤 오픈소스를 적용해야하는지에 대한 감각을 익히게 되었고, 자연어 처리의 기본기를 확실하게 다질수있는 시간이었다.

추가 공부 내용

- 바이트 페어 인코딩(Byte Pair Encoding, BPE)

기존에 알고있던 비트연산의 상위버전으로 받아들여졌다. 처음에 비트연산을 배울때에는 비트연산이 처리속도가 가장 빨라 사용하는것으로 배웠다. 그래서 비트연산을 하는 방법에 대해 가볍게 배웠었는데 BPE 역시 비트연산과 비슷한 로직인듯 했다. 그래서 다음 주차에는 BPE에 대해 깊게 공부해보고 여러 BERT모델들을 비교하고 option에 따라 달라지는 결과 값을 비교해보고자 한다.

1개의 댓글

comment-user-thumbnail
2022년 5월 25일

으아니 이렇게나 열심히 공부하시는 분인데 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
디마(디지털마케팅)이라는 흙밭에오시다니 ㅠㅠㅠㅠㅠㅠㅠ

답글 달기

관련 채용 정보