DOI QR코드

DOI QR Code

KNU Korean Sentiment Lexicon: Bi-LSTM-based Method for Building a Korean Sentiment Lexicon

Bi-LSTM 기반의 한국어 감성사전 구축 방안

  • Park, Sang-Min (Department of Software Convergence Engineering, Kunsan National University) ;
  • Na, Chul-Won (Department of Software Convergence Engineering, Kunsan National University) ;
  • Choi, Min-Seong (Department of Software Convergence Engineering, Kunsan National University) ;
  • Lee, Da-Hee (Department of Software Convergence Engineering, Kunsan National University) ;
  • On, Byung-Won (Department of Software Convergence Engineering, Kunsan National University)
  • 박상민 (군산대학교 소프트웨어융합공학과) ;
  • 나철원 (군산대학교 소프트웨어융합공학과) ;
  • 최민성 (군산대학교 소프트웨어융합공학과) ;
  • 이다희 (군산대학교 소프트웨어융합공학과) ;
  • 온병원 (군산대학교 소프트웨어융합공학과)
  • Received : 2018.09.17
  • Accepted : 2018.12.24
  • Published : 2018.12.31

Abstract

Sentiment analysis, which is one of the text mining techniques, is a method for extracting subjective content embedded in text documents. Recently, the sentiment analysis methods have been widely used in many fields. As good examples, data-driven surveys are based on analyzing the subjectivity of text data posted by users and market researches are conducted by analyzing users' review posts to quantify users' reputation on a target product. The basic method of sentiment analysis is to use sentiment dictionary (or lexicon), a list of sentiment vocabularies with positive, neutral, or negative semantics. In general, the meaning of many sentiment words is likely to be different across domains. For example, a sentiment word, 'sad' indicates negative meaning in many fields but a movie. In order to perform accurate sentiment analysis, we need to build the sentiment dictionary for a given domain. However, such a method of building the sentiment lexicon is time-consuming and various sentiment vocabularies are not included without the use of general-purpose sentiment lexicon. In order to address this problem, several studies have been carried out to construct the sentiment lexicon suitable for a specific domain based on 'OPEN HANGUL' and 'SentiWordNet', which are general-purpose sentiment lexicons. However, OPEN HANGUL is no longer being serviced and SentiWordNet does not work well because of language difference in the process of converting Korean word into English word. There are restrictions on the use of such general-purpose sentiment lexicons as seed data for building the sentiment lexicon for a specific domain. In this article, we construct 'KNU Korean Sentiment Lexicon (KNU-KSL)', a new general-purpose Korean sentiment dictionary that is more advanced than existing general-purpose lexicons. The proposed dictionary, which is a list of domain-independent sentiment words such as 'thank you', 'worthy', and 'impressed', is built to quickly construct the sentiment dictionary for a target domain. Especially, it constructs sentiment vocabularies by analyzing the glosses contained in Standard Korean Language Dictionary (SKLD) by the following procedures: First, we propose a sentiment classification model based on Bidirectional Long Short-Term Memory (Bi-LSTM). Second, the proposed deep learning model automatically classifies each of glosses to either positive or negative meaning. Third, positive words and phrases are extracted from the glosses classified as positive meaning, while negative words and phrases are extracted from the glosses classified as negative meaning. Our experimental results show that the average accuracy of the proposed sentiment classification model is up to 89.45%. In addition, the sentiment dictionary is more extended using various external sources including SentiWordNet, SenticNet, Emotional Verbs, and Sentiment Lexicon 0603. Furthermore, we add sentiment information about frequently used coined words and emoticons that are used mainly on the Web. The KNU-KSL contains a total of 14,843 sentiment vocabularies, each of which is one of 1-grams, 2-grams, phrases, and sentence patterns. Unlike existing sentiment dictionaries, it is composed of words that are not affected by particular domains. The recent trend on sentiment analysis is to use deep learning technique without sentiment dictionaries. The importance of developing sentiment dictionaries is declined gradually. However, one of recent studies shows that the words in the sentiment dictionary can be used as features of deep learning models, resulting in the sentiment analysis performed with higher accuracy (Teng, Z., 2016). This result indicates that the sentiment dictionary is used not only for sentiment analysis but also as features of deep learning models for improving accuracy. The proposed dictionary can be used as a basic data for constructing the sentiment lexicon of a particular domain and as features of deep learning models. It is also useful to automatically and quickly build large training sets for deep learning models.

