一种反垃圾邮件的方法和系统的制作方法

文档序号:6531732阅读:118来源:国知局
专利名称:一种反垃圾邮件的方法和系统的制作方法
专利说明一种反垃圾邮件的方法和系统 本发明涉及电子邮件技术领域中的垃圾邮件处理技术,特别涉及一种反垃圾邮件的方法和系统。目前像因特网这样的全球通信网络为广大咨询销售公司等等带来了商机。电子邮件作为散布广告和宣传的手段也越来越收到商家的欢迎。这样导致网络上垃圾邮件越来越泛滥,极大地浪费了网络带宽、邮件使用者的处理时间、以及系统资源,使使用者不胜其烦,已经成为阻碍网络基础应用的一大难题。
用于阻止垃圾邮件的关键技术是使用过滤系统。目前,基于邮件内容的垃圾邮件过滤大都采用关键字统计的方法。贝叶斯过滤法是使用频率最高,过滤效果最明显的一种基于关键字的邮件过滤办法,其中包括了从一开始的稚嫩贝叶斯过滤法到后来的种种改进形式。贝叶斯过滤法是通过对一定量的已知垃圾邮件和非垃圾邮件进行学习,生成一套贝叶斯学习库,然后利用贝叶斯公式结合贝叶斯学习库来判断一封邮件是否为垃圾邮件的方法,具有不断自学习的能力。
对于一些垃圾邮件过滤网关(有专门针对每个用户的,也有针对许多用户的,比如某几个域内所有用户的),可以根据它们的实现方式分别归入邮件客户端或服务器端。邮件客户端是用于帮助用户在其本地接收、发送和管理邮件的软件产品。邮件服务器用于负责接收和发送某个域内所有用户的邮件。
在邮件客户端利用贝叶斯法进行垃圾邮件的过滤,主要包括首先在本邮箱中获取垃圾邮件样本,然后在邮件客户端进行贝叶斯学习,生成贝叶斯学习库。当邮件客户端从邮件服务器上收到新邮件后,利用贝叶斯学习库对新邮件进行过滤。最后将被判断的垃圾邮件放入垃圾箱中,将正常邮件放入收件箱中。缺点是邮件需要接收到用户本地后才能开始过滤,需要占用大量网络带宽和用户系统资源,延长邮件的接收时间,降低了用户的使用体验。
在邮件服务器端利用贝叶斯法进行垃圾邮件的过滤,主要包括首先对某个域内的所有用户的邮件范围内获取邮件样本,进行贝叶斯学习,生成同一套贝叶斯学习库。然后对到达邮件服务器的所有新邮件利用该学习库进行过滤。缺点是由于一封邮件是否为垃圾邮件对每个用户来说判断标准并不完全相同,比如,某种广告邮件,对一小部分用户来说,正好是他所需要的,但对大部分用户却是垃圾邮件。这样采用同一套贝叶斯库对一些用户就会降低垃圾邮件的识别率和提高非垃圾邮件的误判率。
同时,要最大限度的实现过滤垃圾邮件同时减少误判率,就需要不断的对已知垃圾邮件和非垃圾邮件进行学习,而且需要加强针对每个用户的非垃圾邮件样本的学习。因为对于邮件来说,将一份非垃圾邮件误认为垃圾邮件造成的后果比将垃圾邮件误认为是非垃圾邮件要大许多。现有技术就没有做到这一点。本发明的目的在于提供一种基于邮件客户端与服务器相结合的方式、可实现针对每个用户需求的反垃圾邮件方法和系统,可以克服现有技术的缺陷。
本发明解决其技术问题所采用的技术方案是一种反垃圾邮件的方法,包括步骤101,邮件学习模块对存储在邮件客户端的邮件样本进行特征学习,并将学习结果发送到邮件服务器;102,邮件服务器将所述最新学习结果与该邮件客户端的原有特征库整合,形成最新特征库;103,垃圾邮件过滤器采用所述最新特征库对邮件服务器接收到的对应邮件客户端的新邮件进行过滤。
所述邮件样本,是邮件学习模块根据邮件管理配置定时扫描存储在邮件客户端的邮件后筛选出的一些垃圾邮件和非垃圾邮件,或是用户手工筛选的邮件。
对以前已经扫描过的邮件不再进行扫描。
步骤101中,采用贝叶斯法对所述邮件样本进行学习,生成最新贝叶斯学习库,并将该学习库发送到邮件服务器。
步骤103进一步包括,邮件服务器将过滤出来的垃圾邮件存储于服务器端的垃圾邮件回收站中,将正常邮件存储于服务器端对应用户的收件位置。
作为本发明的一个改进,邮件服务器同时生成一个包括垃圾邮件特征信息的列表,存储于对应邮件客户端收件位置。
作为本发明的另一个改进,邮件客户端存储最近一段时间内的学习结果。
本发明还提供了一种反垃圾邮件系统,包括邮件学习模块,设置在邮件客户端,用于筛选出一些垃圾邮件和非垃圾邮件作为邮件样本,并对所述邮件样本进行特征学习,生成最新学习库,再将该学习库发送到邮件服务器;特征规范模块,设置在邮件服务器端,用于将所述最新学习库与该邮件客户端的原有特征库进行整合,形成该用户的最新特征库;垃圾邮件过滤器,设置在邮件服务器端,其采用所述该用户的最新特征库对邮件服务器接收到的对应邮件客户端的新邮件进行过滤。
本发明系统还包括垃圾邮件回收站,设置在邮件服务器端,用于存储邮件服务器所过滤出来的垃圾邮件。
本发明系统还包括学习库存储器,设置在邮件客户端,用于存储最近一段时间内的学习结果。
本发明通过邮件客户端和邮件服务器端的共同配合来过滤垃圾邮件,垃圾邮件在服务器端就被过滤掉,不需要再接收到用户本地,减少网络带宽的使用,缩短了邮件的接收时间,提升用户体验。在邮件服务器上为每个用户都设有一个对应该用户的最新贝叶斯学习库。,这样可以在提高垃圾邮件过滤率的同时,降低非垃圾邮件的误判率。同时,由于整个学习和过滤过程几乎都不需要用户参与,所以每次对用户邮件进行学习时对用户系统的影响都很小,用户基本感觉不到本系统在运行,减少用户负担。

