ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 감성 분석 - IMDB 영화평
    Python Machine Learning/텍스트 분석 2020. 12. 24. 17:48

    감성 분석은 문서 내 텍스트가 나타내는 여러 가지 주관적인 단어와 문맥을 기반으로 감성(Sentiment) 수치를 계산하는 방법으로 긍정 감성 지수와 부정 감성 지수로 구성되며 이들 지수를 합산해 긍정 감성, 부정 감성을 결정.

     

    - 지도학습은 학습 데이터와 타깃 레이블 값을 기반으로 감성 분석 학습을 수행한 뒤 이를 기반으로 다른 데이터의 감성분석을 예측하는 방법으로 일반적인 텍스트 기반의 분류와 거의 동일

    - 비지도학습은 'Lexicon'이라는 감성 어휘 사전을 이용.

      ( Lexicon :  감성 분석을 위한 용어와 문맥에 대한 정보를 가지고 있어 문서의 긍정적, 부정적 감성 여부를 판단 )

     

    [ 지도 기반 감성 분석 실습 ]

    새로운 주피터 노트북 생성후 labeldTrainData.tsv 로딩

    로드된 데이터 셋의 피처

    - ID : 데이터 id

    - sentiment : 영화평의 sentiment 결과 값( target label ). 1은 긍정, 0은 부정적 평가를 의미

    - revies : 영화평의 텍스트

     

     

    review 칼럼의 텍스트 값 확인

     

    데이터 사전 처리 html태그 제거 및 숫자문자 제거

    텍스트 값을 확인할 때 HTML 형식에서 추출해 <br />태그가 존재하는 경우가 있을 때는 삭제하는 것이 좋으며,

    dataframe/series객체에서 str을 적용하면 문자열 연산을 수행할 수 있어 replace( )를 str에 적용해 <br />태그를 공백으로 변경해야함.

     

    str 적용해 문자열 연산 수행

    여기서 [^a-zA-z]의 의미는 영어 대/소문자가 아닌 모든 문자를 찾는 것이고 해당 이미지에서는 영어가 아닌 문자를 찾아 공란으로 바꿈.

     

     

    학습/테스트 데이터 분리

    피처 데이터 세트 생성과 학습용, 테스트용 데이터 세트로 분리

    sentiment 칼럼을 추출해 결정 값 데이터 세트를 만들고, 원본 데이터 세트에서 id와 sentiment 칼럼을 삭제해 피처 데이터 세트 생성한 뒤, 학습용, 테스트용 데이터 세트로 분리( 학습용: 17500개, 테스트용 7500 ).

     

     

    Pipeline을 통해 Count기반, TF-IDF기반  피처 벡터화 및 머신러닝 학습/예측/평가

    count 기반 피처 벡터화 및 예측 성능 측정
    TF- IDF 기반 피처 벡터화 및 예측 성능 평가

     

     

     

Designed by Tistory.