SlideShare a Scribd company logo
1 of 27
정보검색                    제4장.
                                           불리언 검색
INFORMATION RETRIEVAL




     강의: 정창용 (timothy97@gmail.com)
        http://www.facebook.com/hhuIR
               Korea Maritime University
                      Navis Control Inc.
OVERVIEW

   불리언 검색
   인접연산자와 단어 출현위치 부여
   역색인파일(Inverted index file)
   불리언 모델에서 문헌의 적합성 순위화
OUTLINE

   불리언 검색
   인접연산자와 단어 출현위치 부여
   역색인파일(Inverted Index File)
   불리언 모델에서 문헌의 적합성 순위화
불리언 검색(Boolean Search)이란?

 불대수(Boolean algebra)를 사용하여 질의를 만족시키는 문헌을
  검색하는 방법
 대부분의 상용 검색엔진에서 사용
 검색 예
  “유럽 AND 배낭여행”
  “발렌타인데이 OR 화이트데이”
  “스마트폰 NOT 갤럭시”
 검색방법
  질의어가 색인어로 출현한 모든 문헌들을 탐색
  Boolean algebra 연산으로 탐색된 문헌을 선별
불리언 연산이론

 문헌-용어 행렬
 단어       문헌      1             2     3             4         5

      a           1             1     0             1         0

      b           1             1     0             1         1

      c           1             0     1             0         0



  a AND b AND c       a:11010       a AND b NOT c       a:11010
                      b:11011                           b:11011
                      c:10100                           c:01011
                      ──────                            ──────
                        10000                             01010

  a OR b OR c         a:11010
                      b:11011
                      c:10100
                      ──────
                        11111
불리언 연산이론 – C O N T .

 역색인파일(Inverted index file)
    색인어           문헌빈도                                  문헌번호

      a            3            1             2             4

      b            4            1             2             4         5

      c            2            1             3


  a AND b AND c        ▶ (1, 2, 4) AND (1, 2, 4, 5) AND (1, 3)   ▶ 문헌 1
  a OR b OR c          ▶ (1, 2, 4) OR (1, 2, 4, 5) OR (1, 3)     ▶ 문헌 1, 2, 3, 4, 5
  a AND b NOT c        ▶ (1, 2, 4) AND (1, 2, 4, 5) NOT (1, 3)   ▶ 문헌 2, 4
불리언 연산자 우선순위

                                질의           처리된 질의
       LC (and > or)         A OR B AND C   A OR (B AND C)
   Dialog (not > and > or)   A OR B AND C   A OR (B AND C)
     Google (or > and)        A B OR C      A AND (B OR C)
EBSCO (입력된 순서대로 왼쪽부터)        A OR B AND C   (A OR B) AND C
OUTLINE

   불리언 검색
   인접연산자와 단어 출현위치 부여
   역색인파일(Inverted Index File)
   불리언 모델에서 문헌의 적합성 순위화
인접연산자

 불리언 연산자 AND를 용어의 출현위치로 제한하는 것
   출현순서
   출현거리
   색인 시 용어의 출현위치를 색인해야 함


 예)
       두 단어의 출현위치 제한    Dialog     EBSCO   Google/LC

  순서대로 m단어 내에            (mW)       Wm

  순서 관계없이 m단어 내에         (mN)       Nm

  순서대로 이어서             (w) 혹은 ()    W         “”

  순서 관계없이 이어서             (N)       N
인접연산자의 탐색 예

       단어               문헌빈도             문헌번호                출현위치
        a                  3                1                   7
                                            2                   5
                                            4                   2
        b                  4                1                   6
                                            2                   6
                                            4                   10
                                            5                   19
        c                  2                1                   8
                                            3                   2



탐색 1) a AND b ▶ 1, 2, 4          탐색 2) a (w) b ▶ 2
           a의 포스팅 : 1, 2, 4                 a의 포스팅 : 1-7, 2-5, 4-2
           b의 포스팅 : 1, 2, 4, 5              b의 포스팅 : 1-6, 2-6, 4-10, 5-19
