查看完整版本: 《梭子鱼用户大学》系列课程:第三章 第一节

dual 2007-11-5 11:09

《梭子鱼用户大学》系列课程:第三章 第一节

[align=left][size=2][b][size=4][color=red]第三章 第一节:贝叶斯算法及贝叶斯过滤模块的使用[/color][/size]
[/b][/size][/align][align=left][size=2][/size] [/align][align=left][size=2][/size] [/align][align=left][size=2][b]贝叶斯算法介绍[/b]:贝叶斯是基于概率的一种算法,是一位伟大的数学大师thomas bayes所创建的,目前此种算法用于过滤垃圾邮件得到了广泛地好评。贝叶斯过滤器是基于“自我学习”的智能技术,能够使自己适应垃圾邮件制造者的新把戏,同时为合法电子邮件提供保护。在智能邮件过滤技术中,贝叶斯(bayesian)过滤技术取得了较大的成功,被越来越多地应用在反垃圾邮件的产品中。 [color=#0000ff] [/color][/size][/align][align=left][size=2][/size] [/align][align=left][size=2][color=#0000ff][b]贝叶斯算法原理[/b]:[/color][color=#000000]贝叶斯算法是收集大量的垃圾邮件和非垃圾邮件,建立垃圾邮件集和非垃圾邮件集。首先使用常规的分词手段和程序将一段文字或内容切词(tokenize)成一些单词字符串(token串),然后用数学方法建立哈希表对应两个集,通过对token串的出现频率的统计和token串本身的好坏评分设置,来计算出整体语段既文章内容的偏向概率,即偏向于非垃圾邮件集的整体评价为负分;偏向于垃圾邮件集的整体评价为正分,这其中它要对每个token串和出现次数进行统计计算,最后复合所有token串的结果总和。[/color][/size][/align][align=left][size=2]    如果要更详细的了解其中的过程,请查看:[/size][url=http://www.5dmail.net/html/2006-5-18/2006518234548.htm][size=2][color=#666666]http://www.5dmail.net/html/2006-5-18/2006518234548.htm[/color][/size][/url][/align][align=left][size=2][color=#666666][/color][/size] [/align][align=left][size=2][b]梭子鱼的贝叶斯模块[/b]:[/size][/align][align=left]    [size=2]梭子鱼的贝叶斯模块分为全局的贝叶斯库和分用户的贝叶斯库两大部分。其中400以下型号只有全局贝叶斯库。[/size][/align][align=left]    [size=2]使用梭子鱼的贝叶斯模块进行判断垃圾邮件之前,必须先培训一部分垃圾邮件和正常邮件集来提供给系统判断依据。梭子鱼系统上的贝叶斯模块默认是不工作的,必须在培训的垃圾邮件和正常邮件集超过200封才开始启动。见如图全局贝叶斯库(基本设置——贝叶斯/意图分析):[/size][/align][align=left][size=2][/size][/align][align=left][size=2][color=#0000ff][img]http://www.barracudanetworks.com.cn/editor/uploadfile/2007428173132549.gif[/img][/color][/size][/align][align=left][size=2][color=#0000ff][/color][/size] [/align][align=left][size=2][color=#0000ff][/color][/size] [/align][align=left][size=2][color=#0000ff][b]梭子鱼贝叶斯库的培训[/b]:[/color][/size][/align][align=left][size=2][color=#0000ff][/color][/size] [/align][align=left][size=2]    梭子鱼全局贝叶斯库的培训在邮件日志中。每条邮件日志记录前面都有一个选择框,可以手工选择其,点击“垃圾邮件”或“正常邮件”按钮将其培训/归类为垃圾邮件或正常邮件。但是必须是邮件分类是“未知”的才能培训,如果是“[color=#0000ff][color=#000000]n/a[/color][/color]”的则不能对其进行培训[color=#0000ff][color=#000000]/归类。[/color][/color][/size][/align][align=left][size=2][color=#0000ff]
[/color][/size][/align][align=left][size=2][color=#0000ff][img]http://www.barracudanetworks.com.cn/editor/uploadfile/2007428173149736.gif[/img][/color][/size][/align][align=left][size=2][color=#0000ff]
[/color][/size] [/align][align=left][size=2][color=#0000ff]
[/color][/size] [/align][align=left][size=2][color=#0000ff][b]优化梭子鱼贝叶斯库[/b]:[/color][/size][/align][align=left][size=2][color=#0000ff]
[/color][/size] [/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]在梭子鱼贝叶斯库的培养当中,需注意以下几点:[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]1.尽量培训信体正文含有普通文字内容的邮件。有些邮件往往只有一个标题,没有正文或正文只有寥寥几字,或只有带有附件,或者只包含一些图片及链接;这种邮件的培训后的效果是很低的,没有价值,原因我们也知道了,因为不能获取有价值的token串和频率。[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]2.尽量不要培训单封邮件信体正文内容文字很长(比如超过5k-10k的正文),一般文字内容重复很多的邮件,这种样本如果培训到贝叶斯库中,因为其中包含了巨大量的token串,会对贝叶斯库整体的评分侵向有较大的影响,很可能减低你贝叶斯库的精准性。[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]3.尽量不要对前后收到的同一类或信体近似的邮件做前后不同的归类判断。[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]4.不需要对同一封垃圾邮件的不同副本做过多次数的重复培训。一般来说,如果有一封类似的垃圾邮件多次进入并没有正确被阻断,只要培训一到两次就可以了,因为贝叶斯的正负评分值范围是有上限的,一般培训了两三次之后就对里面的token串加权了比较高的分值了,如果重复加权次数过多,会影响对其他词语和词序的评分。[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#000000]    如果碰到有垃圾邮件培训后分值还不能达到阻断分值得,可以考虑降低总的阻断分值,或采用其他方法来阻断它,比如黑白名单,自定义关键词的设定等。[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]5.贝叶斯库不是越大越多条数越好,控制在精确才是最有效的。如果数据过多,反而会使机器处理速度大受影响,效率大大降低,得不偿失了。一般的来说控制在500条以上,2000条以下是比较适合的。[/color][/size][/color][/align][align=left][color=#0000ff][size=2][color=#0000ff]    [/color][color=#000000]6.要注意贝叶斯库的时效性。应为垃圾邮件的时效性是很强的,往往过了几个月后垃圾邮件就面貌全新了,这时根据以往垃圾邮件词语培训起来的贝叶斯库可能判断的准确率就下降了。这个时候,最好是不要可惜,直接“重新初始化”来重新开始培训一个全新的贝叶斯库。如果你没有那么多的时间和精力,那也可以在原来库的基础上一直细水流长的培训下去,也是能改善整体效果不落后的。不过相对就受原贝叶斯库的干扰,精准性没有重新培训的来的好了。[/color][/size][/color][/align][align=left][size=2][color=#0000ff]
[/color][/size] [/align][align=left][size=2][color=#0000ff]
[/color][/size] [/align][align=left][size=3][b]梭子鱼分用户贝叶斯库[/b]:[/size][/align][align=left][size=3][/size] [/align][align=left][size=3]    在400以上高级梭子鱼型号当中,每个有隔离区帐号的用户可以培训自己的分用户贝叶斯库,除了在其隔离邮件列表界面中可以进行操作外,也可以下载一个梭子鱼的outlook插件或lotus notes插件进行培训操作。要下载插件,管理员必须在基础设置——贝叶斯/意图分析菜单中开放插件的下载,如图:[/size][/align][align=left][size=3][/size][/align][align=left][size=3][img]http://www.barracudanetworks.com.cn/editor/uploadfile/200742817329609.gif[/img][/size][/align][align=left][size=3][/size] [/align][align=left][size=3]开放后,普通用户即可在梭子鱼登陆界面看到下载链接。如图:[/size][/align][align=left][size=2][size=+0][img]http://www.barracudanetworks.com.cn/editor/uploadfile/2007428173218306.gif[/img][/size][/size][/align]
页: [1]
查看完整版本: 《梭子鱼用户大学》系列课程:第三章 第一节