추천 시스템 관련 이야기는 이제 그만 하려고 했는데, 미처 다루지 못했던 이슈가 계속 떠오릅니다. 제목은 조금 이상하게 정했지만, 추천이 개인화를 목적으로 두지만 경우에 따라서 반개인화가 목적이 될 때도 있고 또 지나친 개인화는 추후에 프라이버시 문제와 연결될 수가 있습니다. 여기서 말하는 프라이버시 문제는 일반적인 개인정보 수집 및 사용에 관한 것이 아니라, 다양한 페르소나를 가지는 개인을 하나로 합쳐서 보여줄 때 발생하는 문제를 의미합니다.
한 사람을 하나의 페르소나로 정의하지 못합니다. 여러 가지 특성을 가지고 있습니다. 저는 직장인이고, 30대 남성이고, 제주에 살고 있습니다. 그 외에 사진을 많이 찍고 데이터마이닝에 관심을 가지고 있습니다. 주말에는 교회를 나가고 또 축구하는 것도 좋아합니다. 정치 사회적 문제에 대한 가치관이 있고 상품이나 디자인 등에 대한 선호도가 따로 있습니다. 이 모든 특징을 하나로 뭉쳐서 ‘정부환’이라는 객체를 정의할 수도 있겠지만, 별도로 떼어내거나 일부만 합쳐서 다양한 미니미들을 만들 수 있습니다. 회사에 나갔을 때 가지는 관심과 가치관이 다르고, 집에 왔을 때 관심이 다릅니다. 회사 생활과 가정 생활을 하나로 합쳐서 저를 특정짓는다면, 집에서 관심을 가졌던 것을 회사 컴퓨터에서 계속 보여주게 됩니다. 기본적으로 관심의 영속성은 존재하겠지만, 장소나 상황에 따라서 다른 특성을 가질 수 있다는 것이 전제되어야 합니다.
구글을 사용하면 편한 점이 많습니다. 그런데 모든 기기에서 같은 gmail 계정으로 접속하면 모든 기기를 마치 하나처럼 인식버립니다. 그래서 집PC에서만 시간떼우기로 접속했던 URL이 가끔 회사PC에서도 추천되는 것을 경험해봤을 것입니다. 역으로 회사에서 업무적 특성 때문에 검색했던 히스토리 때문에 집에서 다른 의도로 검색했을 때 결과가 다르게 나오기도 합니다. 하나의 계정으로 모든 곳과 통하는 것은 편하지만, 때로는 개인 사생활이 공공의 장소에 노출될 위험도 상존합니다.
한 개인이 다양한 페르소나를 가지듯이, 조금 이상하게 들리겠지만 여러 명의 개인들이 하나의 페르소나를 가지는 경우도 있습니다. 넷플릭스의 논문을 읽어보면 넷플릭스 추천의 목적은 개인에 맞춤이 아니라 가족에 맞춤이라고 말합니다. 보통 한 가정이라면 넷플릭스 계정은 하나만 만들 것입니다. 그런데 그 계정을 사용하는 사용자는 아빠, 엄마, 아들, 딸 등 전체 가족이 사용합니다. 극단적인 예를 들어, 부모님이 19금 영화를 봤는데 그것을 바탕으로 자녀들이 접속했을 때 다른 19금 영화를 추천해주는 경우가 발생할 수도 있습니다. 정확도 측면에서는 전혀 문제가 없겠지만, 타겟 대상을 잘못 삼았기 때문에 심각한 오류 상황입니다. 그래서 넷플릭스에서는 특정 개인이 아닌 전체 가족을 대상을 추천이 이뤄집니다. 첫화면에는 가족맞춤 추천으로 가족의 각 계층들이 각자 좋아할만한 카테고리의 영화들을 골고루 보여준다고 합니다. 아버지를 위한 액션영화도 추천해주고, 딸을 위한 순정만화도 추천해주고, 유아를 위한 애니메이션도 추천해주는 형태입니다.
넷플릭스와 같은 일은 생각보다 많이 일어납니다. 대표적으로 가족이 공용으로 사용하는 컴퓨터인 경우 어떤 사용자인지 제대로 파악이 힘들다는 것입니다. 때로는 한 사용자가 로그인했는데, 세션이 끝나기 전에 다른 사용자가 그대로 이용하기도 합니다. 가족별로 관심사가 다른데 하나의 계정 또는 컴퓨터 식별자에 다양한 사람들의 관심사가 합쳐지는 형태가 됩니다. 그래서 나중에 추천 목록을 봤는데 자신의 관심사와는 동떨어진 가족의 다른 구성원의 관심사가 반영되어 나한테 추천되는 것을 경험할 수도 있습니다. 와이프가 집에서 여성용품을 구입하느라 PC를 사용했는데, 회사에서 남편에게 여성용품을 계속 추천해주면 조금 당황스러운 경우가 발생할 수 있습니다. (어쩌면 아내 입장에서는 이걸로 선물해라라는 은근한 푸쉬 역할을 해주기도 할 듯합니다.)
추천 시스템에서는 각 개인의 모든 관심사를 아울러서 파악할 필요는 있지만, 추천이 이뤄지는 시점에서는 그 상황에 맞는 인격체에 맞춰서 추천해줘야 합니다. 넷플릭스 가족 추천처럼 전체를 아울러서 추천해줄 수도 있을테고, 개인의 관심사를 분리해서 추천해줄 수도 있습니다. 그런데 페르소나별로 따로 추천을 해주면, 유저수가 증가하는 효과가 발생해서 연산량도 많아지고 데이터량도 많아지는 문제가 있습니다. 더우기 data sparsity를 더 커져버립니다. 그래서 하나의 유저로 추천 목록을 만들어두고 (사후 필터링처럼) 페르소나별로 분리하는 방안도 생각해볼 수 있습니다. 쇼핑하우에서는 사용자가 특정 카테고리의 상품을 많이 구입/조회했다면 상위 몇개의 카테고리에 한해서 ‘당신이 좋아할만한 상품’이라는 추천 영역을 따로 만들어서, 해당 카테고리 상품이 조회될 때만 노출시키는 것도 적용되어있습니다.
넷플릭스처럼 의도적으로 여러 특성을 하나로 합쳐줘야하는 경우도 있을 것이고, 특정 개인을 상황에 따라서 다른 인격체로 간주해서 추천해줄 필요도 있습니다. 추천 알고리즘은 간단하다고 말씀드렸지만, 실제 적용에는 다양한 조건에 대한 검토가 필요합니다.
추천시스템 전체 목록
- 추천 시스템과의 조우 (PR시리즈.1)
- 추천 시스템을 위한 데이터 준비 (PR시리즈.2)
- 추천대상에 따른 추천 시스템의 분류 (PR시리즈.3)
- 알고리즘에 따른 추천 시스템의 분류 (PR시리즈.4)
- 추천 시스템을 위한 유사도 측정 방법 (PR시리즈.5)
- 추천 시스템의 성능 평가방법 및 고려사항 (PR시리즈.6)
- 추천 시스템에서의 랭킹과 필터링 문제 (PR시리즈.7)
- 추천 시스템의 쇼핑하우 적용예 (PR시리즈.8)
- 개인화 추천 시스템에 대하여 (PR시리즈.9)
- 추천 시스템의 부작용 - 필터버블 (PR시리즈.10)
- 추천 시스템의 레퍼런스 (PR시리즈.11)
- 추천 시스템에 대한 잡다한 생각들 (PR시리즈.12)
- 추천 시스템을 위한 하둡 마훗 사용하기 (PR시리즈.13)
- 추천 시스템에 대해서 여전히 남은 이야기들 (PR시리즈.14)
- 추천 시스템과 머신러닝 (PR시리즈.15)
- 추천 시스템과 다중인격 (PR시리즈.16)
==
페이스북 페이지: https://www.facebook.com/unexperienced