검색 이론 개요 (1/3) -정보검색 (IR, Information Retrieval) 이란? DB검색과의 차이점

2022. 5. 14. 11:57검색

728x90
반응형

1. 정보검색 (Information Retrieval)이란 

- 데이터의 집합으로부터 사용자가 요구하는 정보를 탐색하고, 이를 찾아내는 행위 

- 대량의 정보모음으로부터 사용자의 정보요구(need)에 적합한 (relevant) 자료를 찾는 과정(Retrieval)

- 대량의 자료 집합으로부터 요구사항에 만족하는 (satisfying) 비정형데이터 (주로 자연어 텍스트 문서)를 찾는 것.

2. 정보검색시스템이란

정보검색을 실시간으로 수행하기 위하여 정보를 구조화하고 요구가 발생할 때 정보를 제공하는 시스템

3. 정보검색 (IR) 과 DB검색의 차이점

1) DB 검색

DB검색은 데이터베이스(정형데이터, 테이블)에서 SQL쿼리등을 이용하여 원하는 정보를 찾는 것.

데이터베이스에서는 제약조건, 데이터간의 관계 등의 스키마 (속성, 개체, 관계) 가 있기 때문에 정형 데이터라고 한다.

2) 정보검색 (IR)

정보검색(IR) 은 검색 대상이 비정형/반정형 데이터 이다.

즉 정보 검색에서 정보들은 비구조적인 문서(테이블 형태가 아님)로 되어있으며 연관 스키마가 존재하지 않습니다.

그래서 SQL 같은 질의 형식을 가지지 않고, 자연어로 검색하게 됩니다.

또한 검색하는 결과도 다릅니다. 정보 검색은 관련성이 높은 문서를 찾아주는 것이지, 정답을 찾는 과정이 아닙니다.

예를 들어, "Seoul"이라는 키워드로 검색한다면 단순 텍스트뿐만 아니라 연관 검색어, 이미지, 지도를 포함한 데이터를 찾아주는 것 처럼요. (* 정답을 찾는 시스템을 QA(Question Answering), 스키마와 SQL을 이용해 데이터를 찾는 시스템을 DBMS라고 합니다.)

3) QA (Question Answering)

QA (질의응답 시스템)는 사용자의 자연어 질의를 해석해서 지식베이스(지식 데이터 또는 지식그래프)에서 원하는 대답을 찾는것. 대개 챗봇에서 인간의 질문에 대답하는 백엔드 처리를 하는 시스템으로 많이 활용.

4. 비정형 데이터 (Unstructed Data)

비정형 데이터는 명확하지 않고, 구조화 되지 않은(=테이블 형태가 아닌) 데이터를 의미합니다.

우리가 평소에 보는 텍스트, 오디오, 비디오, 이미지등 모든것이 비정형 데이터입니다.

여담으로 과거에는 대부분이 비정형 데이터를 바로 쓰지 않고 가공하여 (ex Oracle)판매하는 회사들이 큰 수익을 얻었으나 현대의 산업시장에서는 비정형 데이터 자체를 많이 요구하기에 비정형 데이터를 쉽게 찾을 수 있는 검색엔진(Google, Yahoo)의 수요가 많아졌습니다.

 

  • 예를 들어 자연어텍스트, 웹페이지, 오디오, 비디오, 이미지 등
  • 과거에는 비정형데이터가 많았으나 산업(시장)에서 요구하는 데이터는 대부분 정형 데이터였음
  • 때문에 Oracle과 같이 데이터베이스를 만들어서 판매하는 회사들이 많은 수익을 올렸음
  • 그러나 현대에는 산업(시장)에서 비정형데이터를 많이 요구하게 되고
  • 그에 따라 비정형데이터 검색엔진을 개발한 Google, Yahoo, Bing 등이 많은 수익을 올리게 되었음

 

5. Retrieval(검색) 용어

용어를 외울필요는 없고, 혹시나 특정 단어가 나왔을 때 모를까봐 간단하게 정리했습니다.

IR(Information Retrieval)의 기본 원리

문서집합 -> [ Indexer(색인) -> Inverted index -> Retriever(검색) ] <-> 질의, 응답 문서

색인(Indexing) : 효율적인 검색을 위해 문서집합을 미리 분류별로 가공해둠.

검색(Retriever) : 유사도(질의 - 문서)에 따라 순위를 매김, 각 유사도를 고속 계산 수행필요

정보요구(need)를 질의(Query)로 바꾸는 과정에서 손실 발생(loss)

6. 검색모델

1) Corpus(말뭉치): 자료를 검색할 Corpus가 존재해야 합니다.

2) Topic(주제): 그 Corpus에서 자료를 검색하기 위한 Topic이 존재해야 합니다.

3) Relevance(관련성) : 어떠한 문서가 Topic을 포함하고 있으면 Relevance 하다고 합니다.

예를 들어 서울의 땅 크기(주제)를 물었는데, 서울의 지리와 면적에 관련된 문서가 나오면 관련성이 있는 것이고 서울 인구 수, 취업률 같은 문서가 나오면 Non-Relevance 하다고 합니다.

4) Query(질의): DB에서는 SQL로 질의를 하지만, 정보검색(IR)에서는 자연어를 사용해 질의합니다.

5) Model(검색모델): Boolean, Vector, Probability 등 다양한 모델을 사용하며 각각의 특징이 있습니다. Boolean 모델 , Vector 모델, Probability 모델 등 다양한 모델을 사용함. 모델에 따라 질의의 Format은 약간 달라질 수 있음 (예를들어 Boolean 모델은 And, Or, Not을 사용하는 질의를 씀)

7. Assumption of Retrieval (검색이론의 가정)

  • 1) Collection : 우리가 배울 모델들의 Collection은 Document의 Static Set을 의미
  • 왜 Static Set이 중요할까? => 예를 들어 셰익스 피어의 희극을 검색해보자.
  • Naive Soultion : 모든 작품을 다 모으고 Linear하게 Search한다
  • Better Solution : Corpus를 미리 Preprocess하고, 미리 Organize한다. (색인한다 = 인덱스)
  • 색인하려면 Static Set이 반드시 필요하다. (Preprocess하고있는데 데이터가 불어나면 안된다)
  • 2) Goal : 사용자의 Needs에 Relevant하고, 사용자의 Task를 도울 수 있는 문서를 찾아주는 것

8. 동영상 강의

https://www.edwith.org/info-retrieval/joinLectures/12342?isDesc=false 

 

정보 검색 강좌소개 : edwith

- SW교육센터

www.edwith.org

 

728x90
반응형