トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

logDice

*disclaimer
45341

logDice

まず、Dice係数を出す

  1. 「strong tea」の共起頻度
  2. 「strong」の頻度
  3. 「tea」の頻度
Dice係数=(共起頻度×2)÷(片方の頻度+もう片方の頻度)

Dice係数の底を2とする対数をとり、14を足したものが、logDice

logDice = 14+log2(Dice) 

解釈

  • 最大値14(すべての場合に共起する)
  • スコア0:いずれかの語の16,000語あたりの共起回数が1以下
  • スコアがマイナスの場合:統計的に共起関係はないといえる。
  • スコアを比較して、
    • 片方が1大きい場合、共起頻度は2倍
    • 片方が7大きい場合、共起頻度は100倍
  • スコアはコーパスサイズに依存しない。(相対頻度なので)

Rのスクリプト

LD.R(16)

  • 使い方
    • このスクリプトをRで読み込んで、
    • 後は必要な頻度数を入れる。
      • 共起表現xy頻度、単語xの頻度、単語yの頻度
LD(xy, x, y)

> LD(8, 389, 230)
[1] 8.726204

> LD(300, 300, 300)
[1] 14				# 300回全部共起していると14

> LD(3, 3000, 3000)
[1] 4.034216

> LD(6, 3000, 3000)
[1] 5.034216			# 共起頻度が3回から6回に倍増するとスコアは1上がる

> LD(300, 3000, 3000)
[1] 10.67807			# 共起頻度が100倍になると、スコアは7上がって10

Reference

Pavel Rychlý (2008) A Lexicographer-Friendly Association Score, In Proceedings of Recent Advances in Slavonic Natural Language Processing, RASLAN 2008, pp. 6–9, 2008.