본문 바로가기
728x90
반응형

Programming_Collective Intelligence/2.추천시스템 만들기5

무비렌즈(MovieLens) 데이터 셋을 활용한 추천 시스템 영화 평가에 대한 실제 데이터셋인 무비렌즈를 살펴본다. 무비렌즈는 미네소타 대학의 그룹렌즈(FroupLens)프로젝트에 의해 개발되었다. https://grouplens.org/datasets/ 사이트에서 데이터를 다운받을 수 있다. tar.gz나 zip포맷 중에 하나를 골라서 100,000개의 데이터셋을 다운 받는다. 이 영화 평점데이터는 보니까 imdb 사이트에 있는 자료를 바탕으로 수집이 된 것으로 보여진다. 나는 위 그림처럼 10만개의 데이터셋을 다운 받았다. zip을 받았다. 압축을 풀면 u.item과 u.data가 있는데 모두 data파일로 되어 있어서 나는 편하게 하기 위해서 txt파일로 옮겨서 불러와 사용하였다. 파일을 각각 아이템에 관한 내용과 평점에 관한 데이터이다. 다음의 코드를 통해.. 2019. 12. 29.
항목 기반 필터링/추천 생성 모든 사용자들이 평가한 랭킹 정보 데이터가 있어야 추천 엔진을 구현할 수 있었다. 이는 수천 명의 사람이나 항목이 있을 땐 잘 동작할 것이다. 하지만 아마존과 같은 매우 큰 사이트의 경우에는 수백만의 고객과 제품이 있어서 연산량도 많아지고 느려지게 될 것이다. 그리고 사람 간의 중첩도 거의 없어서 어떤 사람들이 유사한지 결정하기가 까다로워 진다. 지금까지 알아본 것은 '사용자 기반 협력 필터링(user-based collaborative filtering)이다. 이밖에 항목 기반 협력 필터링(item-based collaborative filtering)이라는 방법도 있다. 매우 큰 데이터 셋을 다룰 때 항목 기반 협력 필터링 방법이 더 좋은 결과를 낼 것이다. 이 기법은 추천이 필요한 사용자에게 더욱 .. 2019. 12. 29.
제품 매칭 지금까지는 유사한 사람을 찾는 방법과 한 사람에게 제품들을 추천하는 방법을 보았다. 이제부터는 한 제분과 다른 제품이 얼마나 비슷한지 살펴본다. 이런 기능은 쇼핑몰에 자주 방문하지 않는 사람들에게 제공한다. 예컨데 아마존 웹페이지가 있다. 특정 물건을 좋아한 사람들이 좋아한 다른 것들을 살펴보아 유사도를 구한다. 이것은 앞에서 두 사람 간의 유사도를 측정한 방식과 동일한 방법이다. 단지, 사람을 물건으로 대치하면 된다. 딕셔너리 형태를 변경하면 전에 사용했던 방법과 동일하게 적용할 수 있다. {'Lisa Rose':{"Lady in the Water":2.5, "Snakes on a Plane":3.5}, 'Gene Seymour':{'Lady in the Water':3.0,'Snakes on a Pl.. 2019. 12. 28.
항목추천/제품매칭 1. 항목 추천 *평론가보단 역시 영화 추천입니다. 나와 가장 유사한 취향을 가진 사람을 찾아서 그사람이 좋아하지만 내가 안 본 영화를 찾을 수 있다. 하지만 이건 너무 관대한 판단이다. 이런 방식으로는 내가 좋아할 만한 영화 중에서 몇몇을 리뷰하지 않은 평론가들이 우연히 나타날지도 모른다. 또한 topMatches로 리턴된 모든 평론가들에게 악평을 받은 영화를 유독 좋아하는 평론가를 알려줄 수도 있다. 이런 논쟁을 해결하기위해 평론가 순위를 결정하는 가중점수를 만들고 항목점수를 계산해야한다. 모든 다른 평론가들의 평가를 계산한 후 나와의 유사도를 그들이 각 영화에 준 점수와 곱한다. 결과적으로 내가 평가하지 않은 영화들에 대한 추천을 받을 수 있다. def getRecommendations(prefs,.. 2019. 12. 26.
유사 사용자 찾기 1. 협업필터링 '추천시스템' 카테고리에 개념에 관한 설명이 있습니다. 2. 선호 정보 수집 예시로 쓸 데이터를 만듭니다. - 영화 비평과 영화 평가 정보를 담은 딕셔너리 - 각각의 사람들이 영화에 대한 평점을 매긴 데이터입니다. critics={"Lisa Rose":{'Lady in the Water':2.5, 'Snakes on a Plane':3.5, 'Just My Luck':3.0, 'Superman Returns':3.5, 'You, Me and Dupree':2.5,'The Night Listener':3.0}, "Gene Seymour":{'Lady in the Water':3.0, 'Snakes on a Plane':3.5, 'Just My Luck':1.5, 'Superman Retur.. 2019. 11. 29.
728x90
반응형