一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种PHP文件分类方法、装置及存储介质与流程

2021-11-26 23:02:00 来源:中国专利 TAG:

一种php文件分类方法、装置及存储介质
技术领域
1.本发明涉及计算机技术领域,尤其涉及一种php文件分类方法、装置及存储介质。


背景技术:

2.杀毒引擎无法识别的php文件是否为php病毒文件或疑似php病毒文件。此时,需要采用人工的方式对php文件进行分析,并基于分析结果,在杀毒引擎的病毒库中添加php文件是否为病毒程序或疑似为病毒程序的标本,以便后续检测其他文件时使用。
3.采用人工分析的方式,对php文件进行分析的过程中,一个一个地进行分析判断费时费力,且人工成本比较高。因此,可对大量的php文件进行归类;然后,针对同一类别中的至少一个php文件采用人工分析的方式,确定其是否为病毒文件或是否疑似病毒文件,此时可以达到减少人工处理数量,节约人工成本的目的。
4.目前,仅提出针对文档进行分类的方法,但是文档和php文件的重点不一样,因此针对文档进行分类的方法对php文件进行所达到的效果不好,准确率低。因而如何提高php文件分类的准确性是亟待解决的。


技术实现要素:

5.本技术提供一种php文件分类方法、装置及存储介质,用以提高php文件分类的准确性。
6.第一方面,本技术实施例提供一种php文件分类方法,该方法包括:
7.获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件;
8.针对待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合,每个文件相似度集合中包含:基于相应的一个待分类php文件与各个参考php文件之间的各个特征关联度,确定的各个文件相似度;
9.基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。
10.第二方面,本技术实施例提供一种php文件分类装置,该装置包括:
11.第一获得单元,用于获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件;
12.第二获得单元,用于针对待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合,每个文件相似度集合中包含:基于相应的一个待分类php文件与各个参考php文件之间的各个特征关联度,确定的各个文件相似度;
13.分类单元,用于基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。
14.在一种可能的实现方式中,第二获得单元具体用于:
15.针对各个待分类php文件,分别执行以下操作:
16.针对各个待分类php文件中的一个待分类php文件,基于一个待分类php文件,与各
个参考php文件之间的特征关联度,分别获得一个待分类php文件与各个参考php文件之间的文件相似度,其中,特征关联度是基于注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少一种确定的;
17.基于各个待分类php文件各自对应的各个文件相似度,获得各个待分类php文件各自对应的文件相似度集合。
18.在一种可能的实现方式中,一个待分类php文件,与各个参考php文件中的一个参考php文件之间的特征关联度,是第二获得单元通过如下方式确定的:
19.若针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的一种关联度信息,则直接将一种关联度信息,作为特征关联度;
20.若针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息,则基于至少两种关联度信息的加权处理结果,确定特征关联度。
21.在一种可能的实现方式中,第二获得单元针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息后,基于至少两种关联度信息的加权处理结果,确定特征关联度之前,还用于:
22.将至少两种关联度信息,分别输入相应的激励函数进行精度调整,获得调整后的至少两种关联度信息。
23.在一种可能的实现方式中,第二获得单元还用于:
24.针对各个待分类php文件,分别执行以下操作:
25.若确定当前存在至少一个类别分组,则针对各个待分类php文件中的一个待分类php文件,获得一个待分类php文件对应的至少一个文件相似度集合;其中,至少一个文件相似度集合包括如下至少一种:基于一个待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合;基于一个待分类php文件,与至少一个类别分组中的每个类别分组中包含的各个目标php文件,获得的每个类别分组对应的各个第二文件相似度,确定的至少一个第二文件相似度集合;
26.若确定当前不存在至少一个类别分组,针对各个待分类php文件中的一个待分类php文件,则针对一个待分类php文件,获得一个待分类php文件对应的一个文件相似度集合;其中,一个文件相似度集合为:基于一个待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合。
27.在一种可能的实现方式中,文件相似度集合包含第一文件相似度集合,分类单元具体用于:
28.针对各个待分类php文件,分别执行如下操作:
29.针对各个待分类php文件中的一个待分类php文件,确定一个待分类php文件对应的第一文件相似度集合;
30.针对第一文件相似度集合中的各个第一文件相似度,分别执行以下操作:
31.若确定一个第一文件相似度大于第一阈值,则将一个第一文件相似度对应的一个待分类php文件和其他待分类php文件分到同一类别;
32.若确定一个第一文件相似度不大于第一阈值,则将一个第一文件相似度对应的一
个待分类php文件和其他待分类php文件分到不同类别。
33.在一种可能的实现方式中,文件相似度集合包含至少一个第二文件相似度集合,分类单元具体用于:
34.针对各个待分类php文件,分别执行如下操作:
35.针对各个待分类php文件中的一个待分类php文件,确定一个待分类php文件对应的至少一个第二文件相似度集合,其中,一个第二文件相似度集合对应一个类别分组;
36.针对至少一个第二文件相似度集合中的各个第二文件相似度集合,分别执行如下操作:
37.从一个第二文件相似度集合中选取预设数量的第二文件相似度,基于选取的第二文件相似度确定判定相似度;
38.若确定判定相似度大于第二阈值,则将一个待分类php文件分到一个第二文件相似度集合对应的类别分组;
39.若确定判定相似度不大于第二阈值,则不将一个待分类php文件分到一个第二文件相似度集合对应的类别分组。
40.第三方面,本技术实施例提供一种php文件分类设备,包括:存储器和处理器,其中,存储器,用于存储计算机指令;处理器,用于执行计算机指令以实现本技术实施例提供的php文件分类方法。
41.第四方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令被处理器执行时实现本技术实施例提供的php文件分类方法。
42.本技术有益效果如下:
43.本技术实施例提供一种php文件分类方法、装置及存储介质,用以提高php文件分类的准确性。首先,获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件;然后,基于待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合,每个文件相似度集合中包括:基于相应的一个待分类php文件与各个参考php文件之间的各个特征关联度,确定的各个文件相似度;基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。提供了一种针对待分类的php文件进行分类处理的方法,且在该方法中,待分类php文件与参考文件之间的文件相似度是基于特征关联度确定的,参考了php文件的特征对待处理php文件进行分类,提高了分类的准确性。
44.本技术的其它特征向量和优点将在随后的说明书中阐述,并且,子模型地从说明书中变得显而易见,或者通过实施本技术而了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
45.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,针对本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1为本技术实施例提供的一种应用场景示意图;
47.图2为本技术实施例提供的一种php文件分类方法流程图;
48.图3为本技术实施例提供的一种针对确定文件相似度集合的方法流程图;
49.图4为本技术实施例提供的一种确定第一文件相似度集合的示意图;
50.图5为本技术实施例提供的一种确定第二文件相似度集合的示意图;
51.图6为本技术实施例提供的一种php文件的示意;
52.图7为本技术实施例提供的一种确定待分类php文件与参考php文件之间的文件相似度的方法流程图;
53.图8为本技术实施例提供的一种php文件分类的整体方法流程图;
54.图9为本技术实施例提供的一种php文件分类装置的结构图;
55.图10为本技术实施例提供的一种计算设备的结构图。
具体实施方式
56.为了使本技术的目的、技术方案及有益效果更加清楚明白,以下将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术部分实施例,并不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
57.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
58.以下对本技术实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
59.1、超文本预处理器文件(hypertext preprocessor,php):是在服务器端执行的脚本语言,尤其适用于web开发并可嵌入超文本标记语言(hypertext markup language,html)中。php语法利用了c、java和perl,该语言的主要目标是允许web开发人员快速编写动态网页。php脚本程序主要应用于web服务端开发,命令行和编写桌面应用程序。php文件是在web服务端开发,命令行和编写桌面应用程序中已经编译完成的脚本文件。
60.2、杀毒引擎:就是一套判断特定程序行为是否为病毒程序(包括可疑的)的技术机制。杀毒引擎是杀毒软件的主要部分。是去检测和发现病毒的程序。而病毒库是已经发现的病毒的标本。用病毒库中的标本去对照机器中的所有程序或文件,看是不是符合这些标本,符合则确定程序或文件是病毒,否就不一定是病毒,因为还有很多没有被发现的或者刚刚产生的病毒。
61.3、杰卡德(jaccard)相似度:也称jaccard相似系数(jaccard similarity coefficient),用于比较有限样本集之间的相似性与差异性。如集合间的相似性、字符串相似性、目标检测的相似性、文档查重等。jaccard相似度的计算方式为:交集个数和并集个数的比值,如给定两个集合a和b,jaccard相似度定义为a与b交集的大小与a与b并集的大小的比值,即此时,jaccard相似度值越大,样本相似度越高。相反地,与jaccard相似度相关的指标叫做jaccard距离,用于描述集合之间的不相似度,jaccard距离
越大,样本相似度越低。
62.4、莱文斯坦(levenshtein)相似度:用于计算两个字符串之间的levenshtein距离。levenshtein距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。
63.5、云技术(cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
64.云技术(cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
65.下面对本技术实施例的设计构思进行简单介绍:
66.本技术实施例针对php文件提供一种文件分类方法,相关技术中,提出了对文档进行自动分类的方法。文档自动分类方法,主要基于人工智能技术中的自然语言处理技术(natural language processing,nlp)和机器学习(machine learning,ml)而设计。具体的,使用nlp方法将文本转换成序列,再采用机器学习相关的方法进行分类。
67.人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。
68.人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术主要包括计算机视觉技术、自然语言处理技术、以及机器学习/深度学习等几大方向。随着人工智能技术研究和进步,人工智能在多个领域展开研究和应用,例如常见的智能家居、智能客服、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、机器人、智能医疗等,相信随着技术的发展,人工智能将在更多的领域获得应用,并发挥越来越重要的价值。
69.机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。对比于数据挖掘从大数据之间找相互特性而言,机器学习更加注重算法的设计,让计算机能够自动地从数据中“学习”规律,并利用规律对未知数据进行预测。
70.机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。强化学习(reinforcement learning,rl),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
71.使用文档分类方法无法有效针对php文件进行分类,因为文档和php文件的重点不
一样,因此,在使用文档分类方法对php文件进行分类的情况下,所达到的分类效果不好。
72.并且采用nlp和机器学习的分类方法对php文件进行分类的过程中,需要单独构建与php文件对应的词库,以及机器学习模型,造成基于nlp和机器学习的分类方法对php文件进行分类的分类方法通用性差,耗费资源多。
73.有鉴于此,本技术实施例提供了一种php文件分类方法、装置及存储介质,结合php文件的特征,确定php文件之间的文件相似度,根据文件相似度,自动将相近的php文件分到同一类别,该方案适用于所有的php文件,减少了人工成本,提高了php文件分类的准确性。
74.在本技术实施例中,获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件;针对待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合,每个文件相似度集合中包含:基于相应的一个待分类php文件与各个参考php文件之间的各个特征关联度,确定的各个文件相似度;基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。
75.在一种可能的实现方式中,特征关联度通过如下方式确定的:
76.若针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的一种关联度信息,则直接将一种关联度信息,作为特征关联度;
77.若针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息,则基于至少两种关联度信息的加权处理结果,确定特征关联度。
78.本技术实施例中,针对php文件分类的过程中,依次提取php文件特有的特征,并通过多特征相结合的方式进行文件相似度计算,提高了文件相似度的准确性,进一步提高了php文件分类的准确度。
79.在介绍完本技术实施例的设计思想之后,下面对本技术实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
80.请参考图1,图1示例性提供了一种应用场景示意图,该应用场景中包括终端设备10(如可以但不局限于包括图中示意出的10

1或10

2)和服务器11;
81.其中,终端设备10为用户使用的电子设备,该终端设备10中安装运行有各类阅读软件及具有阅读评论功能的网站。终端设备10可以是个人计算机、手机、平板电脑、笔记本、电子书阅读器等计算机设备;终端设备10还可以为聊天机器人。
82.服务器11可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
83.在一种可能的实施方式中,终端设备10与服务器11之间可以通过通信网络进行通信,通信网络是有线网络或无线网络。因此终端设备10和服务器11可以通过有线或无线通信方式进行直接或间接地连接。比如,终端设备10还可以通过无线接入点12与服务器11间接地连接,或终端设备10通过因特网与服务器11直接地连接,本技术在此不做限制。
84.在一种可能的实现方式中,终端设备10从服务器11中下载程序文件,并通过终端设备中的杀毒引擎判断下载的程序文件是否为病毒程序或可疑病毒程序,杀毒引擎的病毒库中的标本需要人工添加。
85.当终端设备10从服务器11中下载至少一个php文件时,终端设备10中的杀毒引擎在判断下载的php文件是否为病毒程序或可疑病毒程序的过程中,若杀毒引擎无法识别获取的至少一个php文件,则需要通过人工的方式进行对至少一个php文件进行分析,并将分析结果作为标本添加到杀毒引擎的病毒库中。若通过人工的方式对获取的至少一个php文件进行识别,费时费力,人工成本高,因此预先将至少一个php文件进行分类,针对一个类别中的一个或多个进行分析,若确定一个类别中的一个php文件为病毒程序或疑似病毒程序,则确定该类别中的所有php文件均为病毒程序或疑似病毒程序;或确定一个类别中的php文件为病毒程序或疑似病毒程序的数量达到预设值,则确定该类别中的所有php文件均为病毒程序或疑似病毒程序。并将为病毒程序或疑似病毒程序的php文件添加到杀毒引擎的病毒库中。通过预先分类,针对一个类别进行分析的方法,可以减少人工处理php文件的数量,节省人工时间,通过对一个类别中的某一个php文件进行分析,达到在病毒库中快速添加这一类别中所有php文件的目的,同时可以根据已经分析的php文件,对新增的php文件进行判断,快速过滤掉已经分析过的同类样本。
86.在一种可能的应用场景中,本技术实施例中可以采用云存储技术保存待分类php文件;其中云存储(cloud storage)是在云计算概念上延伸和发展出来的每个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的每个存储系统。
87.基于上述应用场景,下面结合上述描述的应用场景,根据附图来描述本技术示例性实施方式提供的php文件分类方法,需要注意的是,上述应用场景仅是为了便于理解本技术的精神和原理而示出,本技术的实施方式在此方面不受任何限制。
88.请参考图2,图2示例性提供了本技术实施例中一种php文件分类方法流程图,包括如下步骤:
89.步骤s200,获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件。
90.终端设备从服务器中获取至少一个待分类php文件,组成待分类文件集合。
91.步骤s201,针对待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合,每个文件相似度集合中包含:基于相应的一个待分类php文件与各个参考php文件之间的各个特征关联度,确定的各个文件相似度。
92.在本技术实施例中,为了减少人工分析的工作量,提供对待分类文件集合中的待分类php文件进行预先分类的设计,得到多个已归类的类别分组,然后针对每个类别分组中的至少一个php文件进行分析。
93.在将待分类文件集合中的各个待分类php文件进行分类的过程中,主要基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。
94.因此,在本技术实施例中,需要针对各个待分类php文件,分别获取各个待分类php
文件各自对应的文件相似度集合。
95.在一种可能的实现方式中,针对待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合时,判断本地当前是否存储有已归类的至少一个类别分组。
96.若确定当前存在至少一个类别分组,则确定各个待分类php文件各自对应至少一个文件相似度集合;至少一个文件相似度集合包括如下至少一种:
97.基于待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合;
98.基于待分类php文件,与至少一个类别分组中的每个类别分组中包含的各个目标php文件,获得的每个类别分组对应的各个第二文件相似度,确定的至少一个第二文件相似度集合。
99.若确定当前不存在至少一个类别分组,则确定各个待分类php文件各自对应一个文件相似度集合;其中,一个文件相似度集合为:
100.基于待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合。
101.下面以针对待分类集合中的一个待分类php文件w为例,对确定待分类php文件对应的文件相似度集合进行说明:
102.请参考图3,图3示例性提供了本技术实施例中一种针对确定文件相似度集合的方法流程图,包括如下步骤:
103.步骤s300,获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件。
104.步骤s301,从待分类文件集合中,选择一个当前需要确定文件相似度集合的待分类php文件w;
105.在待分类文件集合中随机选择一个待分类php文件,作为当前需要确定文件相似度集合的待分类php文件w。
106.步骤s302,判断本地当前是否存在至少一个类别分组,若存在至少一个类别分组,则执行步骤s303,否则执行步骤s305。
107.步骤s303,确定各个参考php文件包括两类参考php文件,分别为:待分类文件集合中,除当前需要确定文件相似度集合的待分类php文件w以外的,各个其他待分类php文件,以及至少一个类别分组中的每个类别分组中包含的各个目标php文件。
108.在一种可能的实现方式中,各个参考php文件可以用集合的方式体现,若确定存储至少一个类别分组,则确定存在至少两种参考php文件集合,其中,至少两种参考php文件集合,包括:
109.待分类文件集合中,除当前需要确定文件相似度集合的待分类php文件w以外的,各个其他待分类php文件,组成的一种参考php文件集合;比如,待分类文件集合为{待分类php文件1,待分类php文件2
……
待分类php文件10},待分类文件集合中包含有10个待分类php文件;其中待分类php文件w为待分类php文件1,则参考php文件集合为{待分类php文件2
……
待分类php文件10};
110.同一类别分组中包含的各个目标php文件,组成的另一种参考php文件集合;比如,
确定存在3个类别分组,分别为类别分组g1、类别分组g2以及类别分组g3。其中,类别分组g1为{目标php文件g1t1,目标php文件g1t2
……
目标php文件g1t6},则参考php文件集合为{目标php文件g1t1,目标php文件g1t2
……
目标php文件g1t6};同理,若类别分组g2为{目标php文件g2t1,目标php文件g2t2
……
目标php文件g2t5},则参考php文件集合为{目标php文件g2t1,目标php文件g2t2
……
目标php文件g2t5};以此类推,当存在多少类别分组时,就确定存在相应数量的另一种参考php文件集合。
111.步骤s304,基于待分类php文件w,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合,以及基于待分类php文件w,与至少一个类别分组中的每个类别分组中包含的各个目标php文件,获得的每个类别分组对应的各个第二文件相似度,确定的至少一个第二文件相似度集合,获得待分类php文件w对应的至少一个文件相似度集合。
112.情况一:若确定本地当前存在至少一个类别分组,则各个参考php文件中包括两类参考php文件,分别为:
113.待分类文件集合中,除当前需要确定文件相似度集合的待分类php文件w以外的,其他待分类php文件;以及
114.至少一个类别分组中的各个目标php文件。
115.此时,各个待分类php文件中的每一个待分类php文件均对应有至少一个文件相似度集合;
116.以各个待分类php文件中,当前需要确定文件相似度集合的一个待分类php文件w为例,待分类php文件w对应的至少一个文件相似度集合中包括如下至少一种:
117.1、基于待分类php文件w,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合;
118.比如,待分类文件集合为{待分类php文件1,待分类php文件2
……
待分类php文件10},待分类文件集合中包含有10个待分类php文件;
119.对于10个待分类php文件中,当前需要确定文件相似度集合的一个待分类php文件w,分别确定其与剩余的9个其他待分类php文件之间的第一文件相似度,并基于确定的9个第一文件相似度,组成第一文件相似度集合;
120.请参考图4,图4示例性提供了本技术实施例中一种确定第一文件相似度集合的示意图,设待分类php文件w为待分类php文件1,剩余的9个其他待分类php文件为:待分类php文件2
……
待分类php文件10。此时,分别确定待分类php文件1与待分类php文件2
……
待分类php文件10之间的第一文件相似度为:第一文件相似度1

2,第一文件相似度1
‑3……
第一文件相似度1

10;因此,确定第一文件相似度集合为{第一文件相似度1

2,第一文件相似度1
‑3……
第一文件相似度1

10},其中,第一文件相似度1

2为待分类php文件1和待分类php文件2之间的文件相似度,第一文件相似度1

3为待分类php文件1和待分类php文件3之间的文件相似度,以此类推,不同重复介绍。
121.同理,对于待处理php文件2对应的第一文件相似度集合为{第一文件相似度2

1,第一文件相似度2
‑3……
第一文件相似度2

10};
122.对于待处理php文件3对应的第一文件相似度集合为{第一文件相似度3

1,第一文件相似度3
‑2……
第一文件相似度3

10},以此类推。
123.2、基于待分类php文件w,与至少一个类别分组中的每个类别分组中包含的各个目标php文件,获得的每个类别分组对应的各个第二文件相似度,确定的至少一个第二文件相似度集合,其中一个第二相似度集合对应一个类别分组;
124.比如,确定当前存在3个类别分组,分别为:类别分组g1、类别分组g2、类别分组g3,则待分类php文件w将对应有3个第二文件相似度集合,分别为:第二文件相似度集合w

g1,第二文件相似度集合w

g2,以及第二文件相似度集合w

g3;
125.其中,一个第二相似度集合对应一个类别分组。比如,第二文件相似度集合w

g1对应类别分组g1。
126.在本技术实施例中,每一个第二相似度集合中包括:相应的类别分组g中的各个目标php文件gt,与待分类php文件w之间的各个第二文件相似度。
127.下面以待分类php文件w与一个类别分组中包含的各个目标php文件t之间的第二文件相似度,确定待分类php文件w对应的一个第二文件相似度集合,进行说明:
128.请参考图5,图5示例性提供了本技术实施例中一种确定第二文件相似度集合的示意图,设,一个类别分组为类别分组g1,类别分组g1为:{目标php文件g1t1,目标php文件g1t2
……
目标php文件g1tn},可知类别分组g1包含有n个目标php文件;
129.此时,分别确定待分类php文件w与目标php文件g1t1,目标php文件g1t2
……
目标php文件g1tn之间的第二文件相似度,确定的第二文件相似度分别为:第二文件相似度w

g1t1,第二文件相似度w

g1t2
……
第二文件相似度w

g1tn;因此,待分类php文件w对应的一个第二文件相似度集合w

g1为{第二文件相似度w

g1t1,第二文件相似度w

g1t2
……
第二文件相似度w

g1tn}。
130.步骤s305,确定各个参考php文件包括一类参考php文件,为待分类文件集合中,除当前需要确定文件相似度集合的待分类php文件w以外的,各个其他待分类php文件。
131.步骤s306,将待分类php文件w,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合,作为待分类php文件w对应的一个文件相似度集合。
132.情况二:若确定本地当前不存在至少一个类别分组,则各个参考php文件中仅包括:待分类文件集合中除当前正在确定文件相似度集合的待分类php文件以外的其他待分类php文件;
133.因此,各个待分类php文件对应一个文件相似度集合,一个文件相似度集合为:基于一个待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合,在此不再重复赘述,具体可参见情况一的实施例。
134.基于上述情况一和情况二,可知:无论参考php文件为待分类文件集合中的其他待分类php文件,还是至少一个类别分组中的目标php文件;在确定各个待分类php文件各自对应的文件相似度集合的过程中,均为:
135.首先确定待分类php文件与参考php文件之间的文件相似度,然后基于确定的文件相似度组成文件相似度集合。
136.在本技术实施例中,文件相似度是基于特征关联度确定的,在一种可能的实现方式中,特征关联度即为文件相似度。因此,下面重点介绍本技术实施例中如何确定特征关联
度。
137.以确定一个待分类php文件w与一个参考php文件r之间的特征关联度为例进行说明:
138.首先,分别对一个待分类php文件w与一个参考php文件r,进行相同特征提取,待分类php文件w与参考php文件r均为php文件,其中php文件包含有注释、字符串以及代码等特征。请参考图6,图6示例性提供了本技术实施例中一种php文件的示意,可知该php文件中包含有注释信息、字符串信息和代码信息。
139.然后,基于提取的注释、字符串以及代码等特征,获得一个待分类php文件w与一个参考php文件r之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少一种关联度信息。
140.最后,基于获得的至少一种关联度信息,确定一个待分类php文件w与一个参考php文件r之间的特征关联度。
141.在一种可能的实现方式中,若针对待分类php文件w,获得与参考php文件r之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的一种关联度信息,则直接将一种关联度信息,作为特征关联度;
142.比如,获得注释关联度信息,则将注释关联度信息作为特征关联度;获得字符串关联度信息,则将字符串关联度信息作为特征关联度;获得代码关联度信息,则将代码关联度信息作为特征关联度。
143.在一种可能的实现方式中,若针对待分类php文件w,获得与参考php文件r之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息,则基于至少两种关联度信息的加权处理结果,确定特征关联度;
144.比如,若获得待分类php文件w与参考php文件r之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的注释关联度信息、字符串关联度信息两种关联度信息,则确定待分类php文件w与参考php文件r之间的特征关联度为:x1*注释关联度信息 x2*字符串关联度信息,其中,x1,x2分别为注释关联度信息和字符串关联度信息的权重,且x1 x2=1;
145.若获得待分类php文件w与参考php文件r之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中所有关联度信息,则确定待分类php文件w与参考php文件r之间的特征关联度为:x1*注释关联度信息 x2*字符串关联度信息 x3*代码关联度信息,其中,x1,x2,x3分别为注释关联度信息、符串关联度信息、以及代码关联度信息的权重,且x1 x2 x3=1。
146.在一种可能的实现方式中,为了保证文件相似度的准确性,也可以说是为了保证特征关联度的准确性,在针对一个待分类php文件w,获得与一个参考php文件r之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息后,基于获得的至少两种关联度信息的加权处理结果,确定特征关联度之前,将至少两种关联度信息,分别输入相应的激励函数进行精度调整,获得调整后的至少两种关联度信息。
147.下面,以获得一个待分类php文件w与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的所有关联度信息为例进行说明:
148.请参考图7,图7示例性提供了本技术实施例中一种确定待分类php文件与参考php
文件之间的文件相似度的方法流程图,包括如下步骤:
149.步骤s700,从待分类php文件w和参考php文件r中,分别提取注释信息,获得待分类php文件w的第一注释信息,以及参考php文件r的第二注释信息;
150.终端设备自动扫描待分类php文件w和参考php文件r,并将php文件中的注释信息作为第一特征,通过正则匹配的方式进行注释信息提取。利用php文件中注释字符//和/**/进行正则匹配,包括单行和多行注释信息。注释信息能够提供大量的有效信息,比如作者、时间、对php文件中代码的解释等信息。
151.在一种可能的实现方式中,以注释列表的形式存储提取的注释信息,待分类php文件w和参考php文件r各自对应有注释列表,注释列表中的每个表元素为相应php文件中的一行注释信息。比如,从待分类php文件w中提取出多行注释信息,则每行注释信息为待分类php文件w对应的注释列表中的表元素。
152.步骤s701,对第一注释信息和第二注释信息进行相似度匹配,获得待分类php文件w和参考php文件r之间的注释关联度信息;
153.在确定第一注释信息和第二注释信息之后,采用jaccard相似度确定待分类php文件和参考php文件之间的注释关联度信息。即确定待分类php文件w对应的注释列表,和参考php文件对应的注释列表中,包含的相同注释信息的个数;以及确定两个注释列表中注释信息的总量;将相同注释信息的个数与注视信息的总量之间的比值作为注释关联度信息。
154.也就是说,在获得待分类php文件w和参考php文件r之间的注释关联度信息的过程中,即获得待分类php文件w的注释列表和参考php文件r的注释列表中,包含的表元素的交集与并集之间的比值。
155.步骤s702,对提取注释信息后的待分类php文件w和参考php文件r,分别提取字符串信息,获得待分类php文件的第一字符串信息,以及参考php文件的第二字符串信息;
156.终端设备对提取注释信息后得到的待分类php文件w和参考php文件r,通过正则匹配的方式提取字符串信息。字符串主要采用
“”

‘’
进行匹配。双引号和单引号必须成对出现。因为php文件中包含有大量用户自定义的字符串信息,因此字符串信息是区分待分类php文件和参考php文件的关键信息。
157.需要说明的是,为了过滤掉匹配不正确的地方,对于匹配到的过长和过短的字符串信息都不进行提取。
158.步骤s703,对第一字符串信息和第二字符串信息进行相似度匹配,获得待分类php文件w和参考php文件r之间的字符串信息关联度信息;
159.在一种可能的实现方式中,基于提取的字符串信息,采用jaccard相似度确定待分类php文件和参考php文件之间的字符串关联度信息。具体可参见采用jaccard相似度确定注释关联度信息的步骤,在此不在赘述。
160.步骤s704,对已提取过注释信息和字符串信息的待分类php文件w和参考php文件r,分别提取代码信息,获得待分类php文件的第一代码信息,以及参考php文件的第二代码信息;
161.经过步骤s700

步骤s703后,php文件中已经没有注释信息和字符串信息,剩下的是基本是变量名和代码信息。
162.终端设备在对待分类php文件w和参考php文件r进行代码信息提取的过程中,主要
采用字典匹配的方法,即将待分类php文件的代码信息以及参考php文件的代码信息分别与字典中预先构建的代码信息进行匹配,分别获得匹配成功的代码信息。
163.具体的,将待分类php文件w中的代码信息,与字典中预先构建的代码信息进行匹配;并将匹配成功的代码信息,按照php文件中的代码顺序进行排列,生成用于表征代码信息的代码序列。参考php文件采用相同的方式,确定对应的代码序列,在此不再赘述。
164.在本技术实施例中,字典匹配方法中预先构建的代码信息是通过如下方式确定的:
165.首先,得到一定数量的,经过注释信息提取和字符串信息提取的php文件;
166.然后,对经过注释信息提取和字符串信息提取的php文件,进行分词处理,得到代码数组;在一种可能的实现方式中,通过正则表达的方式对php文件进行分词处理,因此,代码数组中只匹配单词和php代码中可能出现的字符;
167.最后,对代码数组中得到的字符串进行频率计算,提取其中频率大于设定阈值的高频的php代码;比如设定阈值为0.25,此时,保留频率高于0.25的字符串。在此过程中,过滤掉了变量名,剩余的基本都是php代码信息,将获得的php代码信息存入词典中,以便后续从php文件中提取代码信息是使用。
168.步骤s705,对第一代码信息和第二代码信息进行相似度匹配,获得待分类php文件和参考php文件之间的代码信息关联度信息;
169.对于步骤s704确定出的用于表征代码信息的代码序列,由于大部分php文件中出现频率较高的代码大致相同,即大部分php文件中出现的高频词大致相同,且代码序列中代码存在先后顺序;因此采用jaccard相似度无法有效区分php文件,且采用jaccard相似度,确定待分类php文件和参考php文件之间的代码信息关联度信息,确定的结果影响较大。
170.故,在本技术实施例中,采用levenshtein相似度,确定待分类php文件w的代码序列和参考php文件r的代码序列之间的代码信息关联度信息;即将levenshtein距离作为代码信息关联度信息。levenshtein相似度作为代码信息关联度信息的衡量值,表示了某个代码序列转换到另一个代码序列最少需要做几次变换,变换次数越少,关联度越高。可以限制代码序列的长度达到节约分类时间的目的。
171.步骤s706,将注释关联度信息、字符串信息关联度信息以及代码信息,分别输入相应的激励函数进行精度调整,获得调整后的注释关联度信息、字符串信息关联度信息以及代码信息;
172.激励函数在于改变关联度信息的线性增长的方式,例如待分类php文件w和参考php文件r的注释数量固定,且相应的注释关联度信息与待分类php文件w和参考php文件r中相同的注释信息的数量是线性相关的,但实际上并非如此,由于php文件中的注释信息通常遵循一定的格式,因此存在大量不相关php文件的个别注释信息一致的情况。而对于待分类php文件w和参考php文件r,如果两者中的注释信息存在多条相似,那就有极大的可能性为同一类别的php文件,因此可知实际关联度信息和注释关联度信息不应该是线性的对应关系,故在此加入激励函数,可以使得关联度信息更接近实际情况,防止因此造成的关联度信息偏高引起误判断。
173.需要说明的是,步骤s706可以根据实际情况进行设置,即可以设置激励函数,也可以不设置激励函数,激励函数的表达式也可以根据实际情况设置。
174.步骤s707,将调整后的注释关联度信息、字符串信息关联度信息以及代码信息,进行加权处理,将加权处理结果作为待分类php文件和参考php文件之间的特征关联度。
175.步骤s708,将待分类php文件和参考php文件之间的特征关联度,作为待分类php文件和参考php文件之间的文件相似度。
176.步骤s202,基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。
177.在本技术实施例中,由于各个待分类php文件对应的相似度集合中可能仅包含一个第一文件相似度集合,也可能包含一个第一文件相似度集合和至少一个第二文件相似度集合。且基于第一文件相似度集合和至少一个第二文件相似度集合对相应的php文件进行分类时的处理方式不同。
178.下面以针对一个待分类php文件w进行说明:
179.情况一:待分类php文件w对应的文件相似度集合包含一个第一文件相似度集合,基于待分类php文件w对应的文件相似度集合,对待分类php文件w进行分类处理时:
180.首先,针对待分类php文件w,确定待分类php文件w对应的第一文件相似度集合;比如,第一文件相似度集合为{第一文件相似度1

2,第一文件相似度1
‑3……
第一文件相似度1

10}。
181.然后,针对第一文件相似度集合中的各个第一文件相似度,确定待分类php文件w,与第一文件相似度对应的其他待分类php文件是否为同一类别。
182.在一种可能的实现方式中,若确定第一文件相似度大于第一阈值,则将第一文件相似度对应的待分类php文件和其他待分类php文件分到同一类别;
183.以第一文件相似度集合中的一个第一文件相似度为例,进行说明:设一个第一文件相似度为第一文件相似度1

2,第一文件相似度1

2为98%,若第一阈值为90%,则确定第一文件相似度1

2大于第一阈值,则确定第一文件相似度对应的待处理文件1和其他待处理文件2分到同一类别。
184.在另一种可能的实现方式中,若确定第一文件相似度不大于第一阈值,则将一个第一文件相似度对应的一个待分类php文件和其他待分类php文件分到不同类别;
185.以第一文件相似度集合中的一个第一文件相似度为例,进行说明:设一个第一文件相似度为第一文件相似度1

3,第一文件相似度1

3为78%,若第一阈值为90%,则确定第一文件相似度1

3不大于第一阈值,则确定第一文件相似度对应的待处理文件1和其他待处理文件3分到不同类别。
186.情况二:待分类php文件w对应的文件相似度集合包含至少一个第二文件相似度集合,基于待分类php文件w对应的文件相似度集合,对待分类php文件w进行分类处理时:
187.首先,针对待分类php文件w,确定待分类php文件w对应的至少一个第二文件相似度集合,其中,一个第二文件相似度集合对应一个类别分组。
188.然后,基于待分类php文件w对应的各个第二文件相似度集合,分别确定各个第二文件相似度集合相应的判定相似度;其中,每个判定相似度是基于相应的第二文件相似度集合中的至少一个第二文件相似度确定的;
189.具体的,针对待分类php文件w对应的各个第二文件相似度集合,中的每一第二文件相似度集合,从第二文件相似度集合中选取预设数量的第二文件相似度,基于选取的第
二文件相似度确定判定相似度。
190.以待分类php文件w对应的一个第二文件相似度集合w

g1为例:第二文件相似度集合w

g1为{第二文件相似度w

g1t1,第二文件相似度w

g1t2
……
第二文件相似度w

g1tn},从中选取3个第二文件相似度分别为:第二文件相似度w

g1t1,第二文件相似度w

g1t2和第二文件相似度w

g1tn;此时,判定相似度=(第二文件相似度w

g1t1 第二文件相似度w

g1t2 第二文件相似度w

g1tn)/3。
191.最后,基于各个判定相似度,确定待分类php文件w是否归属于各个判定相似度分别对应的类别分组。
192.在一种可能的实现方式中,若确定判定相似度大于第二阈值,则将一个待分类php文件分到一个第二文件相似度集合对应的类别分组;
193.基于上述判定相似度=(第二文件相似度w

g1t1 第二文件相似度w

g1t2 第二文件相似度w

g1tn)/3为例,若判定相似度为91%,第二阈值为85%,此时判定相似度大于第二阈值,则将待分类php文件分到类别分组g1中。
194.在另一种可能的实现方式中,若确定判定相似度不大于第二阈值,则不将一个待分类php文件分到一个第二文件相似度集合对应的类别分组;
195.基于上述判定相似度=(第二文件相似度w

g1t1 第二文件相似度w

g1t2 第二文件相似度w

g1tn)/3为例,若判定相似度为78%,第二阈值为85%,此时判定相似度不大于第二阈值,则将待分类php文件不分到类别分组g1中。
196.需要说明的是,当待分类php文件w对应的文件相似度集合中,既包括一个第一文件相似度集合,又包含有至少一个第二文件相似度集合时:可以,先基于第一文件相似度集合,确定待分类集合中,与待分类php文件w分到同一类别的其他待分类php文件,然后在确定待分类php文件w分到哪一类别分组中,最后将同一类别的其他待分类php文件和待分类php文件w均分到该类别分组中。
197.请参考图8,以对一个待分类php文件w进行分类处理进行说明,图8示例性提供了本技术实施例中一种php文件分类的整体方法流程图,包括如下步骤:
198.步骤s800,获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件;
199.步骤s801,从待分类文件集合中,选择一个当前需要确定文件相似度集合的待分类php文件w;
200.步骤s802,基于待分类文件集合中剩余的其他待分类php文件,以及当前存储的类别分组中的目标php文件,确定待分类php文件w对应的各个参考php文件;
201.步骤s803,基于待分类php文件w与各个参考php文件,获得待分类php文件w对应的至少一个文件相似度集合;
202.步骤s804,基于待分类php文件w对应的至少一个文件相似度集合,对待分类php文件w进行分类处理。
203.基于同一发明构思,本技术实施例还提供了一种php文件分类装置900,请参考图9,图9示例性提供了本技术实施例中一种php文件分类装置900,该装置包括:
204.第一获得单元901,用于获得待分类文件集合,待分类文件集合中包括至少一个待分类php文件;
205.第二获得单元902,用于针对待分类文件集合中的各个待分类php文件,分别获得各个待分类php文件各自对应的文件相似度集合,每个文件相似度集合中包含:基于相应的一个待分类php文件与各个参考php文件之间的各个特征关联度,确定的各个文件相似度;
206.分类单元903,用于基于各个待分类php文件各自对应的文件相似度集合,对各个待分类php文件进行分类处理。
207.在一种可能的实现方式中,第二获得单元902具体用于:
208.针对各个待分类php文件,分别执行以下操作:
209.针对各个待分类php文件中的一个待分类php文件,基于一个待分类php文件,与各个参考php文件之间的特征关联度,分别获得一个待分类php文件与各个参考php文件之间的文件相似度,其中,特征关联度是基于注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少一种确定的;
210.基于各个待分类php文件各自对应的各个文件相似度,获得各个待分类php文件各自对应的文件相似度集合。
211.在一种可能的实现方式中,一个待分类php文件,与各个参考php文件中的一个参考php文件之间的特征关联度,是第二获得单元902通过如下方式确定的:
212.若针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的一种关联度信息,则直接将一种关联度信息,作为特征关联度;
213.若针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息,则基于至少两种关联度信息的加权处理结果,确定特征关联度。
214.在一种可能的实现方式中,第二获得单元902针对一个待分类php文件,获得与一个参考php文件之间的注释关联度信息、字符串关联度信息、以及代码关联度信息中的至少两种关联度信息后,基于至少两种关联度信息的加权处理结果,确定特征关联度之前,还用于:
215.将至少两种关联度信息,分别输入相应的激励函数进行精度调整,获得调整后的至少两种关联度信息。
216.在一种可能的实现方式中,第二获得单元902还用于:
217.针对各个待分类php文件,分别执行以下操作:
218.若确定当前存在至少一个类别分组,则针对各个待分类php文件中的一个待分类php文件,获得一个待分类php文件对应的至少一个文件相似度集合;其中,至少一个文件相似度集合包括如下至少一种:基于一个待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合;基于一个待分类php文件,与至少一个类别分组中的每个类别分组中包含的各个目标php文件,获得的每个类别分组对应的各个第二文件相似度,确定的至少一个第二文件相似度集合;
219.若确定当前不存在至少一个类别分组,针对各个待分类php文件中的一个待分类php文件,则针对一个待分类php文件,获得一个待分类php文件对应的一个文件相似度集合;其中,一个文件相似度集合为:基于一个待分类php文件,与相应的待分类文件集合中的各个其他待分类php文件,获得的各个第一文件相似度,确定的第一文件相似度集合。
220.在一种可能的实现方式中,文件相似度集合包含第一文件相似度集合,分类单元903具体用于:
221.针对各个待分类php文件,分别执行如下操作:
222.针对各个待分类php文件中的一个待分类php文件,确定一个待分类php文件对应的第一文件相似度集合;
223.针对第一文件相似度集合中的各个第一文件相似度,分别执行以下操作:
225.若确定一个第一文件相似度大于第一阈值,则将一个第一文件相似度对应的一个待分类php文件和其他待分类php文件分到同一类别;
226.若确定一个第一文件相似度不大于第一阈值,则将一个第一文件相似度对应的一个待分类php文件和其他待分类php文件分到不同类别。
227.在一种可能的实现方式中,文件相似度集合包含至少一个第二文件相似度集合,分类单元903具体用于:
228.针对各个待分类php文件,分别执行如下操作:
229.针对各个待分类php文件中的一个待分类php文件,确定一个待分类php文件对应的至少一个第二文件相似度集合,其中,一个第二文件相似度集合对应一个类别分组;
230.针对至少一个第二文件相似度集合中的各个第二文件相似度集合,分
231.别执行如下操作:
232.从一个第二文件相似度集合中选取预设数量的第二文件相似度,基于选取的第二文件相似度确定判定相似度;
233.若确定判定相似度大于第二阈值,则将一个待分类php文件分到一个第二文件相似度集合对应的类别分组;
234.若确定判定相似度不大于第二阈值,则不将一个待分类php文件分到一个第二文件相似度集合对应的类别分组。
235.为了描述的方便,以上各子模型按照功能划分为各单元(或模块)分别描述。当然,在实施本技术时可以把各单元(或模块)的功能在同每个或多个软件或硬件中实现。
236.在介绍了本技术示例性实施方式的php文件分类方法及装置后,接下来介绍本技术的另一示例性实施方式的php文件分类计算设备。
237.所属技术领域的技术人员能够理解,本技术的各个方面可以实现为系统、方法或程序产品。因此,本技术的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
238.在一种可能的实现方式中,本技术实施例提供的php文件分类计算设备可以至少包括处理器和存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本技术中各种示例性实施方式的php文件分类方法中的每个步骤。
239.下面参照图10来描述根据本技术的这种实施方式的php文件分类计算设备1000。如图10的php文件分类计算设备1000仅仅是每个示例,不应对本技术实施例的功能和使用范围带来任何限制。
240.如图10所示,计算设备1000的子模型可以包括但不限于:上述至少每个处理器1001、上述至少每个存储器1002、连接不同系统子模型(包括存储器1002和处理器1001)的
总线1003。
241.总线1003表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
242.存储器1002可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)10021和/或高速缓存存储器10022,还可以进一步包括只读存储器(rom)10023。
243.存储器1002还可以包括具有一组(至少每个)程序模块10024的程序/实用工具10025,这样的程序模块10024包括但不限于:操作系统、每个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每每个或某种组合中可能包括网络环境的实现。
244.计算设备1000也可以与每个或多个外部设备1004(例如键盘、指向设备等)通信,还可与每个或者多个使得用户能与计算设备1000交互的设备通信,和/或与使得该计算设备1000能与每个或多个其它计算装置进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1005进行。并且,计算设备1000还可以通过网络适配器1006与每个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图10所示,网络适配器1006通过总线1003与用于计算设备1000的其它模块通信。应当理解,尽管图10中未示出,可以结合计算设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
245.在一些可能的实施方式中,本技术提供的php文件分类方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本技术各种示例性实施方式的php文件分类方法中的步骤。
246.程序产品可以采用每个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有每个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
247.本技术的实施方式的短信息的发送控制的程序产品可以采用便携式紧凑盘只读存储器(cd

rom)并包括程序代码,并可以在计算装置上运行。
248.可读信号介质可以包括在基带中或者作为载波一子模型传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。
249.可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
250.可以以一种或多种程序设计语言的任意组合来编写用于执行本技术操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。
251.应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本技术的实施方式,上文描述的两种或更多单元的特征向量和功能可以在每个单元中具体化。反之,上文描述的每个单元的特征向量和功能可以进一步划分为由多个单元来具体化。
252.此外,尽管在附图中以特定顺序描述了本技术方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为每个步骤执行,和/或将每个步骤分解为多个步骤执行。
253.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献