728x90

머신러닝(Machine Learning)/추천 시스템(Recommendation System) 10

추천 시스템 관점에서 대체재와 보완재에 대한 일반적인 생각

예전에 학교에서 추천 시스템 관련 수업을 들을 때 대체재와 보완재에 대한 개념을 배웠습니다. 그래서 회사에서 추천 시스템을 구축할 때도 이 컨셉으로 적용 했습니다. 그런데 실제 고객의 장바구니, 구매 데이터를 분석 하다보니 대체재와 보완재에 대해서 다른 측면으로 볼 수 있겠다고 생각이 들어서 시스템에 적용하기 전에 정리해볼 겸 적어 보려고 합니다. 우선 일반적으로 알고 있는 대체재와 보완재에 대해 이야기 해보겠습니다. 사전적 정의는 아래와 같습니다. 대체재 : 서로 대신 쓸 수 있는 관계에 있는 두 가지의 재화. 쌀과 밀가루, 만년필과 연필, 버터와 마가린 따위이다. 보완재 : 서로 보완 관계에 있는 재화. (출처 : 네이버 국어 사전) 예를 들자면 아이폰에게 갤럭시S는 대체재이고, 아이폰 케이스는 보완..

SVD를 이용한 추천 시스템 구현하기

차원 축소 기법 중 하나인 SVD(Singular value Decomposition, 특이값 분해)을 추천 시스템에 어떻게 적용하는지 예제를 통해서 알아 보도록 하겠습니다. 차원 축소 알고리듬은 대표적으로 3가지가 있습니다. 1. PCA(Principal component analysis, 주성분 분석) 2. SVD(Singular Value Decomposition, 특이값 분해) 3. NMF(Non-negative Matrix Factorization,비음수 행렬 인수분해) 이 중에 SVD에 대해 최대한 수학적인 내용들을 제외하고 추천 시스템에 SVD를 적용하기 위한 예제 위주로 설명을 드리겠습니다. 이론적, 수학적으로 설명된 자료는 많으나 실제로 코드를 이용해서 어떻게 구현하는지 나와 있는 자료가..

추천시스템 개발을 위한 SVD(특이 값 분해, Singular-value decomposition) 이해

책이나 인터넷을 찾아보면 SVD 이론에 대한 내용은 많이 있지만, 추천 시스템을 개발 관점에서 SVD을 사용해야 되는 이유와 코드를 이용한 설명이 부족한 것 같습니다. 그래서 이번 기회에 정리해 보려고 합니다. 수학적으로는 선형대수학을 알아야 하지만 개발자 입장에서는 수식보다 코드를 보고 다양한 데이터를 대입해보면서 이해하는 것이 훨씬 빠를것 같습니다. 그래서 코드를 통해 쉽게 이해할수 있도록 정리해보겠습니다. 정리 순서는 아래와 같습니다. 차원 축소 정의SVD 정의SVD를 사용한 차원 축소SVD 계산R을 이용한 SVD 이해R을 이용한 추천 시스템에서 SVD 사용하기R을 이용한 비어있는 값이 많은 고객 데이터에서 SVD를 이용한 고객 예상 점수 예측하기 위의 내용은 아래 링크를 보시면 확인할 수 있습니다..

Association Analysis / Association Rule / Apriori 알고리즘 - 3 of 3

연관글 보기Association Analysis / Association Rule / Apriori 알고리즘 - 1 of 3Association Analysis / Association Rule / Apriori 알고리즘 - 2 of 3Association Analysis / Association Rule / Apriori 알고리즘 - 3 of 3 시각화를 이용하면 수 많은 데이터에서는 보이지 않는 특징이 쉽게 눈에 띈다는 장점이 있다. 그래프를 그리기 위해 상관관계를 보여주는 행렬을 구해서SNA(social Network Analysis) 라이브러리의 gplot 함수를 이용해 weighted graph를 그려보도록 하자.상관관계를 그리기 위해서는 데이터타입이 matrix여야 한다. 하지만 아래과 같이 ..

Association Analysis / Association Rule / Apriori 알고리즘 - 2 of 3

연관글 보기Association Analysis / Association Rule / Apriori 알고리즘 - 1 of 3Association Analysis / Association Rule / Apriori 알고리즘 - 2 of 3Association Analysis / Association Rule / Apriori 알고리즘 - 3 of 3 이번에는 직접 코딩을 하면서 association rule에 대해서 보고자 한다. 아래 데이터는 20개의 건물에 입주한 상점 유형을 보여주는 데이터이다. 이 데이터를 사용하여 association rule을 이용한다면, 건물을 기준으로 연관성이 있는 상점이 무엇인지 알아볼 수 있다. 이러한 사례를 응용한다면 온라인 쇼핑몰 장바구니에 담긴 상품을 기준으로 고객이..

