한국 IT 용어 이야기 (17) - 개인화

personalized vs my(private)

by 개발자 정채상

오늘 이야기할 용어는 사실 오래 전부터 다루고 싶었던 '개인화'. 은근히 제품에서 많이 쓰는 단어이고, 에라 모르겠다 정도의 마케팅 용 어휘로도 자주 쓰이는데, 이 단어의 영어 버젼은 일단 personalized 와 private 두 개가 생각난다. 살짝 다르게 쓰이는데, 검색 서비스쪽 기억들 몇 개 정리해 본다.


User Preference / User Setting


먼저 살짝 쉬운 것부터.. 위도/경도까지 자세할 필요까지는 없지만, 사용자의 현재 위치, 사용자 언어, 새로운 창을 띄울 지 말 지, 어떤 기계에서 어떤 브라우저를 쓰는지, 화면 크기 등은 살짝 경계에 있는 정보들이다. 이런 저런 설정 창에서 바꿀 수 있는 내용이기도 해서 개인정보냐 라는 질문과 intention 이 있냐는 질문에 조심스럽지만 열려 있다.


로그인 하지 않은 사용자의 경우 과거는 모르겠고, 현재 설정을 담담하게 쓰면 되지만, 같은 계정을 쓰면 계정간 동기화를 통해 자동으로 설정되기도 한다. 이 경우는 꽤 진지한 사용자 정보가 된다. 예를 들면 나는 한글과 영어를 절반씩 찾는, 한국에서도 쓰고 미국에서도 쓰는 규정하기 힘든 어중간한 사용자이겠다. 나만을 위한 뭔가가 있어야 하겠느냐라는 질문을 하게 되면, 로그인했으니 뭐 알아서 해 주십시오 정도이긴 하겠다. 자연스레 나는 하나지만 계정은 여러 개가 운영되며 본의 아니게 여러 계정이 필요하겠고, 아래는 조금 더 진지한 케이스들이다.


Personalized Ranking


오래 전에 구글 검색에서 과제들을 진행했었지만, 처음 시작할 당시에는 구글 로그인으로 구현되는 개인화 개념이 없던 시절이었다. 특히 2010년대 들어와서 크롬 브라우저, 모바일 세상, google.co.kr 에서 google.com으로의 통합, 다양한 구글 제품들 등 수많은 노력들이 있었고, 이제는 꽤 자연스레 받아들인다. 다만 검색이나 쇼핑몰 계열 서비스에서 이걸 어떻게 구현할 것인가에 대해서는 아주 오래전부터 많은 사람들이 풀고 싶어하는 어려운 문제이다.


검색 결과에서 서열을 매기는 랭킹은 기본적으로 통계의 영역, 집단 지성의 힘을 서비스로 만든 것이기에 여기에 개인화와 관련된 무언가를 섞는다는 건 일단 그 집단 지성과 상충되는 결과들을 의미한다. 랭킹은 사용자가 조금 더 좋아할만한 로직으로 sort by 를 해 주는 것인데, 서비스가 나에 대해서 알면 얼마나 안다고..? 에서 시작한다. 내가 구글 검색을 통해 영화 사이트를 몇 번 클릭했다고 그 영화 사이트를 밀어 줘야 하나? 얼마나 ? 영화만 ? 뉴스는 ? 블로그 사이트는 ? 얼마나 ? 등등..


삼라만상 정보를 다루는, 정답을 찾아가는 검색의 영역에서는 갑갑하다지만, 이게 scope 가 달라지면 조금 해볼만한 문제가 된다. 주루룩 훑어 보는 쇼핑몰의 리스트, 유튜브의 리스트, 심지어 검색에서도 categorical query 나 how-to 등에 대해서는 꽤 해 볼만한 문제가 되는데, 어차피 집단지성이 큰 힘을 발휘하지 않는 영역에서 살짝의 개선도 scale 이 도움을 준다. 같은 방식으로 앞의 검색 문제로 돌아가서 적용을 해 본다 하면 영화 사이트냐 아니냐 등의 선입견을 떼고 기계적으로 URL pattern 으로 접근하면 개개인들이 선호해 온 것들이 반영되는 형태로 구현된다. 모두를 아우르는 기술로서 자연스럽게 personalized ranking 으로 불리고, 이는 추가적인 ranking multiplier 형태로 구현된다.


