Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
特徴ベクトルを用いた全文検索について(1)
Search
masaya82
February 13, 2018
0
220
特徴ベクトルを用いた全文検索について(1)
masaya82
February 13, 2018
Tweet
Share
More Decks by masaya82
See All by masaya82
文献紹介 : More is not always better: balancing sense distributions for all-words
masaya82
0
110
文献紹介:Enhancing Modern Supervised Word Sense Disambiguation Models
masaya82
0
130
文献紹介:The Word Sense Disambiguation Test Suite at WMT18
masaya82
0
71
文献紹介:Preposition Sense Disambiguation and Representation
masaya82
0
98
文献紹介:Word Sense Disambiguation Based on Word Similarity Calculation Using Word Vector Representation from a Knowledge-based Graph
masaya82
0
120
Distributional Lesk: Effective Knowledge-Based Word Sense Disambiguation
masaya82
0
81
Japanese all-words WSD system using the Kyoto Text Analysis ToolKit
masaya82
0
96
Improving Word Sense Disambiguation in Neural Machine Translation with Sense Embeddings
masaya82
0
110
Learning_to_Identify_the_Best_Contexts_for_Knowledge-based_WSD
masaya82
0
100
Featured
See All Featured
Docker and Python
trallard
41
3.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
430
Facilitating Awesome Meetings
lara
50
6.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Agile that works and the tools we love
rasmusluckow
328
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Making Projects Easy
brettharned
116
5.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
500
Music & Morning Musume
bryan
46
6.2k
Transcript
特徴ベクトルを用いた 全文検索について(1) 自然言語処理研究室 B3 福嶋 真也
参考文献 北 研二、津田 和彦、獅々堀 正幹 著 「情報検索アルゴリズム」 2002年 共立出版株式会社
特徴ベクトル法 特徴ベクトル法とは →特徴ベクトル(またはシグネチャー・ファイル)と呼ばれる二次 情報を索引として検索処理を高速化する手法 特徴ベクトルとは →対象の文書中にどのような索引語が出現したかという特徴を 0と1からなるビット列で表現したもの
特徴ベクトル法 流れ 文書集合のすべての文書から単語シグネチャー、文書シグネ チャーを作成 検索単語についても単語シグネチャーを作成 検索単語シグネチャーと文書シグネチャーを用いて検索を行う 単語シグネチャー・・・索引語となる単語の特徴を表すビット列 文書シグネチャー・・・文書の特徴を表すビット列
特徴ベクトルの構成法 ・単語シグネチャーの作成法 (前処理)対象の文書内から索引語となる単語を特定 ハッシュ関数を用いて整数に変換し、ビット長F、その中のm個 のビットが1、残りが0のビット列からなる単語シグネチャーを生 成 1 2 3 ・・・
( =0 or 1 ( 0≦i≦ F)) 3つの例を紹介 1、m=1のとき 2、m>1のとき(1) 3、m>1のとき(2)
特徴ベクトルの構成法 1、m=1のとき 以下のようなハッシュ関数を用意 H = + 1 :単語 :単語中の各文字の内部コードの和 :
Fで割った余り 単語を入力し、ハッシュ値と対応するビットを1に
特徴ベクトルの構成法 例:w=“full”,F=8としてアルファベットの内部コードをaから順番 に0,1,…25としたとき H "" = 5 + 20 +
11 + 11 8 + 1 = 8 Sign "" = 0 0 0 0 0 0 0 1 この方法ではF通りのパターンが生成可能 パターンを増やすためにはmを増加させる必要がある
特徴ベクトルの構成法 2、m>1のとき(1) 1のときのようなハッシュ関数をk個用意 そのハッシュ値と同じビット位置に1を置く 1の数mは1≦m≦kとなる できるだけハッシュ値が衝突を起こさないようなハッシュ関数を 用意することが重要
特徴ベクトルの構成法 3、m>1のとき(2) 1の に対して2進数表現を求めて、その末尾Fビット文 のビット列を単語シグネチャーに 1の例を使用すると Sum "" = 5
+ 20 + 11 + 11 = 47 1 "" = 0 0 1 0 1 1 1 1
特徴ベクトルの構成法 これまでは単語を分割せず単語シグネチャーを作成 →部分文字列の情報を単語シグネチャーに反映 方法 単語wに対し、隣接する2文字のハッシュ値を求め、その値と同 じビット位置を1にする
特徴ベクトルの構成法 例:1と同じ例で“fu”“ul”“ll”に対してハッシュ値を計算 H "" = 25 8 + 1 =
2 H "" = 31 8 + 1 = 8 H "" = 22 8 + 1 = 7 "" = 0 1 0 0 0 0 1 1 何に利用するか →部分文字列検索に利用
特徴ベクトルの構成法 ・文書シグネチャーの作成法 (単語シグネチャーはm=1のときの方法を使用して求める) 文書内のすべての単語シグネチャーについてスーパーインポーズド・ コーティングを行うことで作成 数式で表すと文書D{ 1 , 2 ,
… … }に対して _ = 1 | 2 |…| |…| スーパーインポーズド・コーティング ・・・単語シグネチャーのビットごとの論理和をとること
特徴ベクトルの構成法 例:文書D“full text search”に対して文書シグネチャーを構成 H "" = 8 H "ℎ"
= 48 8 + 1 = 1 H "" = 65 8 + 1 = 2 "" = 0 0 0 0 0 0 0 1 "" = 0 1 0 0 0 0 0 0 "ℎ" = 1 0 0 0 0 0 0 0 _() = "" "" "ℎ" = 1 1 0 0 0 0 0 1
特徴ベクトルの構成法 日本語の場合・・・ 単語を部分文字列に分解し、それらの単語シグネチャーから文 書シグネチャーを構成する なぜ? →日本語は複合語が多数存在 分解しないと部分文字列で一致していても一致していないと 判断 例えば「全文検索法」を含む文字列に対して「検索法」で検索で きない
特徴ベクトルによる検索 方法 検索単語のシグネチャーを作成して、文書シグネチャーとビット ごとの論理積をとる 結果が検索単語シグネチャーと一致しないならその文書を排除、 一致するなら逐次検索を行い検索単語があるか確認 なぜ確認? 検索条件を満たす候補(アクチュアル・ドロップ)と満たさない候 補(フォルス・ドロップ)が存在 →条件を満たしているかの判定処理(フォルス・ドロップ・レゾ
リューション)を行う必要がある。
特徴ベクトルによる検索 例:以下の文書集合に対しkey=“index”で検索 1 =full text search 2 =inverted index file
3=sequential search algorithm 4=index search algorithm 5=information retrieval algorithm
特徴ベクトルによる検索 _ 1 =1 1 0 0 0 0 0
1 _ 2 =0 1 0 1 1 0 0 0 _ 3 =1 1 0 0 0 0 1 0 _ 4 =1 0 0 1 0 0 1 0 _ 5 =0 0 0 1 0 1 1 0 =0 0 0 1 0 0 0 0 2 , 4 , 5 が一致→ 逐次検索で2 , 4 にindexがあることを確認
今回の発表内容 特徴ベクトルの構成法 ・単語シグネチャーの作成法 ・文書シグネチャーの作成法 特徴ベクトルによる検索 次は・・・ ・複数の検索単語である場合の検索 ・分割管理による特徴ベクトルの構成法