Giter Site home page Giter Site logo

hyunbin-yu / deliveryreview Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 48 KB

A Study on the Improvement of Delivery App Review System Using Sentiment Analysis Techniques

License: GNU General Public License v3.0

Jupyter Notebook 100.00%
nlp delivery-app sentiment-analysis

deliveryreview's Introduction

A Study on the Improvement of Delivery App Review System Using Sentiment Analysis Techniques

감정 분석 기법을 활용한 배달 앱 리뷰 시스템 개선에 관한 연구

Introduce

  • 프로젝트 진행기간: 2022. 04. 09. ~ 2022. 07. 10.
  • 연관 교과목 : 화법과 작문, 언어와 매체, 정보, 인공지능 기초
  • 이 프로젝트는 대전중앙고등학교의 "수업량 유연화" 적용 교육과정의 일환으로 진행되었습니다.
  • 이 레포지토리의 README 파일은 실제 진행한 발표를 요약 및 보충하여 작성한 보고서이며, coding.ipynb 파일은 발표 프레젠테이션 파일에 삽입된 코드의 원본입니다.
  • 개발 환경 : Google Colab

연구 동기

소비자들은 식당 선택 시 77%가 식당 및 서비스에 대한 설명 및 평가에 영향을 받는다고 한다.
이는 배달 음식에도 예외가 아니라고 볼 수 있으며, 실제로 '배달의 민족', '요기요' 등의 배달 앱에서는 소비자에게 별점과 후기들을 제공하여 선택에 영향을 끼치고 있다고 볼 수 있다.
하지만 아래의 그림과 같이 별점과 후기가 서로 분리되어 있음에 따라 모순된 내용이 작성될 수 있으며, 특히 별점은 소비자의 주관이 상당히 개입될 수 있어 점주와 소비자 모두에게 피해를 입힐 수 있다는 점이 우려되었다.
image
그림1. 문제의 리뷰 - 인터넷 커뮤니티, 배달의민족 앱 캡쳐

연구 내용

1. 아이디어 구상

너무 맛있어서 별 6개 드려요
다음에도 꼭 먹고 싶어요.

위의 두 문장은 공통적으로 '맛있다'라는 의미를 내포하고 있다. 이 의미를 인공지능이 파악할 수 있다면 별점을 충분히 대체할 수 있다고 생각했다.

2. 아이디어 구현

인공지능의 연구 분야 중 NLP(자연 언어 처리)라고 불리는 분야가 있다. 말 그대로 인간의 언어를 컴퓨터가 이해할 수 있게 하는 학문이다.
문장 속 감정을 분석하면, 그 문장이 긍정적인 문장인지 부정적인 문장인지를 파악할 수 있다. 최근 들어 인공신경망 기법의 성능이 크게 향상되어 주목받고 있는 분야이기도 하다.

image
그림2. 구조도
대략적으로 아이디어를 구조화한 구조도는 위의 그림과 같다.

구현방법1. 직접 모델 구축하기

처음에는 직접 모델을 구축하고 데이터를 학습시키는 방법을 고려했지만 학문적, 시간적 한계가 있었다. 모델에 학습시킬 학습 데이터들을 구하는 것 또한 난관이었으며 다른 방안을 찾아보기로 했다.

구현방법2. 구축된 모델 사용하기

kakaobrain에서 개발한 PORORO 라이브러리를 사용하기로 했다. 1.1k의 Star을 받은 만큼 충분히 검증되었다고 생각했다. 직접 학습을 시킬 필요가 없다는 것 또한 장점이다.

coding.ipynb와 같이 간단한 코드를 작성하고 이를 서비스에 적용해보고자 했다.

연구 결과

앱에 결과를 표시하는 방법으로는 여러 가지가 있다.
image 나는 별점을 표시하는 란을 '매우 만족', '대체로 만족', '보통으로 만족', '대체로 불만족', '매우 불만족' 5단계 척도로 나누어 표기하고자 했다.

Issue 1. 반의적 표현의 인지 불가

image
위 그림에서 제시된 3개의 리뷰는 모두 겉으로는 긍정적인 것처럼 보이지만, 속뜻은 부정적인 내용을 담고 있는 반의적 문장이다. 하지만 이를 모두 긍정적인 문장으로 해석하는 문제가 있다. 언어의 특성 상 그 표현 방법이 다양하다보니 생기는 문제로 보인다.

Issue 2. 드립의 민족

image
출처 : 온라인 커뮤니티 캡쳐

image '드립의 민족'답게 '매우 맛있다'는 뜻으로 쓰인 이 리뷰가 부정적인 리뷰라고 해석하는 문제가 발생했다. 닉네임을 반영하지 않는 시스템의 한계로 보이는데 이를 개선할 근본적인 해결책이 필요해 보인다.

결론

리뷰의 감정 분석이 '별점'에서 생기는 문제 원인을 완전히 없앨 수 있는 해결 방안인 것은 분명해 보이며, 연구의 의의라 할 수 있다. 하지만 Issue에서 제기했듯이 반의적 표현 등을 완전히 인지할 수 없다는 것은 분명한 한계이며, 이 연구 결과를 실제 서비스에 적용하게 된다면 어플 관리자 등 인간의 개입이 상당히 필요해 보인다.

deliveryreview's People

Contributors

hyunbin-yu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.