감성사전은 감성 어휘에 대한 사전으로 감성 분석(Sentiment Analysis)을 위한 기초 자료로 활용된다. 이와 같은 감성사전을 구성하는 감성 어휘는 특정 도메인에 따라 감성의 종류나 정도가 달라질 수 있다. 예를 들면, '슬프다'라는 감성 어휘는 일반적으로 부정의 의미를 나타내지만 영화 도메인에 적용되었을 경우 부정의 의미를 나타내지 않는다. 그렇기 때문에 정확한 감성 분석을 수행하기 위해서는 특정 도메인에 알맞은 감성사전을 구축하는 것이 중요하다. 최근 특정 도메인에 알맞은 감성사전을 구축하기 위해 범용 감성 사전인 오픈한글, SentiWordNet 등을 활용한 연구가 진행되어 왔으나 오픈한글은 현재 서비스가 종료되어 활용이 불가능하며, SentiWordNet은 번역 간에 한국 감성 어휘들의 특징이 잘 반영되지 않는다는 문제점으로 인해 특정 도메인의 감성사전 구축을 위한 기초 자료로써 제약이 존재한다. 이 논문에서는 기존의 범용 감성사전의 문제점을 해결하기 위해 한국어 기반의 새로운 범용 감성사전을 구축하고 이를 KNU 한국어 감성사전이라 명명한다. KNU 한국어 감성사전은 표준국어대사전의 뜻풀이의 감성을 Bi-LSTM을 활용하여 89.45%의 정확도로 분류하였으며 긍정으로 분류된 뜻풀이에서는 긍정에 대한 감성 어휘를, 부정으로 분류된 뜻풀이에서는 부정에 대한 감성 어휘를 1-gram, 2-gram, 어구 그리고 문형 등 다양한 형태로 추출한다. 또한 다양한 외부 소스(SentiWordNet, SenticNet, 감정동사, 감성사전0603)를 활용하여 감성 어휘를 확장하였으며 온라인 텍스트 데이터에서 사용되는 신조어, 이모티콘에 대한 감성 어휘도 포함하고 있다. 이 논문에서 구축한 KNU 한국어 감성사전은 특정 도메인에 영향을 받지 않는 14,843개의 감성 어휘로 구성되어 있으며 특정 도메인에 대한 감성사전을 효율적이고 빠르게 구축하기 위한 기초 자료로 활용될 수 있다. 또한 딥러닝의 성능을 높이기 위한 입력 자질로써 활용될 수 있으며, 기본적인 감성 분석의 수행이나 기계 학습을 위한 대량의 학습 데이터 세트를 빠르게 구축에 활용될 수 있다.

Keywords

JJSHBB_2018_v24n4_219_f0001.png 이미지

Flow chart of the proposal 'KNU Sentiment Lexicon' construct algorithm

JJSHBB_2018_v24n4_219_f0002.png 이미지

LSTM model

JJSHBB_2018_v24n4_219_f0003.png 이미지

Forget gate layer

JJSHBB_2018_v24n4_219_f0004.png 이미지

Input gate, tanh layer

JJSHBB_2018_v24n4_219_f0005.png 이미지

Update step of Gt

JJSHBB_2018_v24n4_219_f0006.png 이미지

Output step of ht

JJSHBB_2018_v24n4_219_f0007.png 이미지

Bi-LSTM model

JJSHBB_2018_v24n4_219_f0008.png 이미지

Demo page of KNU Sentiment Lexicon

JJSHBB_2018_v24n4_219_f0009.png 이미지

Results of input word which in KNU Sentiment Lexicon

JJSHBB_2018_v24n4_219_f0010.png 이미지

Results of input word which not in KNU Sentiment Lexicon

JJSHBB_2018_v24n4_219_f0011.png 이미지

List of sentiment words according to consonants

Sample of gloss

JJSHBB_2018_v24n4_219_t0001.png 이미지

Sentiment marks of gloss

JJSHBB_2018_v24n4_219_t0002.png 이미지

Training data set

JJSHBB_2018_v24n4_219_t0003.png 이미지

Example of extracting sentiment words

JJSHBB_2018_v24n4_219_t0004.png 이미지

The number of training data and test data

JJSHBB_2018_v24n4_219_t0005.png 이미지

