관련성 피드백과 검색어 확장 - 부스트키워드 블로그 커버 이미지
검색엔진 원리
2026년 10월 21일

검색이 스스로 똑똑해지는 원리: 관련성 피드백과 검색어 자동 확장

부스트키워드 팀

부스트키워드 팀

검색 데이터로 키워드의 검색량, 트렌드, 검색 의도를 파악하고 마케팅 의사결정을 돕는 도구 부스트키워드를 만듭니다.


검색을 하다 보면 처음 입력한 검색어로는 원하는 결과가 딱 맞게 나오지 않는 경우가 많습니다. 그런데 검색 결과 중 마음에 드는 것을 클릭하거나, 몇 가지 결과를 골라 표시하기만 해도 다음 검색 결과가 한층 더 정확해지는 경험을 해본 적이 있을 것입니다. 이런 일이 가능한 이유는 검색엔진이 사용자의 반응을 바탕으로 검색어 자체를 스스로 조정하는 기술을 활용하기 때문입니다. 이 글에서는 이러한 관련성 피드백(Relevance Feedback)과 검색어 자동 확장(Query Expansion)의 원리를 살펴봅니다.

한 번의 검색으로 완벽한 결과를 얻기 어려운 이유

사용자가 입력하는 검색어는 대개 짧고 모호하다

사람들이 검색창에 입력하는 검색어는 대부분 한두 단어에서 서너 단어 정도로 매우 짧습니다. 하지만 그 짧은 단어들 뒤에는 훨씬 더 복잡하고 구체적인 의도가 숨어 있는 경우가 많습니다. "제주도 맛집"이라는 검색어 하나만 보아도, 흑돼지를 찾는 것인지, 해산물을 찾는 것인지, 가성비 좋은 곳을 찾는 것인지 검색엔진은 정확히 알 수 없습니다.

"한 번 검색하고 끝"이 아니라 "대화하듯 개선한다"는 발상

그래서 정보 검색 연구자들은 검색을 단 한 번의 질문과 답으로 끝내는 대신, 사용자와 시스템이 서로 정보를 주고받으며 점점 더 정확한 결과로 다가가는 상호작용의 과정으로 바라보기 시작했습니다. 이러한 발상에서 등장한 대표적인 기술이 관련성 피드백입니다.

관련성 피드백(Relevance Feedback)이란 무엇인가

사용자가 "이 결과가 마음에 든다"고 알려주면 벌어지는 일

관련성 피드백은 사용자가 처음 검색 결과 중 몇 개를 골라 "이 결과들은 내가 원하던 것과 비슷하다"고 표시해주면, 검색엔진이 이 정보를 활용해 검색어를 스스로 조정한 뒤 다시 검색을 수행하는 방식입니다. 사용자가 직접 검색어를 다시 입력하지 않아도, 시스템이 사용자의 의도를 더 정확히 파악해서 개선된 검색 결과를 보여줄 수 있습니다.

로키오(Rocchio) 알고리즘: 마음에 든 결과 쪽으로 검색을 이동시키기

이 과정을 대표하는 방법이 로키오(Rocchio) 알고리즘입니다. 검색어와 문서들을 모두 앞서 다룬 벡터 공간(TF-IDF 등으로 표현된 벡터) 위의 점으로 나타낸다고 할 때, 로키오 알고리즘은 사용자가 관련 있다고 표시한 문서들의 위치 쪽으로 원래의 검색어 벡터를 조금씩 이동시키고, 관련 없다고 표시한 문서들의 위치로부터는 멀어지도록 조정합니다. 이렇게 조정된 새로운 검색어 벡터로 다시 검색을 수행하면, 사용자가 원했던 결과에 더 가까운 문서들이 상위에 나타나게 됩니다.

간단한 예제로 이해하는 관련성 피드백

처음 검색 결과 중 일부를 '관련 있음'으로 표시하는 상황

"제주도 맛집"이라고 검색했더니 흑돼지 맛집, 해산물 맛집, 카페 정보가 뒤섞여서 나타났다고 가정해봅시다. 사용자가 이 중 흑돼지 맛집 관련 결과 두세 개만 골라 "관련 있음"으로 표시합니다.

표시된 결과의 특징을 반영해 검색어(벡터)를 조정하는 과정

이렇게 표시된 문서들을 살펴보면, 이 문서들에는 공통적으로 "흑돼지", "근고기", "구이" 같은 단어들이 자주 등장한다는 특징을 발견할 수 있습니다. 로키오 알고리즘은 이러한 단어들에 더 높은 가중치를 부여하는 방향으로 원래의 검색어("제주도 맛집")를 조정합니다. 그 결과 다음 검색에서는 실제로는 검색창에 입력하지 않았던 "흑돼지"라는 개념까지 반영된, 더 사용자의 의도에 가까운 결과가 나타나게 됩니다.

사용자가 직접 표시하지 않아도 되는 방법: 암묵적 피드백과 유사 관련성 피드백

클릭, 체류 시간 같은 간접적인 신호 활용하기

