날짜: 2008년 8월 11일 월요일

일전에 우디 만버(Udi Manber) 부사장이 구글 검색 품질(search quality)팀을 소개한바 있습니다. 그리고 최근 블로그를 통해 구글의 랭킹 기술에 대해 이야기를 나눈바 있습니다. 구글 웹 검색의 핵심은 웹 문서 랭킹기술에 있지만 여러분의 검색 경험 자체는 훨씬 더 광범위하고 폭넓게 작용합니다. 그래서 이번 시간에는 여러분의 검색 경험을 지속적으로 개선하기 위해 지키고 있는 업무 원칙과 이런 원칙들이 실제 검색과정에 어떻게 적용되고 있는지를 설명 드리고자 합니다. 또한 저희가 검색 경험 품질을 보장하기 위해 거치는 엄격한 실험 과정에 대해서도 설명해 드리겠습니다. 그리고 다음 블로그에서는 현재 진행중인 일부 실험에 대해서도 소개해 드릴 예정입니다.

먼저 제 소개를 드리면 저는 벤 고메스(Ben Gomes)이며 1999년부터 구글에서 검색 분야를 담당하고 있습니다. 주로 검색 품질과 관련된 업무를 맡고 있지요. 저는 그 동안 운 좋게도 웹 크롤링에서 랭킹에 이르기까지 검색 엔진의 다양한 측면에 기여할 수 있었습니다. 최근에는 검색 인터페이스와 검색기능 엔지니어링 업무를 책임지고 있습니다.

제가 친구들에게 구글에서 검색 사용자 인터페이스 업무를 담당하고 있다고 말하면 한결같이 "무슨 일을 해? 항상 똑같은데?”라는 반응을 보이더군요. 그러면서 친구들은 저를 의심스런 눈초리로 바라보면서 빠르고 심플한 지금의 구글이 좋으니 괜히 건드려서 망가뜨리지 말라고 충고를 해주곤 합니다. 구글의 웹 페이지가 훌륭하지만 이렇게 만든다는 것이 얼마나 어려운 일인지에 대해서는 잘 모르실 것 입니다.

저희의 주된 목표는 웹 검색에서 가급적 빨리 사용자가 원하는 웹 페이지로 이동할 수 있도록 해주는 것입니다. 검색은 그 자체가 목적이 아니라 단순히 거쳐야 하는 통로에 불과합니다. 당연한 목표로 보일지도 모르겠지만, 이러한 목표는 사용자가 그 사이트에 얼마나 오래 머물러 있는가를 성공의 기준으로 삼고 있는 다른 사이트들과는 근본적으로 다른 차별화된 검색엔진을 결정짓는 핵심요소입니다. 구글은 사용자들이 얼마나 빨리 구글을 떠나는가(물론 떠날 때는 만족스러운 결과를 가지고 떠나기를 바랍니다!)를 기준으로 웹 검색의 성공을 평가하고 있습니다. 여러분이 가급적 빨리 필요한 정보를 얻을 수 있도록 하기위해 다음과 같은 몇 가지 원칙을 지키고 있습니다.

페이지는 작게: 페이지가 작으면 다운로드와 브라우저 디스플레이 속도가 더욱 빨라집니다. 이런 차원에서 구글은 페이지의 미적 디자인을 미니멀리즘 시각에서 다루고 있습니다. 인터페이스를 필요 이상으로 꾸미는 것은 사용자에게는 별다른 혜택을 주지 못하면서 페이지만 느리게 만듭니다.

알고리듬은 복잡해도 화면은 단순하게: 많은 검색기능들은 복잡한 알고리듬과 방대한 양의 데이터 분석이 지원될 때 뛰어난 업무 수행이 가능합니다. 따라서 이런 복잡성은 무대 뒤로 숨기고 사용자의 눈에는 간단명료하고 직관적으로 알 수 있는 인터페이스로 만드는 것이 기술입니다. 특히 철자 정정, 인용구, 사이트 링크, 상세 검색 등을 수행하려면 알고리듬이 그만큼 복잡해야 하고 지속적으로 이를 개선하기 위해 노력해야 합니다. 사용자의 관점에서 검색기능은 자기도 모르는 사이에 향상되어 있는 것입니다.

기능은 모든 국가에서 동일하게: 검색기능은 알고리듬과 구현방식이 언어와 국가에 상관없이 어디서든 동일하게 작동할 수 있도록 설계되어야 합니다. 이는 띄어쓰기가 거의 없는 중국어 검색어나 오른쪽에서 왼쪽으로 글자를 쓰는 히브리어/아랍어 검색어를 다루는 철자 정정 문제를 생각해보면 이해가 되실 것입니다 (흥미롭게도 이 같은 문제는 선도자들이 갖는 고난의 한 예라고 생각됩니다. 바위에 조각을 할 때 오른손에 망치를 계속 잡고 있는 것이 작업이 더 수월한 것처럼 구글도 남들처럼 가만히 있었으면 어려운 고민을 하지 않았을 것입니다!).

