![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bBKcoX/btqFaNneU2b/6QKMfK7M4oOpZ809FU1iD0/img.png)
영화 추천 시스템 마지막편 입니다! 지난편에서 mjw2305라는 유저가 해당 장르에서 가장 비슷한 유저임을 알아봤고 이번 편에서는 크롤링과 감정 분석 등을 이용하여 해당 유저에 대해 집중적으로 탐색 해보도록 하겠습니다! 유저 리뷰 크롤링 유저 페이지 에서는 유저가 영화에 대해 남긴 리뷰들을 볼 수 있습니다. 그러나 평점은 유저의 자유에 따라 생략될 수도 있는 것이기 때문에 만약 이 평점이 없다면 직접 리뷰를 읽어보지 않는 한 이 유저가 영화에 대해 어떤 평가를 내렸는지 알 수 없다는 문제가 존재합니다. 이 유저는 대부분의 영화 리뷰 마지막 부분에 평점을 남겼고 저는 이 부분을 놓치지 않기로 했습니다! 감정 분석 모델을 통해 유저가 영화에 대해 긍정적인지 부정적인지 예측하고 마지막에 유저가 직접 남긴 평점..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/8thsz/btqFaB1eSOp/kTPzfaEU1T4icPfEXDu750/img.png)
이번 편에서는 1차 추천을 받은 영화들을 동시에 시청한 유저가 있는지 찾아보겠습니다! 영화 크롤링 imdb 웹 페이지는 imdb_id를 키 값으로 해당 영화 페이지에 접근할 수 있습니다. https://www.imdb.com/title/tt0167261/reviews?sort=helpfulnessScore&dir=desc&ratingFilter=0 일단 1번 추천 영화인 반지의 제왕의 imdb_id를 가지고 페이지에 접근해보면 이렇게 유저 아이디, 유저 리뷰, 평점 등의 정보를 확인할 수 있습니다. 알고싶은 건 유저 아이디와 평점이므로 1차 추천을 받은 영화들에서 필요한 정보를 긁어봅시다! 보통 크롤러를 만들 때 가장 큰 상자(user_name, user_rating)는 딕셔너리 형태( { } )로 만드..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bOGTmT/btqE8yDrQVj/GfAz3tKzCniKwvIBstjUBK/img.jpg)
사용 데이터 제가 사용한 데이터는 해외 인터넷 영화 온라인 데이터베이스 IMDB에서 제공하는 데이터셋입니다. https://www.kaggle.com/rounakbanik/the-movies-dataset The Movies Dataset Metadata on over 45,000 movies. 26 million ratings from over 270,000 users. www.kaggle.com 이 중 영화 정보와 영화 평점 데이터를 가지고 피어슨 상관계수 함수를 이용해서 상관관계 순으로 추천을 받을거에요! 자세한 진행 과정은 마지막편에 첨부한 코드를 참고해주세요 :D 영화 정보 (movie 테이블) 처음 가져온 movie 테이블은 굉장히 다양한 정보를 담고있습니다. 이를 필요한 변수 선택, 중복 및..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bsxJkY/btqE6MBI87G/RYazx9x2srS6sv0nQ5Bggk/img.jpg)
추천 시스템(Recommendation System) 데이터 양이 급증하면서 기업/기관에서 사용자에게 제공하는 서비스도 지속적으로 증가하고 있습니다. 특히 영화, 드라마 등 영상 매체 데이터는 앞으로도 꾸준히 발전할 전망이라고 하죠! 때문에 사용자의 취향에 맞춰 서비스를 제공하는 일은 굉장히 중요합니다. 추천 시스템은 이처럼 사용자가 선호할만한 컨텐츠를 추천해주는 방법들을 일컫는 말입니다. 유튜브나 넷플릭스 같은 영상 서비스 플랫폼에서는 이미 유저들에게 수 많은 서비스를 추천해주고 있습니다. 현재 상용화 되어 많이 사용되고 있는 대표적인 추천 시스템은 협업 필터링 입니다. 협업 필터링(Collaborative filtering) 같은 콘텐츠를 좋아하는 사람은 콘텐츠 취향이 비슷할 것이라는 가정에 기반한 ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cdJHf8/btqE4Eyt2Pi/yE4C6CHYd77d1iyJvJijO0/img.jpg)
때는 개강 전 2월... 저는 방에서 홀로 명작 영화인 '지금 만나러 갑니다'를 시청하고 있었습니다.. ... ... 울면서 봤습니다.. 이 영화 뿐만 아니라 '나는 내일 어제의 너와 만난다'도 엄청 재밌게 봤습니다. 근데 문제가 생겼어요..! 이 영화들이 너무 감동적이어서 다른 영화들도 보고싶은데! 비슷한 영화들을 찾을 수가 없는겁니다! 10년전에 제 입덕 작품이었던 토라도라를 시청했을 때 처럼 '와.. 이런 애니 또 없나?!' 하면서 찾아봤었던 추억이 생각나는 순간이었습니다. 근데 문제는 저렇게 검색을 통해 추천받아 시청했던 애니들은 대부분 썩 제 맘에 들지 않았다는 것.. 하지만 이제는 무대포로 추천받은 수 많은 작품들을 전부 시청하기에는 우리 모두 바쁜 일상을 살고 있기에! 이왕이면 자신의 취향에..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cP8y0J/btqBvujMu3P/OpdXtmwGk7MLtL7EIKGAKk/img.png)
Arah의 롤 전적 분석 일기 마지막편 입니다!👏 전 편에서 탐색적 데이터 분석를 통해 여러가지 통계를 살펴보고, 시각화를 다뤄보았는데요 이번 편에서는 유의미한 변수들을 가지고 승률 예측 모델을 만들어 볼겁니다! 승률 예측 모델링 종속변수는 '승/패' 이진분류 이므로 로지스틱 회귀모델을 채택하고, 활성화 함수는 시그모이드 함수를 사용합니다! 분류가 잘 되는지 2차원 그래프로 확인을 해보고 다른 변수들도 올바르게 분류하고 있는지 확인 합니다 여러 변수들 중 위의 변수들을 사용했을때 정확도가 가장 높게 나왔습니다 자세한건 코드를 통해서 확인해주세요👨💻 Dialogflow를 이용한 평점 챗봇 만들기 플레이어 닉네임을 인식할 수 있는 intent를 생성하고 구글 서버가 호스트 서버로 가서 계산에 사용될 평점 ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bDCEvO/btqBuazLvK6/C283Ne8HzkVd1ibNLzfic1/img.jpg)
전 편에서 크롤링하고 다듬은 데이터를 가지고 본격적으로 제 플레이에 대한 통계를 살펴보도록 하겠습니다! Explore data 일단 승패별로 groupby를 이용해 보고싶은 변수들의 통계를 살펴봤어요 그리고 승패에 따른 스펠별 kda, 승률 count를 요약통계 한 결과입니다 고티어에서는 킬각을 잘 안내어 주니깐 텔레포트를 많이 사용 해봤는데 승률이 영 시원찮네요 말자하나 트페같은 애들 상대로도 텔포 말고 그냥 점화를 들어서 정글 싸움에서 우위를 가져가는 편이 좋을듯 해요 룬은 제가 체감하기에도 유성이 라인전 우위를 가져오기도 좋았고 감전보다 적중률이 좋았던 기억이 있어요 특정 맞딜이 불가피한 상대를 제외하고는 유성 점화가 좋은 것 같아요(콩콩이는 q컨디션 좋을때 아니면 안쓰는걸로🙅♂️) 상대 미드별 ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bobKXf/btqBrBDpgqP/68ak6xQuauTAsXvX3xLKRK/img.png)
처음에 fow와 opgg중 어느 사이트에서 크롤링을 할지 고민하다가 fow는 예전 기록을 많이 공개하지 않아서 고민없이 op.gg로 선택했습니다! 하지만 opgg도 5개월 전 까지의 데이터만 공개 해주는 것을 나중에 알게되고 눈물을 감추며 약 절반의 데이터밖에 수집하지 못했다는 슬픈 이야기..😥 아무튼 저의 수집 및 전처리 계획은 이러했답니다 1. Page unfolding & Crawling 2. Data processing 1. Page unfolding & Crawling OP.GG는 플레이어 검색 시 기본적으로 한 페이지에 20개의 전적을 보여주며 더 보기를 클릭할 때 마다 20개의 전적이 추가적으로 보여집니다 더 보기 쯤이야 20번 정도만 클릭 해줘도 400개의 데이터를 볼 수 있으니깐 할만한데..