mapreduce based recommendation system

20
데이터 분석 오픈소스를 활용한 추천 서비스 어니컴()/ 전수현 [email protected] 131010목요일

Upload: -

Post on 16-May-2015

892 views

Category:

Technology


0 download

DESCRIPTION

http://onoffmix.com/event/19596 2013.10.10(목) '빅 데이터 활용을 위한 오픈소스 프레임워크 기술 세미나'에 중 '빅데이터 분석 오픈소스를 활용한 데이터 분석 사례' 대한 발표자료입니다.

TRANSCRIPT

Page 1: MapReduce based Recommendation System

데이터 분석 오픈소스를 활용한 추천 서비스 어니컴(주)/ 전수현[email protected]

13년 10월 10일 목요일

Page 2: MapReduce based Recommendation System

맵 리듀스 기반추천 서비스 개발

13년 10월 10일 목요일

Page 3: MapReduce based Recommendation System

맵리듀스 기반의 추천 서비스 개발하기

• 개발 목표

• 데이터 마이닝 방법 중 하나인 사용자 기반의 CF방법(User-based Collaborative Filtering)을 이용한 추천 알고리즘(recommendation algorithms)을 개발하여 1)유사한 사용자들의 점수를 계산하고 2)영화 평점을 예측하는 것을 구현

• Collaborative Filtering의 핵심은 사용자가 선호하는 아이템을 파악하고 이와 유사한 패턴을 가진 다른 고객이 선호하는 아이템을 추천하는 것이다.

• 개발 방법

유사도 계산나와 유사한 사용자 그룹 출력

예측할 데이터 셋 출력

평가 점수 예측

예측한 평가 점수 증명

R.M.S.E

MapReduce 기반

13년 10월 10일 목요일

Page 4: MapReduce based Recommendation System

맵 리듀스 기반추천 서비스 프로세스

13년 10월 10일 목요일

Page 5: MapReduce based Recommendation System

영화가 보고 싶은데 어떤 영화를 볼까?

13년 10월 10일 목요일

Page 6: MapReduce based Recommendation System

내가 추천 해줄게

13년 10월 10일 목요일

Page 7: MapReduce based Recommendation System

나와 유사한 사용자 찾기

13년 10월 10일 목요일

Page 8: MapReduce based Recommendation System

찾았다! 나와 비슷한 성향을 가진 사람들.

13년 10월 10일 목요일

Page 9: MapReduce based Recommendation System

?

?

?

13년 10월 10일 목요일

Page 10: MapReduce based Recommendation System

4.5

1.5

2.5

13년 10월 10일 목요일

Page 11: MapReduce based Recommendation System

당신에게 추천하고 싶은 영화!사용자 기반의 추천 시스템에서 Top movie로 추천된 결과

13년 10월 10일 목요일

Page 12: MapReduce based Recommendation System

ANKUS 를 이용한 추천 시스템

데모

13년 10월 10일 목요일

Page 13: MapReduce based Recommendation System

ANKUS를 활용한 사용자 기반 협력적 추천 서비스

NAME MOVIE RATINGSuhyun Ironman 5.0Suhyun Once 3.0Suhyun Oldboy 2.5Moonie Ironman 2.0Moonie Once 2.5Moonie Oldboy 5.0Moonie Batman 2.0Junhong Ironman 2.5Junhong Batman 4.0Junhong Haeundae 4.5Junhong Gwansang 5.0Wonbin Ironman 5.0Wonbin Oldboy 3.0Wonbin Batman 4.5Wonbin Conjuring 4.0Taehee Ironman 4.0Taehee Once 3.0Taehee Oldboy 2.0Taehee Batman 4.0Taehee Haeundae 3.5Taehee Conjuring 4.0

$ hadoop jar ankus-core-0.0.1.jar CFBasedSimilarity -input /input/demo -output /output/demo/1 -basedType user -threshold 0.7 -commonCount 20 -algorithmOption pearson -delimiter '\t'

Input file

Suhyun Taehee 0.994Suhyun Wonbin 0.997Taehee Wonbin 0.992

$ hadoop jar ankus-core-0.0.1.jar Recommendation -input /input/demo -similarDataInput /output/demo/3/part-r-00000 -output /output/demo/prediction/1 -basedType user -delimiter '\t'

Suhyun Batman 4.25Suhyun Conjuring 4.0Suhyun Haeundae 3.5Wonbin Haeundae 3.5Wonbin Once 3.0

Step1

Step2

Taehee Batman 4.0Wonbin Batman 4.5

사용자 기반 협력적 추천을 Pearson correlation 유사도로 계산하여조건은 임계값 0.7로, 공통으로 평가한 영화 개수가 20개 이상인 경우로 계산하는 모듈을 실행한다.

추천할 데이터 셋과 Pearson correlation 유사도 결과 데이터셋을 사용하여 사용자 기반의 추천 서비스를 계산하는 모듈을 실행한다.

13년 10월 10일 목요일

Page 14: MapReduce based Recommendation System

나도 빅데이터 분석 오픈소스 개발하고 싶어요.

13년 10월 10일 목요일

Page 15: MapReduce based Recommendation System