데이터에 기반한 의사결정-실험 그리고 또 실험: 저희는 작업한 내용이 올바른지를 검증하기 위해 반드시 직접 실험을 해보고 있습니다. 설계는 아주 그럴듯한데 테스트 결과는 그렇지 못한 경우도 있습니다.

여기서 근본적인 긴장관계가 형성됩니다. 예를 들어 모든 검색결과에 대해 더많은 텍스트(혹은 이미지)를 보여주면 사용자는 가장 적합한 결과를 선택할 수 있는 더 큰 가능성을 가질지도 모릅니다. 하지만 검색결과 페이지에 지나치게 정보가 많으면 그만큼 다운로드나 시각적인 처리과정에 많은 시간이 소요됩니다. 따라서 저희는 결과 페이지에 추가하는 각각의 정보를 매우 신중하게 고려해봅니다. 사용자가 다룰만한 가치있는 정보만 추가되어야 하기 때문입니다. 이 같은 원칙은 사용자의 모든 검색 경험, 즉 검색어 입력부터 결과 페이지의 열람, 그리고 연장 검색까지의 전 과정에 걸쳐 적용됩니다.

사용자의 검색과정은 검색어 입력 단계부터 시작됩니다. 흔히 검색과정 중 정확한 철자를 몰라 고민합니다. 겉보기에는 단순한 것 같은 철자 정정 기능이 기술적으로는 매우 복잡합니다. 한 예로 일반 영어사전 어디에도 브리티니 스피어스의 올바른 철자가 수록되어 있지 않습니다(정작 브리트니는 자신의 이름이 이 기능의 대표적인 예로 사용된다는 사실은 모를 것입니다). 저희는 웹상에서 “실제 사용되는 단어”가 무엇이고 이에 대한 철자 오류에는 어떤 것들이 있는가를 결정하기 위해 수십억개의 페이지와 검색어 로그를 분석합니다. 따라서 1초도 안돼 여러분에게 검색어의 올바른 철자를 제시하는 구글의 시스템은 여러분이 실제 찾고자 하는 방대한 양의 가능성 있는 단어를 모두 고려해 (이는 인간이 이제까지 만든 그 어떤 사전보다도 광대한 것입니다) 여러분이 진짜 원하는 검색어를 결정해서 보여주는 것입니다. 흔치 않은 일이지만 사용자가 정말로 무언가 다른 것을 뜻하는 단어를 입력했다고 확신할 때는 검색결과를 변형합니다: 페이지 상단에 나오는 검색결과로부터 관심을 돌리기 위해 노력합니다. 여러분의 눈높이 위치에 맞춰 철자 정정 표시를 눈에 잘 띄는 빨간색으로 제시하는 것이지요. 또한 검색어 철자 외에는 페이지에 빨간색 표시가 전혀 없도록 하고 있습니다! (철자보다 중요한 내용이 있다면 빨간색으로 표시할 수도 있겠지만 현재까지는 없습니다). 철자 정정과 관련한 알고리듬은 계속적으로 향상되고 있습니다. 더욱 많은 언어에 적용이 되고 있으며, 철자 오류 검출 능력도 예전보다 더욱 향상되었습니다. 여러분의 검색어가 올바른 철자로 입력되도록 하는 것은 너무나 중요하기 때문에 페이지 중간에도 정정된 철자가 나오도록 하는 방법도 고려하고 있습니다(페이지 상단과 하단에 빨간색 표시를 한 텍스트를 못 봤을 경우에 대비하는 것이지요!).

사용자의 검색어를 바로 잡았다면 다음 단계는 사용자가 검색 리스트에서 원하는 페이지를 선택하도록 하는 작업입니다. 각 결과에 대해 저희는 페이지 제목 그리고 URL과 함께 각 페이지에서 발췌한 두 줄의 본문내용을 미리 보여드립니다. 적절한 제목이 없는 페이지들은 사용자들이 종종 무시하는 경향이 있습니다. 최근 변화 중 하나는 HTML 제목이 지정되지 않은 페이지에서 적절한 제목을 추출해 오는 경우가 있었습니다. 페이지를 만든 작성자가 의도한 제목을 보여주기 위해 저희는 해당 페이지의 HTML을 분석해 페이지 제목을 결정합니다. 이렇게 하면 사용자가 적절한 제목이 없다는 이유로 페이지를 지나칠 가능성이 줄어듭니다. 페이지 제목 다음에는 본문 내용의 미리보기가 나옵니다. 미리보기는 구글 초창기 시절의 혁신을 잘 보여주는 것입니다. 당시 다른 검색 엔진들은 해당 웹 페이지에 있는 문장의 처음 두 줄만을 보여주었습니다. 구글은 그렇게 하지 않고 사용자가 찾는 검색어가 실제 나오는 페이지의 일부분을 보여주었습니다(정보검색 전문가들은 이것을 "문맥 검색어(keywords-in-context)"라고 부릅니다). 문맥 검색어를 보여주는 것은 보기에도 간단하고 실제로 더 간결한 형태의 인용문을 제시할 수 있는 방법인 동시에 사용자가 적절한 페이지를 선택하는데 훨씬 더 유용합니다. 이러한 단순함의 저변에는 복잡성이 존재합니다: 인용문을 제시할 때 저희는 처음 나오는 몇 줄만을 보여주는 대신 가장 연관성이 높은 부분(사용자의 검색어를 포함하는 부분)을 보여주기 위해 각 결과 페이지의 실제 텍스트를 검토해야 합니다.

