ruby 検出のための指标E(s)を求めるスクリプト特特特特特特特))
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 検出のための指标E(s)を求めるスクリプト特特特特特特特))相关的知识,希望对你有一定的参考价值。
#!/usr/bin/env ruby
# -*- coding: utf-8 -*-
# 特定プロフィールを持つ投稿者の投稿内容に偏って現れる文字列を統計的な指標を用いて検出
# 検出のための指標E(s)を求めるスクリプト
# 参考:
# 著者名 論文名 雑誌名 ISSN 出版者名 出版日付 巻 号 ページ URL URL(DOI)
# 池田 和史,服部 元,松本 一則: マーケット分析のためのTwitter投稿者プロフィール推定手法, 情報処理学会論文誌 コンシューマ・デバイス&システム Vol.2 No.1, pp.82-93 (2012).
# Matsumoto, K. and Hashimoto, K.: Schema Design for Causal Law Mining from Incomplete Database, Proc. Discovery Science: 2nd International Conference(DS'99'), pp.92-102 (1999).
class AIC
def initialize(n11, n12, n21, n22)
@n11 = n11
@n12 = n12
@n21 = n21
@n22 = n22
@np = @n11 + @n12
@nn = @n21 + @n22
@ns = @n11 + @n21
@nns = @n12 + @n22
@n = @np + @nn
end
def calc_aic_im
mll_im = @np * Math.log(@np) + @ns * Math.log(@ns) + @nn * Math.log(@nn) + @nns * Math.log(@nns) - 2 * @n * Math.log(@n)
aic_im = -2 * mll_im + 2 * 2
return aic_im
end
def calc_aic_dm
mll_dm = @n11 * Math.log(@n11) + @n12 * Math.log(@n12) + @n21 * Math.log(@n21) + @n22 * Math.log(@n22) - @n * Math.log(@n)
aic_dm = -2 * mll_dm + 2 * 3
return aic_dm
end
def calc_es
aic_im = calc_aic_im()
aic_dm = calc_aic_dm()
if ((@n11.to_f / @ns) > (@n12.to_f / @nns)) then
es = aic_im - aic_dm
elsif ((@n11.to_f / @ns) <= (@n12.to_f / @nns)) then
es = aic_dm - aic_im
end
return es
end
end
if $0 == __FILE__
# Sample from マーケット分析のためのTwitter投稿者プロフィール推定手法
n = [
[261, 61, 639, 2640], # 模試 => 500.3
[70, 819, 830, 1882], # ビール => -216.6
[17, 51, 883, 2650] # バケツ => -2.0
]
n.each do |n11, n12, n21, n22|
aic = AIC.new(n11, n12, n21, n22)
p aic.calc_es().round(1)
end
# Sample from Schema Design for Causal Law Mining from Incomplete Database
n = [
[80, 20, 600, 300], # (a) AIC_DM => 1901.97, AIC_IM => 1907.90
[70, 30, 600, 300], # (b) AIC_DM => 1924.06, AIC_IM => 1922.52
[8, 2, 60, 30] # (c) AIC_DM => 195.60, AIC_IM => 194.39
]
n.each do |n11, n12, n21, n22|
aic = AIC.new(n11, n12, n21, n22)
p aic.calc_aic_dm().round(2)
p aic.calc_aic_im().round(2)
end
end
以上是关于ruby 検出のための指标E(s)を求めるスクリプト特特特特特特特))的主要内容,如果未能解决你的问题,请参考以下文章
ruby 调整さん(https://chouseisan.com/)に日付を打ち込むための补助スクリプト。それぞれの日付に「午后」「夕方」を付けています。
sh HomebrewでMacのセットアップをするためのスクリプト
sh 减价でファイルリスト一覧リンクを作るためのシェルスクリプト(到位桶用)
ruby 丸囲み文字が我慢できないときに,红宝石で置换するスクリプト
ruby 维基百科とHatena的のキーワードファイルから仲裁处の辞书フォーマット(CSV)に変换するスクリプト。
sql mysqlでカラムが存在すればDROP COLUMNするスクリプト