一种通用的网页类型判定方法与流程

文档序号:16136704发布日期:2018-12-01 01:05阅读:251来源:国知局

本发明涉及信息提取领域,尤其涉及一种通用的网页类型判定方法,可以为通用web信息提取系统判明目标网页类型。

背景技术

随着网络技术的发展,网络信息呈爆炸式增长,其中又有大部分的可访问信息是以web网页的形式进行展现的,这对web信息提取领域提出了新的挑战,因此通用web信息提取方法应运而生。要进行通用web信息的提取,第一步就必须要判明目标网页的类型,根据需要抽取的信息以及信息提取方式的不同,将网页分为了频道页、列表页、内容页、无效页四种类型。

信息抽取系统可以对以上几种类型页面分别进行处理,处理方式包括:(1)在页面判定为频道页时,可以提取频道信息、分类入口等;(2)在页面判定为列表页时,可以提取列表信息、列表分页等,以对列表中内容页的入口进一步地提取与分析;(3)在页面判定为内容页时,可以提取标题、发布时间等元信息,并能进行正文的提取,内容页分页的判定与正文分页的融合。只有认知到目标网页的类型,才能根据此类型进行相应的处理。

例如给定一个新闻作为目标网页,如果信息提取系统能判断出此网页为内容页,则对其进行正文提取,并提取新闻标题、发布日期、作者等元数据。再比如,给定一个论坛主页,如果信息提取系统能判断出此网页为频道页,则对其进行分析并提取各个分类的信息和入口。由此可见,只有正确地识别网页的类型(如内容页、列表页等),才能进一步准确地提取网站中的数据。

目前,已有的识别网页类型方面的研究较少,主要分为两类:一类是对各个特定的网站分别由人工编写相应规则,通过判断某些网页meta信息(如<metatitle="">等)与url地址等字符串是否与正则规则匹配来判定网页的类型;另一类是通过判断网页的dom树结构,在网页中查找特定的语义信息来判定网页类型。此外还有一些相关的创新性研究,例如vips算法,对网页进行视觉块分割以研究不同类型网页的视觉特征。

近年来,在网络技术发展的同时,web开发技术也发生了巨大的变化,各种技术框架层出不穷,这也导致了各个网页的开发规范、dom结构各不相同,对信息的提取造成了阻碍,因此要判定网页类型的难度大大增加。开发人员必须不断对各个网站编写不同的判定规则,并需要随时根据目标网页的改版更新判定规则。所以对网页类型进行精确的分类以及判定是必要且重要的。

而目前已有的几种判定方式均不能适应技术的变化:1、人工编写规则的方式,需要耗费大量的人力,并且不具有通用性,只能针对特定网页进行分析判定;2、通过分析web语义信息的方式虽然能在规范、标准的网站中运作良好,但web网页开发者技术良莠不齐,大多数的网页未按w3c规范编写,dom树杂乱,没有标注语义信息,导致算法失效。3、vips算法等研究分析dom树以获取网页的视觉特征虽然效果明显,但依旧有许多的局限性:这类算法复杂度过高,在处理门户网站等dom树复杂的网页时运行效率低下。此外,web标准依然在不断变化,语义化标签也在不断更新(如html5),因此相关人员需要不断对这些规则、算法进行调整以适应最新的标准。



技术实现要素:

本发明的目的在于提供一种通用的网页类型判定方法,对web信息提取领域中网页的类型进行了明确定义,且基于计算机视觉技术,通过机器学习对网页截图进行图片分类以判定网页的类型,用以识别非特定网页的类型,让信息提取系统能针对不同网页类型进行不同的处理;从而使得信息采集人员不再需要反复编写时效性短、不可复用的正则与规则,解决了前面提到的在通用web信息提取领域中遇到的问题。

为达到上述目的,本发明采用的技术方案如下:

一种通用的网页类型判定方法,其步骤包括:

对网页先进行预处理,再抓取该网页的图像;

对图像进行规范化处理,包括将图像缩放至可识别其原有视觉块结构的最小程度并统一宽高尺寸;

在不破坏图像原有视觉块结构的前提下对图像进行信息增强,得到图像数据集;

将上述图像数据集输入到一用于判定网页类型的模型中,对该模型进行训练;

通过上述预处理和规范化处理,获取目标网页的图像,将该图像输入到上述经过训练的模型中,判定该目标网页的类型。

进一步地,采用渲染引擎headlesschrome、phantomjs抓取网页图像。

进一步地,所述预处理包括去除广告、移除position标记为fixed的浮动对象、移除iframe,还可包括对文本域、图像域进行不同的颜色覆盖。

进一步地,统一宽高尺寸的方法包括以图像的宽为基准,裁剪多余高度或图像高度不足时统一填补白色,以统一宽高比例。

进一步地,对图像进行信息增强包括增加噪点、图像镜像。

进一步地,所述模型采用深度学习框架,以多层神经网络和深度残差网络resnet为基线,以交叉熵为目标函数。

进一步地,所述深度学习框架包括tensorflow、torch,所述神经网络包括cnn。

进一步地,通过目标函数向正确趋势逼近的方式训练所述模型。