추천 시스템 개발을 위한 웹로그 수집 방법 1 of 2

효과적인 추천 시스템 구축을 위해서 웹로그 분석은 매우 중요한 역할을 한다.현재 진행 중인 추천 시스템 구축 프로젝트에서도 상용 웹로그 수집/분석 솔루션을 이용하여 로그를 수집하고, 고객을 이용 패턴을 분석하기 위해 웹로그를 사용한다. 기업에서 웹로그 수집 솔루션을 사용하고 있으면 해당 솔루션에서 발생하는 데이터를 전달 받아 사용하면 되지만 만약 그런 솔루션이 없다면 웹로그 수집이 선행되어야 한다.(물론 웹 로그가 없다고 추천 시스템을 구축하지 못하는 것은 아니다.) 그럼 웹로그가 추천시스템 개발 시 어떤 용도로 사용되는지와 웹로그를 수집할 수 있는 방법에 대해 간단하게 정리 해보려고 한다. 추천 시스템에서 웹 로그가 필요한 이유 웹로그가 필요한 이유는 다양하게 있겠지만 생각나는데로 적어본다.(온라인 쇼..

추천시스템 Overview

추천시스템 Overview추천의 사전적 의미어떤 조건에 적합한 대상을 책임지고 소개함(Naver 국어사전)추천의 관점 기준 분류사용자 관점사용자의 취향과 선호도를 파악함사용자의 선호도가 높을 것으로 예상되는 아이템을 예측하거나 제공함서비스 제공자 관점서비스 제공자가 목표로 하는 KPI(매출, Page View 등)를 달성함추천 사례아마존매출의 35%가 추천을 통해 발생넷플릭스대여되는 영화의 2/3가 추천 영화를 경유구글 뉴스38% 이상의 조회가 추천 뉴스를 경우추천 관련 용어정의User사용자Item추천이 되는 대상업종에 따라 다를 수 있음(예 : 온라인 서점 - 책, 넷플릭스 -영화)Rating사용자 아이템에 대한 선호도 평가 점수Preference / Taste선호 / 취향System Architect..

파이썬을 활용한 추천 시스템 구축을 위한 스터디

현재 쇼핑몰에 적용할 추천 시스템을 구축하는 프로젝트를 진행하는데, 프로젝트에 새로 투입될 회사 신입사원들 교육을 해야하는 상황이라 이왕 시작한거 이론적인 내용도 정리할 겸 교육 자료 만들 겸 신입사원이 이해할 수 있는 수준으로 내용을 정리해보려고 한다. 스터디 목차는 아래와 같다. 추천시스템 개요추천시스템 Overview추천시스템의 분류추천시스템의 성능평가추천시스템의 고려사항평점 예측을 이용한 영화 추천수학적 배경지식 리뷰영화 평점 예측 OverviewContent-based Filtering 모델을 이용한 평점 예측Collaborative Filtering 기반 영화 평점 예측Collaborative Filtering 기반 온라인 쇼핑몰 상품 추천고급 추천 시스템Matrix FactorizationB..

Association Analysis / Association Rule / Apriori 알고리즘 - 1 of 3

연관글 보기Association Analysis / Association Rule / Apriori 알고리즘 - 1 of 3Association Analysis / Association Rule / Apriori 알고리즘 - 2 of 3Association Analysis / Association Rule / Apriori 알고리즘 - 3 of 3 이 번에는 연관분석에 살펴보도록 하자. 연관분석을 장바구니 분석(market basket analysis)라고도 불린다. 또는 Association Rule, Apriori 알고리즘이라고도 불린다. 가장 많이 언급되는 예시는 월마트에서 기저귀를 구매하는 사람이 맥주도 많이 구매하는 패턴을 파악해서, 진열대에 함께 두면 잘 팔린다는 것이다.(중요한 것은 아니지만..

python으로 Association Rule 구현하기 위한 선행 연구 조사

진행하는 프로젝트에 적용하기 위해 Association Rule(이하 AR)을 사용해야 하는 상황이 생겼다. 우선 찾아본 결과 우리가 적용할 수 있는 두 가지 방법이 있다. 1. python을 이용한 AR 구현 아래 5개의 링크가 파이썬을 이용한 AR 구현 관련된 자료이다. 시간이 날 때 하나씩 테스트 해봐야 겠다.https://pypi.python.org/pypi/apyori/1.1.1https://github.com/asaini/Apriorihttp://orange3-associate.readthedocs.io/en/latest/scripting.htmlhttps://pypi.python.org/pypi/Orange3-Associatehttps://github.com/asaini/Apriori 2. ..

728x90