日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

bogofilter notes

發布時間:2025/3/21 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 bogofilter notes 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

naive貝葉斯

前提假設:郵件中出現的各個詞之間完全獨立、不相關。

【前提假設未必正確但此模型效果很好】

(貝葉斯公式)

上式左端理解為F1, F2,,,,Fn同時出現時, 屬于類別C的概率。

式中分子就是

根據前提假設F之間獨立,因此

p(Fi|C, Fj)理解為當Fj出現在類別C中時,Fi的條件概率

因此判別由單詞F1,,,Fn構成的待識別郵件屬于哪個類, 可以求使得上式最大的C即可

當只有兩類:垃圾郵件C1、正常郵件C2時,可以直接計算p(C1|F1,F2,,,Fn)p(C2|F1,F2,,,Fn)

http://en.wikipedia.org/wiki/Naive_Bayes_classifier

?

在使用貝葉斯實現bogofilter中, 只需要求p(垃圾類|待識別郵件)

對應的,C就表示垃圾類別; p(C)就表示垃圾樣本數/總樣本數, p(Fi|C)表示第i個詞出現在垃圾郵件樣本中的概率。

如果計算得到的p很大,超過spam_cutoff就認為是垃圾郵件.

robinson-fisher算法改進

robinson-fisher算在在傳統na?ve bayes的基礎之上逐步做了如下幾點改進:

1 使用f(w)代替p(w):

p(w)表示w在垃圾郵件中出現的概率(就是p(Fi|C));使用fw代替pw

pw = ((bad / badmsgs) / (bad / badmsgs + good / goodmsgs));

假設ham10 spam20

wham中出現4 good

wspam中出現2bad

那么pw就是0.2

fw計算公式:

? ??(s * x) + (n * p(w))
f(w) = --------------------
??????? ? ? ? s + n?

sx都是robinson系數robs,robx; nw出現的總次數

#define ROBS??????? 0.0178? /* Robinson's s */

#define ROBX??????? 0.52??? /* Robinson's x */

這兩個值可以使用bogofilter根據我們的樣本庫來得到推薦值。

?

對應bogofilter的代碼如下:

//good表示w出現在ham中的次數,bad則為在spam中的次數??

uint n = good + bad;

fw = (robs * robx + n * pw) / (robs + n);

//src/score.c

?

2 robinson改進貝葉斯鏈的計算公式

貝葉斯鏈就是計算

C表示垃圾郵件類別; 當該值大于spam_cutoff時就認為是垃圾郵件

?

?

robinson改進

P = 1 - ((1-p1)*(1-p2)*...*(1-pn))^(1/n)???? [spamminess]
Q = 1 - (p1*p2*...*pn)^(1/n)???????????????? [non-spamminess]
S = (P - Q) / (P + Q)??????????????????????? [combined indicator]

