O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [쇼미더뮤직 팀] : 텍스트 감정추출을 통한 노래 추천

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 43 Anúncio

제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [쇼미더뮤직 팀] : 텍스트 감정추출을 통한 노래 추천

Baixar para ler offline

데이터 분석 프로젝트를 짆애한 쇼미더뮤직 팀에서는 아래와 같은 프로젝트를 진행했습니다.

내 하루의 감정을 통해 노래를 추천받을 수 있다면 얼마나 좋을까?
자연어처리와 추천시스템 기법의 collaboration..
여러분의 감정을 추출하고, 어울리는 노래를 추천해드립니다.
**쇼미더뮤직!**

16기 김양경 건국대학교 기술경영학과
15기 김은선 세종대학교 데이터사이언스학과
16기 유수빈 동덕여자대학교 정보통계학과
16기 이상민 경희대학교 소프트웨어융합학과
16기 조하늘 동덕여자대학교 국제경영학과, 정보통계학과
16기 최 리 건국대학교 응용통계학과

데이터 분석 프로젝트를 짆애한 쇼미더뮤직 팀에서는 아래와 같은 프로젝트를 진행했습니다.

내 하루의 감정을 통해 노래를 추천받을 수 있다면 얼마나 좋을까?
자연어처리와 추천시스템 기법의 collaboration..
여러분의 감정을 추출하고, 어울리는 노래를 추천해드립니다.
**쇼미더뮤직!**

16기 김양경 건국대학교 기술경영학과
15기 김은선 세종대학교 데이터사이언스학과
16기 유수빈 동덕여자대학교 정보통계학과
16기 이상민 경희대학교 소프트웨어융합학과
16기 조하늘 동덕여자대학교 국제경영학과, 정보통계학과
16기 최 리 건국대학교 응용통계학과

Anúncio
Anúncio

Mais Conteúdo rRelacionado

Mais de BOAZ Bigdata (20)

Anúncio

Mais recentes (20)

