CN113761523A - 一种基于机器学习的文本数据检测方法、装置和设备 - Google Patents
一种基于机器学习的文本数据检测方法、装置和设备 Download PDFInfo
- Publication number
- CN113761523A CN113761523A CN202111025439.6A CN202111025439A CN113761523A CN 113761523 A CN113761523 A CN 113761523A CN 202111025439 A CN202111025439 A CN 202111025439A CN 113761523 A CN113761523 A CN 113761523A
- Authority
- CN
- China
- Prior art keywords
- detection
- text data
- training
- result
- algorithm model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 137
- 238000010801 machine learning Methods 0.000 title claims abstract description 29
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 109
- 238000012549 training Methods 0.000 claims abstract description 88
- 238000000605 extraction Methods 0.000 claims abstract description 65
- 238000002347 injection Methods 0.000 claims description 21
- 239000007924 injection Substances 0.000 claims description 21
- 238000000034 method Methods 0.000 claims description 18
- 230000000007 visual effect Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000012800 visualization Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于机器学习的文本数据检测方法、装置和设备。一种基于机器学习的文本数据检测方法,包括:对用于训练的文本数据进行特征提取;基于特征提取结果训练检测算法模型;基于特征提取结果和检测算法模型训练解释算法模型;基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;对所述检测结果和解释结果进行汇总输出。本实施例的技术方案,解决了文本数据的检测内容容易被攻击者绕过,且难以自动扩展检测范围,需要维护大量规则的问题,达到了精确地对文本数据进行检测,并且可以对检测结果进行解释说明的效果。
Description
技术领域
本发明实施例涉及网络安全检测技术,尤其涉及一种基于机器学习的文本数据检测方法、装置和设备。
背景技术
当前互联网的使用日益普及,互联网安全对于信息安全也愈发重要,结构化查询语言注入(Structures Query Language Injection,SQL注入)是常见的网站攻击方式,攻击者通过将恶意的SQL查询或添加语句插入到应用的输入参数中,再在后台SQL服务器上解析执行进行的攻击,来达到包括文本数据窃取等攻击目的。在现有技术中,通常基于规则策略配置相应规则内容来有针对性地检测具体SQL注入内容。
然而,现有技术存在如下技术缺陷:由于规则策略是人为设定的,因此容易被攻击者绕过,且难以自动扩展检测范围,需要维护大量规则。
发明内容
本发明提供一种基于机器学习的文本数据检测方法、装置和设备,以实现精确地对文本数据进行检测,并且可以对检测结果进行解释说明的效果。
第一方面,本发明实施例提供了一种基于机器学习的文本数据检测方法,包括:
对用于训练的文本数据进行特征提取;
基于特征提取结果训练检测算法模型;
基于特征提取结果和检测算法模型训练解释算法模型;
基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;
基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;
对所述检测结果和解释结果进行汇总输出。
第二方面,本发明实施例还提供了一种基于机器学习的文本数据检测装置,包括:
特征提取模块,用于对用于训练的文本数据进行特征提取;
检测模型训练模块,用于基于特征提取结果训练检测算法模型;
解释模型训练模块,用于基于特征提取结果和检测算法模型训练解释算法模型;
检测模块,用于基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;
解释模块,用于基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;
汇总输出模块,用于对所述检测结果和解释结果进行汇总输出。
第三方面,本发明实施例还提供了一种设备,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如实施例中任一所述的一种基于机器学习的文本数据检测方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如实施例中任一所述的一种基于机器学习的文本数据检测方法。
本实施例的技术方案,通过对用于训练的文本数据进行特征提取,基于特征提取结果训练检测算法模型,基于特征提取结果和检测算法模型训练解释算法模型,基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果,基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果,对所述检测结果和解释结果进行汇总输出,解决了文本数据的检测内容容易被攻击者绕过,且难以自动扩展检测范围,需要维护大量规则的问题,达到了精确地对文本数据进行检测,并且可以对检测结果进行解释说明的效果。
附图说明
图1为本发明实施例一提供的一种基于机器学习的文本数据检测方法的流程图;
图2为检测结果和解释结果的可视化图;
图3为本发明实施例二提供的一种基于机器学习的文本数据检测装置的结构图;
图4为本发明实施例三提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
网站攻击者通过将SQL注入语句嵌入在普通的HTTP请求中,例如将SQL注入语句嵌套在正常语句之中,来非法获取整个服务器中的数据,因此本发明旨在识别HTTP请求中非法的SQL注入语句。
图1为本发明实施例一提供的一种基于机器学习的文本数据检测方法的流程图,本实施例可适用于对文本数据进行检测的情况,该方法可以由一种基于机器学习的文本数据检测装置来执行,具体包括如下步骤:
S110、对用于训练的文本数据进行特征提取。
其中,所述文本数据包括SQL注入语句。
HTTP请求中所包含的文本数据数量很大,其中并不是每个词都对SQL注入语句的识别具有贡献,且原始的文本数据形式各异,不便于后续训练算法模型,因此,需要将不同的文本数据统一成相同的易于统计的形式,以便后续对文本数据进行统一的处理。
可选的,所述对用于训练的文本数据进行特征提取包括:通过TF-IDF特征提取方法对用于训练的文本数据进行特征提取。
TF-IDF特征提取方法用于评估某一字词对于语料库中的其中一份文件的重要程度。其中,词频(Term Frequency,TF)表示字词的重要性随着它在待评估的该文件中出现的次数成正比增加,逆向文件频率(Inverse Document Frequency,IDF)表示字词会随着它在语料库中出现的频率成反比下降。
TF-IDF计算公式如公式(1)所示:
其中,dj表示具体某份文件,ni,j是某个词ti在文件dj中出现的次数,∑knk,j则是文件dj中所有词汇出现的次数总和;|D|表示语料库中的文件总数,|{j:ti∈dj}|表示包含词语ti的文件数目(即ni,j≠0的文件数目)。
可选的,使用开源计算框架sklearn中的TFIDF相关函数方法,并对参数进行如下定义:min_df=1,表示出现次数小于等于1的词不计入特征词库,max_df=0.95,表示特征词在语料库中出现的最大概率不大于0.95,若某个词出现的概率大于0.95,则不将该词归入特征词库中,Max_features=10000,表示对某一文本进行TF-IDF处理的词数上限是10000词,即一个文本中数据超过10000词的部分不进行处理。
例如,在本实施例中,假设有1000份可以进行特征提取的文本,这1000份文本则组成了应用TF-IDF特征提取方法的语料库,对这1000份文本中的每一个文本中的词使用TF-IDF特征提取方法进行处理,过滤掉出现次数小于等于1的词和代表文档占比>0.95的词,其中,代表文档占比表示某个词在语料库的文本中出现的比例,例如,在上述的1000份文本中,990份文本中都出现了“the”,那么冠词“the”的代表文件占比=0.99,即99%的脚本文件中都有“the”这个词。代表文档占比过大,则认为该词几乎在每个文本中都出现,在SQL注入和SQL未注入的文本中的出现频率都很高,因此对于指示SQL注入而言不具有特征性,故,进行上述操作后得到具有代表性的特征词组成特征词库。
使用TF-IDF特征提取方法对语料库中的文本中的特征词进行处理,则可以将每一个文本抽象为一个向量,若特征词库中有500个词,则每个文本可以生成具有500个分量的向量,若某个特征词在某文本中未出现,则某文本的向量中表示该特征词的分量等于0。
S120、基于特征提取结果训练检测算法模型。
所述基于特征提取结果训练检测算法模型,包括:基于特征提取结果,对轻量级提升学习算法(Light Gradient Boosting Machine,LightGBM)进行训练,得到检测算法模型。
LightGBM支持高效率的并行训练,并且具有更快的训练速度、更低的内存消耗、更好的准确率、支持分布式可以快速处理海量数据等优点。且作为树形集成学习方法,有较好的可解释性和检测精度。获取数据特征后,根据任务需求进行建模训练或者检测,建模训练完成后,自动更新离线模型并保存。LightGBM算法模型属于GBDT梯度提升树的集成学习算法,与其相似的还有Xgboost算法模型,LightGBM与Xgboost的区别在于,前者在运算上引入了直方图算法、单边梯度抽样算法(Gradient-based One-Side Sampling,GOSS)和互斥特征捆绑算法(Exclusive Feature Bundling,EFB)来提升运算效率。
例如,在具有1000份文本,且每个文本的特征提取结果为具有500个分量的向量的情况下,可以基于所得到的1000×500的特征矩阵来对LightGBM算法进行训练,从而得到检测算法模型。
S130、基于特征提取结果和检测算法模型训练解释算法模型。
其中,所述基于特征提取结果和检测算法模型训练解释算法模型包括:基于向量形式的特征提取结果和检测算法模型,训练解释算法模型。
可选的,所述基于特征提取结果和检测算法模型训练解释算法模型,包括:基于特征提取结果和LightGBM检测算法模型,对SHAP可解释算法(SHapley AdditiveexPlanations)进行训练,得到解释算法模型。
SHAP可解释算法属于事后解释方法的一种,可对非解释性模型或者黑盒模型进行解释,解释得到每个特征对于预测结果的贡献度,SHAP是基于非解释性模型或者黑盒模型推导和设置的,因此不能独立存在。
SHAP是基于Shapley值提出的可解释算法,通过计算每个特征对预测x的贡献来解释实例x的预测。在进行局部解释时,SHAP的核心是计算其中每个特征变量的Shapley值。Shapley值的计算需要满足对称性、有效性、冗员性和可加性,满足上述条件得到的Shapley值为:
其中,Si是I中包含成员i的所有子集形成的集合,|s|是集合s元素的个数,w(|s|)是加权因子,且有
Shapley值公式可以解释如下:v(s)-v(s\{i})是成员i在他参与的合作s中做出的贡献。这种合作的总计有(|s|-1)!(n-|s|)!出现的方式,因此每一种出现的概率就是w(|s|)。并且,除了Shapley值以外,SHAP可解释算法的构建还需要满足局部保真性、缺失性和连续性。
结合本发明实施例进行论述,本发明中的LightGBM为非解释性模型,SHAP可解释算法可用于对LightGBM建模后的模型的检测结果进行解释,解释内容包括特征词和对应的权重值,权重值的绝对值越大,对结果的影响越大。其中,正值表示正面影响,即文本中具有SQL注入语句;负值表示负面影响,即文本中没有SQL注入语句,例如,{“explain”:“extractvalue:weight is 4.878;select:weight is-1.643;and:weight is-0.571;”}作为解释结果,表示对“extractvalue”、“select”和“and”三个词进行解释,其中,“extractvalue”对该文本中有SQL注入语句的贡献值为4.878,“select”对该文本中没有SQL注入语句的贡献值为1.643,“and”对该文本中没有SQL注入语句的贡献值为0.571。
接上例,在具有1000份文本且每个文本的特征提取结果为具有500个分量的向量的情况下,可以基于所得到的向量形式的1000×500的特征矩阵和LightGBM检测算法模型来对SHAP可解释算法进行训练,从而得到解释算法模型。
可选的,在本发明中调用Python的alibi库进行SHAP可解释算法的训练,具体设置如下:由于检测算法模型为LightGBM,因此选用Tree Kernel进行解释器训练,输入特征为TF-IDF的Max-features,任务选用分类任务。
S140、基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果。
将基于LightGBM训练得到的检测算法模型投入使用,对待检测的文本数据进行检测,得到待检测的文本数据是否具有SQL注入的检测结果。
S150、基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果。
将基于SHAP训练得到的解释算法模型投入使用,对待检测的文本数据进行解释,得到待检测的文本数据中特征词及其对应的权重值作为解释结果。
S160、对所述检测结果和解释结果进行汇总输出。
本实施例的技术方案,通过对用于训练的文本数据进行特征提取,基于特征提取结果训练检测算法模型,基于特征提取结果和检测算法模型训练解释算法模型,基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果,基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果,对所述检测结果和解释结果进行汇总输出,解决了文本数据的检测内容容易被攻击者绕过,且难以自动扩展检测范围,需要维护大量规则的问题,达到了精确地对文本数据进行检测,并且可以对检测结果进行解释说明的效果。
可选的,对所述检测结果和解释结果进行汇总输出,包括:以表格的形式对所述检测结果和解释结果进行汇总输出;和/或以可视化图的形式对所述检测结果和解释结果进行汇总输出。这样设置的好处在于,可以更清晰直观的输出检测结果和解释结果。
如表1所示,可以以表格的形式对所述检测结果和解释结果进行汇总输出,为了显示方便,所选用的测试文本较短,其中,“SQL注入语句”表示通过LightGBM得到的检测算法模型对待测试的文本数据进行检测所得到的检测结果,“√”表示文本数据中具有SQL注入语句,“×”表示文本数据中没有SQL注入语句。“SHAP解释词和对应权重”表示通过SHAP得到的解释算法模型对待测试的文本进行解释所得到的解释结果。需要注意的是,这里设置为仅显示贡献最大的三个词,贡献较小的词虽未显示,但也通过SHAP可解释算法进行了解释。
表1
图2为检测结果和解释结果的可视化图。如图2所示,可以以可视化图的形式对所述检测结果和解释结果进行汇总输出,各个词及其对应权重通过条形图的长度表示,相反方向的条形图相交处的坐标值的正负表示文本数据中是否具有SQL注入语句。
实施例二
图3为本发明实施例二提供的一种基于机器学习的文本数据检测装置的结构图。该装置可执行本发明所提供的一种基于机器学习的文本数据检测方法,具备执行方法相应的功能模块和有益效果。
一种基于机器学习的文本数据检测装置,包括:
特征提取模块310,用于对用于训练的文本数据进行特征提取;
检测模型训练模块320,用于基于特征提取结果训练检测算法模型;
解释模型训练模块330,用于基于特征提取结果和检测算法模型训练解释算法模型;
检测模块340,用于基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;
解释模块350,用于基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;
汇总输出模块360,用于对所述检测结果和解释结果进行汇总输出。
可选的,所述文本数据包括:SQL结构化查询语言注入语句。
可选的,所述特征提取模块310,包括:
TF-IDF特征提取单元,用于通过TF-IDF特征提取方法对用于训练的文本数据进行特征提取。
可选的,所述检测模型训练模块320,包括:
LightGBM检测训练单元,用于基于特征提取结果,对LightGBM轻量级提升学习算法进行训练,得到检测算法模型。
可选的,所述解释模型训练模块330,包括:
向量文本训练单元,用于基于向量形式的特征提取结果和检测算法模型,训练解释算法模型。
可选的,所述解释模型训练模块330,包括:
SHAP解释训练单元,用于基于特征提取结果和检测算法模型,对SHAP可解释算法进行训练,得到解释算法模型。
可选的,所述汇总输出模块360,包括:
表格输出单元,用于以表格的形式对所述检测结果和解释结果进行汇总输出;和/或
可视化图输出单元,用于以可视化图的形式对所述检测结果和解释结果进行汇总输出。
本实施例的技术方案,通过对用于训练的文本数据进行特征提取,基于特征提取结果训练检测算法模型,基于特征提取结果和检测算法模型训练解释算法模型,基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果,基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果,对所述检测结果和解释结果进行汇总输出,解决了文本数据的检测内容容易被攻击者绕过,且难以自动扩展检测范围,需要维护大量规则的问题,达到了精确地对文本数据进行检测,并且可以对检测结果进行解释说明的效果。
实施例三
图4为本发明实施例三提供的一种设备的结构示意图,如图4所示,该设备包括处理器410、存储器420、输入装置430和输出装置440;设备中处理器410的数量可以是一个或多个,图4中以一个处理器410为例;设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一种基于机器学习的文本数据检测方法对应的程序指令/模块(例如,一种基于机器学习的文本数据检测装置中的特征提取模块310、检测模型训练模块320、解释模型训练模块330、检测模块340、解释模块350和汇总输出模块360)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行设备的各种功能应用以及文本数据处理,即实现上述的一种基于机器学习的文本数据检测方法。
存储器420可主要包括存储程序区和存储文本数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储文本数据区可存储根据终端的使用所创建的文本数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置430可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
实施例四
本发明实施例四还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种基于机器学习的文本数据检测方法,该方法包括:
对用于训练的文本数据进行特征提取;
基于特征提取结果训练检测算法模型;
基于特征提取结果和检测算法模型训练解释算法模型;
基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;
基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;
对所述检测结果和解释结果进行汇总输出。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的一种基于机器学习的文本数据检测方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种基于机器学习的文本数据检测方法,其特征在于,包括:
对用于训练的文本数据进行特征提取;
基于特征提取结果训练检测算法模型;
基于特征提取结果和检测算法模型训练解释算法模型;
基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;
基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;
对所述检测结果和解释结果进行汇总输出。
2.根据权利要求1所述的基于机器学习的文本数据检测方法,其特征在于,所述文本数据包括:
SQL结构化查询语言注入语句。
3.根据权利要求1所述的基于机器学习的文本数据检测方法,其特征在于,所述对用于训练的文本数据进行特征提取,包括:
通过TF-IDF特征提取方法对用于训练的文本数据进行特征提取。
4.根据权利要求1所述的基于机器学习的文本数据检测方法,其特征在于,所述基于特征提取结果训练检测算法模型,包括:
基于特征提取结果,对LightGBM轻量级提升学习算法进行训练,得到检测算法模型。
5.根据权利要求1所述的基于机器学习的文本数据检测方法,其特征在于,所述基于特征提取结果和检测算法模型训练解释算法模型,包括:
基于向量形式的特征提取结果和检测算法模型,训练解释算法模型。
6.根据权利要求1所述的基于机器学习的文本数据检测方法,其特征在于,所述基于特征提取结果和检测算法模型训练解释算法模型,包括:
基于特征提取结果和检测算法模型,对SHAP可解释算法进行训练,得到解释算法模型。
7.根据权利要求1所述的基于机器学习的文本数据检测方法,其特征在于,对所述检测结果和解释结果进行汇总输出,包括:
以表格的形式对所述检测结果和解释结果进行汇总输出;和/或
以可视化图的形式对所述检测结果和解释结果进行汇总输出。
8.一种基于机器学习的文本数据检测装置,其特征在于,包括:
特征提取模块,用于对用于训练的文本数据进行特征提取;
检测模型训练模块,用于基于特征提取结果训练检测算法模型;
解释模型训练模块,用于基于特征提取结果和检测算法模型训练解释算法模型;
检测模块,用于基于训练得到的检测算法模型对待检测的文本数据进行检测,得到检测结果;
解释模块,用于基于训练得到的解释算法模型对待检测的文本数据进行解释,得到解释结果;
汇总输出模块,用于对所述检测结果和解释结果进行汇总输出。
9.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的一种基于机器学习的文本数据检测方法。
10.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的一种基于机器学习的文本数据检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111025439.6A CN113761523A (zh) | 2021-09-02 | 2021-09-02 | 一种基于机器学习的文本数据检测方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111025439.6A CN113761523A (zh) | 2021-09-02 | 2021-09-02 | 一种基于机器学习的文本数据检测方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113761523A true CN113761523A (zh) | 2021-12-07 |
Family
ID=78792595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111025439.6A Pending CN113761523A (zh) | 2021-09-02 | 2021-09-02 | 一种基于机器学习的文本数据检测方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113761523A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304720A (zh) * | 2018-02-06 | 2018-07-20 | 恒安嘉新(北京)科技股份公司 | 一种基于机器学习的安卓恶意程序检测方法 |
US20190156196A1 (en) * | 2017-11-21 | 2019-05-23 | Fair Isaac Corporation | Explaining Machine Learning Models by Tracked Behavioral Latent Features |
CN110210617A (zh) * | 2019-05-15 | 2019-09-06 | 北京邮电大学 | 一种基于特征增强的对抗样本生成方法及生成装置 |
CN110933105A (zh) * | 2019-12-13 | 2020-03-27 | 中国电子科技网络信息安全有限公司 | 一种Web攻击检测方法、系统、介质和设备 |
CN111314388A (zh) * | 2020-03-26 | 2020-06-19 | 北京百度网讯科技有限公司 | 用于检测sql注入的方法和装置 |
CN111523677A (zh) * | 2020-04-17 | 2020-08-11 | 第四范式(北京)技术有限公司 | 实现对机器学习模型的预测结果进行解释的方法及装置 |
CN111740946A (zh) * | 2020-05-09 | 2020-10-02 | 郑州启明星辰信息安全技术有限公司 | Webshell报文的检测方法及装置 |
CN111818018A (zh) * | 2020-06-18 | 2020-10-23 | 北京邮电大学 | 一种基于机器学习模型的sql注入攻击检测方法 |
CN112256975A (zh) * | 2020-11-13 | 2021-01-22 | 腾讯科技(深圳)有限公司 | 信息推送方法、装置、计算机设备及存储介质 |
-
2021
- 2021-09-02 CN CN202111025439.6A patent/CN113761523A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190156196A1 (en) * | 2017-11-21 | 2019-05-23 | Fair Isaac Corporation | Explaining Machine Learning Models by Tracked Behavioral Latent Features |
CN108304720A (zh) * | 2018-02-06 | 2018-07-20 | 恒安嘉新(北京)科技股份公司 | 一种基于机器学习的安卓恶意程序检测方法 |
CN110210617A (zh) * | 2019-05-15 | 2019-09-06 | 北京邮电大学 | 一种基于特征增强的对抗样本生成方法及生成装置 |
CN110933105A (zh) * | 2019-12-13 | 2020-03-27 | 中国电子科技网络信息安全有限公司 | 一种Web攻击检测方法、系统、介质和设备 |
CN111314388A (zh) * | 2020-03-26 | 2020-06-19 | 北京百度网讯科技有限公司 | 用于检测sql注入的方法和装置 |
CN111523677A (zh) * | 2020-04-17 | 2020-08-11 | 第四范式(北京)技术有限公司 | 实现对机器学习模型的预测结果进行解释的方法及装置 |
CN111740946A (zh) * | 2020-05-09 | 2020-10-02 | 郑州启明星辰信息安全技术有限公司 | Webshell报文的检测方法及装置 |
CN111818018A (zh) * | 2020-06-18 | 2020-10-23 | 北京邮电大学 | 一种基于机器学习模型的sql注入攻击检测方法 |
CN112256975A (zh) * | 2020-11-13 | 2021-01-22 | 腾讯科技(深圳)有限公司 | 信息推送方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
PULKIT SHARMA等: "Evaluating Tree Explanation Methods for Anomaly Reasoning: A Case Study of SHAP TreeExplainer and TreeInterpreter", pages 1 - 11, Retrieved from the Internet <URL:《网页在线公开:https://link.springer.com/chapter/10.1007/978-3-030-65847-2_4》> * |
刘宇廷等: "融合知识迁移学习的微博社团检测模型构建", 《计算机技术与发展》, vol. 28, no. 6, 15 October 2018 (2018-10-15), pages 11 - 15 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2678716C1 (ru) | Использование автоэнкодеров для обучения классификаторов текстов на естественном языке | |
He et al. | Duplicate bug report detection using dual-channel convolutional neural networks | |
CN107992764B (zh) | 一种敏感网页识别与检测方法及装置 | |
CN109905385B (zh) | 一种webshell检测方法、装置及系统 | |
CN109598124A (zh) | 一种webshell检测方法以及装置 | |
Huang et al. | JSContana: Malicious JavaScript detection using adaptable context analysis and key feature extraction | |
US20180210897A1 (en) | Model generation method, word weighting method, device, apparatus, and computer storage medium | |
CN111737997A (zh) | 一种文本相似度确定方法、设备及储存介质 | |
CN105956740B (zh) | 一种基于文本逻辑特征的语义风险计算方法 | |
CN112579729B (zh) | 文档质量评价模型的训练方法、装置、电子设备和介质 | |
CN111930623A (zh) | 一种测试案例构建方法、装置及电子设备 | |
CN108763272B (zh) | 一种事件信息分析方法、计算机可读存储介质及终端设备 | |
CN116015703A (zh) | 模型训练方法、攻击检测方法及相关装置 | |
CN115080973A (zh) | 一种基于多模态特征融合的恶意代码检测方法及系统 | |
CN110704611B (zh) | 基于特征解交织的非法文本识别方法及装置 | |
CN116561320A (zh) | 一种汽车评论的分类方法、装置、设备及介质 | |
CN116166814A (zh) | 事件检测方法、装置、设备以及存储介质 | |
CN116451072A (zh) | 结构化敏感数据识别方法及装置 | |
CN107665443B (zh) | 获取目标用户的方法及装置 | |
CN113761523A (zh) | 一种基于机器学习的文本数据检测方法、装置和设备 | |
CN115470489A (zh) | 检测模型训练方法、检测方法、设备以及计算机可读介质 | |
CN111541683B (zh) | 风险网站宣传主体检测方法、装置、设备、介质 | |
CN116244740B (zh) | 一种日志脱敏方法、装置、电子设备及存储介质 | |
CN112861511B (zh) | 风险文本的提取方法、装置、电子设备及存储介质 | |
CN117278322B (zh) | Web入侵检测方法、装置、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |