협업 필터링

역사

협력 필터링은 초기의 정보 필터링(information filtering: 특정 사용자의 프로필을 만들고 이전의 행동에 대해 패턴 관찰을 함으로써 특정 사용자의 관심사를 가지고 이와 관련된 정보를 만든다)과는 배치된다. 초기의 정보 필터링 시스템은 콜드스타트(cold-start) 문제를 겪게 될 뿐만 아니라 정보 홍수 시대에 대하여 도움이 되지 않는다. 즉, 필터링의 효력을 보기 전에 새로운 사용자는 경향을 형성 해야 하는 문제를 겪게 된다.
협력 필터링을 사용한 초기 시스템은 제록스 팔로 알토 리서치 센터(Xerox PARC)에서 개발한 정보 태피스트리 프로젝트이다.(the Information Tapestry project) 이 시스템에서는 다른 사용자가 이전에 코멘트한 것을 기반으로 사용자가 문서를 찾을 수 있게 해준다. 하지만 이 시스템에도 약점이 있는데, 첫째로 단지 작은 집단에서만 사용될 수밖에 없다는 것이고, 둘째로 협력적 필터링의 목적에 크게 배치되는 word specific queries을 통하여 접근하기 때문이다.
나아가 유즈넷 넷뉴스(USENET Net news)는 대중이 기사를 간단한 방법으로 접근하게 하면서 사용자들의 인기도를 기반으로 기사에 대한 평가(Rate)를 하게 하면서 다른 사용자들이 이 평가를 기반으로 검색을 할 수 있게 끔 한 협업 필터링이다.

능동적 필터링

능동적 필터링은 최근에 인기가 증가한 방법이다. 그 이유는 WWW(World Wide Web)의 유저들이 사용할 수 있는 정보 기반이 계속 증가 하고 있기 때문이다. 하지만 인터넷을 통하여 기하급수적으로 증가하고 있는 정보의 양으로 인해 가치있는 정보의 검색 효율성은 갈수록 어려워 지고 있다. 최근에 WWW을 통한 기본적인 정보 검색은 수많은 결과를 찾아 주지만 그 결과의 검색방법이 효과적이지도 않고 관계도도 떨어지고 있다. 오늘날 시장에서 수많은 데이터와 검색 엔진들이 검색을 위해 사용되고 있지만 대부분의 사람들은 검색을 위한 모든 옵션의 사용에 대하여 익숙하지가 않다. 이런 환경에서 능동적 필터링이 효과적인 방법으로 대두되고 있는 것이다.
능동적인 필터링은 P2P 방식이기 때문에 다른 협업 필터링과도 차별화 된다. 이것은 비슷한 관심사를 가진 동료, 친구 등의 사람들이 상품 등을 평가하고 또한 웹에서 이런 정보들을 공유하고 서로 볼 수 있다. 이 시스템은 사람들이 다른 비슷한 사람들과 함께 구매한 물건에 대한 정보를 공유하기를 원하다는 사실에 기초로 하고 있다. 능동적인 필터링은 웹을 통하여 정보를 보낸 다른 사용자들의 상품의 평가를 볼 수 있고 그것을 기반으로 자신만의 구매 결정을 하게 해준다.
능동적인 필터링은 많은 경우에 많은 사람들에게 유용하다. 이 능동적인 필터링은 유도 웹 검색기반이 없는 경우(non-guided web search)에 가장 중요하고 효율적이다. 유도 웹 검색기반이 없는 것(non-guided web search)은 단지 수많은 정보만을 생산하기 때문에 정보에 정확하게 접근하려고 하는 사람에게는 효율적이도 유용하지도 않다.

장점

능동적인 협업 필터링을 사용하는 것에는 여러 장점이 있다. 장점 중에 하나는 이 방법이 어떤 상품과 주제에 대한 관심사를 가진 사람들이 실제 평가를 했다는 것이다. 이 시스템은 근거있는 설명과 순위를 신뢰성 있는 정보로부터 생성한다. 다른 장점은 사람들이 궁극적으로 직접 그 문제를 고려하여 정보를 공급한다는 것이다.

단점

