网页自动分类方法和系统的制作方法

文档序号:6597340阅读:164来源:国知局

专利名称::网页自动分类方法和系统的制作方法
技术领域
:本发明涉及搜索引擎市场营销、网络链接交换和网页自动分类等互联网领域,特别是涉及一种网页自动分类方法和系统,其运用统计方法对网页进行自动搜索、内容分析和相关性分类。
背景技术
:与相关的网页进行链接交换,可以提高网站流量,增加网站知名度,提高搜索引擎的排名,是搜索引擎市场营销(SearchEngineMarketing,SEM)中应用最为普遍的一种技术手段。但是,如何获取高质量、和客户网页内容相关性高的链接,是目前这一技术手段的难题。目前的搜索引擎优化(SearchEngineOptimization,SE0)技术都是通过手动查找、第三方推荐等人工手段进行链接交换,但当需要处理的网页数量达到一定规模时,人工手段往往会有以下缺陷1.准确率低,人工分类很大程度上由操作人员的主观决定;2.效率低下,耗费大量人工和资源,会给客户服务部门的分析人员造成很大的工作压力;3.在数据量巨大的情况下手工基本上难以实现。
发明内容本发明要解决的技术问题是为了克服现有技术的准确率低、效率低下和不适用于数据量巨大的情况等缺陷,提供一种网页自动分类方法和系统。本发明是通过下述技术方案来解决上述技术问题的一种网页自动分类方法,其特点在于,其包括以下步骤Si、搜索与客户网页相关的网站网页,并对搜索到的网页内容进行分解,从中抓取出网页的标题和变数据信息,形成网页列表集合;S2、对所述网页列表集合中的文字进行预处理和分词处理,形成分类关键词列表集合;S3、统计所述分类关键词列表集合中的分类关键词在所有网页中出现的频率,使每一个网页对应一个分类关键词频率向量,该分类关键词频率向量为一个一维数组,该数组中每个元素对应的是某个分类关键词在该网页中出现的频率;S4、建立统计模型,计算各目标网页和客户网页之间的分类关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。较佳地,在步骤S4之后还包括一步骤S5:将相关度达到要求的网页存储到数据库中,并自动发送给客户,用于设置交换链接。较佳地,步骤Sl还包括以下步骤S11、人工选取出客户网页中的η个搜索关键词,将每个搜索关键词向搜索引擎提交,基于搜索结果得到URL集合;S12、使用网页抓取工具抓取出URL集合中各网页的标题和变数据信息,形成网页列表集合。较佳地,步骤S2中对所述网页列表集合中的文字进行预处理包括以下步骤删除网页中所有的广告等明显无关文字内容、标点符号、非中文字符、数字以及停用词等。较佳地,步骤S2中对经过预处理的文字进行分词处理包括以下步骤S21、以每个网页作为样本,将网页的标题和变数据信息中的所有单独的字分别作为一个词,即一元分词;将两个或两个以上的汉字组成一个词,即二元分词或η元分词,其中η>2;将得到的所有词组成一个集合;S22、重复步骤S21,得到所有网页的分类关键词列表集合。较佳地,步骤S4中,在计算各目标网页和客户网页之间的分类关键词频率向量距离之前,还包括以下步骤通过主成分分析和相互信息分析方法来去掉无关的分类关键词频率向量值。较佳地,步骤S4中,所述相关度为由统计模型所计算出来的一个函数,该函数与分类关键词频率向量相关,该函数的值是从0到1的实数,1表示最大的相关度,0表示最小的相关度。较佳地,对所述相关度设置一个阀值,当相关度大于等于该阀值时,即认为相关,当相关度小于该阀值时,即认为不相关,从而对各目标网页进行自动分类相关或者不相关。较佳地,步骤S4中建立统计模型并计算相关度采用如下算法中的一种或几种支持向量机、线性判别分析、二次判别分析、分类树分析、K最近邻分类算法和K最近质点分类算法。本发明提供的另一技术方案为一种网页自动分类系统,其特点在于,其包括网页采集模块,用于搜索与客户网页相关的网站网页,并对搜索到的网页内容进行分解,从中抓取出网页的标题和变数据信息,形成网页列表集合;网页处理模块,用于对所述网页列表集合中的文字进行预处理和分词处理,形成分类关键词列表集合;频率统计模块,用于统计所述分类关键词列表集合中的分类关键词在所有网页中出现的频率,使每一个网页对应一个分类关键词频率向量,该分类关键词频率向量为一个一维数组,该数组中每个元素对应的是某个分类关键词在该网页中出现的频率;自动分类模块,用于建立统计模型,计算各目标网页和客户网页之间的分类关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。较佳地,该系统还包括一输出模块,用于将相关度达到要求的网页存储到数据库中,并自动发送给客户,用于设置交换链接。较佳地,该网页处理模块还包括一预处理模块,用于删除网页中所有的广告等明显无关文字内容、标点符号、非中文字符、数字以及停用词等。较佳地,该网页处理模块还包括一分词处理模块,用于以每个网页作为样本,将网页的标题和变数据信息中的所有单独的字分别作为一个词,即一元分词;将两个或两个以上的汉字组成一个词,即二元分词或η元分词,其中η>2;将得到的所有词组成一个集合;重复前一步骤,得到所有网页的分类关键词列表集合。本发明的积极进步效果在于本发明利用人工智能(Artificiallntelligence),机器学习(MachineLearning)以及现代高等数学和统计学的算法,自动发现最优的基于无偏估计的网页,从而为客户推荐大量的优质潜在网页进行链接交换。经过实际数据的分析检验,本发明建立的分类统计模型成功率可以达到90%以上,完全满足客户进行高质量链接交换的要求。本发明还可以同时对多个客户的网站进行并行计算;而且可以覆盖非常广泛的客户群,例如医药、化工、体育、娱乐等各类行业的网站,对客户所在行业和网站规模没有任何限制。图1是本发明的网页自动分类方法的流程图。图2是本发明的网页自动分类系统的模块示意图。具体实施例方式下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案。本实施例以上海市机电工程公司的网站(以下简称机电网站)www.engineering,com为例,即以其为客户网站,为其提供相关度高的目标网页,以下公司名、网站URL及网页内容均为举例。如图1所示,本发明包括以下步骤S1、搜索与客户网页相关的网站网页,并对搜索到的网页内容进行分解,从中抓取出网页的标题和变数据信息,形成网页列表集合。而本实施例中,上述步骤S1可以具体通过以下步骤来实现。步骤101、经过与客户讨论以及对客户所在行业的分析后,人工挑选得到与客户网页内容特别相关的若干关键词,在此假设为100个关键词。选取这100个关键词组成集合K={k1;k2,k3,…,k1(K1}存在数据库中,例如ki=机电工程,k2=机电设计,k3=机械。另夕卜网址是URL=www.engineering,com。步骤102、将以上的每个关键词向搜索引擎提交,例如谷歌、百度、雅虎、必应等四大搜索引擎。对每一个关键词k,只保留前3页每页10个的共30个搜索结果,综合所有主要搜索引擎的结果并且去掉大量重复出现的网页,所以结果将远小于(搜索引擎个数)4X(关键词个数)100X(前3页的搜索结果)30=12000,假设最后得到的5000个网站网页,将它们以及机电网站共同组成集合υ=(URLjURLijURL2jURL3,…,URL5(1(1(1}存在数据库中。以上两步骤中的关键词称为搜索关键词,仅仅用于搜索得到URL集合,得到集合υ后不再使用。步骤103、使用网页抓取工具,该网页抓取工具为一个现有的计算机程序,该程序通过URL地址找到所对应的网页。HTML的每一个模块都是由不同的标签隔开标记出来的,例如网页标题(title)的内容是<title>上海市机电工程公司〈/title〉。则程序将自动识别标签〈title〉至标签〈/title〉以内的文字内容,抓取以下文字“上海市机电工程公司”。对步骤102中的集合U中所有的URL所对应的HTML网页内容进行抓取,网页抓取工具将抓取网页全部内容,并对内容进行分解,从中抓取网页的标题(title),变数据(meta)包括描述(description)禾口关键词(keywords)形成表1。表1<table>tableseeoriginaldocumentpage7</column></row><table>第一大步骤S1之后,为第二大步骤S2、对所述网页列表集合中的文字进行预处理和分词处理,形成关键词列表集合。本实施例中,上述步骤S2可以具体通过以下步骤来实现。此处的关键词列表集合中的关键词称为分类关键词,不同于前述的搜索关键词,下述步骤104-109所述的关键词均指分类关键词。步骤104、对表1中的文字进行预处理。a)去掉HTML网页内容里面的没有用处的标签、广告信息等与实际网页内容完全不相关的信息;b)删除所有的标点符号和各种非中文字符等;c)删除所有的数字;d)去除“的”“了”“得”之类的停用词,该停用词是由英文stopwords直译而来,也称过滤词filterwords,意为电脑检索中的虚字、非检索用字,指一些太常用以至没有任何检索价值的单词,搜索引擎碰到这些词时一般都会过滤掉。f)去除一些只在极少样本中的词,在本发明的算法中,只出现在一个网页中的生僻词被事先去掉。例如一个在工程相关的网页中若出现词“饲养员”,那这个词就属于该生僻词,它也许只出现在3000个网页的一个网页中,剩余2999个网页里面没有这个词。技术上,如果把这个词也包含在后面提到的关键词频率矩阵中的话,“饲养员”这列就只有它这一行是大于O的数,其他所有的行都是0,会增加频率矩阵的稀疏性(数学上矩阵元素中0越多,稀疏性越大),这将会造成数学处理的困难,而且还会带来一些无效的混乱的信息,所以一般要去掉。步骤105、对表1中经过步骤104“文字预处理”后的文字,进行分词处理。每个URL作为一个样本,对样本的文字信息进行量化,以“上海机电工程公司”为例a)一元分词把title,metadescription,metakeywords里面的所有单独的字分别作为一个词“上”,“海”,“市”,“机”,“电”,“工”,“程”,“公”,“司”。b)二元分词将两个汉字组成一个词“上海”,“海市”,“市机”,“机电”,“电设”,“设计”,“计公”,“公司”,去除其中无任何意义或不相关的词,最后得到“上海”,“机电”,“设计”,“公司”。c)三元分词将三个汉字组成一个词,并去除其中无意义或不相关的词,最后得到“上海市”。将以上a),b),c)得到的所有词组成一个集合L={“上”,“海”,“市”,“机”,“电”,“工”,“程”,“公”,“司”,“上海”,“机电”,“设计”,“公司”,“上海市”}。重复以上的步骤,得到所有网页的关键词列表集合L并存储到数据库中。第二大步骤S2之后,为第三大步骤S3、统计所述关键词列表集合中的关键词在所有网页中出现的频率,使每一个网页对应一个关键词频率向量,该关键词频率向量为一个一维数组,该数组中每个元素对应的是某个关键词在该网页中出现的频率。本实施例中,上述步骤S3可以具体通过以下步骤来实现。步骤106、对列表集合L中的所有关键词,统计其在所有网页中出现的频率,并且把每一个网页转化成一个关键词频率向量。在此处的一个URL网页对应一个关键词频率向量,该向量就如同一个一维数组,数组中每个元素对应的是某个关键词在此URL网页中出现的频率或者次数,例如从表2得知分类关键词“上海”在URL=www.engineering,com的网页内容中出现3次,然后所有的URL网页所对应的向量一起构成一个矩阵,成为关键词频率矩阵,存在数据库中。表2<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage9</column></row><table>这样,机电网站URL的向量值为(5,6,10,22,-,3,5,2,2,...,2,...^URL1的向量值为(2,0,4,5,-,1,3,2,1,…,1,…),URL2的向量值为(0,0,1,1,-,0,1,3,2,…,0,…),等等。第三大步骤S3之后,为第四大步骤S4、建立统计模型,计算各目标网页和客户网页之间的关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。本实施例中,上述步骤S4可以具体通过以下步骤来实现。步骤107、建立统计模型,建立目标网页与客户网页之间的相关性。并且验证模型准确性和效果。此处客户网页即为上海市机电工程公司的网站,目标网页即为搜索出的网站。在计算之前,还要再除掉一些无关的频率向量值,这不仅可以提高运算的速度,还可以大大提高分类的精确性。具体地可以通过主成分分析(PrincipleComponentAnalysis,PCA)和相互信息(MutualInformation,MI)来去掉这些无关的向量值。PCA和MI方法属于数据分析和信息理论领域非常成熟和普通的分析方法,利用该算法去除掉无关的频率向量值为本领域技术人员的公知技术。本发明中使用了6个分类(classification)的算法,通过计算目标网页和客户网页之间的向量距离来得到两者的相关性。这6种算法分别是·SupportVectorMachine(SVM,支持向量机)·LinearDiscriminantAnalysis(LDA,线性判别分析)·QuadraticDiscriminantAnalysis(QDA,二次判别分析)·ClassificationTree(分类树分析)·K-Nearest-Neighbor(KNN,K最近邻分类算法)·K-Nearest-Centroid(K最近质点分类算法)。对于SVM,LDA和QDA,本发明建立了一个9X10/2=45的二元分类模型,然后选择一个后验概率最大的群体作为预测类的标签;对于binaryKNN(二进制KNN算法),本发明也建立了一个二元分类器并使用了投票制度来确定最终分类。对于以上每一个算法,本发明都建立模型,并且进行了准确率检验,最终发现精度最高的模型,并且使用它来得到最终结果。本发明的数据显示,在某些情况下,binaryKNN和regularKNN(现有技术中的一种算法)有非常类似的结果,在另外一些情况,他们的结果行为又完全不同。对于classificationtree,本发明计算出一个在其最后决定块(leaves)的先验概率正规化之后得到的后验概率来决定最终分类。上述两段可总结为两大步骤,即第一步用6个算法各建立一个模型,然后计算出相关度。第二步验证每个模型的准确度,然后选出准确度最高的模型并应用其计算的结果。上述第一步和第二步的具体实现均为本领域中已公开的现有技术,并且都属于发展成熟并广泛应用的阶段。步骤108、对相关度自动分类,得到网页分类结果。通过步骤107计算出各网页与客户网页的相关度,该相关度是由上步骤各模型所计算出来的一个函数,该函数与关键词频率向量或矩阵相关,它的值是从0到1的实数,1表示最大的相关度,0表示最小的相关度。然后自动进行分类,在本实施例中,本发明只通过对相关度设置一个阀值例如0.7,当相关度大于等于0.7,即认为相关,当相关度小于0.7即认为不相关,从而分为两类相关、不相关。假设有500个相关的,4500个不相关的。在得到了分类结果之后,还可以包括以下步骤。步骤109、将得到的500个相关的网页分类结果储存到数据库中,并可按要求自动发送给技术员或客户。以便寻求与那些网页网站的管理人员联系,进行设置交换链接。上述步骤101109,本领域技术人员是可以根据其知晓的相关知识和本说明书公开的内容去具体的实现的,每个步骤在实际中的具体实现是本领域的现有技术,并非本发明的发明点所在。如图2所示为本发明的网页自动分类系统,其包括网页采集模块11,用于搜索与客户网页相关的网站网页,并对搜索到的网页内容进行分解,从中抓取出网页的标题和变数据信息,形成网页列表集合。网页处理模块12,用于对所述网页列表集合中的文字进行预处理和分词处理,形成关键词列表集合。该网页处理模块还可以进一步包括一预处理模块121,用于删除网页中所有的广告等明显无关文字内容、标点符号、非中文字符、数字以及停用词等。该网页处理模块还可以包括一分词处理模块122,用于以每个网页作为样本,将网页的标题和变数据信息中的所有单独的字分别作为一个词,即一元分词;将两个或两个以上的汉字组成一个词,即二元分词或η元分词,其中η>2;将得到的所有词组成一个集合;重复前一步骤,得到所有网页的关键词列表集合。频率统计模块13,用于统计所述关键词列表集合中的关键词在所有网页中出现的频率,使每一个网页对应一个关键词频率向量,该关键词频率向量为一个一维数组,该数组中每个元素对应的是某个关键词在该网页中出现的频率。自动分类模块14,用于建立统计模型,计算各目标网页和客户网页之间的关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。本系统还可以包括一输出模块15,用于将相关度达到要求的网页存储到数据库中,并自动发送给客户,用于设置交换链接。虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改。因此,本发明的保护范围由所附权利要求书限定。权利要求一种网页自动分类方法,其特征在于,其包括以下步骤S1、搜索与客户网页相关的网站网页,并对搜索到的网页内容进行分解,从中抓取出网页的标题和变数据信息,形成网页列表集合;S2、对所述网页列表集合中的文字进行预处理和分词处理,形成分类关键词列表集合;S3、统计所述分类关键词列表集合中的分类关键词在所有网页中出现的频率,使每一个网页对应一个分类关键词频率向量,该分类关键词频率向量为一个一维数组,该数组中每个元素对应的是某个分类关键词在该网页中出现的频率;S4、建立统计模型,计算各目标网页和客户网页之间的分类关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。2.如权利要求1所述的网页自动分类方法,其特征在于,在步骤S4之后还包括一步骤S5:将相关度达到要求的网页存储到数据库中,并自动发送给技术员或客户,用于设置交换链接。3.如权利要求1所述的网页自动分类方法,其特征在于,步骤S1还包括以下步骤S11、人工选取出客户网页中的η个搜索关键词,将每个搜索关键词向搜索引擎提交,基于搜索结果得到URL集合;S12、使用网页抓取工具抓取出URL集合中各网页的标题和变数据信息,形成网页列表集合。4.如权利要求1所述的网页自动分类方法,其特征在于,步骤S2中对所述网页列表集合中的文字进行预处理包括以下步骤删除网页中所有的广告、标点符号、非中文字符、数字以及停用词。5.如权利要求4所述的网页自动分类方法,其特征在于,步骤S2中对经过预处理的文字进行分词处理包括以下步骤521、以每个网页作为样本,将网页的标题和变数据信息中的所有单独的字分别作为一个词,即一元分词;将两个或两个以上的汉字组成一个词,即二元分词或η元分词,其中η>2;将得到的所有词组成一个集合;522、重复步骤S21,得到所有网页的分类关键词列表集合。6.如权利要求1所述的网页自动分类方法,其特征在于,步骤S4中,在计算各目标网页和客户网页之间的分类关键词频率向量距离之前,还包括以下步骤通过主成分分析和相互信息分析方法来去掉无关的分类关键词频率向量值。7.如权利要求1所述的网页自动分类方法,其特征在于,步骤S4中,所述相关度为由统计模型所计算出来的一个函数,该函数与分类关键词频率向量相关,该函数的值是从O到1的实数,1表示最大的相关度,O表示最小的相关度。8.如权利要求7所述的网页自动分类方法,其特征在于,对所述相关度设置一个阀值,当相关度大于等于该阀值时,即认为相关,当相关度小于该阀值时,即认为不相关,从而对各目标网页进行自动分类相关或者不相关。9.如权利要求1所述的网页自动分类方法,其特征在于,步骤S4中建立统计模型并计算相关度采用如下算法中的一种或几种支持向量机、线性判别分析、二次判别分析、分类树分析、K最近邻分类算法和K最近质点分类算法。10.一种网页自动分类系统,其特征在于,其包括网页采集模块,用于搜索与客户网页相关的网站网页,并对搜索到的网页内容进行分解,从中抓取出网页的标题和变数据信息,形成网页列表集合;网页处理模块,用于对所述网页列表集合中的文字进行预处理和分词处理,形成分类关键词列表集合;频率统计模块,用于统计所述分类关键词列表集合中的分类关键词在所有网页中出现的频率,使每一个网页对应一个分类关键词频率向量,该分类关键词频率向量为一个一维数组,该数组中每个元素对应的是某个分类关键词在该网页中出现的频率;自动分类模块,用于建立统计模型,计算各目标网页和客户网页之间的分类关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。11.如权利要求10所述的网页自动分类系统,其特征在于,该系统还包括一输出模块,用于将相关度达到要求的网页存储到数据库中,并自动发送给客户,用于设置交换链接。12.如权利要求10所述的网页自动分类系统,其特征在于,该网页处理模块还包括一预处理模块,用于删除网页中所有的广告、标点符号、非中文字符、数字以及停用词。13.如权利要求12所述的网页自动分类系统,其特征在于,该网页处理模块还包括一分词处理模块,用于以每个网页作为样本,将网页的标题和变数据信息中的所有单独的字分别作为一个词,即一元分词;将两个或两个以上的汉字组成一个词,即二元分词或η元分词,其中η>2;将得到的所有词组成一个集合;重复前一步骤,得到所有网页的分类关键词列表集合。全文摘要本发明公开了一种网页自动分类方法和系统,该方法包括以下步骤S1、搜索与客户网页相关的网站网页,从中抓取出网页的标题和变数据信息,形成网页列表集合;S2、对所述网页列表集合中的文字进行处理,形成分类关键词列表集合;S3、统计所述分类关键词列表集合中的分类关键词在所有网页中出现的频率,使每一个网页对应一个分类关键词频率向量;S4、建立统计模型,计算各目标网页和客户网页之间的分类关键词频率向量距离,得到目标网页和客户网页之间的相关度,基于该相关度对各目标网页进行自动分类。本发明能自动发现最优的基于无偏估计的网页,从而为客户推荐大量的优质潜在网页进行链接交换。文档编号G06F17/30GK101814083SQ201010022549公开日2010年8月25日申请日期2010年1月8日优先权日2010年1月8日发明者丁力,张薇,郭为,韩雪岭,魏亮申请人:上海复歌信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1