저희는 알고리듬을 통해 해당 페이지가 적절하게 섞이도록 미리보기의 인용문을 개선시켜 왔습니다. 변화는 상세한 내용에서부터 – 결과에 나오는 검색어의 동의어까지 강조하고 있습니다 – 좀더 명확한 것까지 매우 다양하게 나타납니다. 아래 예에서 볼 수 있듯이 사용자가 "arod"를 입력하면 구글은 Alex와 Rodriguez를 굵은 글씨로 표시합니다. 이는 사용자가 알렉스 로드리게스를 의미했을 가능성이 높다는 구글의 분석에 따른 결과입니다.











더 명백한 예로 아래에 날짜가 표시되어 있는 페이지를 추출하여 보여드립니다. 각 페이지에서는 날짜가 제각각의 형식으로 쓰여 있지만 구글은 날짜별로 일관된 형태의 결과를 추출해서 제공합니다. 따라서 사용자는 좀더 쉽고 편리하게 각 페이지를 훑어볼 수 있습니다.
















대표적인 사용자 니즈로 꼽히는 네비게이션 검색어(Navigational Query)의 경우 – 즉 사용자가 알고 있는 웹 사이트의 주소를 입력하는 검색어 - 구글은 단축 링크를 제공합니다(이를 사이트링크(sitelink)라고 부릅니다). 이러한 사이트링크는 사용자가 특정 사이트의 주요 섹션으로 바로 이동할 수 있도록 해주며 위에서 언급한 대부분의 원칙들 또한 그대로 적용됩니다; 해당 페이지에 몇 개의 텍스트만을 추가하는 것으로 상위 검색 결과에 추가되는 정보입니다.










예를 들어 HP의 홈페이지에는 2단계 메뉴시스템으로 구성되어 있으며 무려 60여 개의 링크가 있습니다. 구글의 알고리듬은 서로 상이한 신호의 조합을 통해 여러분이 가장 방문하고 싶어할 가능성이 높은 상위 링크들을 골라냅니다.

상위 검색 결과에서 여러분이 찾고자 하는 것을 찾지 못할 경우에는 어떻게 해야 할까요? 그럴 때는 여러분께서 또 다른 검색어를 입력해보셔야 할 것입니다. 저희는 이 과정에서도 결과 페이지의 하단에 일련의 검색어를 추천해 사용자의 검색 작업을 돕고 있습니다 – 비록 여러분이 원하는 검색어를 정확하게 제시하지 않더라도 힌트를 제시함으로써 정확한 검색 결과로 이어질 수 있는 성공 가능성을 높이고 있습니다. 추천 검색어는 페이지 하단에 위치하기 때문에 사용자들에게 방해요인이 되지 않으면서도 검색 결과가 사용자의 정보에 대한 욕구를 충족시키지 못할 경우 도움을 주고 있습니다.

검색 경험 향상을 위해 그 동안 해왔던 많은 변화들-상세한 내용에서부터 좀더 명확한 것까지-과 몇 가지 핵심적인 측면들에 대해 여러분들께 말씀 드렸습니다. 검색 경험에 있어 저희가 이 같은 변화를 성공적으로 달성했다는 것을 어떻게 알 수 있을까요? 저희는 변화된 내용을 로 여러분들과 공유해 평가하고 있습니다! 준비하고 있는 변화들을 일부 사용자들에게 보여주고, 이런 변화가 사용자의 검색 경험에 도움이 되는지 해가 되는지를 평가하고 있습니다. 성공 혹은 실패를 결정하는 평가 기준은 여러 가지가 있습니다. 개선점을 측정하는 과정은 많은 잠재적 주의점을 수반한 과학 그 자체입니다. 실험 방법은 여러 가능성을 고려할 수 있도록하는 동시에 가장 좋은 평가를 받은 내용만이 실제 런칭으로 이어질 수 있도록 합니다. 하나의 기능을 런칭할 때마다 저희는 외부에 알려지지 않은 수많은 실험을 실시해 왔습니다.

그럼 제가 처음에 언급한 질문에 답을 해보겠습니다: 저희는 실제 구글의 결과 페이지를 지속적으로 바꾸고 있고 오랜 시간 동안 그렇게 해왔습니다. 좋은 기능을 건들여서 괜히 더 복잡하게 만들고 있지 않습니다. 만일 더 복잡해진다면 여러분이 가만히 계시지 않으시겠지요.

다음 블로그에서는 저희가 실제 가동하는 실험 내용과 이를 통해 구글이 얻은 교훈에 대해 소개해 드리겠습니다.

작성자: 수석 엔지니어 벤 고메스(Ben Gomes)