본 프로젝트는 elice X K-digital Training에서 진행한 웹서비스 제작 팀 프로젝트 입니다. (깃랩 링크)
- 영화 작품 속 악역의 성향과 이용자의 성향을 분석하여 비교하고 성향이 일치하는 정도를 결과로 제공하는 서비스
- 프로젝트 제안서
- 다양한 작품 내 악역의 대사 데이터
- 스타워즈 에피소드 4 : 새로운 희망(1977), 다스베이더
- 스타워즈 에피소드 5: 제국의 역습(1980), 다스베이더
- 스타워즈 에피소드 6: 제다이의 귀환(1983), 다스베이더
- 양들의 침묵(1991), 한니발 렉터
- 라이온 킹(1994), 스카
- 스폰지밥 시리즈(1999), 플랑크톤
- 쏘우(2004), 직소
- 다크나이트(2008), 조커
- 셜록 시리즈(2010), 짐 모리아티
- 겨울왕국(2013), 한스 웨스터가드
- 위플래시(2014), 플래쳐
- 마이펫의 이중생활(2016): 스노우볼
- 어벤져스: 인피니티 워(2018), 타노스
- 어벤져스: 엔드게임(2019), 타노스
- 버즈 오브 프레이(2020), 할리퀸
- 자세한 출처 참고
- 프론트엔드
- Language : TypeScript
- Frameworks : React
- Libraries : axios, chart.js, wordcloud, react-slick, material-ui
- Lint Tools : eslint, prettier
- 백엔드
- Language : Python3
- Database : PostgreSQL
- Frameworks : Django
- Libraries : Django Rest Framework
- Lint Tools : autopep8
- 데이터 분석
- Language : Python3
- Libraries : nltk, nrclex, numpy, pandas, sklearn, wordcloud, matplotlib
- DevOps
- Operating Systems : MS Azure VM Ubuntu 18.04.5 LTS
- Container : docker, docker-compose
- Web Server : Nginx
- Application Server : Gunicorn
- CI/CD : Jenkins
- 유틸리티
- VCS : git
- 성격 분석 서비스에 대한 수요 증가
- 성격 분석 서비스의 흥행 요인
- 접근성 웹을 통한 테스트 및 게임 형식의 좋은 서비스 접근성
- 공유성 결과 공유를 통해 타겟층에게 자아 표출과 네트워킹 경험을 제공
- 캐릭터의 성향은 어떻게 파악할까?
- 캐릭터별 대사 중 가장 많이 반복되는 단어를 통해 파악
- 사용자의 성향은 어떻게 파악할까?
- 사용자에게 키워드와 관련된 선택지 제시 후 각 선택의 집합을 분석
- 영화 대본 분석을 통해 특정 캐릭터의 성향 파악
- 키워드 선택 형식에서 사용자의 선택을 바탕으로 성향 분석
- 사용자의 성향 분석을 통해 악역 캐릭터와의 매칭 수치를 시각화하여 제공
- 정량적인 텍스트 분석을 통해 작품 내 캐릭터의 성격 분석
- 단순히 스토리상에서 보여지는 캐릭터의 성격을 기반으로 결과가 제공되는 기존 성향 테스트와 차별화
- 분석 결과를 제공함으로써 결과의 유효성을 제고하고 사용자의 흥미를 유발
이름 | 역할 | 담당 업무 |
---|---|---|
정소원 | Product Owner + Developer | Front-End |
하성민 | Developer | Front-End |
이지민 | Developer | Back-End |
현암 | Developer | Back-End |
Product Owner
- 기획 단계: 구체적인 설계와 지표에 따른 프로젝트 제안서 작성
- 개발 단계: 팀원간의 일정 등 조율 + 프론트 or 백엔드 개발
- 수정 단계: 기획, 스크럼 진행, 발표 준비
Front-End
- 기획 단계: 큰 주제에서 문제 해결 아이디어 도출, 데이터 수집, 와이어프레임 작성
- 개발 단계: 와이어프레임을 기반으로 구현, 데이터 처리 및 시각화 담당, UI 디자인 완성
- 수정 단계: 피드백 반영해서 프론트 디자인 수정
Back-End
- 기획 단계: 기획 데이터 분석을 통해 해결하고자 하는 문제를 정의
- 개발 단계: 데이터 베이스 구축 및 API 활용, 데이터 분석 개념 총동원하기
- 수정 단계: 피드백 반영해서 분석 / 시각화 방식 수정
- 0.0
- Q. 캐릭터의 성향 분석은 어떻게 이루어지나요?
- A. nltk 라이브러리의 SentimentIntensityAnalyzer 모듈을 통해 각 캐릭터 대사의 단어 별 Vader 점수를 계산하여 긍/부정 성향을 가지는 단어를 추출한 후, nrclex 라이브러리의 감정 사전을 이용하여 단어에 드러난 감정을 10가지 종류로 분류했습니다.
- Q. 캐릭터의 성향 분석 기준이 무엇인가요?
- A. 해당 페이지를 참고 바랍니다.
- Q. 사용자 성향의 분석은 어떻게 이루어지나요?
- A. 캐릭터의 대사 데이터 모음 내에서 Vader 점수 기준 중립 성향이 아닌 단어 중 등장 빈도 수가 높은 단어들을 조합하여 사용자에게 선택지로 제시한 후, 캐릭터 분석 모델과 동일한 모델을 통해 사용자 답변 데이터를 분석합니다.
- Q. 캐릭터 매칭은 어떻게 이루어지나요?
- 분석한 사용자 성향을 바탕으로 각 캐릭터와의 코사인 유사도를 계산하여 가장 유사도가 높은 캐릭터를 제시합니다.
- Q. 서비스에 대한 추가적인 문의사항은 어디에 남기면 되나요?
- A.
Issues -> 새 이슈 작성
을 통해로 문의주시기 부탁드립니다.
- A.