Dialog의 출현위치 부여 예

 예1) Education as Growth Life Long Learning
       TI1     TI2         TI3   TI4   TI5    TI6



 예2) Consumer Responser to Telecommunications Dereg.
        TI1          TI2                TI4         TI5
OUTLINE

   불리언 검색
   인접연산자와 단어 출현위치 부여
   역색인파일(Inverted Index File)
   불리언 모델에서 문헌의 적합성 순위화
역색인파일과 포스팅파일

 역색인파일 (Inverted index file)
   색인어 + 문헌번호
    문헌번호               색인어       색인어       포스팅 수           문헌번호
         1         a    b    c    a          3         1   2   4
         2         a    b         b          4         1   2   4   5
         3         c              c          2         1   3
         4         a    b        도치색인파일
         5         b
   문헌파일

 포스팅파일
   색인어       포스팅 수     포인터                 포스팅
     a         3        10        1    2     4
     b         4        20        1    2     4     5
     c         2        30        1    3

   사전파일                          포스팅파일
역색인파일과 포스팅파일 – C O N T .

 역색인파일의 저장장치 활용
  사전파일    – 주기억장치에 저장
  포스팅 리스트 – 디스크에 저장 (문헌번호로 정렬)
 역색인파일을 이용한 탐색
  “and” 이용한 검색 시 포스팅 수가 적은 집합부터 비교
필드검색을 위한 도치색인파일 운영

 개별 역색인파일
  서명 키워드 색인                       저자 키워드 색인           주제명 키워드 색인
   a      1, 2                     a     2                a   4
   b      2, 4                     b    1, 5



 Dialog의 색인파일 형식
       기본색인파일 형식                               기본색인파일 형식
   a     1.ti, 2.au, 4.su, 4.ti         title.a      1, 4
   b     1.au, 2.ti, 4.ti, 5.au        author.a       2
                                       subject.a      4
                                        title.b      2, 4
                                       author.b      1, 5
OUTLINE

   불리언 검색
   인접연산자와 단어 출현위치 부여
   도치색인파일(Inverted Index File)
   불리언 모델에서 문헌의 적합성 순위화
적합성 순위화

 전통적 불리언 탐색의 단점
  질의어에 대한 상대적 중요도 부여 안됨
  질의와 완전 일치한 문헌들만 검색
  문헌과 질의와의 적합성 정도에 따른 순위화 할 수 없음
 순위화 방법
  문헌용어에 가중치 부여
   퍼지집합 이론
   MMM (Mixed Min and Max) 모형
  문헌용어와 질의용어에 가중치 부여
   P-Norm 모형
논리합 정규형에 의한 순위화

 논리합 정규형(Disjunctive Normal Form: DNF)
   가중치 없이 불리언으로 검색된 문헌을 순위화 하는 방법
   불리언 질의를 논리적으로 항등한 논리합(OR) 질의로 변환
 (A   AND   B)   AND   C
   (A   AND   C) OR (B AND C)
   (A   NOT   B AND C) OR (A AND B   AND   C)   OR ( NOT   A   AND   B   AND   C)
논리합 정규형에 의한 순위화 예

a   AND    (b   OR     C)에 대한 결과
  (a   AND   b)   OR   (a   AND   c)로 변환

                   문헌1             2    3   4   5

     단어 a           1              1    1   1   0

     단어 b           1              1    0   1   1

     단어 c           1              0    1   0   0

     아톰 수           2              1    1   1   0
필드 가중치에 의한 순위화

 논리합 정규형 순위화보다 간단
 용어가 출현하는 필드에 가중치 부여하여 순위화하는 방법
 예) 필드 가중치가 아래와 같을 때
  서명(ti): 0.3, 주제(su): 0.2, 저자(au): 0.1
      a           1.ti, 2.au, 4.su, 4.ti
      b           1.au, 2.ti, 4.ti, 5.au


  질의 “a”인 경우,
    문헌1: 0.3, 문헌2: 0.1, 문헌4: 0.5 (순위: 4 > 1 > 2)
  질의 “a   AND   b”인 경우
    문헌1: 0.4, 문헌2: 0.4, 문헌4: 0.8 (순위: 4 > 1 = 2)