Used parameter values of FastText

JJSHBB_2018_v24n4_219_t0006.png 이미지

Used parameter values of Bi-LSTM

JJSHBB_2018_v24n4_219_t0007.png 이미지

Results of sentiment classification of train data set and test data set

JJSHBB_2018_v24n4_219_t0008.png 이미지

Results of sentiment classification's accuracy, precision, recall and F1-score

JJSHBB_2018_v24n4_219_t0009.png 이미지

Results of the number of extracting sentiment words using gloss

JJSHBB_2018_v24n4_219_t0010.png 이미지

Results of the number of extracting sentiment words using external source

JJSHBB_2018_v24n4_219_t0011.png 이미지

The number of KNU Sentiment Lexicon's sentiment words

JJSHBB_2018_v24n4_219_t0012.png 이미지

The number of sentiment word's type

JJSHBB_2018_v24n4_219_t0013.png 이미지

Example of the sentiment words in KNU Sentiment Lexicon

JJSHBB_2018_v24n4_219_t0014.png 이미지

Comparison of korean sentiment lexicon between seoul univ, open hangul and KNU Sentiment Lexicon about qualitative indicator

JJSHBB_2018_v24n4_219_t0015.png 이미지

Comparison of korean sentiment lexicon between seoul univ, open hangul and KNU Sentiment Lexicon about quantitative indicator

JJSHBB_2018_v24n4_219_t0016.png 이미지

