들어가며


“R 텍스트 마이닝” 전자책은 한국 R 사용자회와 제주대학교 제주대학교 언론홍보학과 안도현 교수님이 공동 작업한 저작물로 건강한 R 생태계 확대에 크게 기여할 것으로 기대됩니다. 안도현 교수님의 R로 배우는 텍스트마이닝 콘텐츠를 기반으로 한국 R 사용자회는 텍스트 분석/마이닝 전용 bitTA 패키지를 개발하여 2022년 현재 시점 한국어 텍스트 분석의 새로운 여정을 시작했습니다.

“R 텍스트 마이닝”은 한국어 텍스트 분석에 필요한 다양한 도구를 bitTA 패키지에 내장하고 한국어 텍스트 전처리와 정제에 필요한 스크립트와 해석을 전자책에 담아냈습니다. 또한, 대표적인 한글 소설과 “인공지능”과 “코로나19” 뉴스기사로 감성분석과 주제모형을 개발작업을 진행하여 현업 담당자가 실제 업무에 적용할 수 있도록 구성하였으며 shiny 앱을 내장하여 실제 텍스트 마이닝 데이터 사이언스 제품개발에 관심있는 개발자도 전체적인 개발흐름을 따라가며 구현에 도움이 되도록 구성했습니다.

“R 텍스트마이닝” 저작물을 포함한 한국 알(R) 사용자회 저작물은 크리에이티브 커먼즈 저작자표시-비영리-동일조건 변경 허락 (BY-NC-SA) 라이선스를 준용하고 있습니다.

The online version of this book is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC

관련 문의와 연락이 필요한 경우 한국 알(R) 사용자회 대표전자우편으로 연락주세요.


후원계좌

디지털 불평등 해소를 위해 제작중인 오픈 통계패키지 개발과 고품질 콘텐츠 제작에 큰 힘이 됩니다.

  • 하나은행 448-910057-06204
  • 사단법인 한국알사용자회

0.1 구성

텍스트 마이닝에 필요한 R의 기초, 분석의 전단계, 그리고 분석 등으로 구성돼 있다. 특히, 기존 텍스트 마이닝 Base R 을 최대한 tidyverse 패러다임을 담아 깔끔한 데이터(tidy data)를 주요 자료구조로 탐색적 텍스트 마이닝을 구현할 수 있도록 했으며 shiny 앱을 bitTA 패키지에 담아 텍스트 분석 생산성을 높이도록 했다.

텍스트 데이터가 엑셀과 같은 직사각형 데이터에 익숙한 분들도 다양한 텍스트 전처리 기법을 담아 텍스트 전처리 업무에 대한 부담을 대폭 낮추면서 어떠한 텍스트 데이터도 후속 시각화와 모형개발에 문제가 없도록 자주 사용되는 기법을 담아내었다.

텍스트 마이닝의 꽃인 감성분서과 주제모형을 별도 패키지와 데이터를 구하지 않고도 bitTA 패키지에 담아 내었으며 한글 감성분석에 꼭 필요한 감성사전을 포함하여 감성분석의 새지평을 열었으며 주제모형도 “인공지능”, “코로나19”를 실제 데이터로 삼아 tidytext 체계를 담아내어 최신 텍스트 마이닝 추세를 반영하여 한국어 텍스트 마이닝에 실전 사례로 확장하시는 독자에게 큰 도움이 되고자 노력을 하였습니다.

0.1.1 설치 및 환경설정

텍스트 마이닝에 꼭 필요한 여러 패키지와 툴에 다양하게 다뤘습니다. KoNLP는 자바의존성을 갖고 2016년 이후 더이상 유지보수가 되고 있지 않아 관련 패키지는 동일한 기능을 갖는 다른 패키지 메카브(Mecab)로 대체하였고, 하지만, KoNLP에서 제공하는 기능은 파이썬에서 제공하는 텍스트 마이닝 연관 패키지를 reticualte를 사용해서 필요한 기능을 더 확장해서 사용할 수 있도록 독자와 사용자의 편의성을 배려하였다.

또한, 딥러닝 관련 사항도 일부 다뤄서 딥러닝 사전학습모형(pretrained model)을 필요한 경우 텍스트 마이닝에 활용할 수 있는 초석도 마련하여 향후 딥러닝 관련 텍스트 마이닝 분야도 함께 성장할 수 있도록 했다.