S代表待識別郵件屬于垃圾郵件的概率。(p1, p2, p3表示郵件中出現的單詞在垃圾郵件中的概率;實際bogofilter使用了第一個改進得到的fw代替pi

?

((1-p1)*(1-p2)*...*(1-pn))^(1/n), (p1*p2*...*pn)^(1/n) 表示開n次方,稱作robinson geometric mean, robinson幾何均值

?

S介于[-1,1]之間,可做線性處理成S = ?(1 + (P - Q) / (P + Q))/2

3 fisherP, Q,S的求法做了改進

如上P, Q, S的計算公式

改進之后的計算公式://src/score.c : get_spamicity

Fisher's method uses an inverse chi-squared function, prbx, to get the probability associated with -2 times the sum of the logs of f(w) with 2n degrees of freedom: P = prbx(-2 * sum(ln(1-f(w))), 2*n) Q = prbx(-2 * sum(ln(f(w))), 2*n) S = (1 + Q - P) / 2 ? ? Prbx, 就是函數gsl_cdf_chisq_Q(double x, double k), 計算k個符合標準正態分布的隨機變量之和x cummulative distribution(累積分布函數): 因此,prbx的作用就是下圖式中以第1個參數為橫坐標x, 第2個參數為k,得到其縱坐標 ? http://en.wikipedia.org/wiki/Chi-square_distribution http://linux.math.tifr.res.in/manuals/html/gsl-ref-html/gsl-ref_16.html ? code:(代碼中的prbf就是上文中的prbx) score.p_pr = prbf(-2.0 * score.p_ln, sp_df);???????? /* compute P */ score.q_pr = prbf(-2.0 * score.q_ln, ns_df);???????? /* compute Q */ score.spamicity = (1.0 + score.q_pr - score.p_pr) / 2.0; ? prbx作用同算術均值,幾何均值類似, 是一種更復雜的統計推斷方式:假設已有k個獨立、符合標準正態分布的隨機變量之和為x,推斷這k個隨機變量同時出現時這個標準正態分布函數的累積分布值,也就是屬于垃圾郵件的概率】 ? ? ? ?

4 優點/比較

http://www.bgl.nu/bogofilter/BcrFisher.html ????????? 改進1,2????????????? 改進1,2,3???????? Na?ve bayes Robinson-geometric-mean? Robinson-Fisher? Bayes Chain Rule ?????????? ---????????????????? ----????????????? -------- ????????? /??????????????????? /????????????????? | ???????? /??????????????????? |?????????????????? | ??????? /???????????????????? |?????????????????? | ?????? /???? ?????????????????|?????????????????? | ????? /?????????????????????? |?????????????????? | ???? /?????????????????????? /??????????????????? | ? ---??????????????????? ----????????????? -------- 圖中值均介于[0,1]之間, 為1表示肯定是垃圾郵件,為0表示是正常郵件。 使用樣本對檢驗上述三個算法效果圖如上。 第一個圖中[0, 0.55]被識別為正常郵件, [0.45, 1]被識別為垃圾郵件, 存在交集, 甚至無法選擇合適的spam_cutoff 第三個圖中絕大部分值都是0或者1if a mistake is made, the algorithm leaves almost no room to express doubt.【如果訓練樣本中存在無間道, 將對識別結果造成很大影響】 第二個圖【現有bogofilter按此實現】沒有第一、三的缺點。絕大多數spam得分接近1, 絕大多數ham得分接近0 [0.1, 0.9]之間為unsure,可以在其中選擇一個合適的閥值,spam_cutoff in [0.93, 0.98] ? ?

上圖是比較na?ve bayesbcr bayes chain rule,? 使用fw替代pwna?ve bayes, 以及robinson-fisher的測試結果圖

?

【使用robinson-fisher效果最好:

http://www.bgl.nu/bogofilter/BcrFisher.html

http://www.bogofilter.org/pipermail/bogofilter/2002-November/000699.html

Bogofilter 現版本使用了robinson-fisher算法計算一封郵件屬于垃圾郵件的概率

?

5 改進的理由/討論

1 fw代替pw fw包含了background info

Pw的含義是任意一封郵件包含單詞w時, 此封郵件是垃圾郵件的概率;

fw是如下二項式分布的數學期望值:已知單詞w出現了n次,在已有垃圾郵件中出現的概率是pw;那么第n+1次出現這封郵件時垃圾郵件的概率是多少【這個就是所謂的fw結合了backgroud info 因為每次出現w時只有兩種結果,垃圾郵件、非垃圾郵件; 且每次出現獨立不相關的,所以符合二項式分布; fw就是上述所求概率的期望】

http://www.linuxjournal.com/article/6467

?

2 使用P, Q, S代替bayes chain rules

Bayes chain rules把各個詞的出現看做是獨立的來計算這些詞同時出現時的垃圾概率【理想世界】

P, Q, S計算的是這些詞combined起來計算 probability

?

bogofilter基本用法

訓練

bogofilter -B ../sample_mail/non_spam_test/* -n -o0.00,0.99 -k 64 -d ./wordlist

-B 指明文件列表

-n 表示為正常郵件

-ospam_cutoff[,hamcutoff]

-k 指明BDB文件的大小

-d 指明wordlist所在目錄

./wordlist下的BDB文件作為內容特征輸入; 訓練完畢后./wordlist下的文件同時會被更新

不需要指明-u參數, 上述語句本身就是增量式訓練;

?

bogofilter -B ../sample_mail/non_spam_test/* -Ns -o0.00,0.99 -k 64 -d ./wordlist

將已訓練過的、non_spam_test下的郵件, 作為垃圾郵件重新訓練。

-N, unregister non-spam

-s, register-spam

?

?

bogofilter中查看bdb文件:

bogoutil -d wordlist

?

?

bogofilter分類:

bogofilter –B path –v –ov1[,v2] –d wordlist ; 從該命令行中輸出分析結果

?

說明

two state ?-o0.99,0.00 只分兩類, spam, ham
hamcutoff = 0 spamcutoff = 0.99,
得分大于0.99為垃圾郵件, 低于0.99為正常郵件

tristate? -o0.99,0.8:
分三類, spam, unsure, ham

hamcutoff = 0.8 spamcutoff = 0.99, 得分大于0.99為垃圾郵件, 低于0.8為正常郵件, (0.8, 0.99)之間判定為unsure

?

robx 對于新詞給的預定概率: 初始值為0.5,表示該詞出現在垃圾郵件中的概率是0.5
robs
低于該閥值的作為新詞對待

?

?

SP_ESF, effective size factor(ESF) from spam
NS_ESF, effective size factor(ESF) from nonspam
bogofilter
中默認值均為1.0

?

垃圾郵件識別有兩種錯誤:

False negative(fn), 將垃圾郵件識別為非垃圾郵件;漏報

False positive(fp), 將非垃圾郵件識別為垃圾郵件; 誤報

bogotune 推薦參數

n=·ls nonspam | gawk {s = sprintf(“ %s –n %s”, s, $NF);}END{print s}·

Bogotune –C –d wordlist $n $s

?

?

config file中需要指定ignore file 包含停用詞、無關詞等

總結

以上是生活随笔為你收集整理的bogofilter notes的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 激情播播网| 国产丝袜视频在线观看 | www.中文字幕在线观看 | 日韩欧美一区二区视频 | 天天干天天干天天操 | 激情久久久久久 | 91精品国产高潮对白 | 97久久人澡人人添人人爽 | 国产老女人乱淫免费 | 粉嫩av网 | 中文字幕一级二级三级 | 欧美日韩黄色一区二区 | 丰满人妻一区二区三区53视频 | 亚洲午夜电影网 | 日韩爆操| 希岛婚前侵犯中文字幕在线 | 国产精品丝袜黑色高跟 | 久久久精品视频在线观看 | av中亚| 国产又黄又骚 | 两根大肉大捧一进一出好爽视频 | 91免费在线视频 | 日韩久久久久 | 亚洲影院一区 | 国产av电影一区二区 | 免费涩涩网站 | 久久精品视频中文字幕 | 完美搭档在线观看 | 国产一区二区三区四区三区四 | 婷婷丁香六月天 | 97在线免费观看视频 | 国产精品成人久久久久 | 无码精品国产一区二区三区 | 午夜精品一区二区三区三上悠亚 | 欧美做爰爽爽爽爽爽爽 | 全黄一级男人和女人 | 中文字幕综合 | 欧美 日韩 国产 激情 | 噜噜啪啪 | 开心激情网五月天 | 国产在线欧美 | 337p日本大胆噜噜噜噜 | 日本免费视频 | 999av| 99久久国产热无码精品免费 | 精品蜜桃一区二区三区 | 国产精品久久久久久亚洲色 | 久久er99热精品一区二区介绍 | 狠狠躁| 日日夜夜操av| 久久久久久久久久久国产 | 九九热精品视频在线播放 | 精品二区在线 | 亚洲无av在线中文字幕 | 精品一区二区欧美 | 日韩第一页在线观看 | 永久免费未满 | 黑丝久久 | 亚洲最大福利视频网 | 色老二导航 | 高清不卡一区 | 日本午夜精品 | 色av导航 | 四虎影视黄色 | 伊人天堂在线 | 日韩激情 | 人妻丰满熟妇av无码区hd | 精品国产1区| 污视频导航 | 热久久精品 | 日本美女日批视频 | 日韩色小说 | 欧美综合一区 | 性生活视频播放 | 国产懂色av | 欧美色综合天天久久综合精品 | 日本三级欧美三级 | 国产毛片毛片毛片毛片毛片毛片 | 国产日韩欧美视频在线 | 国产成人综合视频 | 激情伦成人综合小说 | 欧美亚洲第一页 | 国产日韩三级 | 青青草网址 | 中文字幕一区av | 亚洲免费视频一区二区三区 | 一出一进一爽一粗一大视频 | 怡红院院av| 久久精品99北条麻妃 | 亚洲一区二区三区人妻 | 久久国产成人精品 | 成人午夜免费福利 | 国产天堂网 | 国产精品影片 | 天天干网| 最新日韩三级 | 黄视频网站在线观看 | 嫩草视屏| 黄色网战入口 |