사용자에게 매번 "이 결과가 관련 있습니까?"라고 직접 물어보는 것은 번거로운 일이라, 실제로는 이러한 명시적인 표시 없이도 사용자의 행동을 간접적인 신호로 활용하는 방법이 널리 쓰입니다. 사용자가 어떤 검색 결과를 클릭했는지, 그 페이지에 얼마나 오래 머물렀는지 등의 행동 데이터를 바탕으로, 실제로 표시하지 않아도 마치 관련성 피드백을 받은 것처럼 검색 결과를 개선해나가는 방식입니다. 이를 암묵적 피드백이라고 부릅니다.

상위 결과를 일단 관련 있다고 가정하고 검색어를 보정하는 방법

또 다른 방법은 사용자의 어떠한 반응도 기다리지 않고, 처음 검색했을 때 상위에 나타난 결과 몇 개를 일단 관련 있는 문서라고 가정해버리고, 이를 바탕으로 곧바로 검색어를 보정하는 방식입니다. 이를 유사 관련성 피드백(Pseudo Relevance Feedback)이라고 부릅니다. 실제 사용자의 판단을 거치지 않기 때문에 정확도가 다소 떨어질 수 있지만, 사용자의 추가적인 입력 없이도 검색 결과를 자동으로 개선할 수 있다는 실용적인 장점이 있습니다.

검색어 자동 확장(Query Expansion)이란 무엇인가

사용자가 입력하지 않은 단어까지 검색에 함께 포함시키기

검색어 자동 확장은 관련성 피드백과 비슷한 목표를 가지지만, 조금 다른 방식으로 접근합니다. 사용자가 입력한 검색어에 의미적으로 관련된 다른 단어들을 미리 준비된 자료를 바탕으로 자동으로 함께 추가해서 검색을 수행하는 방식입니다.

동의어 사전, 연관 검색어를 활용하는 방식

예를 들어 "자동차"라는 검색어가 입력되면, 미리 구축된 동의어 사전이나 자주 함께 검색되는 단어 통계를 활용해 "승용차", "차량" 같은 관련 단어까지 함께 검색에 반영할 수 있습니다. 이렇게 하면 사용자가 미처 입력하지 않은 표현을 사용한 문서까지 검색 결과에 포함시킬 수 있습니다.

실제로 어디에 쓰일까

포털 사이트의 "연관 검색어", 쇼핑몰의 "이런 상품은 어때요"

포털 사이트에서 검색 후 하단에 나타나는 연관 검색어 목록이나, 쇼핑몰에서 상품을 검색했을 때 함께 제시되는 관련 상품 추천에는 앞서 설명한 검색어 확장이나 사용자 행동 데이터를 활용한 기법들이 결합되어 있습니다.

검색 결과를 다시 클릭하며 점점 원하는 정보에 가까워지는 경험

사용자가 검색 결과를 살펴보고, 다시 다른 검색어로 검색하거나 연관 검색어를 클릭해 나가는 일련의 과정 자체가, 넓게 보면 관련성 피드백이 실제 서비스에서 자연스럽게 구현된 형태라고 볼 수 있습니다.

정리하며

관련성 피드백과 검색어 자동 확장은 모두 "짧고 모호한 검색어만으로는 사용자의 진짜 의도를 한 번에 완벽하게 파악하기 어렵다"는 문제를, 사용자의 반응이나 기존 데이터를 활용해 점진적으로 보완해나가는 기술입니다. 이러한 기술 덕분에 우리는 검색어를 한 번만 입력해도, 혹은 결과를 클릭하는 자연스러운 행동만으로도 점점 더 원하는 정보에 가까이 다가갈 수 있게 됩니다.

Q.관련성 피드백과 자동완성은 어떻게 다른가요?

A.자동완성은 검색어를 입력하는 과정에서 아직 완성되지 않은 단어를 미리 예측해서 제안하는 기능이고, 관련성 피드백은 검색이 이루어진 이후에 그 결과에 대한 반응을 바탕으로 검색 자체를 개선하는 기술입니다. 서로 다른 시점에 작동하는 별개의 기술입니다.

Q.검색어 자동 확장이 오히려 엉뚱한 결과를 보여줄 때도 있나요?

A.그렇습니다. 검색어에 자동으로 추가되는 관련 단어가 사용자의 실제 의도와 맞지 않을 경우, 오히려 검색 결과의 정확도가 떨어질 수 있습니다. 그래서 실제 시스템은 확장되는 단어의 관련성을 신중하게 평가하고, 지나치게 광범위한 확장은 피하도록 설계하는 경우가 많습니다.

Q.이 기술은 일반 사용자도 체감할 수 있는 기능인가요?

A.많은 검색엔진이 이러한 기술을 사용자가 직접 인식하지 못하는 방식으로 배경에서 자동으로 적용하고 있습니다. 다만 몇몇 서비스에서는 검색 결과 옆에 "이 결과들이 도움이 되었나요?" 같은 형태로 사용자의 명시적인 피드백을 직접 요청하는 기능을 제공하기도 합니다.

Written by

부스트키워드 팀

부스트키워드 팀

검색 데이터로 키워드의 검색량, 트렌드, 검색 의도를 파악하고 마케팅 의사결정을 돕는 도구 부스트키워드를 만듭니다.