텍스트 마이닝을 R 언어로 수행하면서 관련된 데이터유형과 구조, 시각화의 기초적인 내용과 R과 RStudio를 이용하는 과정에서 겪을 수 있는 문제해결 방법에 대해 다뤘다.

0.1.2 텍스트 살펴보기

텍스트 마이닝을 본격적으로 진행하기에 앞서 텍스트를 일별할 수 있는 방법에 대해 소개하고 shiny 앱을 통해 텍스트 마이닝 전반에 대해 살펴볼 수 있도록 했다. 특히, bitTA 패키지 내부에 텍스트 마이닝 shiny 앱이 내장되어 있어 필요하면 바로 텍스트 마이닝 작업을 수행하는 것도 가능하도록 했다.

0.1.3 분석 전단계

텍스트마이닝의 전반적인 구조와 자료 수집과 불러오기, 정제(전처리)에 필요한 다양한 도구(stringr, dplyr, tidyr, purrr, regex 등)의 학습 및 정제(전처리)하는 방법에 대해 학습한다. 이 과정을 통해 분석이 불가능한 텍스트를 깔끔한 텍스트(tidy text) 즉 데이터프레임으로 변환시켜 후속 작업을 준비한다.

0.1.4 기술 통계

단어의 빈도를 계산해 텍스트에서 의미를 추론하는 방식을 학습한다. 사전(감정사전)을 이용하는 방법, 상대적인 빈도(tf-idf, 가중로그승산비 등)를 계산하는 방법, 기계학습의 비지도학습(주제모형: topic models)으로 계산하는 방법 등을 학습한다.

0.1.5 분석 I

텍스트 마이닝의 꽃인 감성분석과 주제모형, 공변량 주제모형으로 텍스트 분석 범위를 모형까지 넓혀 실무업무에서 사용되는 다양한 기법을 현업과 밀접한 “인공지능”, “코로나19” 뉴스기사를 통해 생생한 현장의 모습을 담아내고자 했다.

0.1.6 분석 II (예정)

텍스트 마이닝 기계학습의 지도학습 방식에 대해서는 별도 전자책으로 준비하여 공개할 예정이다.

0.2 오픈 전자책

사단법인 한국 알(R) 사용자회는 디지털 불평등 해소와 통계 대중화를 위해 2022년 설립되었습니다. 오픈 통계 패키지 개발을 비롯하여 최근에 데이터 사이언스 관련 교재도 함께 제작하여 발간하는 작업을 수행하고 있습니다. 그 첫번째 결과물로 John Fox 교수님이 개발한 설치형 오픈 통계 패키지 Rcmdr(Fox 2016) (Fox and Bouchet-Valat 2021) (Fox 2005) 를 신종화 님께서 한글화 및 문서화에 10년 넘게 기여해주신 한국알사용자회 저작권을 흔쾌히 허락해 주셔서 설치형 오픈 통계 패키지 - Rcmdr로 세상에 나왔습니다.

두번째 활동을 여기저기 산재되어 있던 시각화 관련 자료를 묶어 데이터 시각화(Data Visualization)를 전자책 형태로 공개하였고, 데이터 분석 관련 저술을 이어 진행하게 되었습니다.

세번째 활동으로 데이터 사이언스가 하나로 구성되지 않은 것을 간파하고 데이터 사이언스를 지탱하는 기본기술을 5가지로 정리한 데이터 과학을 지탱하는 기본기 전자책을 공개했습니다.

네번째 활동으로 데이터 과학이 이제는 R 혹은 파이썬 언어가 중요한 것이 아니라 데이터 과학 문제 해결에 집중한 데이터 과학 프로그래밍 전자책을 공개했습니다. “데이터 과학 프로그래밍” 저작을 위해 “Python for Everybody”Python for Informatics: Exploring Information에 기반하여 2015년부터 시작된 모두를 위한 파이썬 한글화 프로젝트가 밑바탕이 되었습니다.

데이터 분석 언어 R에 관한 지식을 신속히 습득하여 독자들이 갖고 있는 문제에 접목시키고자 하시는 분은 한국 알(R) 사용자회에서 번역하여 공개한 R 신병훈련소(Bootcamp) 과정을 추천드립니다.