ANKUS데이터 마이닝 / 머신 러닝 오픈소스 라이브러리

13년 10월 10일 목요일

Page 16: MapReduce based Recommendation System

커뮤니티• 위키 - 사용자 및 개발자 가이드 등

• www.openankus.org

• 페이스북 사용자 포럼

• www.facebook.com/groups/478048298938975

• 페이스북 페이지(영문)

• www.facebook.com/openankus

• 해외 머신러닝 오픈소스 소프트웨어 포럼

• https://mloss.org/software/view/500/

• 소스코드 다운로드

• https://github.com/suhyunjeon/ankus

• http://sourceforge.net/projects/ankus/?source=directory

13년 10월 10일 목요일

Page 17: MapReduce based Recommendation System

ANKUS 마일스톤날짜 버전 내용

2013.09 0.01

• 수치/범주 데이터 기초 통계 기능• 수치 데이터 정규화(Min/Max 기반) 기능• 특징 벡터 기반 유사/상관 분석 기능• K-means 기반 군집 분석 기능• 사용자 기반 협력적 추천 - 사용자 선호 기반 유사도 계산 기능• 사용자 기반 협력적 추천 - 사용자 유사도 기반 추천 목록 생성 기능• 아이템 기반 협력적 추천 - 아이템 사용 기반 유사도 계산 기능• 기타 - 사용자/개발자 가이드• 기타 - 테스트 케이스 시나리오 구성 및 예시

2013.11 0.1

• EM 기반 군집 분석 기능• ID3 기반 의사 결정 나부 분류 분석 기능• 아이템 내용 정보 기반 추천 - 아이템 내용 기반 유사도 계산 기능• 아이템 기반 협력적 추천 - 아이템 유사도 기반 추천 목록 생성 기능

(아이템 내용 정보 기반 추천) • 가시화 - 외부 공개 소스 기반 가시화 API에 따른 결과 출력• 기타 - 사용자/개발자 가이드• 기타 - 테스트 케이스 시나리오 구성 및 예시•

2013.12 ~ 0.15 • 분류/군집 분석 기능 추가• 자연어 처리 관련 기능 추가

13년 10월 10일 목요일

Page 18: MapReduce based Recommendation System

ANKUS MILESTONEDate Version Description

2013.09 0.01

• Basic Statistics for Numeric/Nominal Data• Preprocessing - Normalization (Min/Max)• Vector Data based Similarity/Correlation Analysis• Clustering - K-Means(for Numeric/Nominal Features)• User based CF Recommendation - Similarity Computation between Users• User based CF Recommendation - User Similarity based Recommendation Generation• Item based CF Recommendation - Similarity Computation between Items• User / Developer Guide• Scenarios and Examples for Test Case

2013.11 0.1

• Clustering - EM (for Numeric features)• Classification - ID3 based Decision Tree (for Nominal Features)• Contents based Recommendation - Contents based Similarity Computation between Items• Item based Recommendation (CF / Contents based) - Item Similarity based Recommendation

Generation• Visualization (Open Source Integration)• User / Developer Guide• Scenarios and Examples for Test Case

2013.12 ~ 0.15 • Add features to Classification / Clustering methods• Add features to NLP(POS tagging, TF/IDF)

13년 10월 10일 목요일

Page 19: MapReduce based Recommendation System

이미지 출처

http://insahara.tistory.com/m/post/view/id/184http://www.newnownext.com/tom-brady-plays-imaginary-football-inside-cool-la-airport/09/2012/catch-me-if-you-can-pilot-leonardo/http://blog.daum.net/kidsreturn80/375702http://moms.popsugar.com/3-Tips-Great-First-Movie-Theater-Experience-27331230https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTk2KYtbdhabiEo9XBKWkltd7cBBlieAKpudwogGTtZuQG_pP9Ahttp://res.heraldm.com/content/image/2012/11/07/20121107000213_1.jpghttp://blog.lovesongday.com/47http://ko.wikipedia.org/wiki/%EC%9B%90%EB%B9%88http://article.joins.com/news/article/article.asp?total_id=11278207&ctg=1501http://blog.naver.com/PostView.nhn?blogId=kissbymucha&logNo=100105353224&categoryNo=48&viewDate=&currentPage=1&listtype=0http://mirror.enha.kr/wiki/%ED%86%B0%20%ED%81%AC%EB%A3%A8%EC%A6%88http://movie.hrising.com/magazine/?mode=view&cntid=637http://anythingtip.tistory.com/221 http://blog.naver.com/PostView.nhn?blogId=myjsp&logNo=50160780510http://blog.naver.com/PostView.nhn?blogId=myjsp&logNo=50160780510http://mlkangho.egloos.com/m/10992908http://filesvr.dureraum.org/bcc/mcontents/progMovList.do?rbsIdx=62&progCode=201100066http://ogamcom.net/64http://blog.naver.com/PostView.nhn?blogId=sony2hd&logNo=140167162146http://info.cunyba.gc.cuny.edu/blog/?Tag=Requesting%20a%20Letter%20of%20Recommendation

13년 10월 10일 목요일

Page 20: MapReduce based Recommendation System

감사합니다.

13년 10월 10일 목요일