SiRyu AI

[SW융합개론 Term-Project] KakaoTalk Analyzer 최종본 본문

KHU Term-Project/소프트웨어융합개론

[SW융합개론 Term-Project] KakaoTalk Analyzer 최종본

KHU 조문기 2017. 12. 9. 23:42


소프트웨어융합개론 Term-Project의 일환으로 개발한 KakaoTalk Analyzer 프로그램의 최종본 영상입니다.

소스 코드를 포함한 실행 파일은 게시글 하단의 링크에 첨부하였습니다.


프로그램 설명

이 프로그램은 카카오톡의 특정 그룹 대화방의 대화 로그를 텍스트 파일로 읽어와 해당 대화방의 사람들이 그 곳에서 얼마나 말했는지, 어느 시간대에 많이 말했는지, 그들은 주로 어떤 단어를 많이 쓰는지에 대한 데이터를 그래프로 시각화하여 보여줍니다. 그들이 사용한 단어를 분석할 때, 그 그룹 대화방에서의 '특정 공통 주제'를 알고 싶었기에 단순한 자음이 반복되는 말이나, 필요없는 감탄사 등은 모두 최소화하고 최대한 영양가 있는 단어들만 분석했습니다. 그리고 이렇게 분석한 단어들을 비단 그래프로 나타내는 것에서 그치지 않고, 좀 더 확실하게 와닿게 파악할 수 있도록 워드클라우드로 단어를 표현하는 기능도 구현하였습니다. 마지막으로, 해당 그룹 대화방에서 가장 많이 말한 상위 20개의 단어들 중 하나를 골라 버튼을 누르면 즉시 웹페이지와 연동하여 해당 단어와 관련있는 정보를 찾을 수 있는 기능도 구현했습니다.


버그 수정과 관련하여

이전 데모 버전 때 발생했던 몇몇 파일은 분석이 되고 몇몇 파일은 분석이 되지 않는 오류는 제가 사용한 konlpy 라이브러리와 IDLE 사이의 이모티콘 관련 작용 문제로 파악하였고, 이와 같은 문제를 해결하기 위해 프로그램 소스 코드에 이를 해결하는 코드를 추가하였습니다(#Emoji Delete Code). 또한, 이 코드를 konlpy github 페이지에 건의하여 라이브러리가 좀 더 나은 방향으로 나아갈 수 있도록 하는 활동을 수행했습니다.


프로그램을 개발하며 느낀점

아직 학습한 것이 부족하여 제가 데모 프로그램 게시글에서 작성했던 것에서 말했던 프로그램을 개발하고자 하는 목적에는 크게 다가가지 못했던 것 같습니다. 하지만 제가 배운 것과 더불어 따로 더 학습한 것들을 바탕으로 최대한 구현해보고자 노력하였고, 나름대로 의미있는 결과가 나온 것 같습니다. 추후에 좀 더 다양한 학습을 하게 되면, 머신 러닝을 통한 단어들의 주제별 분류와 같은 기능을 도입하여 더욱 더 의미있는 데이터를 반환할 수 있도록 하게 하고싶습니다. 


프로그램 링크(소스코드 .py파일, 필요 라이브러리, 필요 파일 포함)

https://www.dropbox.com/s/hv2zwl17sv9d0c2/KakaoTalk%20Analyzer%20Final_2017103758.zip?dl=0


Comments