퍼지집합 이론에 의한 순위화

 퍼지집합 (Fuzzy Set)
  전통적인 집합이론을 확장
  Membership-degree function
    전체집합의 모든 멤버들을 구간 [0, 1]에 매핑시킨 것
       0: 집합에 포함되지 않음
       1: 집합에 완전히 포함됨
  합집합 (A∪B)
    f A∪B = max[f A (X), f B (X)] → max(A, B)
  교집합 (A∩B)
    f A∩B = min[f A (X), f B (X)] → min(A, B)
  차집합 (~A)
    f A (X) = 1 - f A (X)
퍼지집합 이론에 의한 순위화 – C O N T .

          색인어 가중치          질의로 검색된 문헌의 적합성 가중치
문헌
      a      b      c   (A AND B) OR C   A AND (B OR C)
1    0.1    0.5   0.3        0.3              0.1
2    0.4    0.2     0        0.2              0.2
3     0      0    0.4        0.4               0
4    0.6    0.5     0        0.5              0.5
5     0     0.1     0         0                0
MMM 모형에서의 순위화

 MMM (Mixed Min and Max) 모형
   최대값, 최소값 문헌 가중치를 선형으로 결합하여 질의와 문헌의 유사
    도(similarity)를 구함

   Sim(D, Q OR ) = C 1 * 최대값 + C 2 * 최소값
   Sim(D, Q AND ) = C 1 * 최소값 + C 2 * 최대값
MMM 모형에서의 순위화 – C O N T .

 예) C 1 =2, C 2 =1 일 때, (A   AND   B)   OR   C ?
           색인어 가중치                  질의로 검색된 문헌의 적합성 가중치
문헌
       a      b      c            (A AND B)           (A AND B) OR C
 1     0.1   0.5   0.3        2*0.1 + 1*0.5 = 0.7   2*0.7 + 1*0.3 = 1.7
 2     0.4   0.2     0        2*0.2 + 1*0.4 = 0.8   2*0.8 + 1*0 = 1.6
 3     0      0    0.4         2*0 + 1*0 = 0.0      2*0.4 + 1*0 = 0.8
 4     0.6   0.5     0        2*0.5 + 1*0.6 = 1.6   2*1.6 + 1*0 = 3.2
 5     0     0.1     0        2*0 + 1*0.1 = 0.1     2*0.1 + 1*0 = 0.2
퍼지집합 이론을 응용한 기타 순위화

 확률이론을 적용한 방법
  A, B가 독립적일 때,
      X가 A와 B를 가질 확률 = X가 A를 가질 확률 * X가 B를 가질 확률


 A    AND B = Wa * Wb
 A    OR B  = W a + W b – (W a * W b )
    NOT A   = 1 - Wa
퍼지집합 응용한 기타 순위화 – C O N T .

     색인어 가중치                      질의로 검색된 문헌의 적합성 가중치
문헌
     a     b     c        (A AND B)               (A AND B) OR C
1    0.1   0.5   0.3   0.1 * 0.5 = 0.05   0.05 + 0.3 – (0.05 * 0.3) = 0.335
2    0.4   0.2   0     0.4 * 0.2 = 0.08     0.08 + 0 – (0.08 * 0) = 0.08
3    0     0     0.4          0              0 + 0.4 – (0 * 0.04) = 0.4
4    0.6   0.5   0     0.6 * 0.5 = 0.3        0.3 + 0 - (0.3 * 0) = 0.3
5    0     0.1   0            0                  0 + 0 – (0 * 0) = 0
P-Norm

 문헌과 질의의 유사도(similarity)를 거리로 측정

More Related Content

What's hot

Music Recommendations at Scale with Spark
Music Recommendations at Scale with SparkMusic Recommendations at Scale with Spark
Music Recommendations at Scale with SparkChris Johnson
 
Standard Datasets in Information Retrieval
Standard Datasets in Information Retrieval Standard Datasets in Information Retrieval
Standard Datasets in Information Retrieval Jean Brenda
 
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...Gabriel Rojas
 
