2. 上饶职业技术学院 信息工程系,江西 上饶 334109;
3. 浙江省服务机器人重点实验室,浙江大学计算机学院,浙江 杭州 310027;
4. 莆田学院 信息工程学院,福建 莆田 351100
2. Department of Information Engineering Shangrao Vocational & Technical College, Shangrao 334109, China;
3. Zhejiang Provincial Key Laboratory of Service Robot, College of Computer Science, Zhejiang University, Hangzhou 310027, China;
4. College of Information Engineering, Putian University, Putian 351100, China
随着信息技术和网络技术的进步,在线教育、移动电子政务等服务迅速发展,同时国家“互联网+”行动计划的推动,使得各级政府、企事业机构及社会团体越来越多的以线上线下多元化、移动化方式向服务对象提供信息和服务. 互联网应用如微博、微信、大众点评及支付宝等,已进入人们日常生活的方方面面,移动互联网塑造的社会生活新形态进一步加强[1-2]. 2016年8月3日,CNNIC第38次《中国互联网络发展状况统计报告》公布,截至2016年6月,我国网络用户规模已达7.10亿,互联网使用覆盖率达到51.7%,比全球平均水平高出3.1%,比亚洲平均水平高出8.1%. 我国互联网文化和经济影响力提升得到显著展示[3].
中国残疾人网站数据显示,全球大约有10%的人存在不同类型和程度的残障,我国已有8 500万残疾人,占全国总人口的6.21%. 此外,健全人进入老龄阶段以后,听力、视力也会出现不同程度的下降. 到21世纪中期,全球年逾六十的老龄人口将达到20亿左右,我国也将达到4.3亿. 老龄人和残障人士利用互联网获取信息服务及开展人际交流等存在极大困难[4-5]. 缩小群体差异,优化网站采样评估方法,加速实现信息无障碍势在必行.
2012年12月28日,《中华人民共和国工业和信息化部发布实施通信行业标准(YD/T1761-2012)》,对网站设计无障碍技术要求作了详细说明,在每条原则之下,又细分为53条技术规定,每条规定按难度系数规定了3个等级[6],这些规定对如何实现四项原则提出了具体的要求. 网站信息无障碍检测流程如下:爬取网站—渲染网页—无障碍检测—汇总报告. 检测方法分为自动检测和人工检测两大类[7-8],检测点主要针对某条检测规则可能存在障碍的网页组件或标签. 自动检测通过计算机设备和计算机软件自动地对网页代码进行分析[9-10],执行“通过”和“不通过”的判断,以检测出网页有没有根据无障碍设计原则和标准进行设计[11]. 人工检测是利用熟知或了解无障碍检测规则的专家或志愿者,进行人工直接检测或借用辅助工具进行检测,根据主观判断来反映网页无障碍建设水平,对自动检测进行补充和完善[12]. 自动检测可以快速、高效地筛选出有障碍的网页,但无法检测需要进行交互的检测规则,也不能分析网页中内容信息是否被正确传达,即不能进行部分检测“对”与“不对”的判断. 比如,图片添加“alt”标签是网页无障碍标准最常见的规定,也是网页设计中最易忽视的地方. 自动检测只能检测图片是否有替代文本,识别内容是否符合图片语义信息则只能借助人工检测[13].
据第38次CNNIC中国调查,2016年6月,我国注册网站已达454万个,“.cn”下网站总数为212万个,占比46.7%,一个大型网站的网页数量可能达到百万级别. 人工检测一个网页一般需要10 s以上的时间,面对互联网中的海量网页,全部使用人工检测的代价是十分巨大的,想要快速评估网站的信息无障碍程度很难实现,因此,十分需要进行抽样检测. 目前最通用的抽样算法是随机抽样,这个方法能够保证所有网页被抽出的可能性是相等的,该方法看似合理却因为随机性太强无法得到稳定结果. 由于网页无障碍检测点在每个网页中并不是等概率随机分布的,从而导致抽样结果误差较大. 比如:对非文本验证码检测点进行检测时,某个网站可能只有极个别网页存在验证码,进行随机抽样时这些页面被抽中的概率非常低,会出现“漏检”的情况,因此随机抽样算法结果很不稳定. Henzinger等[14]在2000年提出了基于随机游走的近似随机抽样算法,该算法的优点在于无需采集所有页面就可以完成抽样过程,近似均匀随机抽样,而且抽样速度更快,但是同样存在“漏检”的现象,检测结果误差较大. Zhang等[15-16]深入讨论了网页检测中的抽样算法,为后续工作开展奠定研究基础. W3C、WAI组织和UWEM推荐的关键网页抽样算法也经常在实际检测中用到[17-18],但依然存在检测结果过好或者过差,以及事先获得一个网站的所有关键网页所需的时间和人力成本太大等问题. 针对这一问题,本文提出基于KNN算法与局部回归的网站无障碍采样评估.
1 网站无障碍检测网站无障碍检测是指评估一个网站是否满足网站无障碍标准. 检测过程就是根据每项检测条目,判断网站中的检测点是否都满足对应的检测规则. 例如:检测条目要求所有图片都必须包含替代文本,以便盲人用户可以通过读屏软件获取图片的基本语义信息,在实际检测过程中就是对网页中的所有“图片”这一检测点,来判断是否“包含替代文本”这条检测规则. 因此,针对某项检测条目,同一网页中可能存在多个检测点,需要评判这些检测点是否满足对应的检测规则.
1.1 网站无障碍检测评估体系假设一个网站的网页个数是n,需要检测的检测条目数是m,那么第i个网页上的第j个检测条目的得分为
${p_{i,j}} =\begin{aligned} \left\{ {\begin{array}{*{20}{c}}\!\!{t}/{c},\\\!\!1,\end{array}} \begin{array}{*{20}{c}}{c > 0};\\{c = 0}. \end{array}\right.\end{aligned}$ | (1) |
式中:c为该网页包含该检测条目的检测点的总数,t为通过检测规则的检测点个数,t≤c,pi,j的取值范围为[0,1.0]. 评测体系以扣分制为主,当网页不包含任何检测点时,默认该项检测条目得分为满分1.0.
对于整个网站,将第j个检测条目的得分sj定义为所有网页在该检测条目得分的平均值,即
${s_j} = \frac{1}{n} \times \mathop \sum \limits_{i = 1}^n \;{p_{i,\,j}}.$ | (2) |
因此,整个网站在所有检测条目上的评估结果可以表示为向量S={s1,s2,s3,…,sm}. 如果需要用某一个数值表示网站评估结果,则可以为不同检测条目根据难易度、用户体验等因素设置不同的权重值wj ,从而可以将不同检测条目结果加权平均,从而得到网站无障碍评估得分
$G = \frac{{\displaystyle\mathop \sum \nolimits_i^m \;({w_i} \times {s_i})}}{{\displaystyle\mathop \sum \nolimits_i^m \;{w_i}}}.$ | (3) |
网站无障碍评估的真实结果是由网站内所有网页的得分计算得到,因此需要对网站内所有网页进行评估. 由于无障碍评估中不同条目检测的难易度差别,其中类似图片是否包含替代文本,可以用自动化工具分析网页html代码中的alt属性得到检测结果,适合作全网站评估. 如果要判断图片是否包含语义一致的替代文本,而不是通用的介绍文字,需要对图片与替代文本进行语义分析. 目前业界的自动语义分析手段在实际效果中都不理想,需要人工干预帮助完成检测任务.
在检测拥有海量网页的网站时,所需的人工成本过高,需要采取一定的网页抽样手段帮助实现快速网站无障碍评估[19].
假设仅可采样z个网页用于人工评估,可以用向量v表示为z个网页对应的编号,即抽取的第i个网页就是网站中的第vi个网页. 因此抽取网页在第j个检测条目上的评估结果也可以表示为
$s_j' = \frac{1}{z} \times \mathop \sum \limits_{i = 1}^z\;{p_{{v_i},j}}.$ | (4) |
利用采样后的网页集合替代原始网站,可以得到近似的评估结果为向量S'={s1',s2',s3',…,sm'},同时可以参照式(3)近似计算在给定权重分配方案后的网站无障碍评估得分G’.
实验期望的结果就是采样后评估的结果尽可能与未采样的全网站评估结果接近. 为了衡量在不同权重分配体系下误差区别,利用采样与未采样2个评估结果向量的距离衡量采样方法的误差:
$E =\left|\left| { S} - { S}'\right|\right|.$ | (5) |
E越小表示采样的误差越低,采样越有效.
2 基于KNN算法与局部回归采样评估在实际网站无障碍评估任务中,由于网站网页数量庞大,往往采样比率都较低,一般不超过10%. 由于存在着大量网页没有被检测到,从而导致无障碍评估结果误差较大,需要预测未检测到网页得分的方法.
2.1 基于KNN算法的采样评估目前大多数网页是基于脚本或模板生成的,具有相似的结构和布局,实际检测结果表明,同一脚本或模板生成的网页存在的无障碍问题较为相似. 例如一个用户借助自动模板发布新闻,发布工具不显式强调需要录入图片的替代文本,那么发布的大部分同结构的新闻网页中的图片都不存在替代文本. 因此可以利用网页结构的相似度近似推断网页无障碍评估结果的相似性.
根据网页的结构,可以利用自动化工具获取到网页的一系列特征属性,无需人工干预. 因此,可以利用自动化工具获取到网站内所有网页的以下6项结构特征:非文本链接数目、非文本控件数目、非文本内容数目、验证码数目、多媒体数目、预录多媒体数目,组成六维向量,并正则化后形成第i个网页的结构化特征向量xi,从而计算2个网页的距离:
${d_{i,j}} = \left|\left| {{ x}_i} - {{ x}_j}'\right|\right| .$ | (6) |
由前提假设可知,距离越小的网页评估结果越接近,因此可以利用人工打分网页作为已标注样本,利用KNN算法学习出未打分网页的评估结果[20].
KNN算法需计算每个未人工打分网页与已经人工打分网页间的距离,从而选出最近的k个已标注网页{y1,y2,…,yk},其中yl表示与该网页第l近的网页编号,因此该网页得分可以利用KNN回归思想计算,即
$s_{2i} = \frac{1}{k} \times \mathop \sum \limits_{l = 1}^k \;{s_{y_l}}.$ | (7) |
利用此方法可以得到所有网页的评估结果,从而计算网站整体的无障碍评估结果.
2.2 基于局部回归的改进虽然KNN方法可以为所有网页预测无障碍评估结果,但该方法存在问题. 如图1所示,假设a1、a2、a3、b1、b2、b3是已经人工打分的网页,用k=3的KNN方法预测网页a和b的得分时,由于a与a1、a2、a3都较近,结果较好;而b仅与b3较近,与b1、b2较远. 因此预测a无障碍得分较准确,而用b1、b2预测b的得分不如b3预测准确,误差较大. 因此,引入局部回归思想,即网页距离越近,网页预测权重越大,如图1所示,线的粗细表示权重的大小,越粗的线表示预测结果权重越大. 本文中,利用距离的倒数作为权重计算方法,即
![]() |
图 1 KNN算法不足样例 Fig. 1 Insufficient examples of KNN algorithm |
$w_{i,j}' = \frac{1}{{{d_{i,j}}}}.$ | (8) |
则新的网页无障碍评估得分预测计算方式为
$s_{3i} = \frac{{\displaystyle\mathop \sum \nolimits_{l = 1}^k \left(w_{i,{y_l}}' \times {s_{{y_l}}}\right)}}{{\displaystyle\mathop \sum \nolimits_{l = 1}^k w_{i,{y_l}}'}}.$ | (9) |
采用局部线性回归方法可以更好地预测未人工打分网页的评估结果,从而可以更好地预估整个网站无障碍评估结果.
3 实验及结果分析 3.1 实验数据及设计残联网站的信息可信度对残疾人来说远高于其他网站,因此其成为残疾人在网上寻求可靠政策信息的主要来源. 从这个层面来说,各省残联网站应该能够被任何人使用任何网络浏览技术同等地访问,任何人能方便地获取网站内包含的所有信息,并与网站进行完全交互的功能. 本文首先选择广东省残联官方网站作为实验对象,通过爬虫爬取,发现广东残联网站共有8 190个页面,这个数据量已经具备足够的研究宽度和广度,对于该网站的测试不仅能够帮助分析算法的效果,同时能发现该网站的无障碍建设水平程度.
本文提出的基于KNN与局部回归网站无障碍考核评估流程及对比实验设计方法如图2所示.
![]() |
图 2 KNN局部回归网站无障碍考核评估流程及对比实验设计 Fig. 2 KNN local regression website accessibility evaluation process and contrast experiment design |
实验流程如下:
1)同随机抽样一样,依据网站页面总数,按照一定比例,从所有页面中均匀地随机抽取q个页面作为样本页面;
2)对抽取的样本页面进行无障碍检测,获得样本页面无障碍得分;
3)将每一个抽样页面作为一个类型,设定不同的最近邻个数k值,利用页面相似性度量方法,将剩余检测页面按多维空间欧式距离设定样本距离权值w进行回归学习;
4)计算剩余网页无障碍得分,从而预估网站整体无障碍得分;
将上述过程重复r次,去掉随机误差,以达到更好地评价本文方法的效果.
3.2 KNN与局部回归算法实验及结果分析以广东残联网站为例,通过重复实验来观测算法结果.
3.2.1 最近邻个数k值参数设定由于随机算法的特性,随机抽样样本数越多,覆盖面越广,实验结果越接近真实得分. 但是过多的样本数会增加时间成本和人工成本. 根据以往应用经验,首先假定抽样比例为5%,并进行取整运算,即设定
${q} = \left\lfloor {n \times 5{\text{\%}}} \right\rfloor .$ | (10) |
然后将重复抽样次数r设定为100;最近邻个数k值的选择对KNN学习模型有较大影响,如果最近邻个数k值过小,则得到样本的近邻数过少,会降低剩余待测样本预测的精确度,同时噪声数据造成的干扰也会大幅度放大. 当k=1时,KNN退化成最近邻算法,没有了显式的学习过程. 如果最近邻个数k值过大,造成不相似的样本集内页面样本被选中,从而导致预测错误. 如何设定恰当的最近邻个数k值一直都是KNN算法的研究热点. 按照实验经验规则:最近邻个数k值初始取一个比较小的奇数数值,跟投票表决一样,避免因2种票数相等而难以决策. 同时最大k值一般要低于标记样本数的平方根. 通过修改最近邻个数k值来观察实验结果,如图3所示,依次为k设定为3、5、7、9时实验结果,其中σ为抽样误差.
![]() |
图 3 广东省残联官网数据集在不同最近邻个数取值下本文方法与随机抽样方法的抽样误差对比 Fig. 3 Comparison between sampling errors of proposed method and random sampling method on Guangdong Disabled Persons' Federation Website with different nearest neighbor values |
经过反复实验验证,k值越大,需要花费的时间和存储空间成本越大,当k值继续增大时,对实验结果影响不是非常明显. 经过对其他省市残联网站进行实验,当k设定为7或者9时,实验效果就已经非常明显.
3.2.2 随机抽样样本比例q的设定假定参数最近邻个数k=7,重复抽样次数r=100不变,将抽样数量按网站页面总数的1%、5%和10%比例继续进行实验,仍然进行取整操作,图3(c)就是按照5%比例抽样进行的实验,因此不再重复,1%和10%抽样实验结果如图4所示.
![]() |
图 4 广东省残联官网数据集在不同抽样比例下本文方法与随机抽样方法抽样误差对比 Fig. 4 Comparison between sampling errors of proposed method and random sampling method on Guangdong Disabled Persons' Federation Website with different sampling rates |
继续修改参数随机抽样数量q,进一步进行实验验证,当取样比例很小时,实验结果并不好,当取样比例逐渐加大时,KNN局部回归算法优势越来越小,而花费的时间成本却是巨大的. 修改其他网站随机抽样数量q的取值,展开相关实验验证,当网站页面总数在5 000以下时,取样比例一般设定为10%左右;当网站页面总数在10 000以下时,取样比例一般设定为5%左右;当网站页面总数在10 000以上时,取样比例一般设定为2%左右.
综合以上实验结果可知:针对广东省残联网站,采用KNN与局部回归算法预估网站整体无障碍得分相比随机抽样预估网站整体无障碍得分误差率更小,更接近网站无障碍真实得分. 因此,KNN与局部回归算法能够有效缩小网站页面检测范围,加快网站无障碍人工检测效率. 后续再用此方法在其他网站测试效果.
依据之前实验经验,为了保证实验运行速度和效果,特选定最近邻个数k=7,重复抽样次数r=100,样本距离权值w设定为两点间欧式距离的倒数,抽样数量根据待测网站页面数量,按相应比例进行取整设定,继续进行实验. 待测网站及其页面规模如表1所示. 首先,测试湖北省残联官网,依据页面数量,将采样比例设定为5%,100次抽样的实验结果如图5所示.
![]() |
表 1 待测部分省市残联网站页面数据表 Table 1 Webpage data list of websites of Disabled Persons' Federation of some provinces and cities to be tested |
![]() |
图 5 湖北省残联官网数据集重复100次抽样时本文方法与随机抽样方法的抽样误差对比 Fig. 5 Comparison between 100-times sampling errors of proposed method and random sampling method on Hubei Disabled Persons' Federation Website |
用火柴杆长度来表示每次抽样实验中随机抽样实验及KNN局部回归实验的预估网站整体无障碍得分与网站整体无障碍真实得分之间的误差. 从实验数据分布情况证明,利用KNN局部回归算法对湖北省残联官网进行实验,效果非常好. 继续对其他省市残联官网进行实验,实验结果如图6所示,依次为江苏残联、宁夏残联、贵州残联、浙江残联和重庆残联官网抽样实验结果.
![]() |
图 6 其他残联官网数据集重复100次抽样时本文方法与随机抽样方法的抽样误差对比 Fig. 6 Comparison between 100-times sampling errors of proposed method and random sampling method on other Disabled Persons' Federation Websites |
以上实验结果再次验证了KNN与局部回归算法在减少网站页面检测范围、提升网站无障碍人工检测准确率方面的应用是确实可行的.
4 结 语KNN与局部回归算法可以在检测人工和时间成本较低时,大大提升检测准确率,使得在短时间内快速评估网站无障碍程度成为现实,可在网站无障碍人工检测中得到广泛应用. 该方法的不足之处是计算量较大,因为对每一个未标记的网页样本都要计算其到全体已知网页样本的距离,才能求得其k个最近邻样本. 下一步研究将对该方法进行进一步算法优化,尤其是事先去除对计算作用较弱的网页样本,并将其推广应用到其他类型网站无障碍评估检测中去.
[1] |
丁明华. 政府APP:移动电子政务发展模式新思路[J]. 商业经济研究, 2014(12): 66-67. DING Ming-hua. Government APP: new development thoughts of mobile e-government affairs[J]. Business and Economy Study, 2014(12): 66-67. DOI:10.3969/j.issn.1002-5863.2014.12.028 |
[2] |
陈锐浩. 移动互联网时代高校资源库建设思路及实践[J]. 深圳职业技术学院学报, 2017, 16(1): 39-44. CHEN Rui-hao. Constructive thinking and practice of the university resources system in a mobile internet era[J]. Journal of Shenzhen Polytechnic, 2017, 16(1): 39-44. |
[3] |
姜卫玲, 储颖. "互联网+"与区域文化影响力: 发展现状、提升策略[J]. 阅江学刊, 2017(6): 117-123. JIANG Wei-ling, CHU Ying. Current situation and improving strategy of " Internet+” and regional cultural influence[J]. Yuejiang Academic Journal, 2017(6): 117-123. DOI:10.3969/j.issn.1674-7089.2017.06.015 |
[4] |
AVILA C, BALDIRIS S, FABREGAT R, et al. A web content accessibility evaluation process for learning objects in the context of a virtual learning environment [M] // New Horizons in Web Based Learning. Berlin Heidelberg: Springer, 2014:181–190.
|
[5] |
杨飞. 论残疾人的信息无障碍权[J]. 河南财经政法大学学报, 2013, 28(2): 118-124. YANG Fei. On the barrier-free right of information of the disabled[J]. Journal of Henan University of Economics and Law, 2013, 28(2): 118-124. DOI:10.3969/j.issn.2095-3275.2013.02.012 |
[6] |
周宇. 基于抽样和模板的网站无障碍检测方法[D]. 杭州: 浙江大学, 2014. ZHOU Yu. Website accessibility detection methods basic on sampling and template [D]. Hangzhou: Zhejiang University. 2014. |
[7] |
ABOUZAHRA S. Web accessibility evaluation [M] // Web Accessibility: a Foundation for Research. 2008: 79–106.
|
[8] |
赵英, 傅沛蕾. 网页信息无障碍主观检测方法研究[J]. 图书馆学研究, 2016(9): 24-33. ZHAO Ying, FU Pei-lei. Research on subjective detection method of web information accessibility[J]. Research on Library Science, 2016(9): 24-33. |
[9] |
DEBNATH S, MITRA P, GILES C L. Automatic extraction of informative blocks from webpages [C] // ACM Symposium on Applied Computing. Santa Fe: ACM, 2005: 1722–1726.
|
[10] |
欧阳佳, 林丕源. 基于DBSCAN算法的网页正文提取[J]. 计算机工程, 2011, 37(3): 64-66. OU Yang-jia, LIN Pi-yuan. Webpage content extraction based on DBSCAN[J]. Computer Engineering, 2011, 37(3): 64-66. |
[11] |
NIETZIO A, STROBBE C, VELLEMAN E. The unified web evaluation methodology (UWEM) 1.2 for WCAG 1.0 [M] // Computers Helping People with Special Needs. Berlin Heidelberg: Springer, 2008: 394–401.
|
[12] |
李美艳. 基于权重学习的网站无障碍检测度量方法研究[D]. 杭州: 浙江大学, 2016. LI Mei-yan. Research on measure method of website accessibility detection based on weight learning[D]. Hangzhou: Zhejiang University. 2016. |
[13] |
陈静. 面向网页信息无障碍合规性检测的样例推荐系统[D]. 杭州: 浙江大学, 2017. CHEN Jing, The recommendation system of sample pages for web accessibility evaluation [D]. Hangzhou: Zhejiang University. 2017. |
[14] |
Monika R. Henzinger, Allan Heydon. Michael mitzenmacher. on near-uniform URL sampling[J]. Computer Networks, 2000, 33(1): 295-308. |
[15] |
ZHANG M N, WANG C, BU J J, et al. An optimal sampling method for web accessibility quantitative metric[J]. Internet Research, 2015(7): 1-4. |
[16] |
ZHANG M N, WANG C, BU J J, et al. A sampling method based on URL clustering for fast web accessibility evaluation[J]. Frontiers of Information Technology & Electronic Engineering, 2015, 16(6): 449-456. |
[17] |
W3C/WAI. Conformance evaluation of web sites for accessibility: determine the scope of the evaluation [EB/OL]. (2016-10-24)[2017-09-20] . http://www.w3.org/WAI/eval/conformance.html#scope.
|
[18] |
NIETZIO A, STROBBE C, VELLEMAN E. The unified web evaluation methodology (UWEM) 1.2 for WCAG 1.0 [M]. Berlin Heidelberg: Springer, 2008: 394–401.
|
[19] |
丁姝洁. 基于检测点分布抽样的网站无障碍检测[D]. 杭州: 浙江大学, 2015. DING Shu-jie. Web accessibility evaluation based on checkpoint sampling [D]. Hangzhou: Zhejiang University, 2015. |
[20] |
iris数据的KNN实现[EB/OL]. (2016-11-10).[2017-11-08] . https://blog.csdn.net/chenchunyue11/article/details/51416117.
|