평점과 리뷰 ν…μŠ€νŠΈ 감성 뢄석을 κ²°ν•©ν•œ μΆ”μ²œ μ‹œμŠ€ν…œ ν–₯상 λ°©μ•ˆ 연ꡬ

평점과 리뷰 ν…μŠ€νŠΈ 감성 뢄석을 κ²°ν•©ν•œ μΆ”μ²œ μ‹œμŠ€ν…œ ν–₯상 λ°©μ•ˆ 연ꡬ

Created
Aug 3, 2022
Editor
Tags
Text mining
Recommendation System
cleanUrl: 'paper/rs'

이 논문을 μ„ μ •ν•˜κ²Œ 된 λ°°κ²½

  • μ €λŠ” 기쑴에 μ–΄ν”Œμ„ κ°œλ°œν–ˆμ—ˆκ³  더 μ‚¬μš©μžλ“€μ΄ νŽΈλ¦¬ν•˜κ²Œ μ“Έ 수 μžˆλŠ” μ–΄ν”Œμ„ κ³ λ―Όν•˜λ‹€κ°€ 데이터 뢄석을 κ³΅λΆ€ν•˜κΈ°λ‘œ κ²°μ‹¬ν–ˆμŠ΅λ‹ˆλ‹€. κ·Έμ€‘μ—μ„œλ„ μœ νŠœλΈŒμ™€ λ„·ν”Œλ¦­μŠ€, 넀이버 λ‰΄μŠ€μ™€ 같이 μ‚¬μš©μžλ“€μ˜ 정보λ₯Ό λΆ„μ„ν•΄μ„œ μ μ ˆν•œ 컨텐츠λ₯Ό μ œκ³΅ν•˜λŠ” 것에 관심이 λ§Žμ•˜κ³  검색을 ν•΄λ³΄λ‹ˆ μ΄λŠ” μΆ”μ²œμ‹œμŠ€ν…œμ΄λΌλŠ” 것을 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. ν–₯ν›„ μ €λ§Œμ˜ μΆ”μ²œμ‹œμŠ€ν…œμ„ λ§Œλ“€κ³  μ‹ΆκΈ°λ„ν•˜κ³  ν…μŠ€νŠΈ λ§ˆμ΄λ‹μ—λ„ 관심이 λ§Žμ•„ μ˜ν™”λ¦¬λ·°λ₯Ό κ°μ •λΆ„μ„ν•˜μ—¬ μΆ”μ²œν•˜λŠ” 이 논문을 μ„ νƒν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
Β 
Β 

Abstract

κ°œμΈμ—κ²Œ λ§žμΆ€ν˜• μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜κΈ° μœ„ν•΄ ν˜‘μ—…ν•„ν„°λ§μ΄ 많이 μ‚¬μš©λ˜κ³  μžˆμ§€λ§Œ μ •λŸ‰μ μΈ μ •λ³΄μ—λ§Œ κ΅­ν•œν•΄μ„œ 뢄석이 이뀄지고 μžˆμŠ΅λ‹ˆλ‹€. 더 μ •ν™•ν•œ μΆ”μ²œμ„ μœ„ν•΄μ„œλŠ” 리뷰와 같은 정성적인 뢀뢄듀도 뢄석해야 ν•˜κ³  이 논문은 ν…μŠ€νŠΈ 감정뢄석을 ν™œμš©ν•˜μ—¬ μΆ”μ²œμ‹œμŠ€ν…œμ˜ μ„±λŠ₯을 ν–₯μƒμ‹œν‚€λŠ” 것을 λͺ©ν‘œλ‘œ ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 기쑴의 연ꡬ듀은 ν…μŠ€νŠΈ 감성뢄석을 μ§μ ‘μ μœΌλ‘œ λ°˜μ˜ν•˜μ§€ λͺ»ν•˜μ§€λ§Œ λ³Έ μ—°κ΅¬λŠ” 감성을 μˆ˜μΉ˜ν™”ν•˜μ—¬ 평점에 λ°˜μ˜ν•˜λŠ” 것을 λͺ©ν‘œλ‘œ ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
Β 

Introduction

