NLP Basics 실습 코드: https://github.com/finddme/Finddme_Blog_Code/blob/master/NLP_Code/Sentimental_Categorize1.ipynb
홍종선(2009)에서는 의미적 차원과 표현 구조를 검토하여 감정동사들을 총19유형(감동, 감사, 기쁨, 고뇌, 고독, 놀람, 동정, 두려움, 미안함, 분노, 상쾌함,수용, 수치심, 슬픔, 욕구, 이완, 허무, 혐오, 후회)으로 분류했다. 표현 구조를고려하여 분류된 감정동사들의 벡터 값이 유사할 것이라는 가정 하에 Word2Vec을 활용하여 이를 검토해보고자 한다.
데이터는 AI 허브에서 제공하는 감성분석 데이터에서 content만 따로 추출하여 데이터로 사용한다.
import codecs
from bs4 import BeautifulSoup
from konlpy.tag import Okt
from gensim.models import word2vec
text = codecs.open("sent.content.txt", "r", encoding = "utf-8")
f = open("sent.content.txt", "r", encoding="utf-8")
print(f.read(20))
곧 만기 은퇴 앞두다 있다 노후 준비
word_dict = {}
lines = f.read().split("\n")
print(lines[10])
친구 내 자다 되다 건 다 너 덕분 고맙다 문자 하다 통 넣다
morph_analyzer = Okt()
morph_analyzer1 = Okt()
for line in lines:
morph_analysed = morph_analyzer.pos(line)
for word in morph_analysed:
if word[1] == "Noun":
if not (word[0] in word_dict):
word_dict[word[0]] = 0
word_dict[word[0]] += 1
C:\Users\yein4\Anaconda3\lib\site-packages\jpype\_core.py:210: UserWarning:
-------------------------------------------------------------------------------
Deprecated: convertStrings was not specified when starting the JVM. The default
behavior in JPype will be False starting in JPype 0.8. The recommended setting
for new code is convertStrings=False. The legacy value of True was assumed for
this session. If you are a user of an application that reported this warning,
please file a ticket with the developer.
-------------------------------------------------------------------------------
""")
keys = sorted(word_dict.items(), key=lambda x:x[1], reverse=True)
print(keys[:10])
[('것', 7900), ('수', 6570), ('친구', 5653), ('내', 5178), ('나', 3815), ('상황', 3586), ('기분', 3182), ('더', 3182), ('생각', 3003), ('말', 2977)]
for word, count in keys[:20]:
print("{0}{1}".format(word, count))
f.close()
것7900
수6570
친구5653
내5178
나3815
상황3586
기분3182
더3182
생각3003
말2977
마음2867
지금2799
안2658
일2477
이2434
못2432
사람2352
게2351
거2128
정말2059
with open("sent.content.txt", "r", encoding="utf-8") as fr:
results = []
lines = fr.read().split("\n")
for line in lines:
morph_analysed = morph_analyzer.pos(line, norm=True, stem=True) # stem=True로 어근 출력
r = []
for word in morph_analysed:
if not word[1] in ["Josa", "Punctuation", "Foreign", "Suffix", "Eomi"]:
r.append(word[0])
# 결과에서 제외 할 품사 입력하기
#print(r)
rl = (" ".join(r)).strip() #공백제거
results.append(rl)
print(results[:4])
['곧 만기 은퇴 앞두다 있다 노후 준비 미리 꼼꼼하다 해 두 어서 기쁘다', '노후 준비 미리 꼼꼼하다 해 두 어서 기쁘다', '이렇게 노후 준비 하다 수 있다 건 옆 도와주다 친구 덕분 이 고마움 뭐 갚다', '노후 준비 도운 친구 고마움 느끼다 있다 상대방 고마움 표현 하다 수 있다 좋다 방법 있다']
data_file = "sent.content.txt"
with open(data_file, "w", encoding="utf-8") as fw:
fw.write("\n".join(results))
from gensim.models import word2vec
data = word2vec.LineSentence(data_file)
print(data)
model = word2vec.Word2Vec(data, size=100, window=10, hs=1, min_count=2, sg=1)
# CBOW, Skip-gram(0)
model.init_sims(replace=True) #필요없는 메모리는 unload
#model.save("senti_cat.model")
print("done")
<gensim.models.word2vec.LineSentence object at 0x000001E2CC7345C8>
done
##model = word2vec.Word2Vec.load("senti_cat.model")
##print(model.similarity("기쁘다", "슬프다"))
##print(model.similarity("기쁘다", "행복하다"))
print(model.most_similar("기쁘다"))
[('행복하다', 0.6797296404838562), ('뿌듯하다', 0.6624724864959717), ('자랑스럽다', 0.6465882062911987), ('값지다', 0.6333721280097961), ('다행', 0.6318965554237366), ('최고', 0.6219849586486816), ('센스', 0.6149460077285767), ('만족스럽다', 0.6145679950714111), ('예식', 0.6099244356155396), ('축하', 0.5977829098701477)]
C:\Users\yein4\Anaconda3\lib\site-packages\ipykernel_launcher.py:1: DeprecationWarning: Call to deprecated `most_similar` (Method will be removed in 4.0.0, use self.wv.most_similar() instead).
"""Entry point for launching an IPython kernel.
from gensim.models import KeyedVectors
model.wv.save_word2vec_format("senti_cat_model")
# PCA 돌리기 위해 모델 텐서를 저장한다
#!python -m gensim.scripts.word2vec2tensor --input gimal_model --output gimal_model
차원 축소한 벡터를 통해 감정동사에 해당하는 동사들의 cosine distance를확인하였다. cosine distance는 1-cosine similarity로, 값이 작을수록 유사도가 높은 것이다. 각 동사들의 cosine distance 값은 다음과 같다:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
data=pd.read_excel('./senti_cat.xlsx')
pd.set_option('display.max_rows',500)
data
| 기준동사분류 | 기준동사 | 관련동사분류 | 관련동사 | CD | |
|---|---|---|---|---|---|
| 0 | 감동 | NaN | NaN | NaN | NaN |
| 1 | 감사 | 고맙다 | 기쁨 | 기쁘다 | 0.544 |
| 2 | 감사 | 고맙다 | 미안함 | 미안하다 | 0.518 |
| 3 | 고뇌 | 걱정스럽다 | 고뇌 | 불안하다 | 0.531 |
| 4 | 고뇌 | 곤란하다 | 고뇌 | 난감하다 | 0.469 |
| 5 | 고뇌 | 괴롭다 | 고뇌 | 불안하다 | 0.545 |
| 6 | 고뇌 | 괴롭다 | 고뇌 | 착잡하다 | 0.569 |
| 7 | 고뇌 | 괴롭다 | 슬픔 | 슬프다 | 0.464 |
| 8 | 고뇌 | 괴롭다 | 혐오 | 속상하다 | 0.505 |
| 9 | 고뇌 | 괴롭다 | 두려움 | 무섭다 | 0.521 |
| 10 | 고뇌 | 괴롭다 | 두려움 | 두렵다 | 0.523 |
| 11 | 고뇌 | 괴롭다 | 슬픔 | 우울하다 | 0.539 |
| 12 | 고뇌 | 괴롭다 | 슬픔 | 서럽다 | 0.541 |
| 13 | 고뇌 | 괴롭다 | 동정 | 안타깝다 | 0.591 |
| 14 | 고뇌 | 불안하다 | 고뇌 | 초조하다 | 0.343 |
| 15 | 고뇌 | 불안하다 | 고뇌 | 심란하다 | 0.584 |
| 16 | 고뇌 | 불안하다 | 고뇌 | 착잡하다 | 0.587 |
| 17 | 고뇌 | 불안하다 | 두려움 | 두렵다 | 0.470 |
| 18 | 고뇌 | 심란하다 | 슬픔 | 울적하다 | 0.549 |
| 19 | 고뇌 | 심란하다 | 혐오 | 속상하다 | 0.597 |
| 20 | 고뇌 | 싱숭생숭하다 | 놀람 | 얼떨떨하다 | 0.537 |
| 21 | 고뇌 | 암담하다 | 혐오 | 지긋지긋하다 | 0.526 |
| 22 | 고뇌 | 암담하다 | 두려움 | 무섭다 | 0.585 |
| 23 | 고뇌 | 초조하다 | 허무 | 허탈하다 | 0.602 |
| 24 | 고뇌 | 초조하다 | 슬픔 | 우울하다 | 0.609 |
| 25 | 고뇌 | 초조하다 | 슬픔 | 서글프다 | 0.614 |
| 26 | 고뇌 | 고통스럽다 | 동정 | 안쓰럽다 | 0.465 |
| 27 | 고뇌 | 고통스럽다 | 두려움 | 무섭다 | 0.590 |
| 28 | 고뇌 | 난감하다 | 고뇌 | 곤란하다 | 0.469 |
| 29 | 고뇌 | 난감하다 | 혐오 | 부담스럽다 | 0.620 |
| 30 | 고뇌 | 찝찝하다 | 혐오 | 언짢다 | 0.606 |
| 31 | 고독 | 쓸쓸하다 | 고독 | 외롭다 | 0.315 |
| 32 | 고독 | 쓸쓸하다 | 고독 | 허전하다 | 0.519 |
| 33 | 고독 | 쓸쓸하다 | 슬픔 | 우울하다 | 0.431 |
| 34 | 고독 | 쓸쓸하다 | 슬픔 | 서글프다 | 0.481 |
| 35 | 고독 | 쓸쓸하다 | 슬픔 | 울적하다 | 0.526 |
| 36 | 고독 | 쓸쓸하다 | 혐오 | 섭섭하다 | 0.555 |
| 37 | 고독 | 외롭다 | 고독 | 허전하다 | 0.456 |
| 38 | 고독 | 외롭다 | 슬픔 | 우울하다 | 0.440 |
| 39 | 고독 | 외롭다 | 슬픔 | 슬프다 | 0.449 |
| 40 | 고독 | 외롭다 | 슬픔 | 울적하다 | 0.486 |
| 41 | 고독 | 외롭다 | 슬픔 | 서글프다 | 0.549 |
| 42 | 고독 | 허전하다 | 슬픔 | 울적하다 | 0.473 |
| 43 | 고독 | 허전하다 | 슬픔 | 서글프다 | 0.558 |
| 44 | 고독 | 심심하다 | 두려움 | 무섭다 | 0.556 |
| 45 | 고독 | 심심하다 | 동정 | 딱하다 | 0.556 |
| 46 | 기쁨 | 기쁘다 | 기쁨 | 행복하다 | 0.342 |
| 47 | 기쁨 | 기쁘다 | 기쁨 | 뿌듯하다 | 0.368 |
| 48 | 기쁨 | 기쁘다 | 기쁨 | 자랑스럽다 | 0.421 |
| 49 | 기쁨 | 기쁘다 | 수용 | 만족스럽다 | 0.481 |
| 50 | 기쁨 | 기쁘다 | 감사 | 고맙다 | 0.544 |
| 51 | 기쁨 | 들뜨다 | 수용 | 설레다 | 0.539 |
| 52 | 기쁨 | 뿌듯하다 | 기쁨 | 기쁘다 | 0.368 |
| 53 | 기쁨 | 뿌듯하다 | 기쁨 | 자랑스럽다 | 0.409 |
| 54 | 기쁨 | 뿌듯하다 | 기쁨 | 행복하다 | 0.494 |
| 55 | 기쁨 | 뿌듯하다 | 수용 | 만족스럽다 | 0.482 |
| 56 | 기쁨 | 뿌듯하다 | 수용 | 대견하다 | 0.535 |
| 57 | 기쁨 | 신나다 | 기쁨 | 행복하다 | 0.603 |
| 58 | 기쁨 | 신나다 | 수용 | 설레다 | 0.462 |
| 59 | 기쁨 | 자랑스럽다 | 기쁨 | 뿌듯하다 | 0.409 |
| 60 | 기쁨 | 자랑스럽다 | 기쁨 | 기쁘다 | 0.421 |
| 61 | 기쁨 | 자랑스럽다 | 수용 | 대견하다 | 0.381 |
| 62 | 기쁨 | 즐겁다 | 기쁨 | 행복하다 | 0.359 |
| 63 | 기쁨 | 즐겁다 | 수용 | 설레다 | 0.501 |
| 64 | 기쁨 | 행복하다 | 기쁨 | 기쁘다 | 0.342 |
| 65 | 기쁨 | 행복하다 | 기쁨 | 즐겁다 | 0.359 |
| 66 | 기쁨 | 행복하다 | 기쁨 | 뿌듯하다 | 0.494 |
| 67 | 기쁨 | 행복하다 | 수용 | 설레다 | 0.499 |
| 68 | 기쁨 | 행복하다 | 수용 | 흐뭇하다 | 0.566 |
| 69 | 기쁨 | 유쾌하다 | 수용 | 흐뭇하다 | 0.523 |
| 70 | 놀람 | 당혹스럽다 | 놀람 | 황당하다 | 0.607 |
| 71 | 놀람 | 당혹스럽다 | 슬픔 | 슬프다 | 0.647 |
| 72 | 놀람 | 당혹스럽다 | 고뇌 | 고통스럽다 | 0.664 |
| 73 | 놀람 | 황당하다 | 놀람 | 당혹스럽다 | 0.607 |
| 74 | 놀람 | 황당하다 | 혐오 | 부담스럽다 | 0.638 |
| 75 | 동정 | 딱하다 | 고독 | 심심하다 | 0.556 |
| 76 | 동정 | 불쌍하다 | 슬픔 | 처량하다 | 0.543 |
| 77 | 동정 | 불쌍하다 | 혐오 | 밉다 | 0.552 |
| 78 | 동정 | 안쓰럽다 | 동정 | 안타깝다 | 0.580 |
| 79 | 동정 | 안쓰럽다 | 고뇌 | 고통스럽다 | 0.465 |
| 80 | 동정 | 안쓰럽다 | 슬픔 | 비통하다 | 0.516 |
| 81 | 동정 | 안쓰럽다 | 슬픔 | 처량하다 | 0.574 |
| 82 | 동정 | 안쓰럽다 | 슬픔 | 슬프다 | 0.579 |
| 83 | 동정 | 안타깝다 | 동정 | 안쓰럽다 | 0.580 |
| 84 | 동정 | 안타깝다 | 슬픔 | 슬프다 | 0.432 |
| 85 | 동정 | 안타깝다 | 슬픔 | 비통하다 | 0.469 |
| 86 | 동정 | 안타깝다 | 혐오 | 속상하다 | 0.534 |
| 87 | 동정 | 안타깝다 | 슬픔 | 우울하다 | 0.536 |
| 88 | 동정 | 안타깝다 | 허무 | 허무 | 0.538 |
| 89 | 동정 | 안타깝다 | 고독 | 허전하다 | 0.567 |
| 90 | 동정 | 안타깝다 | 슬픔 | 울적하다 | 0.590 |
| 91 | 동정 | 안타깝다 | 고뇌 | 괴롭다 | 0.591 |
| 92 | 동정 | 안타깝다 | 슬픔 | 서글프다 | 0.596 |
| 93 | 동정 | 안타깝다 | 슬픔 | 억울하다 | 0.613 |
| 94 | 두려움 | 겁나다 | 슬픔 | 비통하다 | 0.577 |
| 95 | 두려움 | 두렵다 | 두려움 | 무섭다 | 0.344 |
| 96 | 두려움 | 두렵다 | 고뇌 | 불안하다 | 0.470 |
| 97 | 두려움 | 두렵다 | 고뇌 | 괴롭다 | 0.523 |
| 98 | 두려움 | 두렵다 | 슬픔 | 슬프다 | 0.586 |
| 99 | 두려움 | 무섭다 | 두려움 | 두렵다 | 0.344 |
| 100 | 두려움 | 무섭다 | 고뇌 | 괴롭다 | 0.521 |
| 101 | 두려움 | 무섭다 | 고독 | 심심하다 | 0.556 |
| 102 | 두려움 | 무섭다 | 고뇌 | 암담하다 | 0.585 |
| 103 | 두려움 | 무섭다 | 고뇌 | 고통스럽다 | 0.590 |
| 104 | 두려움 | 무섭다 | 슬픔 | 비통하다 | 0.596 |
| 105 | 두려움 | 무섭다 | 미안함 | 죄송하다 | 0.596 |
| 106 | 미안함 | 미안하다 | 미안함 | 죄송하다 | 0.586 |
| 107 | 미안함 | 미안하다 | 감사 | 고맙다 | 0.518 |
| 108 | 미안함 | 미안하다 | 혐오 | 서운하다 | 0.582 |
| 109 | 미안함 | 미안하다 | 혐오 | 속상하다 | 0.633 |
| 110 | 미안함 | 죄송스럽다 | 미안함 | 죄송하다 | 0.440 |
| 111 | 미안함 | 죄송스럽다 | 혐오 | 속상하다 | 0.528 |
| 112 | 미안함 | 죄송스럽다 | 혐오 | 서운하다 | 0.563 |
| 113 | 미안함 | 죄송스럽다 | 혐오 | 괘씸하다 | 0.580 |
| 114 | 미안함 | 죄송스럽다 | 슬픔 | 슬프다 | 0.589 |
| 115 | 미안함 | 죄송하다 | 미안함 | 죄송스럽다 | 0.440 |
| 116 | 미안함 | 죄송하다 | 미안함 | 미안하다 | 0.586 |
| 117 | 미안함 | 죄송하다 | 두려움 | 무섭다 | 0.596 |
| 118 | 분노 | 화나다 | 혐오 | 속상하다 | 0.482 |
| 119 | 분노 | 화나다 | 슬픔 | 억울하다 | 0.544 |
| 120 | 분노 | 화나다 | 혐오 | 섭섭하다 | 0.593 |
| 121 | 분노 | 화나다 | 혐오 | 서운하다 | 0.608 |
| 122 | 상쾌함 | 개운하다 | 상쾌함 | 홀가분하다 | 0.513 |
| 123 | 상쾌함 | 개운하다 | 상쾌함 | 상쾌하다 | 0.556 |
| 124 | 상쾌함 | 개운하다 | 복합감정 | 시원섭섭하다 | 0.592 |
| 125 | 상쾌함 | 상쾌하다 | 상쾌함 | 개운하다 | 0.556 |
| 126 | 상쾌함 | 홀가분하다 | 상쾌함 | 개운하다 | 0.513 |
| 127 | 상쾌함 | 홀가분하다 | 슬픔 | 서럽다 | 0.579 |
| 128 | 상쾌함 | 홀가분하다 | 허무 | 허무하다 | 0.603 |
| 129 | 상쾌함 | 후련하다 | 상쾌함 | 홀가분하다 | 0.660 |
| 130 | 상쾌함 | 후련하다 | 고뇌 | 암담하다 | 0.610 |
| 131 | 수용 | 대견하다 | 기쁨 | 자랑스럽다 | 0.381 |
| 132 | 수용 | 대견하다 | 기쁨 | 뿌듯하다 | 0.535 |
| 133 | 수용 | 만족스럽다 | 기쁨 | 기쁘다 | 0.481 |
| 134 | 수용 | 만족스럽다 | 기쁨 | 뿌듯하다 | 0.482 |
| 135 | 수용 | 만족스럽다 | 기쁨 | 행복하다 | 0.542 |
| 136 | 수용 | 설레다 | 기쁨 | 신나다 | 0.462 |
| 137 | 수용 | 설레다 | 기쁨 | 행복하다 | 0.499 |
| 138 | 수용 | 흐뭇하다 | 기쁨 | 유쾌하다 | 0.523 |
| 139 | 수용 | 흐뭇하다 | 기쁨 | 행복하다 | 0.566 |
| 140 | 수치심 | 민망하다 | 수치심 | 창피하다 | 0.557 |
| 141 | 수치심 | 민망하다 | 수치심 | 부끄럽다 | 0.587 |
| 142 | 수치심 | 민망하다 | 혐오 | 싫다 | 0.581 |
| 143 | 수치심 | 부끄럽다 | 수치심 | 창피하다 | 0.488 |
| 144 | 수치심 | 부끄럽다 | 수치심 | 민망하다 | 0.587 |
| 145 | 수치심 | 부끄럽다 | 혐오 | 싫다 | 0.530 |
| 146 | 수치심 | 비참하다 | 슬픔 | 비통하다 | 0.464 |
| 147 | 수치심 | 비참하다 | 슬픔 | 슬프다 | 0.485 |
| 148 | 수치심 | 비참하다 | 혐오 | 속상하다 | 0.569 |
| 149 | 수치심 | 창피하다 | 수치심 | 민망하다 | 0.557 |
| 150 | 수치심 | 창피하다 | 슬픔 | 비통하다 | 0.472 |
| 151 | 수치심 | 창피하다 | 혐오 | 싫다 | 0.568 |
| 152 | 수치심 | 참담하다 | 허무 | 허무하다 | 0.566 |
| 153 | 수치심 | 참담하다 | 허무 | 허탈하다 | 0.598 |
| 154 | 슬픔 | 비통하다 | 슬픔 | 슬프다 | 0.438 |
| 155 | 슬픔 | 비통하다 | 슬픔 | 서럽다 | 0.531 |
| 156 | 슬픔 | 비통하다 | 수치심 | 비참하다 | 0.464 |
| 157 | 슬픔 | 비통하다 | 수치심 | 창피하다 | 0.472 |
| 158 | 슬픔 | 비통하다 | 동정 | 안쓰럽다 | 0.516 |
| 159 | 슬픔 | 비통하다 | 상쾌함 | 홀가분하다 | 0.549 |
| 160 | 슬픔 | 비통하다 | 혐오 | 속상하다 | 0.581 |
| 161 | 슬픔 | 서글프다 | 슬픔 | 울적하다 | 0.518 |
| 162 | 슬픔 | 서글프다 | 슬픔 | 슬프다 | 0.548 |
| 163 | 슬픔 | 서글프다 | 허무 | 허무하다 | 0.436 |
| 164 | 슬픔 | 서글프다 | 고독 | 쓸쓸하다 | 0.481 |
| 165 | 슬픔 | 서글프다 | 고독 | 외롭다 | 0.549 |
| 166 | 슬픔 | 서글프다 | 고독 | 허전하다 | 0.558 |
| 167 | 슬픔 | 서럽다 | 슬픔 | 슬프다 | 0.413 |
| 168 | 슬픔 | 서럽다 | 슬픔 | 서글프다 | 0.520 |
| 169 | 슬픔 | 서럽다 | 슬픔 | 우울하다 | 0.525 |
| 170 | 슬픔 | 서럽다 | 슬픔 | 비통하다 | 0.531 |
| 171 | 슬픔 | 서럽다 | 혐오 | 서운하다 | 0.481 |
| 172 | 슬픔 | 서럽다 | 혐오 | 속상하다 | 0.487 |
| 173 | 슬픔 | 서럽다 | 고뇌 | 괴롭다 | 0.541 |
| 174 | 슬픔 | 서럽다 | 고뇌 | 고통스럽다 | 0.562 |
| 175 | 슬픔 | 서럽다 | 상쾌함 | 홀가분하다 | 0.579 |
| 176 | 슬픔 | 슬프다 | 슬픔 | 서럽다 | 0.413 |
| 177 | 슬픔 | 슬프다 | 슬픔 | 우울하다 | 0.457 |
| 178 | 슬픔 | 슬프다 | 슬픔 | 울적하다 | 0.487 |
| 179 | 슬픔 | 슬프다 | 슬픔 | 서글프다 | 0.548 |
| 180 | 슬픔 | 슬프다 | 슬픔 | 억울하다 | 0.615 |
| 181 | 슬픔 | 슬프다 | 혐오 | 속상하다 | 0.320 |
| 182 | 슬픔 | 슬프다 | 동정 | 안쓰럽다 | 0.432 |
| 183 | 슬픔 | 슬프다 | 혐오 | 서운하다 | 0.459 |
| 184 | 슬픔 | 슬프다 | 수치심 | 비참하다 | 0.485 |
| 185 | 슬픔 | 슬프다 | 고독 | 쓸쓸하다 | 0.538 |
| 186 | 슬픔 | 슬프다 | 동정 | 안쓰럽다 | 0.579 |
| 187 | 슬픔 | 억울하다 | 분노 | 화나다 | 0.554 |
| 188 | 슬픔 | 억울하다 | 슬픔 | 비통하다 | 0.573 |
| 189 | 슬픔 | 억울하다 | 슬픔 | 슬프다 | 0.615 |
| 190 | 슬픔 | 억울하다 | 혐오 | 속상하다 | 0.569 |
| 191 | 슬픔 | 억울하다 | 수치심 | 비참하다 | 0.607 |
| 192 | 슬픔 | 억울하다 | 동정 | 안타깝다 | 0.613 |
| 193 | 슬픔 | 우울하다 | 슬픔 | 울적하다 | 0.428 |
| 194 | 슬픔 | 우울하다 | 슬픔 | 슬프다 | 0.457 |
| 195 | 슬픔 | 우울하다 | 슬픔 | 서럽다 | 0.525 |
| 196 | 슬픔 | 우울하다 | 고독 | 쓸쓸하다 | 0.431 |
| 197 | 슬픔 | 우울하다 | 고독 | 외롭다 | 0.440 |
| 198 | 슬픔 | 우울하다 | 혐오 | 속상하다 | 0.485 |
| 199 | 슬픔 | 우울하다 | 동정 | 안타깝다 | 0.536 |
| 200 | 슬픔 | 우울하다 | 고뇌 | 괴롭다 | 0.539 |
| 201 | 슬픔 | 울적하다 | 슬픔 | 우울하다 | 0.428 |
| 202 | 슬픔 | 울적하다 | 슬픔 | 슬프다 | 0.487 |
| 203 | 슬픔 | 울적하다 | 슬픔 | 서글프다 | 0.518 |
| 204 | 슬픔 | 울적하다 | 고독 | 허전하다 | 0.473 |
| 205 | 슬픔 | 울적하다 | 고독 | 외롭다 | 0.486 |
| 206 | 슬픔 | 울적하다 | 혐오 | 속상하다 | 0.499 |
| 207 | 슬픔 | 울적하다 | 고독 | 쓸쓸하다 | 0.526 |
| 208 | 슬픔 | 울적하다 | 혐오 | 섭섭하다 | 0.548 |
| 209 | 슬픔 | 울적하다 | 고뇌 | 심란하다 | 0.549 |
| 210 | 슬픔 | 처량하다 | 혐오 | 지긋지긋하다 | 0.494 |
| 211 | 욕구 | 궁금하다 | 혐오 | 섭섭하다 | 0.525 |
| 212 | 욕구 | 부럽다 | 혐오 | 야속하다 | 0.633 |
| 213 | 이완 | NaN | NaN | NaN | NaN |
| 214 | 허무 | 허무하다 | 허무 | 허탈하다 | 0.540 |
| 215 | 허무 | 허무하다 | 슬픔 | 서글프다 | 0.436 |
| 216 | 허무 | 허무하다 | 동정 | 안타깝다 | 0.538 |
| 217 | 허무 | 허무하다 | 혐오 | 지긋지긋하다 | 0.540 |
| 218 | 허무 | 허무하다 | 수치심 | 참담하다 | 0.566 |
| 219 | 허무 | 허탈하다 | 허무 | 허무하다 | 0.540 |
| 220 | 허무 | 허탈하다 | 수치심 | 참담하다 | 0.598 |
| 221 | 허무 | 허탈하다 | 고뇌 | 초조하다 | 0.602 |
| 222 | 혐오 | 괘씸하다 | 혐오 | 섭섭하다 | 0.566 |
| 223 | 혐오 | 괘씸하다 | 혐오 | 서운하다 | 0.573 |
| 224 | 혐오 | 괘씸하다 | 슬픔 | 서럽다 | 0.520 |
| 225 | 혐오 | 물리다 | 고독 | 쓸쓸하다 | 0.505 |
| 226 | 혐오 | 밉다 | 동정 | 불쌍하다 | 0.552 |
| 227 | 혐오 | 부담스럽다 | 고뇌 | 난감하다 | 0.620 |
| 228 | 혐오 | 부담스럽다 | 놀람 | 황당하다 | 0.638 |
| 229 | 혐오 | 서운하다 | 혐오 | 섭섭하다 | 0.330 |
| 230 | 혐오 | 서운하다 | 혐오 | 속상하다 | 0.354 |
| 231 | 혐오 | 서운하다 | 혐오 | 괘씸하다 | 0.573 |
| 232 | 혐오 | 서운하다 | 슬픔 | 슬프다 | 0.459 |
| 233 | 혐오 | 서운하다 | 슬픔 | 서럽다 | 0.481 |
| 234 | 혐오 | 서운하다 | 미안함 | 죄송스럽다 | 0.563 |
| 235 | 혐오 | 서운하다 | 미안함 | 미안하다 | 0.582 |
| 236 | 혐오 | 서운하다 | 슬픔 | 울적하다 | 0.583 |
| 237 | 혐오 | 섭섭하다 | 혐오 | 서운하다 | 0.330 |
| 238 | 혐오 | 섭섭하다 | 혐오 | 속상하다 | 0.508 |
| 239 | 혐오 | 섭섭하다 | 혐오 | 괘씸하다 | 0.566 |
| 240 | 혐오 | 섭섭하다 | 분노 | 화나다 | 0.593 |
| 241 | 혐오 | 속상하다 | 혐오 | 서운하다 | 0.330 |
| 242 | 혐오 | 속상하다 | 슬픔 | 슬프다 | 0.320 |
| 243 | 혐오 | 속상하다 | 분노 | 화나다 | 0.482 |
| 244 | 혐오 | 속상하다 | 슬픔 | 우울하다 | 0.485 |
| 245 | 혐오 | 속상하다 | 슬픔 | 서럽다 | 0.487 |
| 246 | 혐오 | 속상하다 | 슬픔 | 울적하다 | 0.499 |
| 247 | 혐오 | 속상하다 | 미안함 | 죄송스럽다 | 0.528 |
| 248 | 혐오 | 속상하다 | 동정 | 안타깝다 | 0.534 |
| 249 | 혐오 | 속상하다 | 슬픔 | 억울하다 | 0.569 |
| 250 | 혐오 | 속상하다 | 수치심 | 비참하다 | 0.569 |
| 251 | 혐오 | 속상하다 | 슬픔 | 비통하다 | 0.581 |
| 252 | 혐오 | 속상하다 | 후회 | 아쉽다 | 0.586 |
| 253 | 혐오 | 싫다 | 혐오 | 짜증나다 | 0.543 |
| 254 | 혐오 | 싫다 | 혐오 | 지긋지긋하다 | 0.548 |
| 255 | 혐오 | 싫다 | 수치심 | 부끄럽다 | 0.530 |
| 256 | 혐오 | 싫다 | 수치심 | 창피하다 | 0.568 |
| 257 | 혐오 | 싫다 | 수치심 | 민망하다 | 0.581 |
| 258 | 혐오 | 싫다 | 고뇌 | 괴롭다 | 0.622 |
| 259 | 혐오 | 언짢다 | 고뇌 | 찝찝하다 | 0.606 |
| 260 | 혐오 | 지겹다 | 혐오 | 지긋지긋하다 | 0.597 |
| 261 | 혐오 | 지긋지긋하다 | 슬픔 | 처량하다 | 0.494 |
| 262 | 혐오 | 지긋지긋하다 | 고뇌 | 암담하다 | 0.526 |
| 263 | 혐오 | 지긋지긋하다 | 허무 | 허무하다 | 0.540 |
| 264 | 혐오 | 짜증나다 | 혐오 | 싫다 | 0.543 |
| 265 | 후회 | 아쉽다 | 혐오 | 속상하다 | 0.586 |
| 266 | 복합감정 | 시원섭섭하다 | 상쾌함 | 개운하다 | 0.592 |
v=data['기준동사분류'].value_counts()
v2=v.to_frame()
#v2.to_excel('senti_cat_v2.xlsx')
v2
| 기준동사분류 | |
|---|---|
| 슬픔 | 57 |
| 혐오 | 43 |
| 고뇌 | 28 |
| 기쁨 | 24 |
| 동정 | 19 |
| 고독 | 15 |
| 수치심 | 14 |
| 미안함 | 12 |
| 두려움 | 12 |
| 수용 | 9 |
| 상쾌함 | 9 |
| 허무 | 8 |
| 놀람 | 5 |
| 분노 | 4 |
| 감사 | 2 |
| 욕구 | 2 |
| 후회 | 1 |
| 감동 | 1 |
| 이완 | 1 |
| 복합감정 | 1 |
size1=data.groupby(['기준동사분류','관련동사분류']).size()
size2=size1.to_frame()
size2
| 0 | ||
|---|---|---|
| 기준동사분류 | 관련동사분류 | |
| 감사 | 기쁨 | 1 |
| 미안함 | 1 | |
| 고뇌 | 고뇌 | 8 |
| 놀람 | 1 | |
| 동정 | 2 | |
| 두려움 | 5 | |
| 슬픔 | 6 | |
| 허무 | 1 | |
| 혐오 | 5 | |
| 고독 | 고독 | 3 |
| 동정 | 1 | |
| 두려움 | 1 | |
| 슬픔 | 9 | |
| 혐오 | 1 | |
| 기쁨 | 감사 | 1 |
| 기쁨 | 13 | |
| 수용 | 10 | |
| 놀람 | 고뇌 | 1 |
| 놀람 | 2 | |
| 슬픔 | 1 | |
| 혐오 | 1 | |
| 동정 | 고뇌 | 2 |
| 고독 | 2 | |
| 동정 | 2 | |
| 슬픔 | 10 | |
| 허무 | 1 | |
| 혐오 | 2 | |
| 두려움 | 고뇌 | 5 |
| 고독 | 1 | |
| 두려움 | 2 | |
| 미안함 | 1 | |
| 슬픔 | 3 | |
| 미안함 | 감사 | 1 |
| 두려움 | 1 | |
| 미안함 | 4 | |
| 슬픔 | 1 | |
| 혐오 | 5 | |
| 복합감정 | 상쾌함 | 1 |
| 분노 | 슬픔 | 1 |
| 혐오 | 3 | |
| 상쾌함 | 고뇌 | 1 |
| 복합감정 | 1 | |
| 상쾌함 | 5 | |
| 슬픔 | 1 | |
| 허무 | 1 | |
| 수용 | 기쁨 | 9 |
| 수치심 | 수치심 | 5 |
| 슬픔 | 3 | |
| 허무 | 2 | |
| 혐오 | 4 | |
| 슬픔 | 고뇌 | 4 |
| 고독 | 9 | |
| 동정 | 5 | |
| 분노 | 1 | |
| 상쾌함 | 2 | |
| 수치심 | 4 | |
| 슬픔 | 21 | |
| 허무 | 1 | |
| 혐오 | 10 | |
| 욕구 | 혐오 | 2 |
| 허무 | 고뇌 | 1 |
| 동정 | 1 | |
| 수치심 | 2 | |
| 슬픔 | 1 | |
| 허무 | 2 | |
| 혐오 | 1 | |
| 혐오 | 고뇌 | 4 |
| 고독 | 1 | |
| 놀람 | 1 | |
| 동정 | 2 | |
| 미안함 | 3 | |
| 분노 | 2 | |
| 수치심 | 4 | |
| 슬픔 | 11 | |
| 허무 | 1 | |
| 혐오 | 13 | |
| 후회 | 1 | |
| 후회 | 혐오 | 1 |
18개이 범주 중 10개의 범주에서 기준동사범주와 관련동사범주의 일치율이 높은 것으로 확인되는데, 이를 통해 홍종선(2009)에서 제시된 감정동사의 분류 기재와 결과가 유의미하다는 것을 알 수 있다. 또한 각 기준동사범주에 대해 특정 관련동사범주의 비율이 높게 나옴을 확인할 수 있는데, 이는 감정동사범주들 간의 유사성도 존재한다는 것을 의미한다. 따라서 이후 규모가 더 큰 데이터를 사용하여 범주들 간의 유사성을 검증한 후 이를 다시 범주화할 수 있을 것으로 보인다. 이렇게 범주를 다시 범주화 하는 것은 세밀하게 나눠진 인간 감정의 범주를 덜 세분화하여 컴퓨터가 인간이 구사한 문장 속의 감정동사를 통해 인간이 전달하고자 한 감정과 근접한 감정을 인식할 수 있는또 다른 방법이 될 수도 있을 것이라 생각된다.