능동적인 협업 필터링에는 여러 단점들도 있다. 그 중에 하나는 의견이 편견을 가질 수 있다는 것이다. 또한 피드백의 생성의 경우는 사용자의 직접적인 행동이 요구되기 때문에 수동적인 필터링에 비하여 적은 데이터만이 사용될 것이다. 그리고 사용자 기대가 맞아 떨어지지 않을 수도 있다. 협업 필터링의 주요 특징 중 하나는 콘텐츠 기반의 필터링과 비교하여 실제 아이템의 내용과 그것이 무엇에 관한 것인지에 관한 내용을 전혀 알지 못한 상태에서의 방법이라는 것이다. 이 의미는 단지 기호 가치들(preference values)에만 의존한다는 것이다. 이것은 각 상품에 대한 성능에 대한 통찰력이 다른 사람들의 평가에 높게 의존하게 되고 결국 평준화 효과를 가져 오게 된다. 평준화 효과는 전체적으로 가장 많이 추천된 상품에 결과적으로 사람들이 더욱 많이 소비하고 더 많이 평가를 하게 되면서 그 상품이 더욱 추천되는 결과를 가져온다.
일반적으로 잘 알려진 협력 필터링에 대한 두가지 이슈는 다음과 같다. 첫 번째는 초기 평가자 문제 (First-Rater Problem)이고 두 번째는 콜드 스타트 문제(Cold-Start Problem)이다. 초기 평가자 문제 (First-Rater Problem)는 어느 사용자에게도 평가받지 못한 새로운 아이템이 있을 경우에 일어난다. 이런 경우에는 시스템에서 이들의 아이템에서는 의미 상호작용 (semantic interconnection)을 생성 시킬 수도 없기 때문에 당연히 절대 추천 될 수 도 없다. 유사하게 콜드 스타트 문제(Cold-Start Problem)는 지금까지 한번도 평가를 하지 않은 사용자들이 있을 경우에 일어난다. 이런 경우에는 시스템은 사용자의 어느 정보도 없기 때문에 사용자의 기호도 예측과 추천을 할 수가 없다.

수동적 필터링

미래의 가장 잠재력있는 협업 필터링 방법은 정보를 함축적으로 수집하는 수동적 필터링(passive filtering)이라고 여겨지고 있다. 여기서 웹 브라우저는 사람들의 행동을 추적하고(following) 평가에 의해 사용자들의 기호도를 저장하기 위하여 사용된다. 이 필터는 사용자들이 좋아할만하고 추천받을 만한 관심사 중의 다른 상품을 구매 결정하기 위하여 사용된다.
수동적인 협업 필터링의 중요한 특징은 사용자가 문서를 단순히 스캐닝 할 것인지 정독을 할 것 인지에 대한 결정을 하기 위한 측면에서 시간을 사용한다. 이 시스템의 가장 큰 장점은 능동적인 필터링에서 일반적으로 나타나는 분석들로부터 특정한 변화를 제거할 수 있다는 것이다. 예를 들어, 단지 특정한 종류의 사람만이 사이트의 평가를 하기 위해 시간을 보내는 것과는 달리 수동적 협업필터링에서는 모든 사람이 자동적으로 주어진 데이터를 가지고 접근할 수 있다.

아이템 기반 필터링

아이템 기반 필터링은 협업 필터링의 또 다른 방법으로서 사용자들 대신에 평가된 아이템이 파라미터(parameter)로 사용된다.
아이템 기반 협동적 필터링은 대부분의 사람들이 과거에 자신이 좋아했던 상품과 비슷한 상품이면 좋아하는 경향이 있고 반대로 싫어했었던 상품과 비슷한 상품이면 싫어하는 경향이 있다는 점을 기반으로 하고 있다. 이 필터링 방법은 고객이 선호도를 입력한 기존의 상품들과 예측하고자 하는 상품과의 유사도(similarity)를 계산하여 고객의 선호도를 예측하는 방법이다. 즉, 예측하고자 하는 상품과 비슷한 상품들에 대하여 고객이 높은 평가를 하였다면 그 상품도 높게 평가를 할 것이라고 예측하고, 낮은 평가를 하였다면 그 상품도 낮게 평가를 할 것이라고 예측하는 것이다. 아이템 기반 협동적 필터링 방법은 상품들간의 유사도를 계산하기 위하여 두 상품에 모두 선호도를 입력한 고객들의 선호도를 사용한다. 그러나 고객들간의 유사도가 전혀 고려되지 않기 때문에 만약 특정 고객과 전혀 선호도가 비슷하지 않은 사용자들의 평가를 기반으로 한다면 상품들간의 상관 관계의 정확도가 떨어지고, 아울러 추천 시스템의 예측 능력과 추천 능력이 저하될 수 있다.

능동적 필터링과 수동적 필터링

적극적 필터링과 소극적 필터링 내에는 사용자의 선호도를 결정하기 위한 명시적 방법과 암시적 방법이 있다. 사용자 선호도의 명시적인 수집은 평가자로 하여금 그 컨텐트에 대한 점수를 부여하게 만든다. 이는 협업 필터링에 인식적인 측면을 부여하지만, 피드백이 더욱 정확하다는 것을 의미할 수도 있다.
암시적인 수집은 사용자에 의한 직접적인 의견을 포함하지 않지만, 대신 그들의 의견이 행동에 의해 암시된다고 가정한다. 이는 사용자간의 다양성을 줄이고 사용자의 요구를 줄이며, 이는 곧 더 많은 데이터를 사용할 수 있다는 것을 의미한다. 하지만, 이러한 행동 데이터가 꼭 아이템에 대한 사용자의 진정한 의견을 정확히 대변한다고 할 수는 없다.