CN110826056B - 一种基于注意力卷积自编码器的推荐系统攻击检测方法 - Google Patents
一种基于注意力卷积自编码器的推荐系统攻击检测方法 Download PDFInfo
- Publication number
- CN110826056B CN110826056B CN201911094684.5A CN201911094684A CN110826056B CN 110826056 B CN110826056 B CN 110826056B CN 201911094684 A CN201911094684 A CN 201911094684A CN 110826056 B CN110826056 B CN 110826056B
- Authority
- CN
- China
- Prior art keywords
- matrix
- data
- convolution
- layer
- encoder
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims abstract description 56
- 238000012549 training Methods 0.000 claims abstract description 10
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 9
- 238000011156 evaluation Methods 0.000 claims abstract description 7
- 238000007781 pre-processing Methods 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 8
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 4
- 239000013598 vector Substances 0.000 claims description 4
- 230000009471 action Effects 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000005284 excitation Effects 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 238000003062 neural network model Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 11
- 238000013135 deep learning Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于注意力卷积自编码器的推荐系统攻击检测方法,首先获取数据集,对数据集进行预处理并获得训练数据集;根据步骤一获得的训练数据集,输入卷积自编码器模型,得到高维特征表示矩阵;根据步骤二获得的高维特征表示矩阵,得到项目注意力矩阵,结合项目注意力矩阵以及步骤二得到的高维特征表示矩阵得到最终的特征矩阵;最后将得到的最终特征矩阵输入全连接层分类,利用准确率(Precision)、召回率(Recall)、F值(F‑measure)作为算法的性能评价指标。
Description
技术领域
本发明涉及深度学习、推荐系统领域,具体设计了一种基于注意力卷积自编码器的推荐系统攻击检测方法。
背景技术
互联网的普及与发展,造成了网络数据信息的爆炸式增长。面对日益严重的“信息过载”现象,用户准确有效的获得想要的信息成了一个亟待解决的问题,此时推荐系统就应运而生。但由于任何人都可以注册成为其用户,让推荐系统本身具有了灵敏性和开放性,使其很容易受到外界的攻击。在商业利益的驱动下,部分黑心商家有意地向推荐系统中植入一些伪造的用户概貌,恶意评分,这样行为被称为托攻击。如何对外界攻击进行检测和防御,确保电子商务推荐系统的安全,具有重要意义。
近几年来,深度学习技术广泛应用于计算机视觉、自然语言处理和语音识别等领域并获得了巨大的成功,因此也将深度学习技术引入推荐系统领域,用于推荐系统托攻击检测。同人类视觉一样,通过快速扫描全局图像,获得需要重点关注的目标区域,也就是一般所说的注意力焦点,而后对这一区域投入更多注意力资源,以获取更多所需要关注目标的细节信息,而抑制其他无用信息,也考虑到每一个特征对于最终检测的影响都是不一样的,不能同等地看待所有特征,所以,引入了注意力机制,给予关键特征更多的注意力,从众多特征中选择出对托攻击检测更关键的特征,更好地帮助提取用户特征,进而检测出攻击用户。
发明内容
本发明设计了一种基于注意力卷积自编码器的推荐系统攻击检测方法。由于之前很少有将深度学习技术应用于推荐系统的托攻击检测,本发明提出了一种基于卷积自编码器的方法,利用卷积完成自动编码器的编码和解码操作,得到用户特征,并加入注意力机制,给予关键特征更多的注意力,以捕捉用户交互数据的复杂结构。
本发明所述的方法首先将数据集输入卷积自编码器的编码和解码做特征提取操作,得到用户特征的高维表示,由于每个高维特征对最终的结果影响不一样,所以将得到的高维表示的特征矩阵与其转置矩阵点乘,得到特征矩阵的注意力矩阵表示,将用户特征的高维表示与特征矩阵的注意力矩阵点乘,最后的结果再经过全连接层“分类”,得到用户的检测结果。
区别于现有的处理方法,本发明的有益效果是:目前的推荐系统托攻击检测方法大多数都是基于人工提取的特征,这些方法假定托攻击概貌和正常概貌在评分方式上有着显著的差异,因此可以依靠领域知识来提取特征并检测攻击。但是这些检测方法往往有一定的局限性:如有些攻击者为了防止被检测出来会模仿正常用户的评分方式,使得人工特征的区分能力降低。深度神经网络有着非常强的计算能力以及非线性映射等优点,在手写数字识别、模式识别等分类问题中有着广泛的应用,同时也适用于多变的托攻击检测环境,因此,本发明使用卷积自编码器自动提取评分特征,根据标记好的样本数据捕获托攻击用户的内在属性。同时,从卷积自编码器输出的高维特征,各个维度特征之间的内在关系不一样,每个维度特征对于整个任务的影响程度也不一样,对某些维度特征的过分关注可能会分散注意力,所以引入注意力机制,给予关键特征更多的注意力,以捕捉用户交互数据的复杂结构。
附图说明:
图1是本发明所述的基于注意力卷积自编码器的推荐系统攻击检测方法的系统框架图。
具体实施方式:
本实施例的数据集采用movielens100k,数据集中包含943名正常用户对1682部电影的评分,评分区间为[1,5],分数从低到高分别表示用户对某部电影的喜爱程度由浅入深。
对数据集进行预处理,处理方式为向数据集分别注入三种类型的攻击:均值攻击,流行攻击以及随机攻击。其中每一种攻击都会以攻击比例分别为1%,2%,5%,10%,填充规模分别为1%,3%,5%,10%,25%,40%,60%注入到原始数据集中。
对填充好的数据集按照电影类别如喜剧片、动作片等分类,将相同类别的电影分到相同的簇集,便于后续捕捉数据矩阵的二维相关性。
将数据按3:1划分为训练集和测试集,并分为不同的批次送入模型并进行训练。
根据步骤一获得的训练数据集,输入卷积自编码器模型,得到高维特征表示矩阵。
首先,构造深度卷积自编码器神经网络模型。利用数据集中原始的用户useri对电影itemj的评分rij构造评分矩阵作为输入,假设输入大小为(H,W),卷积核大小为(FH,FW),输出大小为(OH,OW),填充为P,步幅为S,则输出大小可表示为:
进入自动编码器的编码部分第一层卷积层做卷积操作提取特征:
其中,表示第l层第n个特征图以及第l-1层第m个特征图,/>为/>到的卷积核,本文选取卷积核尺寸为3×3,/>是偏置项,是一个实数,*符号代表了卷积操作,f是激活函数,零填充P设为1,步幅S设为1,则经过公式计算后,输出的特征图/>的大小OH′=OH,OW′=OW,则可通过卷积实现自动编码器尺寸无损的特征提取效果。
本文所有隐藏层的激活函数选用ReLU,该函数可以有效避免梯度缺失带来的收敛速度过慢以及局部最值等问题。第一层卷积层的输出进入激活函数层。编码部分为3层卷积层以及2层激励函数层的叠加,数据经过最后一层卷积层的作用后,自动编码器数据提取的编码部分就结束。
数据经过编码特征提取后,输入解码器反卷积解码操作。第一层反卷积过程可表示为:
其中,表示第l′层第m个特征图以及第l-1′层第n个特征图,/>为到/>的卷积核,这里选取卷积核尺寸同样为3×3,/>是偏置项,是一个实数,*符号代表了卷积操作,f是激活函数,零填充P设为1,步幅S设为1。第一层反卷积的输出进入激活函数层。解码部分为3层反卷积层以及2层激励函数层的叠加,数据经过最后一层反卷积的作用后,自动编码器数据提取的解码部分就结束,得到用户的高维特征表示矩阵R。
根据获得的用户高维特征表示矩阵,得到项目注意力矩阵,结合项目注意力矩阵以及步骤二得到的用户高维特征表示矩阵得到最终的特征矩阵。
分析不同的项目对整个任务结果的影响程度,基于上述得到的用户高维特征表示矩阵R,设R为w×v的矩阵,即(w行v列),第a行b列的元素是r(a,b),即:R=r(a,b),则R的转置矩阵为v×w阶矩阵R′,满足r′(b,a)=r(a,b),则称R′为R的转置矩阵,得到R′。
根据R′,R,项目注意力矩阵att可表示为:
att=R﹒R′
其中,﹒符号表示点乘,att表示注意力矩阵,R表示用户的高维特征表示矩阵,R′为R的转置矩阵。
最终的特征矩阵Q可表示为:
Q=att﹒R
最后将得到的最终特征矩阵输入全连接层分类,利用准确率(Precision)、召回率(Recall)、F值(F-measure)作为算法的性能评价指标。
生成分类结果并评价包括以下步骤:
基于上述得到的特征矩阵Q,使用reshape()函数将多维的张量展开成一维向量,并映射到样本标记空间得到每一位用户的分类概率,后续再通过分类函数得到用户具体的类别,完成用户的分类。进入步骤二;
通过反向传播算法(Back propagation)优化模型,更新权重。由于本质上属于分类问题,所以本文选用交叉熵损失函数CrossEntropyLossAdam:
loss=-∑xm(x)logq(x)
其中x表示输入,q(x)表示预测值,m(x)表示真实值,便于我们使用梯度下降的方法找到最优解。本文的优化算法采用了自适应动量项(adaptive moments,Adam)算法,Adam优化器正则化权重,防止过拟合,同时更新神经网络参数。真实标签为li,若则预测正确,反之,则预测错误。进入步骤三;
使用评价指标准确率(Precision)、召回率(Recall)、F值(F-measure)对检测结果进行评估,计算方式分别如下:
其中,TP(真正)表示将正类预测为正类数,FP(假正)表示将负类预测为正类数,FN(假负)表示将正类预测为负类数。因此召回率度量的是在正例中有多少被分为正例,准确率度量的是在所有被预测为正类的用户中确实是正类的比例。而F则综合了Recall、Precision的结果,F值越高,说明检测效果越有效。
下列表一是攻击规模为5%时,各填充规模比例下的,三种攻击的评价指标,表二是填充规模为5%,各攻击规模的比例下,三种攻击的评价指标,由此可见,该方法在检测托攻击的识别率在98%以上,该方法对识别托攻击非常有效。
表一攻击规模为5%时不同情况的对比
表2填充规模为5%时不同情况的对比
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所做的等效结构或等流程变换,或直接或间接运用在相关技术领域,均同理包括在本发明的专利保护范围。
Claims (1)
1.一种基于注意力卷积自编码器的推荐系统攻击检测方法,其特征在于:
步骤1:首先获取数据集,对数据集进行预处理并获得训练数据集;
步骤2:根据步骤1获得的训练数据集,输入卷积自编码器模型,得到高维特征表示矩阵;
步骤3:根据步骤2获得的高维特征表示矩阵,得到项目注意力矩阵,结合项目注意力矩阵以及步骤2得到的高维特征表示矩阵得到最终的特征矩阵;
步骤4:最后将得到的最终的特征矩阵输入全连接层分类,利用准确率、召回率、F值作为算法的性能评价指标;
步骤1中所述的数据集获得以及数据预处理包括以下步骤:
步骤1.1:首先获取数据集,向数据集分别注入三种类型的攻击:均值攻击,流行攻击以及随机攻击;
步骤1.2:对填充好的数据集按照规则进行分类,将相同类别的数据分到相同的簇集;
步骤1.3:将数据按3:1划分为训练集和测试集,并分为不同的批次送入模型并进行训练;
步骤2中得到高维特征表示矩阵包括以下步骤:
步骤2.1:首先构造深度卷积自编码器神经网络模型,利用数据集中原始的用户useri对项目itemj的评分rij构造评分矩阵作为输入,假设输入大小为(H,W),卷积核大小为(FH,FW),输出大小为(OH,OW),填充为P,步幅为S,则输出大小可表示为:
进入自编码器的编码部分第一层卷积层做卷积操作提取特征:
其中,表示第l层第n个特征图以及第l-1层第m个特征图,/>为/>到/>的卷积核,选取卷积核尺寸为3×3,/>是偏置项,是一个实数,*符号代表了卷积操作,f是激活函数;第一层卷积层的输出进入激活函数层;编码部分为3层卷积层以及2层激励函数层的叠加,数据经过最后一层卷积层的作用后,自动编码器数据提取的编码部分就结束;
步骤2.2:数据经过编码特征提取后,输入解码器反卷积解码操作,第一层反卷积过程可表示为:
其中,表示第l层第m个特征图以及第l-1层第n个特征图,/>为/>到/>的卷积核,这里选取卷积核尺寸同样为3×3,/>是偏置项,是一个实数,*符号代表了卷积操作,f是激活函数;数据经过最后一层反卷积的作用后,自编码器数据提取的解码部分就结束,得到用户的高维特征表示矩阵R;
步骤3中得到最终的特征矩阵包括以下步骤:
步骤3.1:分析不同的项目对整个任务结果的影响程度,基于上述得到的高维特征表示矩阵R,设R为w×v的矩阵,第a行b列的元素是r(a,b),则R的转置矩阵为v×w阶矩阵R′,满足r′(b,a)=r(a,b),则称R′为R的转置矩阵,得到R′;
步骤3.2:根据R′,R,项目注意力矩阵att可表示为:
att=R﹒R′
其中,﹒符号表示点乘,att表示注意力矩阵,R表示用户的高维特征表示矩阵,R′为R的转置矩阵;
步骤3.3:最终的特征矩阵Q可表示为:
Q=att﹒R;
步骤4中生成分类结果并评价包括以下步骤:
步骤4.1:基于上述得到的特征矩阵Q,使用reshape()函数将多维的张量展开成一维向量,并映射到样本标记空间得到每一位用户的分类概率,后续再通过分类函数得到用户具体的类别,完成用户的分类;
步骤4.2:通过反向传播算法优化模型,更新权重,选用交叉熵损失函数CrossEntropyLossAdam:
其中x表示输入,q(x)表示预测值,m(x)表示真实值,便于使用梯度下降的方法找到最优解;优化算法采用自适应动量项Adam算法,Adam优化器正则化权重,防止过拟合,同时更新神经网络参数;真实标签为li,若则预测正确,反之,则预测错误;
步骤4.3:使用评价指标准确率(Precision)、召回率(Recall)、F值(F-measure)对检测结果进行评估,计算方式分别如下:
其中,TP表示将正类预测为正类数,FP表示将负类预测为正类数,FN表示将正类预测为负类数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911094684.5A CN110826056B (zh) | 2019-11-11 | 2019-11-11 | 一种基于注意力卷积自编码器的推荐系统攻击检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911094684.5A CN110826056B (zh) | 2019-11-11 | 2019-11-11 | 一种基于注意力卷积自编码器的推荐系统攻击检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110826056A CN110826056A (zh) | 2020-02-21 |
CN110826056B true CN110826056B (zh) | 2024-01-30 |
Family
ID=69553899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911094684.5A Active CN110826056B (zh) | 2019-11-11 | 2019-11-11 | 一种基于注意力卷积自编码器的推荐系统攻击检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110826056B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401272B (zh) * | 2020-03-19 | 2021-08-24 | 支付宝(杭州)信息技术有限公司 | 一种人脸特征提取方法、装置及设备 |
CN112085158A (zh) * | 2020-07-21 | 2020-12-15 | 西安工程大学 | 一种基于堆栈降噪自编码器的图书推荐方法 |
CN111967909A (zh) * | 2020-08-17 | 2020-11-20 | 国网山西省电力公司营销服务中心 | 一种基于卷积神经网络的托攻击检测方法 |
CN113297575B (zh) * | 2021-06-11 | 2022-05-17 | 浙江工业大学 | 一种基于自编码器的多通道图垂直联邦模型防御方法 |
CN116361785B (zh) * | 2023-03-31 | 2024-04-05 | 济南大学 | 基于深度学习的推荐系统恶意攻击检测方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109886072A (zh) * | 2018-12-25 | 2019-06-14 | 中国科学院自动化研究所 | 基于双向Ladder结构的人脸属性分类系统 |
CN109992674A (zh) * | 2019-04-12 | 2019-07-09 | 南京工业大学 | 一种融合自动编码器和知识图谱语义信息的推荐方法 |
-
2019
- 2019-11-11 CN CN201911094684.5A patent/CN110826056B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109886072A (zh) * | 2018-12-25 | 2019-06-14 | 中国科学院自动化研究所 | 基于双向Ladder结构的人脸属性分类系统 |
CN109992674A (zh) * | 2019-04-12 | 2019-07-09 | 南京工业大学 | 一种融合自动编码器和知识图谱语义信息的推荐方法 |
Non-Patent Citations (3)
Title |
---|
JingWang等.Convolutional Auto-encoding of Sentence Topics for Image Paragraph Generation.IJCAI 2019.2019,第1-7页. * |
喻玲娟等.基于FCNN和ICAE的SAR图像目标识别方法.雷达学报.2018,第7卷(第5期),第622-631页. * |
张昊博.集成注意力机制和文本上下文信息的协同过滤预测评分研究.中国优秀硕士学位论文全文数据库信息科技辑.2019,摘要,第一-四章. * |
Also Published As
Publication number | Publication date |
---|---|
CN110826056A (zh) | 2020-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110826056B (zh) | 一种基于注意力卷积自编码器的推荐系统攻击检测方法 | |
CN108133188B (zh) | 一种基于运动历史图像与卷积神经网络的行为识别方法 | |
CN108052911B (zh) | 基于深度学习的多模态遥感影像高层特征融合分类方法 | |
CN108228915B (zh) | 一种基于深度学习的视频检索方法 | |
CN107480261B (zh) | 一种基于深度学习细粒度人脸图像快速检索方法 | |
CN112750140B (zh) | 基于信息挖掘的伪装目标图像分割方法 | |
CN112464865A (zh) | 一种基于像素和几何混合特征的人脸表情识别方法 | |
CN111738054B (zh) | 一种基于时空自编码器网络和时空cnn的行为异常检测方法 | |
CN111325237B (zh) | 一种基于注意力交互机制的图像识别方法 | |
CN110929080A (zh) | 基于注意力和生成对抗网络的光学遥感图像检索方法 | |
CN113691542B (zh) | 基于HTTP请求文本的Web攻击检测方法及相关设备 | |
CN116610778A (zh) | 基于跨模态全局与局部注意力机制的双向图文匹配方法 | |
CN109710804A (zh) | 一种教学视频图像知识点降维分析方法 | |
CN112597324A (zh) | 一种基于相关滤波的图像哈希索引构建方法、系统及设备 | |
Pratama et al. | Deep convolutional neural network for hand sign language recognition using model E | |
Cardoza et al. | Convolutional neural networks hyperparameter tunning for classifying firearms on images | |
CN115222998A (zh) | 一种图像分类方法 | |
CN114627424A (zh) | 一种基于视角转化的步态识别方法和系统 | |
CN113920584A (zh) | 一种基于时间感知特征学习的动作质量评估方法 | |
CN112613032B (zh) | 基于系统调用序列的主机入侵检测方法及装置 | |
CN110738129B (zh) | 一种基于r-c3d网络的端到端视频时序行为检测方法 | |
CN117152486A (zh) | 一种基于可解释性的图像对抗样本检测方法 | |
Wang et al. | Text detection algorithm based on improved YOLOv3 | |
Reshna et al. | Recognition of static hand gestures of Indian sign language using CNN | |
AlDahoul et al. | Local receptive field-extreme learning machine based adult content detection |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |