ADsP를 준비하며 정리했던 자료들. 내가 정리 한 것들은 2017년 개정판, 인터넷자료들,위키백과 등 이다. 카테고리는 2017개정판 데이터분석 전문가 책기준으로 되어있다.
1절 텍스트 마이닝
텍스트마이닝 이란 최근 10년사이에 크게 발전한 영역이다. 1980년대에는 노동집약적인 수동적인 방법이 이루어 졌었다. 현대의 텍스트마이닝이란 텍스트를 사용하여, 패턴이나 관계를 추출한 뒤, 그 안의 의미있는 정보나 가치를 발굴하고 해석하는 일을 일컫는다. 다양한 형태의 문서에서 데이터를 획득할 수 있고-웹이나 pdf, ms오피스, 오라클오픈오피스,xml,txt 등- 많은 기업에서 트위터, 고객의 정보를 API로 읽어들여서 분석하고 경영에 반영하고 있다.
텍스트 마이닝의 기능 으로는 문서요약, 분류, 군집화, 특성 추출 등을 꼽을 수 있다. 또한 텍스트마이닝 단원에서 알아둬야할 중요한 것은 텍스트분석을 위해서는 해당언어의 깊이있는 이해와 문화 관습 이해도 필요하다는 것이다. 그 해당 언어의 백그라운드 지식이 필요하다. 또한 영어분석만 줄 곧 진행해오던 한국인의 경우 영어분석의 결과가 한국어 분석 결과보다 더 좋을 수 도 있다.
R > tm 패키지 사용
<트위터에서 자료가져오기 방법2>
웹페이지에서 html을 데이터로 가져와서 파싱하는 것과 API를 이용해서 가져오는 방법으로 2가지가 있는데, 무분별한 API자제를 위해서 제약이 많을 수도 있다. 또한 트위터 API를 위해서 {twitterT} 패키지를 설치해야 한다.
<데이터 전처리 및 가공>
수집된 데이터에 내부에 문장부호나 의미없는 숫자와 단어, url등 무의미부분을 제거하면서 택스트를 가공하는 것이다.
먼저 Corpus 를 생성 한다. 데이터마이닝 중 정제, 통합, 선택, 변환 과정의 구조화단계를 말하고, 더이상의 추가 절차 없이 데이터 마이닝 알고리즘 실험의 활용상태를 만들어 준다.그 다음, tm패키지 내부의 corpus 형식을 가지는 데이터들의 변형을 위한 tm_map()함수를 사용하여 corpus 형식의 데이터에 일반적 함수 적용을 더해 전처리 밑 가공을 해준다.
R > tm 패키지의 Corpus()함수, tm_map()함수
cf. tm 패키지 업데이트 되면서 getTranstormations() 을 사용해줘야 하는 경우가 있다.
removeNumbers,removePunctuation,removeWords,stemDocument,stripWhitespace 빼고 다른 내장함수사용시 content_transformer(tolower) 등으로 사용해야함
<자연어 및 한글 처리>
Stemming 이란 공통어간을 가지는 단어를 묶어 주는 것이다. 역시 tm 패키지를 사용하고, stemDocument()와 stemCompletion() 의 스테밍, 스테밍단어 완성과정을 거치게 되고, 따라서 반드시 딕셔너리가 필요하게 된다.
한글 처리를 위해서는 텍스트마이닝패키지 KoNLP와 JRE설치가 필요하다.
<텍스트마이닝 예제> 한글설정 |
>library(KoNLP) >library(rJava) >extractNoun(‘데이터마이닝할문장’) >sapply(‘데이터마이닝할문장’, extractNoun) 보통 한글마이닝은 명사추출후 corpus 로 만들어 분석한다. |
<TDM구축 : term-document-matrix>
TDM이란 전처리 된 각 문서와 단어간의 사용여부를 사용해 만들어진 행렬을 의미하고, 각 단어의 빈도수를 쉽게 알 수 있다. TextDocumentMatrix()함수는 행은 각 단어, 열은 트위터 메시지 행열을 만들고 딕셔너리 부분을 작성하지 않으면 분리된 모든 단어가 tdm으로 만드는데 사용된다. 또한 단어사전 dictionary 는 복수의 문자집합으로 텍스트마이닝에서 사용하고자 하는 단어들의 집합을 의미한다.
<분석 및 시각화>\
Association 으로 tdm에서 특정 단어와의 연관성에 따라 단어 조회가 가능하다. 연관분석과 관련이 있다. 또한 흔히 볼수있는 워드클라우드 형태로 만들수도 있는데, {Wordcloud} 패키지를 사용하여 tdm을 이용한 후, wordcloud()함수를 사용한다.
또한 감성분석으로 브랜드 이미지나 경영에서 많이 사용하는 방법이 있다. 각 문장에서 이것이 긍정의 의미인지 부정의 의미인지 사용여부를 밝히는데 사용하며, 개별 문장분석에서 오류가 생겨도 수많은 데이터를 가공하면 그 추이는 옳다고 가정한다. 또한 이를 분석하기 위해서는 긍정/부정 단어 사전이 필요하다.
'R & ADsP' 카테고리의 다른 글
ADsP 합격자 과목별 요약본 1과목 - [무료배포/비전공자기준] (0) | 2020.01.22 |
---|---|
ADsP 데이터분석준전문가★비전공자 합격수기 & 팁! (1) | 2017.07.07 |
ADsP :: R 이론 요약< 빅데이터 분석과 활용, 인사이트 도출에 관해.. > (0) | 2017.07.06 |
ADsP :: R 이론부터 실전까지 한번에 보기<연관분석> (0) | 2017.06.21 |
ADsP :: R 이론부터 실전까지 한번에 보기<군집분석> (0) | 2017.06.20 |
ADsP :: R 이론부터 실전까지 한번에 보기<군집분석> (0) | 2017.06.19 |
댓글