정보가 μŸμ•„μ§€κ³  μžˆλŠ” μƒν™©μ—μ„œ λ‚˜μ—κ²Œ μ ν•©ν•œ 정보λ₯Ό μ°ΎκΈ°λž€ μ‰¬μš΄μΌμ΄ μ•„λ‹™λ‹ˆλ‹€. 그렇기에 μΆ”μ²œμ‹œμŠ€ν…œμ€ μ •λ³΄μ˜ ν™μˆ˜μ†μ—μ„œ μ‚΄κ³  μžˆλŠ” μš°λ¦¬λ“€μ—κ²Œ λ„ˆλ¬΄λ‚˜ ν•„μš”ν•˜κ³  μ€‘μš”ν•œ μ„œλΉ„μŠ€λΌκ³  μƒκ°ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 과거의 연ꡬ듀은 μ •λŸ‰μ μΈ 뢄석에 λ§Žμ€ μ΄ˆμ μ„ 두고 μžˆμŠ΅λ‹ˆλ‹€. κ°€μž₯ λŒ€ν‘œμ μΈ μ§€ν‘œλ‘œλŠ” 평점을 μ‚¬μš©ν•˜μ˜€λŠ”λ° 같은 평점이라도 ꡉμž₯히 μƒμ΄ν•œ 리뷰λ₯Ό 남길 수 μžˆμŒμ„ 자주 λ³Ό 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ 정성적인 뢄석이 μ€‘μš”ν•΄ μ§€κ³  있고 이λ₯Ό ν…μŠ€νŠΈ 감정뢄석을 톡해 μˆ˜μΉ˜ν™”ν•˜μ—¬ μΆ”μ²œμ‹œμŠ€ν…œμ˜ μ„±λŠ₯을 ν–₯상해 λ³΄λ €λŠ” λͺ©μ μ„ κ°€μ§€κ³  μžˆμŠ΅λ‹ˆλ‹€.
Β 

Model/Architecture

1. 데이터 μˆ˜μ§‘(Web Crawling)

기본적으둜 μ˜ν™” 평점과 리뷰에 λŒ€ν•΄ λΆ„μ„ν•˜λŠ” 것이기 λ•Œλ¬Έμ— 데이터가 ν•„μš”ν•©λ‹ˆλ‹€. 이 λ…Όλ¬Έμ—μ„œλŠ” λ„€μ΄λ²„μ˜ν™”λΌλŠ” νŽ˜μ΄μ§€μ—μ„œ μ›Ήν¬λ‘€λŸ¬λ₯Ό μ‚¬μš©ν•˜μ—¬ μ‚¬μš©μžκ°€ 남긴 평점, 리뷰λ₯Ό μˆ˜μ§‘ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
Β 

2. 데이터 ν‘œλ³Έ μΆ”μΆœ(Sampling)

평점을 λΆ€μ—¬ν•œ μ˜ν™”λ³΄λ‹€ 평점을 λΆ€μ—¬ν•˜μ§€ μ•Šμ€ μ˜ν™”κ°€ 많게 되면 데이터가 ν¬μ†Œν•œ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€. λ”°λΌμ„œ 이 μ—°κ΅¬μ—μ„œλŠ” 적어도 10κ°œμ΄μƒμ˜ μ˜ν™”μ— λŒ€ν•΄ 평점을 남긴 μ‚¬μš©μžμ˜ λ°μ΄ν„°λ§Œ μΆ”μΆœν•˜μ˜€μŠ΅λ‹ˆλ‹€.
Β 

3. 평점 μ •κ·œν™”(Noramlization)

μ‚¬λžŒλ§ˆλ‹€ 평점을 μ£ΌλŠ” 기쀀이 λ‹€λ₯΄κΈ° λ•Œλ¬Έμ— 두 λͺ…이 같은 λŠλ‚Œμ„ λ°›μ•˜λ‹€ ν•˜λ”λΌλ„ λ‹€λ₯Έ 평점을 쀄 수 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 보정해 μ£ΌκΈ° μœ„ν•΄ 평가성ν–₯을 λ°”νƒ•μœΌλ‘œ 데이터λ₯Ό μ •κ·œν™”ν•˜λŠ” 과정을 μ§„ν–‰ν–ˆμŠ΅λ‹ˆλ‹€.
Β 

4. 리뷰 - μ „μ²˜λ¦¬(Preprocessing)

μš°μ„  λΆˆν•„μš”ν•œ 단어, 특수문자, λ¬Έμž₯λΆ€ν˜Έ, 영문자, 숫자λ₯Ό μ œκ±°ν•˜κ³  라이노 라이브러리λ₯Ό ν™œμš©ν•˜μ—¬ 뢄석에 많이 μ‚¬μš©λ˜λŠ” λͺ…사, 동사, ν˜•μš©μ‚¬λ§Œ μ„ λ³„ν•˜μ—¬ μΆ”μΆœν•˜μ˜€μŠ΅λ‹ˆλ‹€.
Β 

5. 리뷰 - 감정뢄석(Sentiment Analysis)

  1. 리뷰 데이터 μˆ˜μ§‘
사전을 κ΅¬μΆ•ν•˜κΈ° μœ„ν•΄ λ„€μ΄λ²„λž©μ—μ„œ μ œκ³΅ν•˜λŠ” 데이터λ₯Ό μ΄μš©ν•΄ 평점 1~3점은 뢀정인 0으둜 9~10점은 긍정인 1둜 label을 λΆ€μ—¬ν•©λ‹ˆλ‹€.
Β 
  1. 리뷰 데이터 μ „μ²˜λ¦¬