제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [쇼미더뮤직 팀] : 텍스트 감정추출을 통한 노래 추천

  1. 1. BOAZ 제 15회 컨퍼런스 텍스트 감정추출을 통한 노래추천 시스템 쇼미더뮤직 김양경 16기 분석 김은선 15기 시각화 유수빈 16기 분석 이상민 16기 분석 조하늘 16기 분석 최 리 16기 시각화 텍스트 감정추출을 통한 노래추천 시스템
  2. 2. X
  3. 3. 주제소개 • 유튜브 뮤직, 바이브의 2021.3월 MAU(월간 활성 사용자수) 는 150만, 90만명으로 2020년 대비 각각 54%, 18% 가파른 증가 • 코로나로 인해 디바이스 측면에선 스마트 오디오 스트리밍 시간 증가 [출처] 닐슨 코리아클릭 2021.03
  4. 4. 주제소개 정신없는 바쁜 하루를 보냈다. 그리고 집으로 돌아가는 길. 지금 내 감정을 잘 공감해줄 노래가 있었으면 좋겠어
  5. 5. 주제소개
  6. 6. 주제소개
  7. 7. 주제소개
  8. 8. 주제소개 방전된 나에게 정말 필요한 것은 ‘더’하는게 아니라 ‘덜’하는게 아닐까? 걱정도 좀 덜하고 후회도 좀 덜하면 좋겠어!! 텍스트 감정추출 및 사용자의 선호도를 반영하여 노래추천
  9. 9. 주제소개 • 감성대화말뭉치데이터 • 한국어단발성 대화데이터 • SETENCE TRANSFORMERS • 감정–노래MATRIX • 사용자의 선호도반영 기쁨 분노 슬픔 0.1 0.88 0.02 • 사용자의 선호도반영 • 감정과유사한 노래혹은 감정과반대되는 노래추천
  10. 10. X
  11. 11. 2022-01-22 11 NLP (다이어리,일기등) NLP 모델을 활용해 감정 분류 모델 구축 다중 문장을 단일 문장으로 분리 감정 별 softmax 값 계산
  12. 12. 2022-01-22 12 NLP 오늘 친구한테 필기 요약본을 보여줬어:) 0 원더걸스 1위 축하합니다*^^* 0 체질상 땀이 많은데 여름의 시작이;;;ㅜㅜ 2 연애 갈수록 어려워. 머리를 비우는게 정답일까? 2 코로나 이후 출근하는 곳도 없고 작년부터 시작한 당구도 같 이 칠 친구나 지인이 없고.. 2 ... ... 나 이제 따돌림에서 벗어났어! 너무 기뻐! 0 우리집이 가난하지 않았다면 좋았을텐데 라는 생각이 자주 들어서 마음이 아파 2 친구가 절 띠ᄁ ᆸ다고 차단했다는 겁니다 1 ➢ 감성대화 말뭉치 데이터 ➢ 한국어 단발성대화 데이터 → 기쁨,행복 분노,불안, 당황,놀람 슬픔,상처 중립 ▲데이터셋 예시
  13. 13. 2022-01-22 13 NLP 기존 bert original paper에서 공개한 다국어 BERT model (Bert base model) 0.71 SKTBrain에서 만든 한국어 데이터를 추가 학습시킨 한국어 전용 BERT model 0.74 KcBERT 대비 데이터셋 증가 및 vocab 확장을 통해 electra모델을 처음부터 학습한 Electra model 0.75 34GB의 한국어 text (뉴스, 위키, 구어 등)를 학습시킨 Electra model 0.73 (KLUE : Korean Language Understanding Evaluation , RoBERTa : A robustly Optimized Bert Pretraining Approach). 대량의 한국어 text를 학습시켰으며, BERT의 하이퍼파라미터 및 학습 데이터 사이즈 등을 조절하여 기존 BERT 성능을 재건하고 MLM만으로도 뛰어난 성능을 보여주는 RoBERTa model 0.651 0.761
  14. 14. 2022-01-22 14 NLP 기존 KoBERT와 달리, 구어체, 신조어, 오탈자 등 비공식적인 글의 특성을 데이터셋에 적용하기 위해 여러 뉴스 등에서 댓글과 대댓글을 수집하여 tokenizer와 BERT 모델을 처음부터 학습한 Pretrained BERT 모델
  15. 15. 2022-01-22 15 NLP 기존 KoBERT와 달리, 구어체, 신조어, 오탈자 등 비공식적인 글의 특성을 데이터셋에 적용하기 위해 여러 뉴스 등에서 댓글과 대댓글을 수집하여 tokenizer와 BERT 모델을 처음부터 학습한 Pretrained BERT 모델 사용자가 긴 문장을 입력했을 때, 글의 평균적인 감정을 어떻게 추출할까?
  16. 16. 2022-01-22 16 NLP 매우 긴 문장이 들어왔을 때, 평균적인 감정을 어떻게 추출할 수 있을까? 긴 문장을 하나의 문장으로 생성해 요약하는 방식 핵심 문장과 키워드를 추출하는 방식 다중 문장을 여러 문장 으로 분리하는 방식
  17. 17. 2022-01-22 17 NLP 오늘은 발표회 날이다. 긴장이 되었다. 아침에 피자을 먹어서 기분이 좋아졌다! 발표회가 시작되고 1~2학년이 합쳐서 오카리나 연주을 들었다. 너무 아름다웠다. 마치 병아리가 아장아장 걸어다니는거 같다.그리고 인상깊 은게 마지막에 오징어 게임ost가 인상이 깊다. 왜냐하면 1~2학년이 직접 녹음하고 무궁화 꽃이 피었습니다라고 말하고 1~2학년 탈락!이라고 하고 그리고 오징어 게임의 한장면을 연기한게 인상이 깊었다.단체로 쓰러지는 게 쉽지는 않을텐데 1~2학년의 협동심이 대단한거 같다. 피아노 바와후 애들은 피아노을 발표하는데 하나하나 너무 아름다웠다. 마치 하나의 벛꽃같았다. 특히 울면안돼 플라워 댄스가 너무 인상깊었다. 3~4학년 아쉽게도 나한텐 인상이 안깊다. 노력은 했지만 좀 아쉽다. 근데 5학년는 내가 진짜 칭찬하고 싶은게 노력을 많이한게 보인다. 왜냐하면 아침시간, 점심시간, 중간놀이 등 연습을 했다. 5학년의 리코더 발표는 마치 참 참새의 소리가 같다. 그리고 댄스배틀이 나한테 가장인상이 깊었다. 왜냐하면 그냥 흥이 나고 재밌고애들이 웃어줘서 힘이나 춤추다가 안경 떨어지고 넘어지고 목도 다쳤지만 난 뿌듯하다. 그리고 6학년은 대단하다. 우리반이 너무 자랑 스럽다. 왜냐하면 리코더을 너무 잘하고 실러폰도 잘했다. 노래가 마치 산비둘기 단체 구구구구 하는거 같이 잘 맞춰가고 흥이 났다. 우리가 발표한 연주는 똥 밟았네, 할아버지 시계, 젓가락 행진곡을 연주 했다. 나는 뿌듯 하면서 행복했다. 이런 친구들이 있어서 너무 든든했다. 이런 친구들이 있었기에 내가 연주을 잘할수 있었던 것이다. 마지막에 합창을 했는데 마치 밤하늘의 별 같았다. 너무 좋고 아름답고 음도 좋다. 합창을 하는데 팔로 하트하는게 뿌끄러웠지만 용기내서 했다. 그치만 하고 이발표회는 끝이 났다. 내 자신이 자랑스럽고 뿌듯한 날이고 이번 오늘 아니 이날은 Good 아니 Great 아니 Nice 아니 이 날은 가치로 매길수 없는 날이다 ✓ 첫 문장을 핵심 문장으로 뽑는 경우가 많음 ✓ 빈도가 높은 불필요한 단어를 추출하는 경우가 많음 ✓ 노이즈가 많이 섞여 있고 여러 감정이 있는 다이어리에 적합하지 않음. ✓ KoBART는 공식적인 글(뉴스, 기사, 책)은 잘 요약하지만 ✓ 비공식적인 글(댓글, SNS, 일기)은 요약을 잘하지 못하는 문제점 존재 오늘은 발표회 날로 피아노 바와후 애들은 피아노을 발표하는데 하나하나 너무 아 름다 왜냐하면 1~2학년이 직접 녹음하고 무궁화 꽃이 피었습니다라고 말하고 1~2학년 탈락!이라고 하고 그리고 오징어 게임의 한장면을 연기한게 인상이 깊었다.단체로 쓰러지는게 쉽지는 않을텐데 1~2학년의 협동심이 대단한거 같다.
  18. 18. 2022-01-22 18 NLP • 다중 문장을 단일 문장으로 분리 • 문장마다의 감정을 모두 반영할 수 있고, 중립 문장을 제외하기 용이 • 1~2문장에 짧은 학습 데이터에 적합하게 변형하여 오늘은 발표회 날이다. - [기쁨 0.01, 당황 0.001, 슬픔 0.009, 중립 0.98] 긴장이 되었다. – [기쁨 0.009, 당황 0.98, 슬픔 0.01, 중립 0.001] 아침에 피자을 먹어서 기분이 좋아졌다! – [기쁨 0.98, 당황 0.01, 슬픔 0.009, 중립 0.001] 발표회가 시작되고 1~2학년이 합쳐서 오카리나 연주을 들었다. … 너무 아름다웠다. …. 마치 병아리가 아장아장 걸어다니는거 같다. 그리고 인상깊은게 마지막에 오징어 게임ost가 인상이 깊다. … (축약 생략) 내 자신이 자랑스럽고 뿌듯한 날이고 이번 오늘 아니 이날은 Good 아니 Great 아니 Nice 아니 이 날은 가치로 매길수 없는 날이다 오늘은 발표회 날이다. 긴장이 되었다. 아침에 피자을 먹어서 기분이 좋아졌다! 발표회가 시작되고 1~2학년 이 합쳐서 오카리나 연주을 들었다. 너무 아름다웠다. 마치 병아리가 아장아장 걸어다니는거 같다.그리고 인 상깊은게 마지막에 오징어 게임ost가 인상이 깊다. 왜냐하면 1~2학년이 직접 녹음하고 무궁화 꽃이 피었습 니다라고 말하고 1~2학년 탈락! … (축약 생략)내 자신이 자랑스럽고 뿌듯한 날이고 이번 오늘 아니 이날은 Good 아니 Great 아니 Nice 아니 이 날은 가치로 매길수 없는 날이다
  19. 19. 2022-01-22 19 NLP 중립문장을제외한 나머지문장의감정별 softmax값평균
  20. 20. X
  21. 21. 2022-01-22 21 추천시스템 Melon Playlist Continuation에서 수집 장르, 가수명과 같은 태그 제거 • Bugs와 멜론에서 노래 가사, 앨범 사진, 좋아요 수 등 크롤링 • 외국 가사는 맞춤법 교정 후 를 이용한 한국어로 번역 →
  22. 22. 2022-01-22 22 추천시스템
  23. 23. 2022-01-22 23 추천시스템 1) 기쁨 : 행복한, 경쾌한, 잔잔한, 편안한 2) 분노 : 무서운, 긴장되는 3) 슬픈+상처 : 우울한, 울고 싶은 → → ▲감정 태그 사전
  24. 24. 2022-01-22 24 추천시스템 각 노래 id별로 tag가 가지는 감정에 따라 노래의 감정 비율 계산 후 감정-노래 matrix 생성 0.4 0.0 0.25 0.0 1.0 0.156250 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05 0.0 0.0 0.041667 0.0 0.0 0.0 0.0 0.0 0.0 0.072917 0.0 0.0 0.2 0.0 0.25 0.0 0.447917 0.2 0.5 0.4 0.6 0.5 0.5 0.0 0.187500 0.8 0.0 0.35 0.0 0.5 0.0 0.041667 0.0 0.0 0.0 0.0 0.0 0.0 0.052083 0.0 ▲감정-노래 matrix 노래 id
  25. 25. 2022-01-22 25 추천시스템 노래가 주는 감정 뿐만 아니라 유저가 작성한 상황과도 일치하는 노래 추천하기 위해 • 문장, 텍스트, 이미지 임베딩을 위한 SOTA Python Framework • 100개 이상의 언어에 대한 문장/텍스트 임베딩 계산 가능 • 임베딩을 코사인 유사성과 비교하여 유사한 의미를 가진 문장 찾기 가능
  26. 26. 2022-01-22 26 추천시스템
  27. 27. 2022-01-22 27 추천시스템 Konlpy를 이용한 명사, 형용사, 동사 추출 좋아하는 사람과 데이트를 했다. 그 사람과 함께라면 시간 가는 줄 모르고 너무 재미있었다. 아직은 약간 어색하지만 그래도 너무 설렌다. 빨리 내일이 왔으면 좋겠다! 명사: ‘사람과’, ‘데이트’, ‘그’, ‘사람과’, ‘시간’, ‘줄’, '은’, ‘약간’, ‘내일’ 동사: ‘하다’, ‘가다’, ‘모르다’, ‘오다’ 형용사: ‘좋아하다’, ‘재미있다’, ‘어색하다’, ‘설레다’, ‘좋다’
  28. 28. 2022-01-22 28 추천시스템 "오늘 하루 너무 힘들었다. 과제랑 공부, 할 일들은 많은데 뜻대로 되지 않았다. 공허한 느낌이 들고 어지러웠다." ['오늘', ''하루', '힘들다', '과제', '공부', '하다', '일', '많다', '되다', '않다', '공허하다', '느낌', '들다', '어지럽다']
  29. 29. 2022-01-22 29 추천시스템 "좋아하는 사람과 데이트를 했다. 그 사람과 함께라면 시간 가는 줄 모르고 너무 재미있었다. 아직은 약간 어색하지만 그래도 너무 설레인다. 빨리 내일이 왔으면 좋겠다!” ['좋아하다', '사람과', '데이트', '하다', '그', '사람과', '하다', '시간', '가다', '줄', '모르다', '재미있다', '은’, ‘약간’, '어색하다', '설레다', '내일', '오다', '좋다']
  30. 30. 2022-01-22 30 추천시스템 "친구들과 재미있는 놀이공원을 갔다왔다. 범퍼카와 회전목마, 롤러코스터, 바이킹도 탔다. 오랜만에 놀이기구를 타니 너무 신나고 재미있었다. 내일 또 가야지!” ['친구', '재미있다', '놀이', '공원', '가다', '오다', '범퍼카', '회전목마', '롤러코스터', '바이킹', '타다', '만', '놀이기구’, '타다', '신나다', '재미있다', '내일', '또', '가야']
  31. 31. 2022-01-22 31 추천시스템 선정 이유 특징 Cosine Pearson 81.55 Manhattan Pearson 79.90 Cosine Spearman 81.23 Manhattan Spearman 79.75 Euclidean Pearson 79.94 Dot Pearson 76.02 Euclidean Spearman 79.97 Dot Spearman 75.31 3개 case 정성 평가 결과 Ko-sbert-sts가 조금 더 글감과 유사한 노래를 위주로 추천하는 점을 확인 • 한국어 문장 임베딩을 위한 버트 모델 • KorSTS 학습데이터셋으로 학습한 후 KorSTS 평가 데이터셋으로 평가한 결과
  32. 32. 2022-01-22 32 추천시스템 "오늘 하루 너무 힘들었다. 과제랑 공부, 할 일들은 많은데 뜻대로 되지 않았다. 공허한 느낌이 들고 어지러웠다.” ['오늘', ''하루', '힘들다', '과제', '공부', '하다', '일', '많다', '되다', '않다', '공허하다', '느낌', '들다', '어지럽다'] • Cosine 유사도가 대부분 0.99xx → 유의미한 비교가 어려움 • 결과를 정성평가 시 임베딩 값 자체로 비교하는 것이 더 나은 성능이라고 판단
  33. 33. 2022-01-22 33 추천시스템 0.1 0.88 0.02 𝛼 ∗ 𝑠𝑖𝑚 감정 − 노래 𝑀𝑎𝑡𝑟𝑖𝑥 + 𝛽 ∗ 𝑠𝑖𝑚(텍스트 임베딩) 𝛼 + 𝛽
  34. 34. 2022-01-22 34 추천시스템 IF 감정 == ‘우울’:
  35. 35. 2022-01-22 35 추천시스템 IF 감정 == ‘분노’: 볼빨간사춘기 블락비바스타즈 ? ✓ 이별과같은상실혹은고통을경험할때, 이를대처하도록돕는프로락틴과옥시토신과같은호르몬이분비된다. ✓ MareikeCSittler의연구팀에따르면슬픈음악이프로락틴과옥시토신 분비를돕는다. ✓ 사람들은슬픈음악을들으며향수를느끼고소속감을주며불안감을 줄여주는효과를얻었고나머지약25%만이실제로슬픔을느꼈다.
  36. 36. 2022-01-22 36 추천시스템 TaylorSwift 빈지노 2NE1 GOTthebeat NCTU IF 감정 == ‘분노’:
  37. 37. 2022-01-22 37 추천시스템 IF 감정 == ‘분노’: SORT
  38. 38. 2022-01-22 38 추천시스템
  39. 39. X
  40. 40. 2022-01-22 40 결론및제언 ✓ ✓ ✓ ✓ → ✓ ✓
  41. 41. 오늘은 내 최애 영화인 ‘코코’를 보았다. 즐거워보이 는영화 포스터와 달리 언제 봐도 눈물이 나는 영화다. 특히 미구엘이 증조할머니 코코의 기억을 살리기 위해 ‘Remember me’를 불러주는 장면은 정말 슬퍼서 눈물 이 날 수 밖에 없었다. 영화는 멕시코의 전통 명절 ‘죽은 자들의 날’이 배경 으로, 독특한 사후세계를 보여주며 ‘죽음’과 ‘기억’에 대해 생각할 수 있는 계기를 만들어준다. ‘코코’는 아이 들에게 보여주려고 갔다가 어른들이 펑펑 울고 나온다 는 애니메이션이라 하는데, 이별의 슬픔을 경험한 어른 들에게 더 위로와 공감이 되기 때문이 아닐까. 나에게 도 많은 위로가 된 영화였다. ‘양경’님의 감정은 [슬픔, 상처] 0.7 [중립]0.3 [기쁨,행복] 0.003 [분노, 불안, 당황, 놀람] 0.0002 입니다 HOME DIARY MUSIC CONTACT 가사 감정 역방향 정방향 0.7 0.3 노래 재추천 받기 곡 제목 가수 장르 태그 가을 밤 배영경, 송푸름 인디음악,포크/블루스/컨트리 ‘새벽’ 가사 노래 추천 받기 가사 곡 제목 가수 장르 태그 나는 나만의 것 옥주현 OST, 뮤지컬 ‘새벽’ 곡 제목 가수 장르 태그 곡 제목 가수 장르 태그 곡 제목 가수 장르 태그 약속 허공 발라드 '추억', '회상' 2022년 1월 22일, 오후 3시 17분 Show Me The Music 가사 가사 가사 일기 작성 완료 안녕의 방식 규현 발라드 ‘이별’ Take on Me (Kygo Remix) A-ha EDM '드라이브', 'pub', '클럽', '기분전환'
  42. 42. 텍스트 감정추출을 통한 노래추천 시스템 쇼미더뮤직
  43. 43. X

×