Search Engine
-
[Search Engine] PageRankSearch Engine 2023. 4. 30. 23:00
PageRank 알고리즘은 세르게이 브린과 래리 페이지가 쓴 논문 에서 처음 나왔다. 앞선 포스트에서 구글은 검색엔진을 구현하는 데 수백여 가지의 알고리즘을 사용하지만 근본적인 알고리즘은 PageRank라고 할 수 있다. PageRank 알고리즘은 페이지 간 중요도를 웹페이지 간 연결관계에 기반한다. 학술지 논문을 생각해보자. 논문이 공신력이 있고 전문성과 신뢰도가 높을 수록 그 주제에 관련된 타 논문들에서의 인용횟수는 증가할것이다. 검색 엔진도 마찬가지로, 검색 결과 나타난 페이지들에 대해 특정 페이지에 대한 링크가 많이 들어가게 된다면 그 페이지는 검색하고자 하는 주제에 핵심적인 내용을 담고 있다고 할 수 있다. 주요 내용 여기서 PR은 PageRank를, d는 Damping Factor, C는 괄호..
-
[검색 엔진] Python + Django + ElasticSearch 활용 검색 엔진 만들기Search Engine 2023. 4. 1. 01:11
데이터 파이프라인 실습을 하려고 했지만 문제가 발생(..)해 우선 실습 완성 경험을 만들어보고자 검색엔진을 만들어보려고 한다. ※ 너드팩토리 님의 블로그(https://blog.nerdfactory.ai/2019/04/29/django-elasticsearch-restframework.html)를 참고해 실습을 진행하였다. Django Django는 Python 기반의 웹 프레임워크로, 미리 만들어진 강력한 라이브러리들을 보유하고 있어 좀 더 쉽고 빠른 백엔드 서버 구축이 가능해진다. ElasticSearch Apache Lucene 기반으로 개발된 오픈소스 분산 검색엔진으로, 자동완성, 다국어 검색, 철자 수정, 미리 보기 등 Lucene의 강력하고 풍부한 기능을 대부분 지원한다. 특히 기존 DBMS에..
-
[검색 엔진 프로젝트] 1. 구글의 검색엔진 알고리즘Search Engine 2023. 3. 19. 15:41
Googling이라는 단어를 만들 정도로 압도적인 검색량과 지식 확보에 도움이 되는 구글. 최근 MicroSoft 사의 ChatGPT 등장과 함께 질세라 Google도 구글의 Bard를 출시했다고 하는데, 이 모델은 구글 검색엔진이 추가된다고 발표해 세간의 이목을 끌고 있다. 오늘은 이 검색엔진 알고리즘을 알아보기로 한다. 구글 검색엔진은 1998년 PageRank 알고리즘으로부터 지속적인 연구개발로, 수백가지의 알고리즘과 1년에도 여러 번 세부검색 알고리즘이 바뀌고 있다. 구글에서 공식적으로 발표한 검색 알고리즘은 다음과 같다. "검색어가 몇 번 포함되어 있는가?" "검색어의 위치(EX. 제목, Snippet, 문장에서의 위치 등)" "2개 이상의 단어를 검색했을 떄 검색어와 같이 연결되어 나오는가?"..