구글 검색 시절 App indexing 과제를 할 때 personalized ranking의 벽에 부딪쳤던 기억이 있다. 모두에게 일반적으로 적용되는 집단지성 기반의 지표들을 깨며 접근을 하려 할 때, 각 지표들은 소위 행복에 대한 것들을 가지고 만들어 졌다 한다면, 누군가의 지표를 올리기 위해 누군가의 지표가 내려가는 경우 이건 제품의 지표를 통해 맞는 접근인가 등의 논의가 있었고, 그래서 더욱 치열하게 지표들을 정의하느라 노력했던 기억들이다.


Private(or My) Results


쇼핑몰로 치면 이전에 내가 주문했던 상품 혹은 유튜브에서는 내가 이전에 봤던 영상들이 여기에 해당하겠고, 플레이스토어의 경우 이미 깔려 있는 앱도 그렇겠다. 검색에서는 검색을 통해서 방문한 사이트 혹은 이전에 클릭한 것들 등이 해당이 되는데, 다시 살 확률이 높은 아이템들도 있고, 심지어 또 볼 확률도 꽤 높다. 여러 사연이 있는, 그 중에서도 가장 강력한 시그널을 가지고 있는 것들이기에 보통 특별하게들 취급한다.


서비스 제품에서는 대개 별도의 result / result block 으로 취급한다. My result 혹은 private result 라 불리고, 여러 가지 방식으로 드러내놓고 사용자에게 대개 어필한다. 구글 검색에서도 방문했던 사이트는 표시를 해 주기도 하고, 블럭으로 되어 있는 제품들은 친절하게 "당신이 이미 설치한 앱" 같은 설명을 붙여 준다. 별도의 result block 으로 규정되는 순간 다른 결과들과의 충돌은 피할 수 없게 된다. 특히 원래 있던 결과들이라고 하면 인위적인 랭킹에 노출되고, 그에 따른 penalty도 감수해야 하는 상황도 된다.


아슬아슬하지만 살짝 다른 과제로 예전에 구글 나우 등이 흥할 때 'my flights' 같은 쿼리에 별도의 result block 을 할당해 주던 과제가 있었다. 세상에 없는 내용을 보여 주는 것으로 기본적으로 구글 docs 같은 비검색 제품을 구글 검색의 일부로 담고 싶어 했던 과제였는데, 그래서 화끈하게 맨 위의 블록을 주었었다. 'moonshine' 이라 부르던 과제 이름이 멋있었고, 커버하고 싶었던 쿼리들, 어이없을 정도로 낮은 커버리지에도 불구하고 그것을 구현하기 위한 극악의 기술 난이도도 꽤 멋있었더랬다. 꽤 많은 것들이 이루어진 지금에 와서 생각해 보면 그런 걸 당시에 낭만이라고 했었을까 싶다.


초개인화


가끔씩 '초개인화' 라는 말들이 보인다. 거의 모든 경우 개인적인 견해로는 당연하게 마케팅 용 언어일 거라는 생각인데, 여러 서비스들 특히 LLM 기반으로 많은 일들이 벌어지고 있는 요즘, 개인적으로 '초개인화' 라는 말을 꽤 경계하는 편이다. 개인화는 이미 그 자체가 완성된 단어이기에, 하이퍼, 울트라 등 초월의 의미가 담겨 있는 과장을 개인적으로 불편하게 생각한다.


제품 단위에서 잘 된 개인화 혹은 초개인화는 어떤 것일까? 라는 질문은 각 제품의 본질에 닿아 있다는 생각이다. 넷플릭스, 유튜브, 각종 쇼핑 서비스들이 굳이 '개인화'라는 수식을 달고 있지 않은 것과 닿아 있다는 생각이다.


ps.

한국 IT 용어 이야기 시리즈를 재개하면서 이번 배치 혹은 시즌(?)에 다루고 싶었던 것들 중 마지막 용어이다. 이후는 잠시 쉬어 가며 많은 이야기들을 또 배운 후에 다시 시즌을 시작하자 싶다.



매거진의 이전글한국 IT 용어 이야기 (16) - 바이브코딩