图1是本发明一种反垃圾邮件系统的系统结构示意图。
图2是本发明一种反垃圾邮件方法的实现流程图。下面根据附图和具体实施例对本发明作进一步阐述。
如图l所示,本发明系统主要包括邮件学习模块11、学习库存储器12、特征规范模块21、垃圾邮件过滤器22和垃圾邮件回收站23。
其中,邮件学习模块11设置在邮件客户端10,用于对邮件样本进行特征学习,生成最新学习库,再将该学习库发送到邮件服务器20。所述邮件样本,可以是邮件学习模块11根据邮件管理配置定时扫描存储在邮件客户端10的邮件后,根据内部的一些算法和策略自动筛选出的一些垃圾邮件和非垃圾邮件,也可以是用户手工筛选的垃圾或非垃圾邮件。比如用户在邮箱中选择一批邮件,然后点击邮件客户端10操作面板上的“学习好邮件”或“学习垃圾邮件”之类的按钮让系统学习。当用户手工筛选时,邮件学习模块11被即时触发,对邮件样本进行学习,并把学习结果发送到邮件服务器20。一般情况下,邮件学习模块11根据配置定时(比如每天系统启动后)进行筛选邮件样本,学习,并把学习结果发送到邮件服务器20。为了提高系统效率,降低对系统资源的浪费,在自动筛选邮件样本时,对以前扫描过的邮件不再进行扫描。所述邮件管理配置是在邮件客户端10安装后自动生成的,用户可以自行进行修改配置。邮件系统的管理员也可以通过本系统由邮件服务器20端统一更新下发管理配置,这样就不需要用户参与,不会为用户带来额外负担。
学习库存储器12,设置在邮件客户端10上,用于存储最近一段时间内的学习结果。正常情况下,邮件客户端10每天都会生成一个新的学习库,并上传给邮件服务器20端。邮件服务器20在收到新的学习库后会回复一个接收成功与否的回应。有时候可能因为各种原因,比如网络问题等导致邮件服务器20端没有接收到某个客户端的学习库,这时就需要邮件客户端10重新上传一下这些库。因此,学习库存储器12主要用于容错。
特征规范模块21,设置在邮件服务器20端,用于接收每个客户端发送过来的最新学习库,并将对应最新学习库与对应邮件客户端10的原有特征库进行整合,形成每个邮件客户端10的最新特征库,存储在邮件服务器20上。
垃圾邮件过滤器22,设置在邮件服务器20端,用于利用每个邮件客户端10的最新特征库对邮件服务器20接收到的对应邮件客户端10的新邮件进行过滤。
垃圾邮件回收站23,设置在邮件服务器20端,用于存储邮件服务器20所过滤出来的垃圾邮件。一般每个邮件客户端10都在邮件服务器20上的垃圾邮件回收站23里拥有一个标注为垃圾邮箱的目录(或文件)。用户可以通过WebMail对这些垃圾邮件进行检查,重新收取系统误判的邮件。
当然,邮件服务器20端一定还包括邮件客户端收件位置24,用于存储垃圾邮件过滤器22过滤出来的正常邮件,等待对应邮件客户端到此位置收取新邮件。
由实践证明,贝叶斯过滤法是使用频率最高,过滤效果最明显的一种基于关键字的邮件过滤办法,因此在本发明较佳实施例中,采用贝叶斯法进行特征学习。如图2所示,本发明方法的实现流程如下首先,用户在计算机上安装运行邮件客户端10。
第110步,用户每次启动邮件客户端10后或根据配置在固定时间,邮件学习模块11扫描邮箱中邮件,自动筛选邮件样本,或用户手工筛选邮件样本。
第120步,邮件学习模块11对选出来的邮件样本进行贝叶斯学习。
第130步,生成最新的贝叶斯学习库。
第140步,将新生成的贝叶斯学习库上传到邮件服务器20,同时存储到学习库存储器12中。
第150步,邮件服务器20接收各邮件客户端10发送过来的最新贝叶斯学习库。
第160步,特征规范模块21将各最新学习库与对应邮件客户端10的原有特征库进行整合,形成每个邮件客户端10的最新特征库。
第170步,邮件服务器20接收新邮件并分类(判断其属于哪个用户)。
第180步,垃圾邮件过滤器22利用每个邮件客户端10的最新特征库对邮件服务器20接收到的对应邮件客户端10的新邮件进行过滤,将垃圾邮件存储在垃圾邮件回收站23中,将正常邮件存储于服务器端对应用户的收件位置24。这样,邮件客户端10在收取邮件时,只收取到非垃圾邮件,并不收取垃圾邮件。
作为本发明的一个改进,邮件服务器20将垃圾邮件存储在垃圾邮件回收站23后,会自动生成一个包括有垃圾邮件特征信息,如发件人信息,邮件标题等的列表,存储于对应邮件客户端收件位置24。这样用户在收取邮件时,就可以得到被列为垃圾邮件的所有信息,如果发现有误判的邮件,可以通过WebMail进行收取。这样也可以不断提高系统的过滤能力。
作为本发明的另一种改进,系统内部采用了一系列优化算法,比如在系统负荷很小的情况下才进行学习,学习时把使用的CPU时间保持在某个比较低的值,使得每次对用户邮件进行学习时对用户系统的影响都很小,使用户基本感觉不到本系统在运行,减少用户负担。
根据一些大型邮件系统实际运行中的统计数据显示,当针对每个用户都使用一套他自己的贝叶斯学习库进行过滤,垃圾邮件的过滤率超过99.4%,非垃圾邮件的误判率不超过0.8%;但当10万用户共用一个贝叶斯库时,垃圾邮件的过滤率下降为低于90%,非垃圾邮件的误判率超过7%。由此可见对每个用户使用一套其自己的贝叶斯库的过滤效果显著高于多个用户使用同一个贝叶斯库。
本发明通过邮件客户端10和邮件服务器20端的共同配合来过滤垃圾邮件,每个用户都有自己的一个贝叶斯库,且垃圾邮件不再被收取到邮件客户端10,而增加针对每个用户的非垃圾邮件样本的学习,有效减少网络带宽的使用、缩短了邮件的接收时间、提升用户体验,在提高垃圾邮件过滤率的同时,降低非垃圾邮件的误判率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
权利要求
1.一种反垃圾邮件的方法,其特征在于包括步骤101,邮件学习模块(11)对存储在邮件客户端(10)的邮件样本进行特征学习,并将学习结果发送到邮件服务器(20);102,邮件服务器(20)将所述最新学习结果与该邮件客户端(10)的原有特征库整合,形成最新特征库;103,垃圾邮件过滤器(22)采用所述最新特征库对邮件服务器(20)接收到的对应邮件客户端(10)的新邮件进行过滤。
2.根据权利要求1所述的反垃圾邮件的方法,其特征在于所述邮件样本,是邮件学习模块(11)根据邮件管理配置定时扫描存储在邮件客户端(10)的邮件后筛选出的一些垃圾邮件和非垃圾邮件,或是用户手工筛选的邮件。
3.根据权利要求2所述的反垃圾邮件的方法,其特征在于对以前已经扫描过的邮件不再进行扫描。
4.根据权利要求1所述的反垃圾邮件的方法,其特征在于步骤101中,采用贝叶斯法对所述邮件样本进行学习,生成最新贝叶斯学习库,并将该学习库发送到邮件服务器(20)。
5.根据权利要求1所述的反垃圾邮件的方法,其特征在于步骤103进一步包括,邮件服务器(20)将过滤出来的垃圾邮件存储于服务器端的垃圾邮件回收站(23)中,将正常邮件存储于服务器端对应用户的收件位置。
6.根据权利要求5所述的反垃圾邮件的方法,其特征在于邮件服务器(20)同时生成一个包括垃圾邮件特征信息的列表,存储于对应邮件客户端收件位置(24)。
7.根据权利要求1所述的反垃圾邮件的方法,其特征在于邮件客户端(10)存储最近一段时间内的学习结果。
8.一种反垃圾邮件系统,其特征在于包括邮件学习模块(11),设置在邮件客户端(10),用于筛选出一些垃圾邮件和非垃圾邮件作为邮件样本,并对所述邮件样本进行特征学习,生成最新学习库,再将该学习库发送到邮件服务器(20);特征规范模块(21),设置在邮件服务器(20)端,用于将所述最新学习库与该邮件客户端(10)的原有特征库进行整合,形成该用户的最新特征库;垃圾邮件过滤器(22),设置在邮件服务器(20)端,其采用所述该用户的最新特征库对邮件服务器(20)接收到的对应邮件客户端(10)的新邮件进行过滤。
9.根据权利要求8所述的反垃圾邮件系统,其特征在于还包括垃圾邮件回收站(23),设置在邮件服务器(20)端,用于存储邮件服务器(20)所过滤出来的垃圾邮件。
10.根据权利要求8所述的反垃圾邮件系统,其特征在于还包括学习库存储器(12),设置在邮件客户端(10),用于存储最近一段时间内的学习结果。
全文摘要
本发明涉及电子邮件技术领域中的垃圾邮件处理技术,特别涉及一种反垃圾邮件的方法和系统。一种反垃圾邮件的方法,包括步骤101,邮件学习模块对存储在邮件客户端的邮件样本进行特征学习,并将学习结果发送到邮件服务器;102,邮件服务器将所述最新学习结果与该邮件客户端的原有特征库整合,形成最新特征库;103,垃圾邮件过滤器采用所述最新特征库对邮件服务器接收到的对应邮件客户端的新邮件进行过滤。本发明通过邮件客户端和邮件服务器端的共同配合来过滤垃圾邮件,减少网络带宽的使用,缩短邮件的接收时间,提升用户体验、减少用户负担。提高垃圾邮件过滤率的同时,降低非垃圾邮件的误判率。
文档编号G06Q10/00GK1941746SQ200510037520
公开日2007年4月4日 申请日期2005年9月27日 优先权日2005年9月27日
发明者徐嘉键, 李光, 柯军严, 冯晓勇 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1