2018.11.28 (수)

기상청 제공

학술기획

모으다, 찾다, 보여주다 검색엔진

바야흐로 네이버 검색창은 현대인의 백과사전이 됐고, 구글링은 현대인의 생존 기술이 됐다. 사람들은 모르는 단어가 있으면 네이버를 켜고, 자료를 찾기 위해 구글을 사용한다. 이는 일상에서 검색의 비중이 그만큼 커졌다는 것을 의미한다. 검색을 도와주는 검색엔진 역시 마찬가지다. 우리의 일상이 된 검색, 어떤 과정으로 이뤄지며, 검색엔진은 어떻게 발전하고 있을까?●

검색의 중요성

과거에 ‘정보 검색’은 정보를 수집·분류·축적하고 필요에 따라 이를 빼내는 작업을 의미했다. 그러나 웹 정보 검색이 활성화된 현대에 와서는 검색 대상이 되는 정보 자원을 분석·가공하여 데이터베이스 등의 저장매체에 축적하고 여기에서 원하는 정보를 찾아내는 과정을 의미한다. 즉 현재의 정보 검색은 단순히 축적된 데이터로부터 원하는 정보를 가져오는 과정뿐만 아니라 데이터를 분류·가공해 검색 이용자에게 보여주는 과정까지 포함하는 작업이다.
일례로 전자사전에서 ‘호랑이’를 검색하면 메모리에 있는 정보 중 호랑이의 정의, 생김새, 특징 등  호랑이와 관련된 정보를 추려 제공할 것이다. 하지만 네이버에서 ‘호랑이’를 검색하면 호랑이와 관련된 기사 동영상 댓글 등 웹상에서 호랑이와 관련된 정보를 모두 찾아 이를 분류·가공해 이용자에게 보여준다. 


검색엔진의 발전

검색엔진도 원래는 단순 텍스트 검색에 특화된 장치를 의미했다. 초창기 검색엔진은 말 그대로 메모리에 저장된 수많은 정보 중 검색어와 가장 비슷한 것으로 판단되는 정보를 검색 이용자에게 보여주는 방식이었다. 하지만 현재 검색엔진은 검색어와 문서를 비교하고 검색 이용자의 요구에 적합한 문서를 순위로 매기는 시스템으로 확장됐다.
웹 검색이 상용화되고 발전하면서 정보 검색과 검색엔진의 의미도 바뀌게 됐다. 한정된 메모리 속 데이터 정보에 비해 웹상 정보의 양은 방대하다. 그러다보니 검색 이용자에게 필요한 정보와 필요하지 않은 정보가 섞이기 쉽고 검증되지 않은 정보도 많다. 더불어 이용자들의 다양한 수요는 정보 검색 기술, 즉 검색엔진 발전을 불러왔다.


검색엔진의 작동과정

검색엔진은 우리가 원하는 정보를 어떻게 찾을까? 검색엔진은 검색결과로 나타낼 문서들을 검색 전에 미리 서버에 저장한다. 이를 위해 검색엔진은 가장 먼저 ‘크롤링(crawling)’을 진행한다. 크롤링이란 웹상에 존재하는 문서를 수집해 색인으로 저장시키는 기술이다. 색인이란 원래 정보에서 특정 정보만 용도에 맞게 추출한 것이다. 가령 이 기사에서 ‘웹사이트’라는 단어를 색인화한다면 서버에는 [‘웹사이트’라는 단어가 ‘검색엔진’ 기사의 A 번째, B 번째 줄에 위치해 있고, 총 X번 쓰였다]는 정보가 저장될 것이다. 검색엔진에 따라 더 많고 다양한 정보를 색인화할 수 있다.
검색엔진은 크롤링을 통해 서버에 저장할 웹사이트들을 찾는다. 이들은 특정 웹사이트를 찾은 후 그 웹사이트와 연결된 다른 웹사이트들을 찾는 방식으로 탐색 범위를 확장한다. 검색엔진은 이렇게 찾은 웹사이트를 색인화해 간단하고 특성화된 정보로 변형시킨 다음 이를 서버에 저장한다.
크롤링을 하는 프로그램을 ‘크롤러(crawler)’라고 한다. 크롤러의 일례로 구글은 ‘스파이더’라는 크롤러를 사용한다. 스파이더는 거미줄처럼 넓고 복잡한 웹상의 웹사이트들을 거미가 거미줄을 타듯 연결된 웹사이트 사이로 이동하며 새로운 웹사이트들을 찾는다. 구글의 경우 스파이더 등을 이용해 색인화한 웹사이트 데이터의 양이 1억 기가바이트가 넘는다.


검색엔진의 한계

