보고 싶어서 떨리는 사람의 감정을 분석하고 싶어요.
하고 싶은 일
보고 싶어서 떨리는 사람의 감정을 이해하다
가사를 통해서 감정 분석을 해요.
밝은 노래인가요?
슬픈 노래인가요?
판정하고 싶어요.
음악 발표 서비스 등을 통해 밝은 곡, 슬픈 곡 등 애매한 검색을 할 수 있었으면 좋겠다.
올해는 액운의 해여서 좋은 일이 없으니 밝은 곡을 열심히 듣겠습니다.
가사를 분석해보도록 하겠습니다.
분석 도구
COTOHA API
Python 3.8.1
분석 대상
보고 싶고 보고 싶고 떨리는 곡.
분석 도구
COTOHA API
Python 3.8.1
분석 대상
보고 싶고 보고 싶고 떨리는 곡.
보고 싶고 보고 싶고 떨리는 곡.
명쾌한 곡
슬픈 곡
코드
감정 분석을 통해 선인장이 춤을 멈출 수 있을까
참고하라고 했어요.
이루어지다
top/
├ file/
│ ├ input.txt (分析する歌詞)
│ └ output.csv (出力結果)
├ config.ini
└ cotoha_sentiment.py
cotoha_sentiment.py# -*- coding:utf-8 -*-
import os
import urllib.request
import json
import configparser
import codecs
import csv
class CotohaApi:
def __init__(self, client_id, client_secret, developer_api_base_url, access_token_publish_url):
self.client_id = client_id
self.client_secret = client_secret
self.developer_api_base_url = developer_api_base_url
self.access_token_publish_url = access_token_publish_url
self.getAccessToken()
def getAccessToken(self):
url = self.access_token_publish_url
headers={
"Content-Type": "application/json;charset=UTF-8"
}
data = {
"grantType": "client_credentials",
"clientId": self.client_id,
"clientSecret": self.client_secret
}
data = json.dumps(data).encode()
req = urllib.request.Request(url, data, headers)
res = urllib.request.urlopen(req)
res_body = res.read()
res_body = json.loads(res_body)
self.access_token = res_body["access_token"]
# 感情分析API
def sentiment(self, sentence):
url = self.developer_api_base_url + "nlp/v1/sentiment"
headers={
"Authorization": "Bearer " + self.access_token,
"Content-Type": "application/json;charset=UTF-8",
}
data = {
"sentence": sentence
}
data = json.dumps(data).encode()
req = urllib.request.Request(url, data, headers)
try:
res = urllib.request.urlopen(req)
except urllib.request.HTTPError as e:
print ("<Error> " + e.reason)
res_body = res.read()
res_body = json.loads(res_body)
return res_body
if __name__ == '__main__':
APP_ROOT = os.path.dirname(os.path.abspath( __file__)) + "/"
# config.iniの値を取得
config = configparser.ConfigParser()
config.read(APP_ROOT + "config.ini")
CLIENT_ID = config.get("COTOHA API", "Developer Client id")
CLIENT_SECRET = config.get("COTOHA API", "Developer Client secret")
DEVELOPER_API_BASE_URL = config.get("COTOHA API", "Developer API Base URL")
ACCESS_TOKEN_PUBLISH_URL = config.get("COTOHA API", "Access Token Publish URL")
cotoha_api = CotohaApi(CLIENT_ID, CLIENT_SECRET, DEVELOPER_API_BASE_URL, ACCESS_TOKEN_PUBLISH_URL)
# file/infile.txtから解析対象文取得
checkpath = 'file/input.txt'
song_data = open(checkpath, "r", encoding='utf-8')
output_file = open('file/output.csv', 'w')
writer = csv.writer(output_file, lineterminator='\n') # 改行コード(\n)を指定しておく
sentence = song_data.readline()
while sentence:
print(sentence.strip())
# API実行
result = cotoha_api.sentiment(sentence)
score = result["result"]["score"]
print(score)
sentiment = result["result"]["sentiment"]
print(sentiment)
one_row = [score,sentiment]
writer.writerow(one_row) # listを渡す
sentence = song_data.readline()
song_data.close()
output_file.close()
분석 결과
시노 가나: 보고 싶어요. 보고 싶어요.
가사会いたくて 会いたくて 震える
君想うほど遠く感じて
もう一度聞かせて嘘でも
あの日のように"好きだよ"って…
…
생각보다 그렇게 소극적이지 않아요.
그린 "기적"
가사明日、今日よりも好きになれる 溢れる想いが止まらない
今もこんなに好きでいるのに 言葉に出来ない
君のくれた日々が積み重なり 過ぎ去った日々2人歩いた『軌跡』
…
상당히 적극적인 곡
세상은 그것을 사랑이라고 부른다
가사.涙の中にかすかな灯りがともったら
君の目の前で
あたためてた事話すのさ
…
굳이 말하자면 부정적인 가사가 많아요.
SPYAIR 「BEAUTIFUL DAYS」
가사.プラスにもっと変えていける そうやって信じていこう
誰かが君を笑っても 俺は笑ったりしないよ
新たなスタート どんな君も輝いていけるさ
不安&期待で Oh Try yourself
…
굉장히 긍정적인 곡인 것 같아요.
평정견의 《기실문학》
가사.描いた夢は叶わないことの方が多い
優れた人を羨んでは自分が嫌になる
浅い眠りに押しつぶされそうな夜もある
…
부정적
back number“HappyEnding”
가사.さよならが喉の奥につっかえてしまって
咳をするみたいにありがとうって言ったの
次の言葉はどこかとポケットを探しても
…
균형감이 좋다
총결산
보고 싶은데 보고 싶어 떨리는 사람 감정 이해 못해
이번 감정 분석은 가사가 한 줄 한 줄 진행되었습니다.
나는 단어의 순서도 있다고 생각했는데 결과적으로 편차가 생겼다.
가사의 입도를 좀 더 자세히 분석해보면 더 정확한 결과가 나올 것 같아서 시간이 나면 해볼게요.
Reference
이 문제에 관하여(보고 싶어서 떨리는 사람의 감정을 분석하고 싶어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tkou15/items/af9e2d5b117c0d4f7736
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
会いたくて 会いたくて 震える
君想うほど遠く感じて
もう一度聞かせて嘘でも
あの日のように"好きだよ"って…
…
明日、今日よりも好きになれる 溢れる想いが止まらない
今もこんなに好きでいるのに 言葉に出来ない
君のくれた日々が積み重なり 過ぎ去った日々2人歩いた『軌跡』
…
涙の中にかすかな灯りがともったら
君の目の前で
あたためてた事話すのさ
…
プラスにもっと変えていける そうやって信じていこう
誰かが君を笑っても 俺は笑ったりしないよ
新たなスタート どんな君も輝いていけるさ
不安&期待で Oh Try yourself
…
描いた夢は叶わないことの方が多い
優れた人を羨んでは自分が嫌になる
浅い眠りに押しつぶされそうな夜もある
…
さよならが喉の奥につっかえてしまって
咳をするみたいにありがとうって言ったの
次の言葉はどこかとポケットを探しても
…
보고 싶은데 보고 싶어 떨리는 사람 감정 이해 못해
이번 감정 분석은 가사가 한 줄 한 줄 진행되었습니다.
나는 단어의 순서도 있다고 생각했는데 결과적으로 편차가 생겼다.
가사의 입도를 좀 더 자세히 분석해보면 더 정확한 결과가 나올 것 같아서 시간이 나면 해볼게요.
Reference
이 문제에 관하여(보고 싶어서 떨리는 사람의 감정을 분석하고 싶어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tkou15/items/af9e2d5b117c0d4f7736텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)