自習問題の解答

自習用問題1: ブーリアンモデル
問1.3枚の音楽CDのレビュー文から,CDごとに索引
語(下線部)を抽出し,転置索引を作成しなさい.
解答: 抽出した索引語ごとに,その語が出現する文書
(レビュー文)のリストを求めると,以下のようになる.
索引語
出現文書リスト
幸せ
d1, d3
夏
d1, d2, d3
明るい
d1, d2
元気
d1, d3
切ない
d2, d3
優しい
d3
左表において,
d1 = 「I LOVE YOU」
d2 = 「ハチミツ」
d3 = 「love the world」
自習用問題2: ベクトル空間モデル
問1.3枚の音楽CDのレビュー文から,CDごとに索引語
(下線部)を抽出し,文書ベクトルを作成しなさい.
ただしベクトルの成分の値として,各索引語の出現頻度
(回数)を用いる.
解答: 各文書に各索引語が何回出現するか数えて表形式
にまとめると,以下のような文書‐単語行列が得られる.
文書
d1
d2
d3
幸せ
夏
4
0
1
3
1
1
明るい 元気 切ない 優しい 単語
1
4
0
1
0
1
0
3
1
0
0
2
この行列の各行ベクトルが求める文書ベクトルである.
例えば, d1 = ( 4, 3, 1, 1, 0, 0 )
問2.この転置索引を用いて,次の2つの検索質問に
対する検索結果を求めなさい.
q1: 「元気な曲と切ない曲の両方が入っているCD」
(「元気」 AND 「切ない」)
解答: 索引語「元気」,「切ない」にそれぞれ対応する出現文書
リストの共通部分を求めればよいので,
{ d1, d3 } ∩ { d2, d3 } = { d3 }
つまり,「love the world」のみが検索結果となる.(答)
q2: 「元気な曲と切ない曲のいずれかが入っているCD」
(「元気」 OR 「切ない」)
解答: OR検索なので2つの出現文書リストの和集合を求める.
{ d1, d3 } ∪ { d2, d3 } = { d1, d2, d3 }
つまり,3枚のCDすべてが検索結果となる.(答)
問2.この文書ベクトルを用いて,次の2種類の検索
要求に対する検索結果を求めなさい.
q1: 「元気な曲も聴きたいし切ない曲も聴きたい.
ただしこれら2つの要望の重み(優先度)は同程度」
解答: q1 = (0, 0, 0, 1, 1, 0) と各文書の類似度(コサイン係数)
d1・q1/|d1| |q1| = 1/√27√2 = 0.14
d2・q1/|d2| |q1| = 3/√26√2 = 0.42
d3, d2, d1 の順
d3・q1/|d3| |q1| = 2/√8 √2 = 0.50
で適合する
q2: 「元気な曲も聴きたいし切ない曲も聴きたい.
ただし元気な曲よりも切ない曲を重視(優先)する」
解答: q2 = (0, 0, 0, 1, 2, 0) と各文書の類似度(コサイン係数)
d1・q2/|d1| |q2| = 1/√27√5 = 0.09
d2・q2/|d2| |q2| = 6/√26√5 = 0.53
d2, d3, d1 の順
d3・q2/|d3| |q2| = 3/√8 √5 = 0.47
で適合する
まとめ
• ブーリアンモデル
– 検索条件に適合する文書とそうでない文書が明確に区別
される
– AND検索とOR検索の区別がある
– 検索条件に適合する文書どうしの間で優先度を与えること
はできない
• ベクトル空間モデル
– 検索条件への適合度が実数値で得られるので,文書間の
優先度が分かるが,適合と不適合の境界は明確でない
(実用上は,しきい値を設定して,しきい値以上の適合度を
もつ文書を検索結果として出力するようにする)
1