간혹 웹사이트 중에는 크롤링이 되지 않거나 크롤링되기 힘든 웹사이트도 있다. 비공개 웹사이트이거나 연결된 웹사이트가 적은 웹사이트는 크롤러가 찾아내지 못하기도 한다. 또한 크롤링으로 검색되지 않도록 검색엔진 업체에 요청하는 웹사이트도 있다. 그래서 정확한 검색을 해도 특정 웹사이트가 결과로 표시되지 않는 경우도 종종 발생한다.
이제 이용자가 검색창에 검색어를 입력했다고 생각해보자. 검색엔진은 검색어 자체를 단어·어절 단위로 쪼개 검색어를 분석한다. 이후 검색엔진은 분석한 검색어와 기존 서버에 저장돼 있던 색인과 비교하며 해당 웹사이트에서 분석한 검색어가 얼마나 많이 나오는 지 조사한다. 검색엔진은 이 빈도수를 수학적 모델로 계산해 가장 유사도가 높은 웹사이트를 찾는다. 그러나 실제 웹상에서 이런 방식으로 검색한다면 결과는 기대했던 것과 거의 일치하지 않을 것이다. 웹상의 문서는 데이터베이스의 정형화된 문서와 달리 ▲언어 ▲표현방식 ▲질적 수준 등이 매우 다양하기 때문이다. 그래서 검색어에 부합하는 검색결과를 도출해도 그 안에서 실제 검색 이용자가 원하는 결과를 찾기는 매우 힘들다. 가령 검색창에 동물 ‘코끼리’를 찾기 위해 ‘코끼리’라는 단어를 검색해도 검색결과에서는 동물 코끼리와는 관련 없는 정보들이 나오고, 100페이지 정도를 넘겨야 동물 코끼리에 대한 문서가 나올 수도 있다.


새로운 기술의 등장

구글은 이런 문제를 해결하기 위해 ‘페이지랭크’라는 기술을 도입했다. 논문의 인용 분석을 통해 많이 인용된 논문을 좋은 논문으로 간주하듯, 페이지랭크는 웹사이트에 연결된 링크가 많을수록 중요한 웹페이지로 간주한다. 또 웹페이지 하나의 중요도만 조사하는데 그치지 않고, 그 웹사이트와 연결된 다른 웹사이트의 중요도까지 조사·비교해 검색결과에 대한 신뢰도를 높였다. 페이지랭크는 이 중요도에 따라 웹사이트의 순위를 매긴 후 가장 중요한 결과부터 순서대로 이용자에게 보여준다. 페이지랭크를 통해 구글 검색엔진은 원하는 정보를 매우 정확하게 검색할 수 있게 됐고, 이는 곧 대부분 웹 검색엔진의 기반이 된다.
세계에서 가장 유명한 검색엔진이 앞서 언급한 구글이라면, 우리나라에서 가장 유명한 검색엔진은 네이버일 것이다. 네이버는 구글의 페이지랭크와 비슷한 검색 방식을 사용한다. 다만 검색어에 따른 결과의 중요도 순위를 집중적으로 파고드는 구글과 달리 네이버는 검색과정에서 검색 이용자의 정보를 많이 쓴다는 것이 특징이다. 네이버는 검색 이용자의 검색 패턴을 서버에 저장하고 분석한다. 즉 이용자가 어떤 검색어를 얼마나 많이 검색했는지, 해당 검색어에 대한 검색 결과를 얼마나 오래 봤는지 등을 조사한다. 또 구글이 중요도에 따라 목록 형식으로 결과를 보여준다면, 네이버는 ▲사전 ▲뉴스 ▲블로그 등 검색 결과를 여러 분류로 묶어 나타낸다.
검색엔진이 구글과 네이버 등 많은 회사들에 의해 발전하자 페이지랭크의 맹점을 이용해 자신의 웹사이트를 홍보하는 사례도 있다. 여기서 웹사이트 주인은 본인의 웹사이트에 연관 웹사이트 링크를 많이 걸거나 같은 단어를 반복적으로 넣어 색인화에서의 빈도 수치를 높이는 방식으로 페이지랭크의 순위를 높인다. 따라서 특정 검색어를 입력하면 항상 본인의 웹사이트가 상위권에 노출되도록 하는 방식이다. 이런 방법을 ‘검색엔진 최적화’라고 부르며, 실제 검색엔진 최적화와 관련된 많은 노하우들이 웹사이트 주인들 사이에서 공유되고 있다. 그러나 검색엔진 최적화는 자칫 무분별한 링크의 남발을 통해 스팸문자와 같이 불필요한 검색결과를 유도할 수도 있다.


검색엔진의 미래

정확한 검색을 하려면 알고자 하는 것을 정확한 단어로 표현하는 등 어느 정도 기술이 필요하다. 즉 찾고자 하는 것이 추상적이거나 포괄적이라면 정확한 검색이 어렵다. 예를 들어 “검색엔진이란 무엇인가?”라는 질문에 현 검색엔진은 ▲개념 ▲역사 ▲활용 등의 내용을 찾아줄 수는 있지만, 이들은 모두 개별화된 문서이므로 검색 이용자가 직접 읽고 스스로 이해해야 한다. 이것이 현 검색엔진의 한계다.
구글에서는 현재 이를 해결하기 위해 검색엔진에서 한발 더 진화한 기술인 인공지능 기술을 개발하고 있다. 구글에서 원하는 AI의 조건은 다음과 같다.  우리가 흔히 이야기하는 ‘알파고’와 같이 특정 분야(바둑)에만 국한되지 않고 사람처럼 모든 문제를 스스로 해결할 수 있어야 한다. 또 단순한 문서들의 나열이 아닌, 검색결과를 스스로 병합하고 조직화해 인간이 쉽게 이해하고 활용할 수 있도록 만들어야 한다. 양기덕 교수(사회대 문헌정보)는 “웹 사용자들이 직접 정보를 정리해놓은 위키피디아 사이트를 미래에는 검색엔진이 직접 문서를 통합해 만들 수 있어야 한다”고 말했다.

자문

양기덕 교수(사회대 문헌정보)


참고자료

이수상,『정보검색의 세계』,
한국도서관협회, 2011


유동현 기자/ydh17@knu.ac.kr

관련태그

1622호



포토/만평