Scala Data Pipelines for Music Recommendations
Scala Data Pipelines for Music RecommendationsScala Data Pipelines for Music Recommendations
Scala Data Pipelines for Music RecommendationsChris Johnson
 
Google cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptxGoogle cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptxGDSCNiT
 
Managing the Machine Learning Lifecycle with MLOps
Managing the Machine Learning Lifecycle with MLOpsManaging the Machine Learning Lifecycle with MLOps
Managing the Machine Learning Lifecycle with MLOpsFatih Baltacı
 
Introduction to Information Retrieval
Introduction to Information RetrievalIntroduction to Information Retrieval
Introduction to Information RetrievalRoi Blanco
 
SoDA v2 - Named Entity Recognition from streaming text
SoDA v2 - Named Entity Recognition from streaming textSoDA v2 - Named Entity Recognition from streaming text
SoDA v2 - Named Entity Recognition from streaming textSujit Pal
 
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...Databricks
 
Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)
Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)
Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)Naoki (Neo) SATO
 
Quels outils pour quelles recherches ? Panorama des outils du web
Quels outils pour quelles recherches ? Panorama des outils du webQuels outils pour quelles recherches ? Panorama des outils du web
Quels outils pour quelles recherches ? Panorama des outils du webURFIST de Rennes
 
Spotify Discover Weekly: The machine learning behind your music recommendations
Spotify Discover Weekly: The machine learning behind your music recommendationsSpotify Discover Weekly: The machine learning behind your music recommendations
Spotify Discover Weekly: The machine learning behind your music recommendationsSophia Ciocca
 
Approximate nearest neighbor methods and vector models – NYC ML meetup
Approximate nearest neighbor methods and vector models – NYC ML meetupApproximate nearest neighbor methods and vector models – NYC ML meetup
Approximate nearest neighbor methods and vector models – NYC ML meetupErik Bernhardsson
 
A brief primer on OpenAI's GPT-3
A brief primer on OpenAI's GPT-3A brief primer on OpenAI's GPT-3
A brief primer on OpenAI's GPT-3Ishan Jain
 
How GenAI will (not) change your business?
How GenAI will (not)  change your business?How GenAI will (not)  change your business?
How GenAI will (not) change your business?Marlon Dumas
 
Foundation Models in Recommender Systems
Foundation Models in Recommender SystemsFoundation Models in Recommender Systems
Foundation Models in Recommender SystemsAnoop Deoras
 
Building and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowBuilding and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowKaxil Naik
 

What's hot (20)

Music Recommendations at Scale with Spark
Music Recommendations at Scale with SparkMusic Recommendations at Scale with Spark
Music Recommendations at Scale with Spark
 
Standard Datasets in Information Retrieval
Standard Datasets in Information Retrieval Standard Datasets in Information Retrieval
Standard Datasets in Information Retrieval
 
Ir 02
Ir   02Ir   02
Ir 02
 
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
 
Scala Data Pipelines for Music Recommendations
Scala Data Pipelines for Music RecommendationsScala Data Pipelines for Music Recommendations
Scala Data Pipelines for Music Recommendations
 
gpt3_presentation.pdf
gpt3_presentation.pdfgpt3_presentation.pdf
gpt3_presentation.pdf
 
Google cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptxGoogle cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptx
 
Managing the Machine Learning Lifecycle with MLOps
Managing the Machine Learning Lifecycle with MLOpsManaging the Machine Learning Lifecycle with MLOps
Managing the Machine Learning Lifecycle with MLOps
 
Introduction to Information Retrieval
Introduction to Information RetrievalIntroduction to Information Retrieval
Introduction to Information Retrieval
 
SoDA v2 - Named Entity Recognition from streaming text
SoDA v2 - Named Entity Recognition from streaming textSoDA v2 - Named Entity Recognition from streaming text
SoDA v2 - Named Entity Recognition from streaming text
 
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
 
