发明内容
本发明提供一种对网页中数据的信息属性进行识别的方法和装置,用于解决现有技术中采用人工标注信息属性带来的效率低下的问题。
本发明提供一种对网页中数据的信息属性进行识别的方法,其包括:
获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,识别第一网页中第一数据的信息属性;
对于根据html标签与信息属性的关联关系无法识别信息属性的第一网页中的第二数据,计算第二数据相对于各个信息属性的权重相似度,根据权重相似度识别第二数据的信息属性。
进一步,在获取第一网页中数据的html标签之前还包括:
建立训练集合,训练集合中的数据为多个第二网页中标注了信息属性的数据;
根据训练集合中的数据与信息属性的关联关系,采用频繁项集算法,得到训练集合中的数据的html标签到信息属性的频繁项集。
进一步,根据预先建立的html标签与信息属性的关联关系,识别第一网页中第一数据的信息属性具体包括:
将包含第一数据的html标签的频繁项集所对应的信息属性确定为第一数据的信息属性。
进一步,对网页中数据的信息属性进行识别的方法还包括:
计算训练集合中每条数据相对于各个信息属性的权重相似度并且对每条数据标注标记;
对于每条数据,将该条数据相对于各个信息属性的权重相似度、该条数据的标记以及该条数据的信息属性构成该条数据的特征信息列表;
根据训练集合中所有数据的特征参数列表建立决策树。
进一步,标记为:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记。
进一步,计算训练集合中每条数据相对于各个信息属性的权重相似度具体包括:
对训练集合中每条数据进行分词,将分词结果按照每个信息属性对应一个文档的关系划分为多个文档,并且计算每个分词结果的tf-idf值;
对于训练集合中的任一条数据,执行以下步骤:
计算该条数据与所有文档的分词结果的相似度;
针对任一文档,获取该条数据与该文档的分词结果的最大相似度,将该最大相似度乘以该最大相似度所对应的分词结果的tf-idf值的乘积作为该条数据相对于该文档对应的信息属性的权重相似度。
进一步,对于第二数据,计算第二数据相对于各个信息属性的权重相似度,根据权重相似度识别第二数据的信息属性的步骤具体包括:
计算第二数据相对于各个信息属性的权重相似度并且对第二数据标注标记;
将第二数据相对于各个信息属性的权重相似度和第二数据的标记作为第二数据的输入数据输入至决策树;
当第二数据的输入数据与决策树的叶节点的节点值符合时,以叶节点对应的信息属性作为第二数据的信息属性。
进一步,在识别第一数据和第二数据的信息属性之后还包括:
统计在多个第一网页中位置相同但信息属性不同的第一数据或第二数据,以识别次数最多的信息属性修正该第一数据或第二数据的信息属性。
本发明还提供一种对网页中数据的信息属性进行识别的装置,其包括:
第一识别模块,用于获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,识别第一网页中第一数据的信息属性;
第二识别模块,用于对于第一识别模块无法识别的第一网页中的第二数据,计算第二数据相对于各个信息属性的权重相似度,根据权重相似度识别第二数据的信息属性。
进一步,本发明的对网页中数据的信息属性进行识别的装置还包括:
训练集合建立模块,用于建立训练集合,训练集合中的数据为多个第二网页中标注了信息属性的数据;
关联关系建立模块,用于根据训练集合中的数据与信息属性的关联关系,采用频繁项集算法,得到训练集合中的数据的html标签到信息属性的频繁项集。
进一步,第一识别模块具体用于:将包含第一数据的html标签的频繁项集所对应的信息属性确定为第一数据的信息属性。
进一步,本发明的对网页中数据的信息属性进行识别的装置还包括:
训练集合数据处理模块,用于计算训练集合中每条数据相对于各个信息属性的权重相似度并且对每条数据标注标记;对于每条数据,将该条数据相对于各个信息属性的权重相似度、该条数据的标记以及该条数据的信息属性构成该条数据的特征信息列表;标记为:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记;
决策树建立模块,用于根据训练集合中所有数据的特征参数列表建立决策树。
进一步,训练集合数据处理模块具体用于:
对训练集合中每条数据进行分词,将分词结果按照每个信息属性对应一个文档的关系划分为多个文档,并且计算每个分词结果的tf-idf值;
对于训练集合中的任一条数据,计算该条数据与所有文档的分词结果的相似度;针对任一文档,获取该条数据与该文档的分词结果的最大相似度,将该最大相似度乘以该最大相似度所对应的分词结果的tf-idf值的乘积作为该条数据相对于该文档对应的信息属性的权重相似度。
进一步,第二识别模块具体用于:计算第二数据相对于各个信息属性的权重相似度并且对第二数据标注标记;将第二数据相对于各个信息属性的权重相似度和第二数据的标记作为第二数据的输入数据输入至决策树;当第二数据的输入数据与决策树的叶节点的节点值符合时,以叶节点对应的信息属性作为第二数据的信息属性。
进一步,本发明的对网页中数据的信息属性进行识别的装置还包括:修正模块,用于统计在多个第一网页中位置相同但信息属性不同的第一数据或第二数据,以识别次数最多的信息属性修正该第一数据或第二数据的信息属性。
本发明提供的对网页中数据的信息属性进行识别的方法和装置,首先根据预先建立的html标签与信息属性的关联关系,自动识别网页中数据的信息属性;对于通过html标签与信息属性的关联关系无法识别的数据,进一步根据该数据相对于各个信息属性的权重相似度,自动识别数据的信息属性。本发明提供的方案相比于人工标记属性,大幅提升了识别效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的对网页中数据的信息属性进行识别的方法的流程图,如图1所示,本实施例提供的对网页中数据的信息属性进行识别的方法包括:
步骤S101,获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,识别第一网页中第一数据的信息属性。
具体地,每条网页数据会有各自的html(超文本标记语言,Hyper TextMarkup Language)标签,预先建立html标签与信息属性的关联关系。当对网站中各个网页的数据识别信息属性时,获取该条数据的html标签所对应的信息属性,以该信息属性作为该条数据的信息属性,从而完成对该条数据的信息属性识别。其中,第一数据是指利用步骤S101能够识别出信息属性的数据。
步骤S102,对于根据html标签与信息属性的关联关系无法识别信息属性的第一网页中的第二数据,计算第二数据相对于各个信息属性的权重相似度,根据权重相似度识别第二数据的信息属性。
具体地,对于根据步骤S101无法识别的第二数据,计算该条数据相对于各个信息属性的权重相似度,权重相似度越高,说明该条数据与该权重相似度相对应的信息属性越接近,对于该条数据选取权重相似度最高的信息属性作为该条数据的信息属性。
对于步骤S101利用html标签与信息属性的关联关系获得的数据的信息属性,准确率近似于100%,而且运算量小,但是由于数据的多样性,无法仅根据html标签对全部数据确认信息属性,因此需要步骤S102进一步利用权重相似度进行识别,以获取更全面的数据的信息属性。
本发明上述实施例提供的对网页中数据的信息属性进行识别的方法,首先根据预先建立的html标签与信息属性的关联关系,自动识别网页中数据的信息属性;对于通过html标签与信息属性的关联关系无法识别的数据,进一步根据该数据相对于各个信息属性的权重相似度,自动识别数据的信息属性。本发明提供的方案相比于人工标记属性,大幅提升了识别效率。
图2示出了根据本发明另一个实施例的对网页中数据的信息属性进行识别的方法的流程图,如图2所示,本实施例提供的对网页中数据的信息属性进行识别的方法包括:
步骤S201,建立训练集合,训练集合中的数据为多个第二网页中标注了信息属性的数据。
具体地,通过对训练集合中的数据进行计算以获取html标签与信息属性的关联关系以及决策树。首先对爬虫抓取的第二网页的数据标注信息属性,可以采用人工标注的方式获取到一批信息属性识别率接近100%的数据,以此数据作为训练集合。训练集合具体包括:第二网页中的多条数据、每条数据的信息属性和每条数据的html标签。本发明实施例中,第二网页用于建立训练集合,是已知网页;第一网页是待识别网页,是未知网页。
步骤S202,根据训练集合中的数据与信息属性的关联关系,采用频繁项集算法,得到训练集合中的数据的html标签到信息属性的频繁项集。
具体地,每条数据所对应的html标签可能有多个,而且对于不同的网站站点,每条数据的html标签与信息属性的对应关系可能并不相同。对于训练集合中的数据,通过人工标注已经确定了数据和信息属性的关联关系,但是html标签与信息属性的关联关系并未确定,因此需要通过频繁项集算法获取训练集合中的数据的html标签与信息属性的关联关系,而html标签与信息属性的关联关系就包含在计算得出的频繁项集中。
下面举出根据训练集合获取到html标签与信息属性的关联关系的示例,例如,训练集合包括如下数据:
task1:<h1><a id=”name”class=”name”>soft_name</a></h1>
task2:<h1><a id=”name”class=”name”>soft_name</a></h1>
task3:<h1><a id=”name”class=”name”>soft_name</a></h1>
task4:<h2><a id=”title”class=”name”>soft_name</a></h2>
task5:<h2><a id=”name”class=”name”>soft_name</a></h2>
task6:<h1><a id=”name”class=”name”>soft_name</a></h1>
task7:<h4><a id=”title”class=”title”>soft_title</a></h4>
task8:<h4><a id=”page”class=”page node”>soft_title</a></h4>
task9:<h4><a id=”page”class=”page node”>soft_head</a></h4>
task10:<h3><a id=”title”class=”title”>soft_title</a></h3>
其中,“task1”至“task10”表示训练集合中的全部10条数据。对于“task1”的数据,“<h1>”、id=”name”、class=”name”、“</a>”和“</h1>”表示数据“task1”的html标签,“soft_name”表示数据“task1”标注的信息属性。对于其他数据,“soft_title”或“soft_head”表示该数据标注的信息属性,其他为该数据的html标签。
结合示例一,步骤S202具体包括以下步骤:
步骤a),以1次频繁项集作为计算html标签到信息属性的关联关系的循环开始,统计各个n-1次频繁项集内全部元素的频繁度,其中,n为自然数且n≥2,每个1次频繁项集内的元素为html标签和信息属性两者中的一项。
例如,根据上述训练集合,得到的1次频繁项集包括:
{<h1>:4}、{<h2>:2}、{<h3>:1}、{<h4>:3}、{id=”name”:5}、{class=”name”:6}、{id=”title”:3}、{id=”page”:2}、{class=”title”:2}、{class=”pagenode”:2}、{soft_name:6}、{soft_title:3}、{soft_head:1}和{</a>:10}。
其中,每个频繁项集中的数字表示该频繁项集中全部元素的频繁度,即全部元素在训练集合的各条数据中同时出现的次数。例如,{<h1>:4}中仅有一个元素<h1>,其在各条数据中出现的次数是4次,所以元素<h1>的频繁度为4;{<h2>:2}中仅有一个元素<h2>,其在各条数据中出现的次数是2次,所以元素<h2>的频繁度为2。
步骤b),保留频繁度大于或等于频繁度阈值的n-1次频繁项集。
例如,对于上述1次频繁项集,设置频繁度阈值为3,则保留的频繁度大于等于频繁度阈值3的1次频繁项集包括:
{<h1>:4}、{<h4>:3}、{id=”name”:5}、{class=”name”:6}、{id=”title”:3}、{soft_name:6}、{soft_title:3}和{</a>:10}。
步骤c),将每两个包含相同的n-2个元素的n-1次频繁项集两两组合为一个n次频繁项集,并且仅保留包含任意一个n-1次频繁项集的全部元素的n次频繁项集。
例如,将步骤b)得到的1次频繁项集两两组合,生成的2次频繁项集如下:
{<h1>、<h4>:0}、{<h1>、id=”name”:4}、{<h1>、class=”name”:4}、{<h1>、id=”title”:0}、{<h1>、soft_name:4}、{<h1>、soft_title:0}、{<h1>、</a>:4}、{<h4>、id=”name”:0}、{<h4>、class=”name”:0}、{<h4>、id=”title”:1}、{<h4>、soft_name:0}、{<h4>、soft_tilte:2}、{<h4>、</a>:3}、{id=”name”、class=”name”:5}、{id=”name”、id=”title”:0}、{id=”name”、soft_name:5}、{id=”name”、soft_title:0}、{id=”name”、</a>:5}、{class=”name”、id=”title”:1},、{class=”name”、soft_name:6}、{class=”name”、soft_title:0}、{class=”name”、</a>:6}、{id=”title”、soft_name:1}、{id=”title”、soft_title:0}、{id=”title”、</a>:3}、{soft_name、soft_title:0}、{soft_name、</a>:6}、{soft_title,</a>:3}。
其中,2次频繁项集中的数字表示该频繁项集中全部元素的频繁度。例如,2次频繁项集{<h1>、<h4>:0}中,全部的元素<h1>和<h4>在训练集合的各条数据中同时出现的次数为0,该2次频繁项集中全部元素的频繁度为0;2次频繁项集{<h1>、id=”name”:4}中,全部的元素<h1>和id=”name”在数据task1、task2、task3和task5中均同时出现,所以该2次频繁项集中全部元素的频繁度为4。由于1次频繁项集中仅有一个元素,因此可以全部两两组合。并且组成的各个2次频繁项集均包括一个1次频繁项集的仅有的一个元素,因此保留全部2次频繁项集。对于n次频繁项集,例如两个3次频繁项集{a、b、c}和{a、b、d}可以组合为4次频繁项集{a、b、c、d},而两个3次频繁项集{a、b、c}和{a、e、d}不可以组合。
步骤d),统计各个n次频繁项集内全部元素的频繁度并保留频繁度大于或等于频繁度阈值的n次频繁项集。
例如,对于步骤c)得到的全部2次频繁项集,设置的频繁度阈值为3,仅保留全部元素的频繁度大于等于3的2次频繁项集,保留的2次频繁项集包括:
{<h1>、id=”name”:4}、{<h1>、class=”name”:4}、{<h1>、soft_name:4}、{<h1>、</a>:4}、{<h4>、</a>:3}、{id=”name”、class=”name”:5}、{id=”name”、soft_name:5}、{id=”name”、</a>:5}、{class=”name”,soft_name:6}、{class=”name”、</a>:6}、{id=”title”、</a>:3}、{soft_name、</a>:6}、{soft_title、</a>:3}。
步骤e),从保留的各个n次频繁项集中选取包含信息属性的n次频繁项集。
例如,对于步骤d)得到的全部2次频繁项集,选取包含信息属性的2次频繁项集,选取得到的2次频繁项集包括:
{<h1>、soft_name:4}、{id=”name”、soft_name:5}、{class=”name”、soft_name:6}、{soft_name、</a>:6}。
步骤f),对包含信息属性的n次频繁项集分别计算其相对于信息属性的支持度和置信度。
例如,对于步骤e)选取得到的2次频繁项集,分别计算其支持度和置信度。支持度等于n次频繁项集的频繁度除以训练集合的数据条数。置信度等于n次频繁项集的频繁度除以组成该n次频繁项集的n-1次频繁项集的频繁度。
对于html标签<h1>,其相对于信息属性soft_name的支持度为2次频繁项集{<h1>、soft_name:4}的频繁度4除以训练集合的数据条数10,其相对于信息属性soft_name的置信度为2次频繁项集{<h1>、soft_name:4}的频繁度4除以1次频繁项集{<h1>:4}的频繁度4,最后得出html标签<h1>相对于信息属性soft_name的支持度为4/10,置信度为4/4。同理得到:html标签id=”name”相对于信息属性soft_name的支持度为5/10,置信度为5/5;html标签class=”name”相对于信息属性soft_name的支持度为6/10,置信度为6/6;html标签</a>相对于信息属性soft_name的支持度为6/10,置信度为6/10。
步骤g),选取支持度大于或等于支持度阈值并且置信度大于或等于置信度阈值的n次频繁项集作为html标签与信息属性的关联关系。
例如,设置支持度阈值为50%,置信度阈值为90%。最后选取的频繁项集为{id=”name”、soft_name:5}、{class=”name”、soft_name:6}。可见2次频繁项集{id=”name”、soft_name:5}表示了html标签id=”name”到信息属性soft_name的关联关系,2次频繁项集{class=”name”、soft_name:6}表示了html标签class=”name”到信息属性soft_name的关联关系。
步骤h),循环计算,当获取全部html标签与信息属性的关联关系时,结束计算html标签与信息属性的关联关系的循环。
对于没有得到html标签与信息属性的关联关系的频繁项集,循环计算直到无法继续计算时结束循环,从而通过训练集合获取到全部潜在可靠的html标签与信息属性的关联关系。
步骤S203,对训练集合中每条数据进行分词,将分词结果按照每个信息属性对应一个文档的关系划分为多个文档,并且计算每个分词结果的tf-idf值。
具体地,采用ICTCLAS(汉语分词系统)进行分词,每条数据可能对应有多个分词结果,根据tf-idf(词频-反文档频率)算法计算每个分词结果的tf-idf值。假设训练集合中共有N个信息属性,则建立N个文档,每个文档包括与某个信息属性对应的数据的全部分词结果。
步骤S204,对于训练集合中的任一条数据,计算该条数据与所有文档的分词结果的相似度。
具体地,每一条数据均需要计算其与全部分词结果的相似度。
步骤S205,针对任一文档,获取该条数据与该文档的分词结果的最大相似度,将该最大相似度乘以该最大相似度所对应的分词结果的tf-idf值的乘积作为该条数据相对于该文档对应的信息属性的权重相似度。
具体地,计算各条数据相对于每个信息属性的权重相似度。由于每个文档对应一个信息属性,因此任一条数据相对于一个信息属性的权重相似度为:该信息属性对应的文档中全部分词结果中相似度最大的分词结果的tf-idf值乘以该最大相似度的乘积。
步骤S206,对每条数据标注标记;标记为:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记。
步骤S207,对于每条数据,将该条数据相对于各个信息属性的权重相似度、该条数据的标记以及该条数据的信息属性构成该条数据的特征信息列表。
步骤S208,根据训练集合中所有数据的特征参数列表建立决策树。决策树的每个叶节点包括一个信息属性。
步骤S209,获取第一网页中数据的html标签,将包含第一数据的html标签的频繁项集所对应的信息属性确定为第一数据的信息属性。
具体地,根据步骤S202获取的频繁项集以及未知网页的html标签识别数据的信息属性。当在频繁项集中查询到数据的html标签时,则将该频繁项集中的信息属性确定为该数据的信息属性。
步骤S210,对于根据html标签与信息属性的关联关系无法识别信息属性的第一网页中的第二数据,计算第二数据相对于各个信息属性的权重相似度并且对第二数据标注标记。
具体地,对于根据步骤S209无法识别信息属性的数据,则根据步骤S203至S205计算该第二数据相对于各个信息属性的权重相似度。任一条第二数据对于每个信息属性的权重相似度为:该第二数据与该文档的分词结果的最大相似度乘以该分词结果的tf-idf值的乘积。第二数据的标记也包括:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记。
步骤S211,将第二数据相对于各个信息属性的权重相似度和第二数据的标记作为第二数据的输入数据输入至决策树。
步骤S212,当第二数据的输入数据与决策树的叶节点的节点值符合时,以叶节点对应的信息属性作为第二数据的信息属性。
步骤S213,统计在多个第一网页中位置相同但信息属性不同的第一数据或第二数据,以识别次数最多的信息属性修正该第一数据或第二数据的信息属性。
具体地,对于同一个网站中的多个页面,其位置相同的数据一般信息属性也相同。因此对于多个第一网页中位置相同但信息属性不同的第一数据或第二数据进行投票处理,以识别次数最多的信息属性作为该第一数据或第二数据的信息属性。
本实施例提供的对网页中数据的信息属性进行识别的方法,能够基于频繁项集算法得出html标签与信息属性的关联关系,并且能够基于数据与信息属性的权重相似度建立决策树,进而自动识别数据的信息属性,相比于人工标记属性,大幅提升了识别效率。此外,由于采用了投票措施进行修正,使信息属性识别率进一步提高。
图3示出了根据本发明一个实施例的对网页中数据的信息属性进行识别的装置的结构框图,如图3所示,本实施例提供的对网页中数据的信息属性进行识别的装置包括:
第一识别模块301,用于获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,识别第一网页中第一数据的信息属性。
第二识别模块302,用于对于第一识别模块无法识别的第一网页中的第二数据,计算第二数据相对于各个信息属性的权重相似度,根据权重相似度识别第二数据的信息属性。
其中,第一识别模块301将无法识别的第二数据输入至第二识别模块302。
本发明实施例提供的装置为图1对应的实施例提供的方法的实现装置,其具体原理参考图1对应的实施例,此处不再赘述。
本实施例提供的对网页中数据的信息属性进行识别的装置,能够基于html标签与信息属性的关联关系以及数据与信息属性的权重相似度,自动识别数据的信息属性,相比于人工标记属性,大幅提升了识别效率。
图4示出了根据本发明另一个实施例的对网页中数据的信息属性进行识别的装置的结构框图,如图4所示,本实施例提供的对网页中数据的信息属性进行识别的装置包括:
训练集合建立模块403,用于建立训练集合,训练集合中的数据为多个第二网页中标注了信息属性的数据。
关联关系建立模块404,用于根据训练集合中的数据与信息属性的关联关系,采用频繁项集算法,得到训练集合中的数据的html标签到信息属性的频繁项集。
训练集合数据处理模块405,用于计算训练集合中每条数据相对于各个信息属性的权重相似度并且对每条数据标注标记;对于每条数据,将该条数据相对于各个信息属性的权重相似度、该条数据的标记以及该条数据的信息属性构成该条数据的特征信息列表;标记为:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记。
训练集合数据处理模块405具体用于:对训练集合中每条数据进行分词,将分词结果按照每个信息属性对应一个文档的关系划分为多个文档,并且计算每个分词结果的tf-idf值;对于训练集合中的任一条数据,计算该条数据与所有文档的分词结果的相似度;针对任一文档,获取该条数据与该文档的分词结果的最大相似度,将该最大相似度乘以该最大相似度所对应的分词结果的tf-idf值的乘积作为该条数据相对于该文档对应的信息属性的权重相似度。
决策树建立模块406,用于根据训练集合中所有数据的特征参数列表建立决策树。
第一识别模块401,用于获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,将包含第一数据的html标签的频繁项集所对应的信息属性确定为第一数据的信息属性。
第二识别模块402,用于对于第一识别模块无法识别的第一网页中的第二数据,计算第二数据相对于各个信息属性的权重相似度,根据权重相似度识别第二数据的信息属性。
第二识别模块402具体用于:计算第二数据相对于各个信息属性的权重相似度并且对第二数据标注标记;将第二数据相对于各个信息属性的权重相似度和第二数据的标记作为第二数据的输入数据输入至决策树;当第二数据的输入数据与决策树的叶节点的节点值符合时,以叶节点对应的信息属性作为第二数据的信息属性。
修正模块407,用于统计在多个第一网页中位置相同但信息属性不同的第一数据或第二数据,以识别次数最多的信息属性修正该第一数据或第二数据的信息属性。
其中,关联关系建立模块404从训练集合建立模块403获取训练集合的数据以建立html标签与信息属性的关联关系;训练集合数据处理模块405从训练集合建立模块403获取训练集合的数据以建立特征信息列表,训练集合数据处理模块405将特征信息列表输入至决策树建立模块406,决策树建立模块406建立决策树。当对第一网页的数据进行属性识别时,第一识别模块401将数据输入至关联关系建立模块404根据html标签与信息属性的关联关系进行识别;对于无法识别的数据,第一识别模块401将该数据输入至第二识别模块402;第二识别模块402将数据输入至决策树建立模块406通过决策树识别信息属性;最后对于在多个第一网页中位置相同但信息属性不同的数据,输入至修正模块407进行投票处理。
本发明实施例提供的装置为图2对应的实施例提供的方法的实现装置,其具体原理参考图2对应的实施例,此处不再赘述。
本实施例提供的对网页中数据的信息属性进行识别的装置,能够基于频繁项集算法得出html标签与信息属性的关联关系,并且能够基于数据与信息属性的权重相似度建立决策树,进而自动识别数据的信息属性,相比于人工标记属性,大幅提升了识别效率。此外,由于修正模块采用了投票措施进行修正,使信息属性识别率进一步提高。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的对网页中数据的信息属性进行识别的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1、一种对网页中数据的信息属性进行识别的方法,其包括:
获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,识别所述第一网页中第一数据的信息属性;
对于根据所述html标签与信息属性的关联关系无法识别信息属性的所述第一网页中的第二数据,计算所述第二数据相对于各个所述信息属性的权重相似度,根据所述权重相似度识别所述第二数据的信息属性。
A2、根据A1所述的方法,其中,在获取第一网页中数据的html标签之前还包括:
建立训练集合,所述训练集合中的数据为多个第二网页中标注了信息属性的数据;
根据所述训练集合中的数据与信息属性的关联关系,采用频繁项集算法,得到所述训练集合中的数据的html标签到信息属性的频繁项集。
A3、根据A2所述的方法,其中,所述根据预先建立的html标签与信息属性的关联关系,识别所述第一网页中第一数据的信息属性具体包括:
将包含所述第一数据的html标签的频繁项集所对应的信息属性确定为所述第一数据的信息属性。
A4、根据A2所述的方法,其中,还包括:
计算所述训练集合中每条数据相对于各个所述信息属性的权重相似度并且对所述每条数据标注标记;
对于每条数据,将该条数据相对于各个所述信息属性的权重相似度、该条数据的标记以及该条数据的信息属性构成该条数据的特征信息列表;
根据所述训练集合中所有数据的特征参数列表建立决策树。
A5、根据A4所述的方法,所述标记为:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记。
A6、根据A4所述的方法,其中,所述计算所述训练集合中每条数据相对于各个所述信息属性的权重相似度具体包括:
对所述训练集合中每条数据进行分词,将分词结果按照每个信息属性对应一个文档的关系划分为多个文档,并且计算每个分词结果的tf-idf值;
对于所述训练集合中的任一条数据,执行以下步骤:
计算该条数据与所有文档的分词结果的相似度;
针对任一文档,获取该条数据与该文档的分词结果的最大相似度,将该最大相似度乘以该最大相似度所对应的分词结果的tf-idf值的乘积作为该条数据相对于该文档对应的信息属性的权重相似度。
A7、根据A6所述的方法,其中,对于所述第二数据,计算所述第二数据相对于各个所述信息属性的权重相似度,根据所述权重相似度识别所述第二数据的信息属性的步骤具体包括:
计算所述第二数据相对于各个所述信息属性的权重相似度并且对所述第二数据标注所述标记;
将所述第二数据相对于各个所述信息属性的权重相似度和所述第二数据的标记作为所述第二数据的输入数据输入至所述决策树;
当所述第二数据的输入数据与所述决策树的叶节点的节点值符合时,以叶节点对应的信息属性作为所述第二数据的信息属性。
A8、根据A1-A7任一项所述的方法,其中,在识别所述第一数据和第二数据的信息属性之后还包括:
统计在多个第一网页中位置相同但信息属性不同的第一数据或第二数据,以识别次数最多的信息属性修正该第一数据或第二数据的信息属性。
本发明还公开了:B9、一种对网页中数据的信息属性进行识别的装置,其包括:
第一识别模块,用于获取第一网页中数据的html标签,根据预先建立的html标签与信息属性的关联关系,识别所述第一网页中第一数据的信息属性;
第二识别模块,用于对于所述第一识别模块无法识别的所述第一网页中的第二数据,计算所述第二数据相对于各个所述信息属性的权重相似度,根据所述权重相似度识别所述第二数据的信息属性。
B10、根据B9所述的装置,其中,还包括:
训练集合建立模块,用于建立训练集合,所述训练集合中的数据为多个第二网页中标注了信息属性的数据;
关联关系建立模块,用于根据所述训练集合中的数据与信息属性的关联关系,采用频繁项集算法,得到所述训练集合中的数据的html标签到信息属性的频繁项集。
B11、根据B10所述的装置,其中,所述第一识别模块具体用于:将包含所述第一数据的html标签的频繁项集所对应的信息属性确定为所述第一数据的信息属性。
B12、根据B10所述的装置,其中,还包括:
训练集合数据处理模块,用于计算所述训练集合中每条数据相对于各个所述信息属性的权重相似度并且对所述每条数据标注标记;对于每条数据,将该条数据相对于各个所述信息属性的权重相似度、该条数据的标记以及该条数据的信息属性构成该条数据的特征信息列表;所述标记为:仅包含数字的标记、仅包含字母的标记、包含数字和字母的标记、或者不包含数字和字母的标记;
决策树建立模块,用于根据所述训练集合中所有数据的特征参数列表建立决策树。
B13、根据B12所述的装置,其中,所述训练集合数据处理模块具体用于:
对所述训练集合中每条数据进行分词,将分词结果按照每个信息属性对应一个文档的关系划分为多个文档,并且计算每个分词结果的tf-idf值;
对于所述训练集合中的任一条数据,计算该条数据与所有文档的分词结果的相似度;针对任一文档,获取该条数据与该文档的分词结果的最大相似度,将该最大相似度乘以该最大相似度所对应的分词结果的tf-idf值的乘积作为该条数据相对于该文档对应的信息属性的权重相似度。
B14、根据B13所述的装置,其中,所述第二识别模块具体用于:计算所述第二数据相对于各个所述信息属性的权重相似度并且对所述第二数据标注所述标记;将所述第二数据相对于各个所述信息属性的权重相似度和所述第二数据的标记作为所述第二数据的输入数据输入至所述决策树;当所述第二数据的输入数据与所述决策树的叶节点的节点值符合时,以叶节点对应的信息属性作为所述第二数据的信息属性。
B15、根据B9-B14任一项所述的装置,其中,还包括:修正模块,用于统计在多个第一网页中位置相同但信息属性不同的第一数据或第二数据,以识别次数最多的信息属性修正该第一数据或第二数据的信息属性。