ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [검색 엔진 프로젝트] 1. 구글의 검색엔진 알고리즘
    Search Engine 2023. 3. 19. 15:41
    728x90

    Googling이라는 단어를 만들 정도로 압도적인 검색량과 지식 확보에 도움이 되는 구글.

    최근 MicroSoft 사의 ChatGPT 등장과 함께 질세라 Google도 구글의 Bard를 출시했다고 하는데, 이 모델은 구글 검색엔진이 추가된다고 발표해 세간의 이목을 끌고 있다. 

    오늘은 이 검색엔진 알고리즘을 알아보기로 한다.

     

    구글 검색엔진은 1998년 PageRank 알고리즘으로부터 지속적인 연구개발로, 수백가지의 알고리즘과 1년에도 여러 번 세부검색 알고리즘이 바뀌고 있다. 구글에서 공식적으로 발표한 검색 알고리즘은 다음과 같다.

     

    "검색어가 몇 번 포함되어 있는가?"

     

    "검색어의 위치(EX. 제목, Snippet, 문장에서의 위치 등)"

     

    "2개 이상의 단어를 검색했을 떄 검색어와 같이 연결되어 나오는가?"

     

    "해당 페이지가 권위가 있는 웹사이트인지, 혹은 품질이 낮거나 스팸 사이트인지"

     

    #사이트의 권위를 파악할 때 Domain Authority, Page Authority, Trust flow, Citation flow 확인,

    스팸 사이트 확인할 때는 Moz 사의 Spam Score 확인

     

    검색 순위를 결정하는 데에는 수백가지 요소들이 복합적으로 작용한다. 검색 지역에 따라 결과가 다를 수 있으며, 페이지 업로드 시점, 최근에 만들어진 페이지가 상위노출 가능성이 높다.

     

    구글 검색 알고리즘의 원리

    구글은 사용자가 원하는 정보를 찾게 도움을 주기 위해 검색순위 시스템을 도입하였다. 시간이 갈수록 인터넷상의 정보가 많아지고 있어 구글은 사용자의 의도에 맞는 검색순위를 제공한다.

     

    검색어의 특정 단어를 분석

     구체적인 정보를 원하는지, 아니면 넓은 범위의 정보를 원하는지 파악한다. 또 최신 트렌드에 맞게 특정 순위 혹은 현재 주식 정보 등 검색의도에 맞는 정보를 제공한다

     

    검색어와 연관성이 높은 페이지를 파악

     특정 키워드를 포함한 페이지를 중심으로 사진, 동영상과 같은 파일이 있는지 확인하고 연관 검색어가 해당 페이지에 존재하는지 확인한다.

     

    해당 웹페이지가 사용자에 친화적인지 판단

     웹사이트의 속도, 모바일이나 태블릿 화면에 맞게 변화하는지 확인한다. 따라서 웹사이트 제작 시 반응형으로 사이트를 만들어야 한다.

     

    위치나 기존 검색기록 정보를 토대로 사용자에 맞는 페이지를 제공

     

    검색 알고리즘 변경의 주요 목적

    - 스팸 웹사이트 필터링

    - 사용자의 검색의도를 더 지능적으로 이해

     

    'New York', 'New York Times', 'New York Times Square' 는 단어 상으로 큰 차이가 없으나 의미에 대한 검색결과는 극명하게 달라지기에, 세 가지 검색에 대한 적절한 결과가 요구된다.

     

    성공적인 검색엔진을 개발하기 위해서는 다양한 요소가 필수적이다.

     

    웹 수집

    접근 가능한 모든 웹사이트에 대한 정보 수집

    랭킹 알고리즘

    웹 검색의 결과를 어떠한 기준으로 어떠한 정보를 먼저 보여줄 것인가에 대한 기준. 구글은 약 200여 가지의 우선순위 부여 알고리즘을 활용한다.

    사용자 데이터

    사용자가 검색한 이력을 바탕으로 사용자의 검색의도를 파악하고 검색엔진의 보완점을 도출

     

    Ex. Audrey Fino는 인물의 이름이나 Fino가 이탈리아어로 Fine이기 떄문에 이탈리아 웹페이지가 계속 검색되는 문제 발생, 이때 사용자 데이터에서 추출하여 검색엔진 업데이트 시 반영

     

    컴퓨팅 파워

    웹 페이지의 저장과 페이지들 간의 연산, 사용자 데이터 저장 및 분석 등 막대한 규모의 컴퓨팅 파워 요구

     

    PageRank

    1996년 구글 창업자 Larry Page와 Sergey Brin이 개발했으며, 웹페이지의 중요도를 결정하는 알고리즘이다. 구글이 최초로 적용한 검색 알고리즘이라는 데 그 의의가 있으며, 구글의 검색 메커니즘에는 PageRank가 존재하나 구글 검색에서 사용하는 약 200여 가지의 검색 알고리즘 중 하나로 자리하고 있다.

     

    PageRank는 '중요한 웹 사이트는 다른 웹 사이트로부터 많은 링크를 받는다' 라는 가정 아래 특정 웹 페이지의 rank를 부여하는 알고리즘이다. rank는 0과 1사이의 확률값인데, 예로 A 웹 페이지가 0.5의 rank 값을 갖는다면 그 의미는 어떤 사람이 랜덤하게 링크를 클릭하여 50% 확률로 A 웹 페이지로 이동하는 것을 뜻한다. 여기에 댐핑 팩터(Damping Factor)를 도입해 다른 웹페이지로의 링크가 없는 웹페이지에 도달할 경우, 그 다음은 모든 웹페이지를 접근할 수 있는 확률을 부여한다. PageRank는 웹페이지의 관계와 댐핑 팩터를 고려한 정방행렬의 최대 고유치(maximum eigen-value)에 대한 고유벡터(eigenvector) 값으로 구할 수 있다.

     

    구글의 검색엔진 알고리즘은 양질의 검색결과를 제공하기 위해 인공지능을 활용, 사용자의 검색의도를 파악하고 웹사이트의 속성과 질을 분류한다.

     

    시사점

    구글 검색엔진은 단순히 PageRank로만 이루어진 것이 아닌 스팸 웹 사이트를 걸러내고, 검색 키워드에서 검색 의도를 분석 등 최적의 결과를 제공하기 위해 1998년 이후 수백번의 업데이트를 진행하였다. 최근 구글 검색엔진 업데이트의 큰 방향은 인공지능이기에, 검색엔진에 인공지능이 어떤 역할을 하는지 이해하고 주목해야 할 필요가 있겠다.

    728x90
Designed by Tistory.