본문 바로가기

Tech Story

(151)
추천 시스템을 위한 하둡 마훗 사용하기 (PR시리즈.13) 빅데이터를 위한 하둡 Hadoop이나 머신러닝 라이브러리인 마훗 Mahout의 디테일한 것을 설명하려는 것이 아닙니다. 그냥 마훗의 추천 알고리즘을 실행해본 수준에서 경험했던 프랙티스에 대한 간단한 리마크만 하겠습니다. 하둡이나 마훗에 대한 상세 설명이나 설치/설정 방법에 대해서는 다른 문서들을 찾아보시기 바랍니다. 특히 마훗의 아이템기반CF의 상세한 사용방법은 위키페이지를 참조하세요. 먼저 마훗CF를 사용하기 위한 입력데이터는 {UserID, ItemID, Rating} 페어로 된 CSV 파일이 필요합니다. 마지막 값인 Rating은 암묵점수에서는 넣을 필요없이 하둡/마훗을 실행할 때 옵션 --booleanData를 활성화시키면 됩니다. 여기서 중요한 점은 UserID와 ItemID가 모두 Long i..
추천 시스템에 대한 잡다한 생각들 (PR시리즈.12) 총 11번에 걸쳐서 추천 시스템과 관련된 다양한 알고리즘, measure, 고려사항 등을 다뤘습니다. 이 글에서는 미쳐 다루지 못했던 내용이나 그외 추천 시스템에 대한 잡다한 생각들을 두서없이 적으려고 합니다. 외국의 경우 아마존이나 넷플릭스, 구글유튜브 등이 추천으로 유명한 회사/서비스들이지만, 국내에는 여전히 추천 또는 데이터기반이 여전히 미약합니다. 최근에 영화 추천 서비스인 왓차, 그리고 그것을 만든 프로그래밍스가 조금 유명세를 타고 있습니다. 이전의 모든 글의 공통된 밑바탕은 추천 알고리즘 및 서비스는 별개 아니다 입니다. 현존하는 데이터마이닝 방법 중에서 추천보다 더 쉬운 것은 없다는 것이 저의 기본 가정입니다. (물론 엄청 잘하는 것은 매우 어렵습니다.) 왓차 서비스도 전혀 새로운 것이 없는..
(미국) 온라인 쇼핑과 오프라인 쇼핑 비교 MIT Technology Review에 The Shopping Decision Tree라는 인포그래픽스가 올라와서 공유합니다. 아래의 그림을 보시면 바로 이해가 될 거라서 따로 정리할 내용도 없지만,온라인 쇼핑이 많이 성장했지만, 매출액 기준으로 여전히 오프라인 쇼핑의 1/10에도 못 미치고 있다. ($200B vs $2.8T)그러나 매출액의 40%정도는 온라인/웹의 정보에 의존하지만, 특별한 경우가 아니면 그냥 상점에서 물건을 구매한다.모바일 판매는 아직은 온라인 판매에서 큰 부분을 차지하지 못하고 있다. ($13B vs $190B)온라인 쇼핑몰이 미국의 Top 5 리테일에 속하지 못 한다. (Walmart, Kroger, Target, Costco, Home Depot)온라인 매출의 1/5은 아마존..
추천 시스템의 레퍼런스 (PR시리즈.11) 총 10개의 글을 통해서 추천 시스템의 일반적인 내용을 대부분 다룬 것같습니다. 더 자세히 다뤄야할 세부적인 것들이 여전히 많이 있지만, 기존의 다른 논문들을 읽어보시면 쉽게 이해가 될 것입니다. PR시리즈를 통한 추천 시스템의 소개 및 설명은 이것으로 마치겠지만, 다른 관련 이슈가 발견되면 그때마다 내용을 추가하도록 하겠습니다. 모든 연구논문들이 그렇듯이, 추천 시스템의 글을 마치면서 추천 알고리즘 관련 참고 논문들을 아래와 같이 명시합니다. 검색서비스에서 '추천 시스템' 'recommender system' 'collaborative filtering' 등과 같은 키워드로 검색해보시면 다양한 논문들이 나옵니다. 아래에는 추천 시스템의 State of the art를 다룬 리뷰논문들을 주로 나열합니다...
추천 시스템의 부작용 - 필터버블 (PR시리즈.10) 처음에는 계획하지 않았던 글이지만, MIT 테크리뷰에 올라온 글 (참고, How to Burst the Filter Bubble that Protects Us from Opposing Views)를 읽은 후에 추천시스템 글에 함께 제시할 필요가 있다고 생각해서 적습니다. 위의 글에서 소개되었듯이 필터버블 Filter Bubble은 2011년도에 인터넷 활동가인 Eli Pariser가 처음 사용한 용어로, 강력한 추천 시스템이 사람들을 실세계의 특정 측면을 인지하는 것을 가로막는 현상을 뜻합니다. 검색 서비스를 만들면서 종종 Java를 검색했을 때 어떤 결과를 보여주면 좋을까?라는 질문을 합니다. Java는 잘 알려졌듯이 Sun에서 만들어서 현재는 (거의, 적어도 한국에서는) 인터넷 표준이 된 프로그래밍 ..
개인화 추천 시스템에 대하여 (PR시리즈.9) 불특정 다수를 위한 추천을 제외하면, 대부분의 추천은 개인화에 바탕을 두고 있습니다. 개인의 선호도를 바탕으로 명시점수를 예측하거나 특정 아이템을 선호할 확률을 계산해서 보여주기 때문입니다. 그리고 나와 유사한 사용자들이 좋아하는 제품들이나 내가 좋아하는 제품의 관련 제품들도 개인의 선호에 바탕으로 맺어지는 것입니다. 그렇기에 추천 개인화라는 타이틀이 조금 어색하지만, 최근에 제가 고민하는 플랫폼/프로세스에 대한 간략한 스케치만 다루겠습니다. 그리고, 추천 개인화에 관심이 있으신 분들은 Netflix에서 나온 Mining Large Streams of User Data for Personalized Recommendations를 읽어보시기 바랍니다. 제가 생각하는 추천 시스템 또는 추천 개인화는 1. 개..
추천 시스템의 쇼핑하우 적용예 (PR시리즈.8) 이전 글들에서 추천 시스템과 관련된 기본적인 사항들은 대부분 다룬 듯합니다. 실서비스에서 추천 시스템이 어떻게 적용되었는지 예시를 들어보겠습니다. 추천 알고리즘 자체도 복잡하지도 않고 적용가능한 방법이 뻔해서 쇼핑하우를 조금만 사용해보시면 어떻게 적용되었는지 쉽게 유추가 가능합니다. 이 글에서는 앞서 설명드린 알고리즘들이 어떻게 적용되었는지를 간략히 보여줄뿐, (여러 이유로) 상세 내용을 다룰 수 없음을 양해바랍니다. 쇼핑하우는 포털 다음에서 제공하는 쇼핑메타검색 서비스입니다. 예전에는 D&shop이라는 쇼핑몰도 직접 운영했지만, 지금은 여러 쇼핑몰들의 상품 데이터를 가져와서 상품을 찾고 가격비교를 해주는 서비스만 제공하고 있습니다. 현재 다양한 곳에 추천 상품들을 배치하려고 준비중이지만, 시작은 쇼핑하..
추천 시스템에서의 랭킹과 필터링 문제 (PR시리즈.7) 일곱번째 주제는 랭킹으로 정했습니다. 보통 추천 시스템은 Top N개의 아이템을 추천해줍니다. Top N을 결정하는 것은 일반적인 의미에서 랭킹 문제로 볼 수 있습니다. 그리고 추천 시스템을 검색엔진의 특수형/변형이라고 볼 수도 있습니다. 검색엔진은 사용자가 입력한 키워드 (쿼리)에 대해서 가장 적합한 (매칭률, 인기도, 최신성, 다양성 등 고려) 문서들을 제공하는 것이지만, 추천 시스템에서의 쿼리는 키워드가 아니라 유저 또는 아이템 그 자체입니다. 즉, 어떤 사용자를 쿼리해서 그/그녀에게 가장 적합한 아이템을 검색결과로 던져주거나 특정 아이템에 대해서 가장 연관성이 높은 것을 제시하는 것이 추천 시스템입니다. 입력의 형태만 키워드에서 유저 또는 아이템으로 바뀌었을 뿐, 기본 작동원리는 검색엔진의 그것과..