라이노 라이브러리λ₯Ό ν™œμš©ν•˜μ—¬ ν˜•νƒœμ†Œλ₯Ό λΆ„μ„ν•œ ν›„ λͺ…사, 동사, ν˜•μš©μ‚¬λ§Œ μΆ”μΆœν•©λ‹ˆλ‹€.
Β 
  1. 사전 ꡬ좕
μ „μ²˜λ¦¬λ₯Ό 마친 리뷰데이터λ₯Ό DTM ν–‰λ ¬λ‘œ λ§Œλ“­λ‹ˆλ‹€. 또 λ‹¨μ–΄μ˜ μ€‘μš”μ„± 정도λ₯Ό λ‚˜νƒ€λ‚΄λŠ” TF-IDFλ₯Ό 쒅속 λ³€μˆ˜λ‘œ ν•˜κ³  μ „μ²˜λ¦¬μ—μ„œ λ§Œλ“€μ–΄μ€€ 0,1 label값을 μ’…μ†λ³€μˆ˜λ‘œ μ‚¬μš©ν•œλ‹€. 사전을 κ΅¬μΆ•ν•˜λŠ” λ°©μ‹μœΌλ‘œλŠ” νšŒκ·€λΆ„μ„μ„ μ‚¬μš©ν•˜κ³  λ¦Ώμ§€νšŒκ·€, λΌμ˜νšŒκ·€, μ—˜λΌμŠ€ν‹±λ„· νšŒκ·€ 쀑 정확도가 높은 것을 μ‚¬μš©ν•  μ˜ˆμ •μž…λ‹ˆλ‹€.
Β 
νšŒκ·€λΆ„μ„μ„ 톡해 λ‚˜μ˜¨ 값이 0보닀 ν΄κ²½μš°μ—λŠ” 긍정사전에 μΆ”κ°€ν•˜κ³  0보닀 μž‘μ„ κ²½μš°μ—λŠ” 뢀정사전에 단어λ₯Ό μΆ”κ°€ν•˜μ—¬ 감성사전을 κ΅¬μΆ•ν•©λ‹ˆλ‹€.
Β 
  1. 사전 μ •ν™•μ„± κ²€μ •
Setiment Score
Β 
Accuracy
ν…ŒμŠ€νŠΈ λ°μ΄ν„°μ˜ 감성 점수λ₯Ό μ‚°μΆœν•˜μ—¬ 감성 μ μˆ˜κ°€ 0보닀 큰 κ²½μš°μ—λŠ” 긍정, 0보닀 μž‘μ€ κ²½μš°μ—λŠ” λΆ€μ •μœΌλ‘œ ν‰κ°€ν•˜λ©° κ²°κ³Όλ₯Ό μœ„μ˜ 정확도 식을 μ‚¬μš©ν•΄μ„œ ν‰κ°€ν•©λ‹ˆλ‹€.
  • Lasso νšŒκ·€
notion image
  • Ridge νšŒκ·€
notion image
  • ElasticNetνšŒκ·€
notion image
μ€‘μ—μ„œ ElasticNet νšŒκ·€κ°€ κ°€μž₯ 높은 정확도λ₯Ό λ³΄μ—¬μ„œ 이 λͺ¨λΈμ„ μ„ μ •ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

6. 감정 수치λ₯Ό λ°˜μ˜ν•œ 평점

μƒˆλ‘œμš΄ 평점은 감성 수치(Setiment Score)와 평점을 ν•©ν•˜μ—¬ ν‘œν˜„ν•©λ‹ˆλ‹€.

7. 평점 예츑

평점 μ˜ˆμΈ‘μ—λŠ” λ©”λͺ¨λ¦¬κΈ°λ°˜μ˜ Collaborative Filtering, λͺ¨λΈκΈ°λ°˜μ˜ Matrix Factorization의 λŒ€ν‘œ μ•Œκ³ λ¦¬μ¦˜μΈ SVD, SVD++λ₯Ό ν™œμš©ν•˜μ—¬ λΆ„μ„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
Β 
ν”Όμ–΄μŠ¨ μƒκ΄€κ³„μˆ˜
notion image
Β 
IBCF
notion image
SVD(ν–‰λ ¬ λΆ„ν•΄μ˜ λŒ€ν‘œμ μΈ 방식)
notion image
SGD(SVD둜 λ‚˜νƒ€λ‚Έ Cost Function의 min값을 μ°ΎκΈ° μœ„ν•΄ Gradient Descentλ₯Ό ν™œμš©ν•˜λŠ” 방법)
notion image
SGD++(sparseν•œ 경우 SVDκ°€ μ •μ˜λ˜μ§€ μ•Šμ„ 수 μžˆλŠ”λ° 이λ₯Ό λ³΄μ™„ν•˜μ—¬ implicit feedback에도 μ μš©ν•  수 μžˆλŠ” 방법)
notion image
뢄석 κ²°κ³Ό λͺ¨λ“  μΆ”μ²œ μ•Œκ³ λ¦¬μ¦˜μ—μ„œ μ„±λŠ₯이 ν–₯μƒλœ 사싀을 확인할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.