References

  1. An, J. K. and H. W. Kim, "Building a Korean Sentiment Lexicon Using Collective Intelligence," Journal of Intelligence and Information Systems, Vol. 21, No. 2(2015), 49-67 https://doi.org/10.13088/jiis.2015.21.2.49
  2. Baccianella, S., A. Esuli, and F. Sebastiani, "SentiWordNet 3.0: An enhanced lexical resource for sentiment analysis and opinion mining", Proceedings of the International Conference on Language Resources and Evaluation, LREC(2010), 2200-2204
  3. Cambria, E., S. Poria, D. Hazarika, and K. Kwok, "SenticNet 5: Discovering Conceptual Primitives for Sentiment Analysis by Means of Context Embeddings", AAAI(2018)
  4. Choi, S. J. and O. B. Kwon, "The Study of Developing Korean SentiWordNet for Big Data Analytics - Focusing on Anger Emotion -," The Jounal of Society for e-Business Studies, Vol. 19, No. 4(2014), 1-19
  5. Choi, S. J., Y. E. Song, and O. B. Kwon, "Analyzing Contextual Polarity of Unstructured Data for Measuring Subjective Well-Being," Journal of Intelligence and Information Systems, Vol. 22, No. 1(2016), 83-105 https://doi.org/10.13088/jiis.2016.22.1.083
  6. Christopher, O., Understanding LSTM Networks, 2015, Available at http://colah.github.io/posts/2015-08-Understanding-LSTMs/ (Accessed 2018)
  7. CIO, Expansion of BI and Analytical Role, 2013, Available at http://www.ciokorea.com/t/544/9118/15551 (Accessed 2018)
  8. Facebook, FastText, Available at https://fasttext.cc/(Accessed 2018)
  9. Fellbaum, C., WordNet, Available at http://wordnet.princeton.edu/ (Accessed 2018)
  10. Jang, H. S., K. Y. Jeong, and E. Y. Jang, "Efficient method to generate sentiment vocabulary for specific topic based on Word2Vec," Proceedings of Korean Institute of Information Scientists and Engineers (2017), 652-654
  11. Kim, D. H., T. M. Cho, and J. H. Lee, "A Domain Adaptive Sentiment Dictionary Construction Method for Domain Sentiment Analysis," Proceedings of the Korean Society of Computer Information Conference, Vol. 23, No. 1(2015), 15-18
  12. Kim, E. Y., "A Study on the Korean Emotion Verbs", A Doctoral Dissertation at JeonNam National University(2004)
  13. Kim, S. B., S. J. Kwon, and J. T. Kim, "Building Sentiment Dictionary and Polarity Classification of Blog Review By Using Elastic Net," Proceedings of Korean Institute of Information Scientists and Engineers (2015), 639-641
  14. Kim, S. I., sentiment lexicon0603, 2015, Available at http://datascience.khu.ac.kr/board/bbs/board.php?bo_table=05_01&wr_id=91 (Accessed 2018)
  15. KOSAC, Korean Sentiment Lexicon, Available at word.snu.ac.kr/kosac/lexicon.php (Accessed 2018)
  16. Lee, C. H., J. M. Sim, and A. S. Yoon, "The Review about the Development of Korean Linguistic Inquiry and Word Count", KOREAN JOURNAL OF COGNITIVE SCIENCE, Vol. 16, No. 2(2005), 93-121
  17. Lee, D. J., J. H. Yeon, I. B. Hwang, and S. G. Lee, "KKMA : A Tool for Utilizing Sejong Corpus based on Relational Database," Journal of KIISE : Computing Practices and Letters, Vol. 16, No. 11(2010), 1046-1050
  18. Lee, S. H., J. Choi, and J. W. Kim, "Sentiment Analysis on Moive Review Through Building Modified Sentiment Dictionary by Moive Genre", Journal of Intelligence and Information Systems, Vol. 22, No. 2(2016), 97-113 https://doi.org/10.13088/jiis.2016.22.2.097
  19. National Institute of the Korean Language(NIKL), Standard Korean Dictionary, Available at stdweb2.korean.go.kr (Accessed 2018)
  20. OpenHagul, Sentiment Lexicon, Available at openhangul.com/restrict (Accessed 2018)
  21. Park, C. Y., stdkor, Available at https://github.com/forkonlp/stdkor (Accessed 2018)
  22. Park E. J. and S. J. Jo, "KoNLPy: Korean natural language processing in Python", Proceedings of the 26th Annual Conference on Human and Cognitive Language Technology(2014), 133-136
  23. Park, S. M. and B. W. On, "Latent-Based Product Reputation Mining", Journal of Intelligence and Information Systems, Vol. 23, No. 2(2017), 39-70 https://doi.org/10.13088/JIIS.2017.23.2.039
  24. Shin, D. H., D. Cho, and J. S. Nam, "Building the Korean Sentiment Lexicon DecoSelex for Sentiment Analysis," Journal of Korealex, No. 28(2016), 75-111
  25. Shin, H. P., M. H. Kim, and S. Z. Park, "Modality-based Sentiment Analysis through the Utilization of the Korean Sentiment Analysis Corpus," EONEOHAG : Journal of the Linguistic Society of Korea, No. 74 (2016), 93-114
  26. Son, S. J., M. S. Park, J. E., Park and J. H. Son, "Korean Emotion Vocabulary: Extraction and Categorization of Feeling Words", Science of Emotion & Sensibility, vol. 15(2012), 105-120
  27. Teng, Z., D. T. Vo, and Y. Zhang, Teng, Zhiyang, Duy-Tin Vo and Yue Zhang. "Context-Sensitive Lexicon Features for Neural Sentiment Analysis." EMNLP(2016)
  28. Wikipedia, Deep Learning, Available at https://en.wikipedia.org/wiki/Deep_learning (Accessed 2018a)
  29. Wikipedia, Emoticon, Available at https://ko.wikipedia.org/wiki/%EC%9D%B4%EB%AA%A8%ED%8B%B0%EC%BD%98 (Accessed 2018b)
  30. Wikipedia, Neologism, Available at https://ko.wikipedia.org/wiki/%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD%EC%9D%98_%EC%9D%B8%ED%84%B0%EB%84%B7_%EC%8B%A0%EC%A1%B0%EC%96%B4_%EB%AA%A9%EB%A1%9D (Accessed 2018c)
  31. Wikipedia, Sentiment Analysis, Available at https://en.wikipedia.org/wiki/Sentiment_analysis (Accessed 2018d)
  32. Wikipedia, Text Mining, Available at https://en.wikipedia.org/wiki/Text_mining (Accessed 2018e)

Cited by

  1. 텍스트 감정분석을 이용한 IT 서비스 품질요소 분석 vol.43, pp.4, 2018, https://doi.org/10.11627/jkise.2020.43.4.033
  2. 구어체 말뭉치의 어휘 사용 특징 분석 및 감정 어휘 사전의 자동 구축 vol.9, pp.4, 2018, https://doi.org/10.30693/smj.2020.9.4.144
  3. 딥러닝 기법을 활용한 산업/직업 자동코딩 시스템 vol.12, pp.4, 2018, https://doi.org/10.15207/jkcs.2021.12.4.023