进一步地,训练所述模型,当准确率高于85%时保存模型参数,以用于对目标网页类型的判定。

进一步地,所述模型的输入为图像经过工具读取形成的三通道或原通道矩阵,该工具包括opencv;所述模型的输出为多分类概率,通过softmax函数输出网页类型。

与现有技术相比,本发明方法具有以下优点:

本发明为了更好地描述网页dom节点与视觉感知的关系,使用了视觉块结构的概念,即将能在视觉感知层面上表示连续内容的dom节点或多个dom节点组成的块称为视觉块结构。可识别视觉块结构,即在经过预处理的网页图像中仍可肉眼发现的视觉块结构。不破坏视觉块结构,即在预处理(信息增强)的过程后,仍可用肉眼发现网页图像中的原有视觉块结构。本发明不需要人员重复对不同特定网页分别编写规则;由于不受杂乱的dom结构影响,适应性好;采用计算机视觉技术进行分类,在理论上可以对任何网页进行判断,泛化性能好;由于不受web规范限制,无需考虑不断变动的web标准,时效性强;相较于已有的基于dom树分析的高复杂度算法,本方法算法在应用时复杂度低,性能稳定,不受网页规模影响。

附图说明

图1是实施例中的一种通用的网页类型判定方法流程图。

具体实施方式

为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。

本发明提供了一种通用的网页类型判定方法,该方法可以归纳为模型训练与网页类型判断两部分,如图1所示。

所述模型训练如图1中虚线流程所示,分为以下5个步骤:

1)数据采集,通过浏览器插件采集网页截图等方式获取网页图像并进行标注,将相关信息存储于数据库中。在采集数据时,可以使用headlesschrome、phantomjs等渲染引擎对网页进行图像抓取。在抓取图像之前,可以考虑对网页进行如下预处理:根据给定规则去除广告、移除position标记为fixed的浮动对象、移除iframe等会对网页图像造成重大视觉干扰的元素,并可对文本域、图像域进行不同的颜色覆盖,使得网页视觉结构信息得以最大化保留。

2)对图像进行规范化处理,通过裁剪及缩放统一尺寸。在规范化处理时,应当在保留图像视觉结构信息的同时尽可能将图像缩放至最小,保证模型训练的速度,但缩放应尽可能存留能够识别的视觉块结构;再对图像进行规范化处理,例如裁剪图像高度以统一宽高比例、图像高度不足时统一填补白色等。

3)对图像进行信息增强,在保持网页图像原有性质的基础上增加训练数据,从而提升模型的泛化能力。在信息增强时,应考虑尽量不破坏图像原有视觉块结构信息,例如加入噪点时控制参数,不破坏图像整体背景。此外,还可对图像进行镜像等处理,得到更多的网页视觉结构图像。

4)训练模型,对图像数据集进行多分类学习。该模型可采用tensorflow、torch等深度学习框架进行构建,使用cnn等神经网络层的多层结合组成多分类模型。模型的输入为图像经过opencv等工具读取形成的三通道或原通道矩阵,模型输出为多分类概率,通过softmax等算法最终输出网页类别。在训练时,模型通过交叉熵等目标函数向正确趋势逼近。

5)调试模型,通过不断调整模型及其参数,得到较高的评价指标后导出模型。

所述网页类型判断如图1实线流程所示,分为以下4个步骤:

1)部署模型,提供webapi、rpc调用、打包后的类库、程序等为应用模型提供服务。

2)通过传入目标网页截图或进行在线渲染,以获取目标网页的图像。为确保应用模型时图像的结构与训练模型时图像的结构保持一致,可在训练模型时对参数进行保存,以在应用模型时参入。应用模型前,对网页渲染时进行的预处理应与模型训练前采集数据时进行的处理保持一致。

3)将图像进行模型训练时一致的规范化处理,然后输入到模型中。

4)通过该模型,最终得到目标网页属于的类型分类。

根据上述方法,现提供一具体应用实例:

本实例通过通用的web信息提取方式,利用上述方法识别目标网页的类型,步骤如下:

1)采集数据。通过一款浏览器插件,实现对所有浏览的网页进行截图与人工标注;

2)对图像进行规范化处理。以图像的宽为基准进行整体缩放,缩放至图像宽度为500px,再根据1:1的宽高比进行裁剪,宽高比不足1:1的图像多余部分填充白色;

3)对图像进行信息增强。为了提升模型的泛化能力,对网页进行水平翻转、添加高斯噪声、沿高边裁剪等方法,在保持网页图像原有类型性质不变的基础上增加了训练数据;

4)建立模型。以结合卷积神经网络cnn与深度残差网络resnet作为模型基线(baseline),以交叉熵为目标函数;

5)调试模型。尝试增加网络层数、调整batch-size、调整dropout参数,调整学习率,最终得到了较高(超过85%)的准确率;

6)部署模型。将模型数据导出并保存,web服务用于提供api接口;

7)应用模型识别网页类型。针对于目标网页,将该网页通过调用api的方式传给web服务器,web服务器在chromeheadless浏览器中进行渲染,得到网页图像;将网页图像输入模型中进行分类,得到此图像对应的网页类型;传回准确的网页类型。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1