Generative AI
Generative AIGenerative AI
Generative AI
 
Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)
Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)
Microsoft + OpenAI: Recent Updates (Machine Learning 15minutes! Broadcast #74)
 
Quels outils pour quelles recherches ? Panorama des outils du web
Quels outils pour quelles recherches ? Panorama des outils du webQuels outils pour quelles recherches ? Panorama des outils du web
Quels outils pour quelles recherches ? Panorama des outils du web
 
Spotify Discover Weekly: The machine learning behind your music recommendations
Spotify Discover Weekly: The machine learning behind your music recommendationsSpotify Discover Weekly: The machine learning behind your music recommendations
Spotify Discover Weekly: The machine learning behind your music recommendations
 
Approximate nearest neighbor methods and vector models – NYC ML meetup
Approximate nearest neighbor methods and vector models – NYC ML meetupApproximate nearest neighbor methods and vector models – NYC ML meetup
Approximate nearest neighbor methods and vector models – NYC ML meetup
 
A brief primer on OpenAI's GPT-3
A brief primer on OpenAI's GPT-3A brief primer on OpenAI's GPT-3
A brief primer on OpenAI's GPT-3
 
How GenAI will (not) change your business?
How GenAI will (not)  change your business?How GenAI will (not)  change your business?
How GenAI will (not) change your business?
 
Foundation Models in Recommender Systems
Foundation Models in Recommender SystemsFoundation Models in Recommender Systems
Foundation Models in Recommender Systems
 
Building and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowBuilding and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache Airflow
 

Viewers also liked

제7장 비불리언 모델
제7장 비불리언 모델제7장 비불리언 모델
제7장 비불리언 모델Chang-yong Jung
 
NMEA0183 Parser 실습과제
NMEA0183 Parser 실습과제NMEA0183 Parser 실습과제
NMEA0183 Parser 실습과제Chang-yong Jung
 
과제#2 색인어 생성기 만들기
과제#2 색인어 생성기 만들기과제#2 색인어 생성기 만들기
과제#2 색인어 생성기 만들기Chang-yong Jung
 
제3장 색인어 추출을 위한 언어학적 처리
제3장 색인어 추출을 위한 언어학적 처리제3장 색인어 추출을 위한 언어학적 처리
제3장 색인어 추출을 위한 언어학적 처리Chang-yong Jung
 
제5장 NMEA Parser 구현
제5장 NMEA Parser 구현제5장 NMEA Parser 구현
제5장 NMEA Parser 구현Chang-yong Jung
 
제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183
제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183
제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183Chang-yong Jung
 
제1장 강의소개 / 선박구조 및 기본개념
제1장 강의소개 / 선박구조 및 기본개념제1장 강의소개 / 선박구조 및 기본개념
제1장 강의소개 / 선박구조 및 기본개념Chang-yong Jung
 
제3장 GMDSS 및 항해보조장비
제3장 GMDSS 및 항해보조장비제3장 GMDSS 및 항해보조장비
제3장 GMDSS 및 항해보조장비Chang-yong Jung
 
제1장 정보검색소개
제1장 정보검색소개제1장 정보검색소개
제1장 정보검색소개Chang-yong Jung
 
제2장 IMO / IHO / SOLAS 규약 / 선급
제2장 IMO / IHO / SOLAS 규약 / 선급제2장 IMO / IHO / SOLAS 규약 / 선급
제2장 IMO / IHO / SOLAS 규약 / 선급Chang-yong Jung
 

Viewers also liked (11)

제7장 비불리언 모델
제7장 비불리언 모델제7장 비불리언 모델
제7장 비불리언 모델
 
NMEA0183 Parser 실습과제
NMEA0183 Parser 실습과제NMEA0183 Parser 실습과제
NMEA0183 Parser 실습과제
 
제5장 사전파일
제5장 사전파일제5장 사전파일
제5장 사전파일
 
과제#2 색인어 생성기 만들기
과제#2 색인어 생성기 만들기과제#2 색인어 생성기 만들기
과제#2 색인어 생성기 만들기
 
제3장 색인어 추출을 위한 언어학적 처리
제3장 색인어 추출을 위한 언어학적 처리제3장 색인어 추출을 위한 언어학적 처리
제3장 색인어 추출을 위한 언어학적 처리
 
제5장 NMEA Parser 구현
제5장 NMEA Parser 구현제5장 NMEA Parser 구현
제5장 NMEA Parser 구현
 
제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183
제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183
제4장 선박용 장비의 통신규약 / 시리얼통신 / NMEA0183
 
제1장 강의소개 / 선박구조 및 기본개념
제1장 강의소개 / 선박구조 및 기본개념제1장 강의소개 / 선박구조 및 기본개념
제1장 강의소개 / 선박구조 및 기본개념
 
제3장 GMDSS 및 항해보조장비
제3장 GMDSS 및 항해보조장비제3장 GMDSS 및 항해보조장비
제3장 GMDSS 및 항해보조장비
 
제1장 정보검색소개
제1장 정보검색소개제1장 정보검색소개
제1장 정보검색소개
 
제2장 IMO / IHO / SOLAS 규약 / 선급
제2장 IMO / IHO / SOLAS 규약 / 선급제2장 IMO / IHO / SOLAS 규약 / 선급
제2장 IMO / IHO / SOLAS 규약 / 선급
 

제4장 불리언 검색

  • 1. 정보검색 제4장. 불리언 검색 INFORMATION RETRIEVAL 강의: 정창용 (timothy97@gmail.com) http://www.facebook.com/hhuIR Korea Maritime University Navis Control Inc.
  • 2. OVERVIEW  불리언 검색  인접연산자와 단어 출현위치 부여  역색인파일(Inverted index file)  불리언 모델에서 문헌의 적합성 순위화
  • 3. OUTLINE  불리언 검색  인접연산자와 단어 출현위치 부여  역색인파일(Inverted Index File)  불리언 모델에서 문헌의 적합성 순위화
  • 4. 불리언 검색(Boolean Search)이란?  불대수(Boolean algebra)를 사용하여 질의를 만족시키는 문헌을 검색하는 방법  대부분의 상용 검색엔진에서 사용  검색 예  “유럽 AND 배낭여행”  “발렌타인데이 OR 화이트데이”  “스마트폰 NOT 갤럭시”  검색방법  질의어가 색인어로 출현한 모든 문헌들을 탐색  Boolean algebra 연산으로 탐색된 문헌을 선별
  • 5. 불리언 연산이론  문헌-용어 행렬 단어 문헌 1 2 3 4 5 a 1 1 0 1 0 b 1 1 0 1 1 c 1 0 1 0 0 a AND b AND c a:11010 a AND b NOT c a:11010 b:11011 b:11011 c:10100 c:01011 ────── ────── 10000 01010 a OR b OR c a:11010 b:11011 c:10100 ────── 11111
  • 6. 불리언 연산이론 – C O N T .  역색인파일(Inverted index file) 색인어 문헌빈도 문헌번호 a 3 1 2 4 b 4 1 2 4 5 c 2 1 3 a AND b AND c ▶ (1, 2, 4) AND (1, 2, 4, 5) AND (1, 3) ▶ 문헌 1 a OR b OR c ▶ (1, 2, 4) OR (1, 2, 4, 5) OR (1, 3) ▶ 문헌 1, 2, 3, 4, 5 a AND b NOT c ▶ (1, 2, 4) AND (1, 2, 4, 5) NOT (1, 3) ▶ 문헌 2, 4
  • 7. 불리언 연산자 우선순위 질의 처리된 질의 LC (and > or) A OR B AND C A OR (B AND C) Dialog (not > and > or) A OR B AND C A OR (B AND C) Google (or > and) A B OR C A AND (B OR C) EBSCO (입력된 순서대로 왼쪽부터) A OR B AND C (A OR B) AND C
  • 8. OUTLINE  불리언 검색  인접연산자와 단어 출현위치 부여  역색인파일(Inverted Index File)  불리언 모델에서 문헌의 적합성 순위화
  • 9. 인접연산자  불리언 연산자 AND를 용어의 출현위치로 제한하는 것  출현순서  출현거리  색인 시 용어의 출현위치를 색인해야 함  예) 두 단어의 출현위치 제한 Dialog EBSCO Google/LC 순서대로 m단어 내에 (mW) Wm 순서 관계없이 m단어 내에 (mN) Nm 순서대로 이어서 (w) 혹은 () W “” 순서 관계없이 이어서 (N) N
  • 10. 인접연산자의 탐색 예 단어 문헌빈도 문헌번호 출현위치 a 3 1 7 2 5 4 2 b 4 1 6 2 6 4 10 5 19 c 2 1 8 3 2 탐색 1) a AND b ▶ 1, 2, 4 탐색 2) a (w) b ▶ 2 a의 포스팅 : 1, 2, 4 a의 포스팅 : 1-7, 2-5, 4-2 b의 포스팅 : 1, 2, 4, 5 b의 포스팅 : 1-6, 2-6, 4-10, 5-19
  • 11. Dialog의 출현위치 부여 예  예1) Education as Growth Life Long Learning TI1 TI2 TI3 TI4 TI5 TI6  예2) Consumer Responser to Telecommunications Dereg. TI1 TI2 TI4 TI5
  • 12. OUTLINE  불리언 검색  인접연산자와 단어 출현위치 부여  역색인파일(Inverted Index File)  불리언 모델에서 문헌의 적합성 순위화
  • 13. 역색인파일과 포스팅파일  역색인파일 (Inverted index file)  색인어 + 문헌번호 문헌번호 색인어 색인어 포스팅 수 문헌번호 1 a b c a 3 1 2 4 2 a b b 4 1 2 4 5 3 c c 2 1 3 4 a b 도치색인파일 5 b 문헌파일  포스팅파일 색인어 포스팅 수 포인터 포스팅 a 3 10 1 2 4 b 4 20 1 2 4 5 c 2 30 1 3 사전파일 포스팅파일
  • 14. 역색인파일과 포스팅파일 – C O N T .  역색인파일의 저장장치 활용  사전파일 – 주기억장치에 저장  포스팅 리스트 – 디스크에 저장 (문헌번호로 정렬)  역색인파일을 이용한 탐색  “and” 이용한 검색 시 포스팅 수가 적은 집합부터 비교
  • 15. 필드검색을 위한 도치색인파일 운영  개별 역색인파일 서명 키워드 색인 저자 키워드 색인 주제명 키워드 색인 a 1, 2 a 2 a 4 b 2, 4 b 1, 5  Dialog의 색인파일 형식 기본색인파일 형식 기본색인파일 형식 a 1.ti, 2.au, 4.su, 4.ti title.a 1, 4 b 1.au, 2.ti, 4.ti, 5.au author.a 2 subject.a 4 title.b 2, 4 author.b 1, 5
  • 16. OUTLINE  불리언 검색  인접연산자와 단어 출현위치 부여  도치색인파일(Inverted Index File)  불리언 모델에서 문헌의 적합성 순위화
  • 17. 적합성 순위화  전통적 불리언 탐색의 단점  질의어에 대한 상대적 중요도 부여 안됨  질의와 완전 일치한 문헌들만 검색  문헌과 질의와의 적합성 정도에 따른 순위화 할 수 없음  순위화 방법  문헌용어에 가중치 부여  퍼지집합 이론  MMM (Mixed Min and Max) 모형  문헌용어와 질의용어에 가중치 부여  P-Norm 모형
  • 18. 논리합 정규형에 의한 순위화  논리합 정규형(Disjunctive Normal Form: DNF)  가중치 없이 불리언으로 검색된 문헌을 순위화 하는 방법  불리언 질의를 논리적으로 항등한 논리합(OR) 질의로 변환  (A AND B) AND C  (A AND C) OR (B AND C)  (A NOT B AND C) OR (A AND B AND C) OR ( NOT A AND B AND C)
  • 19. 논리합 정규형에 의한 순위화 예 a AND (b OR C)에 대한 결과  (a AND b) OR (a AND c)로 변환 문헌1 2 3 4 5 단어 a 1 1 1 1 0 단어 b 1 1 0 1 1 단어 c 1 0 1 0 0 아톰 수 2 1 1 1 0
  • 20. 필드 가중치에 의한 순위화  논리합 정규형 순위화보다 간단  용어가 출현하는 필드에 가중치 부여하여 순위화하는 방법  예) 필드 가중치가 아래와 같을 때  서명(ti): 0.3, 주제(su): 0.2, 저자(au): 0.1 a 1.ti, 2.au, 4.su, 4.ti b 1.au, 2.ti, 4.ti, 5.au  질의 “a”인 경우,  문헌1: 0.3, 문헌2: 0.1, 문헌4: 0.5 (순위: 4 > 1 > 2)  질의 “a AND b”인 경우  문헌1: 0.4, 문헌2: 0.4, 문헌4: 0.8 (순위: 4 > 1 = 2)
  • 21. 퍼지집합 이론에 의한 순위화  퍼지집합 (Fuzzy Set)  전통적인 집합이론을 확장  Membership-degree function  전체집합의 모든 멤버들을 구간 [0, 1]에 매핑시킨 것  0: 집합에 포함되지 않음  1: 집합에 완전히 포함됨  합집합 (A∪B)  f A∪B = max[f A (X), f B (X)] → max(A, B)  교집합 (A∩B)  f A∩B = min[f A (X), f B (X)] → min(A, B)  차집합 (~A)  f A (X) = 1 - f A (X)
  • 22. 퍼지집합 이론에 의한 순위화 – C O N T . 색인어 가중치 질의로 검색된 문헌의 적합성 가중치 문헌 a b c (A AND B) OR C A AND (B OR C) 1 0.1 0.5 0.3 0.3 0.1 2 0.4 0.2 0 0.2 0.2 3 0 0 0.4 0.4 0 4 0.6 0.5 0 0.5 0.5 5 0 0.1 0 0 0
  • 23. MMM 모형에서의 순위화  MMM (Mixed Min and Max) 모형  최대값, 최소값 문헌 가중치를 선형으로 결합하여 질의와 문헌의 유사 도(similarity)를 구함  Sim(D, Q OR ) = C 1 * 최대값 + C 2 * 최소값  Sim(D, Q AND ) = C 1 * 최소값 + C 2 * 최대값
  • 24. MMM 모형에서의 순위화 – C O N T .  예) C 1 =2, C 2 =1 일 때, (A AND B) OR C ? 색인어 가중치 질의로 검색된 문헌의 적합성 가중치 문헌 a b c (A AND B) (A AND B) OR C 1 0.1 0.5 0.3 2*0.1 + 1*0.5 = 0.7 2*0.7 + 1*0.3 = 1.7 2 0.4 0.2 0 2*0.2 + 1*0.4 = 0.8 2*0.8 + 1*0 = 1.6 3 0 0 0.4 2*0 + 1*0 = 0.0 2*0.4 + 1*0 = 0.8 4 0.6 0.5 0 2*0.5 + 1*0.6 = 1.6 2*1.6 + 1*0 = 3.2 5 0 0.1 0 2*0 + 1*0.1 = 0.1 2*0.1 + 1*0 = 0.2
  • 25. 퍼지집합 이론을 응용한 기타 순위화  확률이론을 적용한 방법  A, B가 독립적일 때,  X가 A와 B를 가질 확률 = X가 A를 가질 확률 * X가 B를 가질 확률 A AND B = Wa * Wb A OR B = W a + W b – (W a * W b )  NOT A = 1 - Wa
  • 26. 퍼지집합 응용한 기타 순위화 – C O N T . 색인어 가중치 질의로 검색된 문헌의 적합성 가중치 문헌 a b c (A AND B) (A AND B) OR C 1 0.1 0.5 0.3 0.1 * 0.5 = 0.05 0.05 + 0.3 – (0.05 * 0.3) = 0.335 2 0.4 0.2 0 0.4 * 0.2 = 0.08 0.08 + 0 – (0.08 * 0) = 0.08 3 0 0 0.4 0 0 + 0.4 – (0 * 0.04) = 0.4 4 0.6 0.5 0 0.6 * 0.5 = 0.3 0.3 + 0 - (0.3 * 0) = 0.3 5 0 0.1 0 0 0 + 0 – (0 * 0) = 0
  • 27. P-Norm  문헌과 질의의 유사도(similarity)를 거리로 측정