CN110135566A - 基于lstm二分类神经网络模型的注册用户名检测方法 - Google Patents
基于lstm二分类神经网络模型的注册用户名检测方法 Download PDFInfo
- Publication number
- CN110135566A CN110135566A CN201910425791.5A CN201910425791A CN110135566A CN 110135566 A CN110135566 A CN 110135566A CN 201910425791 A CN201910425791 A CN 201910425791A CN 110135566 A CN110135566 A CN 110135566A
- Authority
- CN
- China
- Prior art keywords
- data
- user name
- lstm
- bis
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- 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/044—Recurrent networks, e.g. Hopfield 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/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)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明公开了一种基于LSTM二分类神经网络模型的注册用户名检测方法,包括以下步骤:对训练数据和测试数据进行预处理,其中训练数据包括正常用户名数据与随机生成的用户名数据;对预处理后的用户名数据进行编码,统一每个数据的长度;对编码后的数据进行字符级的序列化;通过预处理、编码及序列化后的训练数据搭建LSTM二分类神经网络模型,形成注册用户名的检测模型;将经过预处理、编码及序列化后测试数据输入检测模型中,检测模型将测试数据识别为异常样本的概率为P,当P大于等于异常概率阈值时,将该测试数据识别为异常样本,否则识别为正常样本。本发明对平台注册用户名是否为随机生成的有很好的检测效果。
Description
技术领域
本发明涉及web应用、深度学习技术领域,特别是一种基于LSTM二分类神经网络模型的注册用户名检测方法。
背景技术
近年来,web应用日益普及,为了提供更好的服务以及留住用户,很多平台提供用户注册功能,并对用户开放注册,一些问题也随之而来,一方面开放注册,会让一些别有用心的用户大批量的恶意注册账户,可能引发网络安全问题。另一方面,平台中存在海量的用户,用户质量参差不齐,势必会影响后续进行相关运营活动的效率。
发明内容
随机或者随意生成的用户名是批量恶意注册和低质量的注册用户共有的特征,这些用户名的命名规则往往不符合拼音和英文的命名规律;为解决现有技术中存在的问题,本发明的目的是为了检测平台注册用户中疑似随机生成用户名的恶意用户和低质量用户,给批量注册识别、低质量用户识别提供参考,提出一种基于LSTM二分类神经网络模型的注册用户名检测方法。
为实现上述目的,本发明采用的技术方案是:一种基于LSTM二分类神经网络模型的注册用户名检测方法,包括以下步骤:
步骤一、对训练数据和测试数据进行预处理,其中训练数据包括正常用户名数据与随机生成的用户名数据;
步骤二、对预处理后的用户名数据进行编码,统一每个数据的长度;
步骤三、对编码后的数据进行字符级的序列化;
步骤四、通过预处理、编码及序列化后的训练数据搭建LSTM二分类神经网络模型,形成注册用户名的检测模型;
步骤五、将经过预处理、编码及序列化后测试数据输入检测模型中,检测模型将测试数据识别为异常样本的概率为P,当P大于等于异常概率阈值时,将该测试数据识别为异常样本,否则识别为正常样本。
作为一种优选的实施方式,所述步骤一中,对训练数据和测试数据进行预处理具体包括:去除训练数据和测试数据中所有非英文单词的字符,以及将大写的英文字符转换为小写的英文字符,如果数据中的用户名是邮箱名,则去除邮箱类型的后缀。
作为另一种优选的实施方式,所述步骤二中对数据进行编码具体如下:经预处理后的数据中只包含英文字母,26个英文字母对应26个编码,统一每个数据的编码序列的长度,长度不够的补零,长度超过的进行截断。
作为另一种优选的实施方式,所述步骤三中对编码后的数据进行序列化具体包括:利用词向量技术对每个字母进行特征映射,每个字母对应一个固定长度的向量,具体地通过Embedding词嵌入将数据映射为嵌入矩阵,如果输出32维,则每个字母的编码被映射成一个32维的向量,每个用户名样本变为一个1*20*32的矩阵。
作为另一种优选的实施方式,所述步骤四中,搭建的LSTM二分类神经网络模型如下:
第一层为embedding层,输入的样本为序列长度等于20的字符序列,经过embedding层的编码映射后,每个输出为20*32的矩阵,n个样本表示为n*20*32;
第二层为LSTM层,输入维度为n*20*132的矩阵,其中n表示用户名样本条数,输出维度为64维,并输出每个时间步的结果维度为n*20*64;
第三层为flatten层,将数据转换为n*1280的维度;
第四层为全连接层,输出维度为64,数据经过该层后变为n*64的维度,该层中激活函数为ReLU;
第五层为输出层,输出维度为2,该层中激活函数为Softmax,模型的损失函数为交叉熵损失函数,优化方式为adam优化算法。
作为另一种优选的实施方式,通过增大异常概率阈值来减小检测模型对测试数据的误报。
本发明的有益效果是:通过使用正常用户名数据与随机生成的用户名数据训练模型,在对新数据的预测结果中,作为二分类模型,每一类数据的准确率和召回率在95%左右,能够较为有效的区分正常用户名与随机生成的用户名。由于实际使用场景中要求将正常样本识别为异常样本的比例(误报率)尽可能的小,通过设定判别为异常样本的概率阈值可以控制误报率,相应将异常样本判定为正常的概率会增加。
附图说明
图1为本发明实施例的方法流程框图;
图2为本发明实施例中LSTM二分类神经网络模型结构图。
具体实施方式
下面结合附图对本发明的实施例进行详细说明。
实施例:
如图1所示,一种基于LSTM二分类神经网络模型的注册用户名检测方法,包括以下步骤:
1、对训练数据和测试数据中的用户名进行预处理,包括去除所有非英文单词的字符、大写转小写,如果用户名是邮箱名,去除邮箱类型的后缀;如:[email protected]预处理后的输出为goodname。
2、对预处理后的用户名数据中的字母进行编码,统一每个样本数据的长度;处理后的用户名只包含英文字母,有26个字母对应26个编码,例如a:1,b:2,c:3以此类推,最后统一用户名的编码序列的长度为15,不够的补零,超过的进行截断;如:用户名“Goodname123”编码统一长度后变为序列[0,0,0,0,0,0,0,7,15,15,4,14,1,13,5]。
3、利用词向量技术对每个字母进行特征映射,每个字母对应一个固定长度的向量;
通过Embedding词嵌入将数据映射为嵌入矩阵,如果输出32维,则每个字母的编码被映射成一个32维的向量,每个用户名样本变为一个1*20*32的矩阵。
4、搭建如图2所示的LSTM二分类神经网络模型:
第一层为embedding层,输入的样本为序列长度等于20的字符序列,经过embedding层的编码映射后,每个输出为20*32的矩阵,n个样本表示为n*20*32;
第二层为一个LSTM层,输入维度为n*20*132的矩阵(n表示用户名样本条数)输出维度为64维,并输出每个时间步的结果维度为n*20*64;
第三层为flatten层,将数据转换为n*1280的维度;
第四层为一个全连接层,输出维度为64,数据经过该层后变为n*64的维度,激活函数为ReLU;
第五层为输出层,输出维度为2,激活函数为Softmax,模型的损失函数为交叉熵损失函数,优化方式为adam优化算法。
5、模型误报修正:
检测模型把正常样板判定为异常样本或把异常样本判定为正常样本称为误报,在实际使用场景中,误报带来的损失远大于漏报,所以设定一种设定概率阈值的机制来控制误报。可以增大阈值来减小误报,相应的,漏报会有一定程度增加。
下面对本实施例作进一步的说明:
在平台发生批量注册行为时,恶意注册的用户有可能随机生成大量的用户名,可以结合一些适当规则,判断这些用户发生批量注册可能性。
有些用户如果只是随便试用一下平台,注册时可能会随便填写一个注册名,检测出类似这样的用户名,可以将其标记起来,后续平台在进行用户运营的时候可以降低这些用户的优先级,减少运营成本,提高运营效率。
利用随机用户名检测的方法,检测出疑似随机生成的用户名,可以在一定程度上为恶意注册行为提供参考,并能基于用户名的命名规律筛选出一部分的低质量用户。
该方法将用户名进行预处理,并进行字符级的序列化,利用LSTM在时序序列表达方面的优势,使用正常用户名和随机生成的用户名进行模型训练,学***台注册用户名是否为随机生成的有很好的检测效果。
随机用户名检测模型是一个二分类的模型,现有分类算法都支持二分类,但是利用LSTM可以处理时序问题,因为不管汉字的拼音,还是英文单词的拼写,都遵循特定的字符组合规律,字符的前后搭配顺序对最终形成的单词语义是有影响的,利用LSTM就可以很好的捕捉到这种关系,进而学习到正常用户和异常的随机生成的用户名命名上的区别。
以上所述实施例仅表达了本发明的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (6)
1.一种基于LSTM二分类神经网络模型的注册用户名检测方法,其特征在于,包括以下步骤:
步骤一、对训练数据和测试数据进行预处理,其中训练数据包括正常用户名数据与随机生成的用户名数据;
步骤二、对预处理后的用户名数据进行编码,统一每个数据的长度;
步骤三、对编码后的数据进行字符级的序列化;
步骤四、通过预处理、编码及序列化后的训练数据搭建LSTM二分类神经网络模型,形成注册用户名的检测模型;
步骤五、将经过预处理、编码及序列化后测试数据输入检测模型中,检测模型将测试数据识别为异常样本的概率为P,当P大于等于异常概率阈值时,将该测试数据识别为异常样本,否则识别为正常样本。
2.根据权利要求1所述的基于LSTM二分类神经网络模型的注册用户名检测方法,其特征在于,所述步骤一中,对训练数据和测试数据进行预处理具体包括:去除训练数据和测试数据中所有非英文单词的字符,以及将大写的英文字符转换为小写的英文字符,如果数据中的用户名是邮箱名,则去除邮箱类型的后缀。
3.根据权利要求2所述的基于LSTM二分类神经网络模型的注册用户名检测方法,其特征在于,所述步骤二中对数据进行编码具体如下:经预处理后的数据中只包含英文字母,26个英文字母对应26个编码,统一每个数据的编码序列的长度,长度不够的补零,长度超过的进行截断。
4.根据权利要求3所述的基于LSTM二分类神经网络模型的注册用户名检测方法,其特征在于,所述步骤三中对编码后的数据进行序列化具体包括:利用词向量技术对每个字母进行特征映射,每个字母对应一个固定长度的向量,具体地通过Embedding词嵌入将数据映射为嵌入矩阵,如果输出32维,则每个字母的编码被映射成一个32维的向量,每个用户名样本变为一个1*20*32的矩阵。
5.根据权利要求4所述的基于LSTM二分类神经网络模型的注册用户名检测方法,其特征在于,所述步骤四中,搭建的LSTM二分类神经网络模型如下:
第一层为embedding层,输入的样本为序列长度等于20的字符序列,经过embedding层的编码映射后,每个输出为20*32的矩阵,n个样本表示为n*20*32;
第二层为LSTM层,输入维度为n*20*132的矩阵,其中n表示用户名样本条数,输出维度为64维,并输出每个时间步的结果维度为n*20*64;
第三层为flatten层,将数据转换为n*1280的维度;
第四层为全连接层,输出维度为64,数据经过该层后变为n*64的维度,该层中激活函数为ReLU;
第五层为输出层,输出维度为2,该层中激活函数为Softmax,模型的损失函数为交叉熵损失函数,优化方式为adam优化算法。
6.根据权利要求1或5所述的基于LSTM二分类神经网络模型的注册用户名检测方法,其特征在于,通过增大异常概率阈值来减小检测模型对测试数据的误报。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910425791.5A CN110135566A (zh) | 2019-05-21 | 2019-05-21 | 基于lstm二分类神经网络模型的注册用户名检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910425791.5A CN110135566A (zh) | 2019-05-21 | 2019-05-21 | 基于lstm二分类神经网络模型的注册用户名检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110135566A true CN110135566A (zh) | 2019-08-16 |
Family
ID=67572294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910425791.5A Pending CN110135566A (zh) | 2019-05-21 | 2019-05-21 | 基于lstm二分类神经网络模型的注册用户名检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110135566A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112800053A (zh) * | 2021-01-05 | 2021-05-14 | 深圳索信达数据技术有限公司 | 数据模型的生成方法、调用方法、装置、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975504A (zh) * | 2016-04-28 | 2016-09-28 | 中国科学院计算技术研究所 | 一种基于循环神经网络的社交网络消息爆发检测方法及*** |
CN107463703A (zh) * | 2017-08-16 | 2017-12-12 | 电子科技大学 | 基于信息增益的英文社交媒体账号分类方法 |
CN108197087A (zh) * | 2018-01-18 | 2018-06-22 | 北京奇安信科技有限公司 | 字符编码识别方法及装置 |
CN108764268A (zh) * | 2018-04-02 | 2018-11-06 | 华南理工大学 | 一种基于深度学习的图文多模态情感识别方法 |
CN108898015A (zh) * | 2018-06-26 | 2018-11-27 | 暨南大学 | 基于人工智能的应用层动态入侵检测***及检测方法 |
CN109101552A (zh) * | 2018-07-10 | 2018-12-28 | 东南大学 | 一种基于深度学习的钓鱼网站url检测方法 |
CN109308494A (zh) * | 2018-09-27 | 2019-02-05 | 厦门服云信息科技有限公司 | Lstm循环神经网络模型及基于该模型的网络攻击识别方法 |
CN109522454A (zh) * | 2018-11-20 | 2019-03-26 | 四川长虹电器股份有限公司 | 自动生成web样本数据的方法 |
KR20190051574A (ko) * | 2017-11-07 | 2019-05-15 | 고려대학교 산학협력단 | 인공 신경망을 이용하여 이름에 대한 국적 정보를 제공하는 장치 및 방법 |
-
2019
- 2019-05-21 CN CN201910425791.5A patent/CN110135566A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975504A (zh) * | 2016-04-28 | 2016-09-28 | 中国科学院计算技术研究所 | 一种基于循环神经网络的社交网络消息爆发检测方法及*** |
CN107463703A (zh) * | 2017-08-16 | 2017-12-12 | 电子科技大学 | 基于信息增益的英文社交媒体账号分类方法 |
KR20190051574A (ko) * | 2017-11-07 | 2019-05-15 | 고려대학교 산학협력단 | 인공 신경망을 이용하여 이름에 대한 국적 정보를 제공하는 장치 및 방법 |
CN108197087A (zh) * | 2018-01-18 | 2018-06-22 | 北京奇安信科技有限公司 | 字符编码识别方法及装置 |
CN108764268A (zh) * | 2018-04-02 | 2018-11-06 | 华南理工大学 | 一种基于深度学习的图文多模态情感识别方法 |
CN108898015A (zh) * | 2018-06-26 | 2018-11-27 | 暨南大学 | 基于人工智能的应用层动态入侵检测***及检测方法 |
CN109101552A (zh) * | 2018-07-10 | 2018-12-28 | 东南大学 | 一种基于深度学习的钓鱼网站url检测方法 |
CN109308494A (zh) * | 2018-09-27 | 2019-02-05 | 厦门服云信息科技有限公司 | Lstm循环神经网络模型及基于该模型的网络攻击识别方法 |
CN109522454A (zh) * | 2018-11-20 | 2019-03-26 | 四川长虹电器股份有限公司 | 自动生成web样本数据的方法 |
Non-Patent Citations (1)
Title |
---|
方明 等: "一种新型智能僵尸粉甄别方法", 《计算机工程》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112800053A (zh) * | 2021-01-05 | 2021-05-14 | 深圳索信达数据技术有限公司 | 数据模型的生成方法、调用方法、装置、设备及存储介质 |
CN112800053B (zh) * | 2021-01-05 | 2021-12-24 | 深圳索信达数据技术有限公司 | 数据模型的生成方法、调用方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110083831B (zh) | 一种基于BERT-BiGRU-CRF的中文命名实体识别方法 | |
CN109450845B (zh) | 一种基于深度神经网络的算法生成恶意域名检测方法 | |
CN110442707A (zh) | 一种基于seq2seq的多标签文本分类方法 | |
CN109977416A (zh) | 一种多层次自然语言反垃圾文本方法及*** | |
CN108573047A (zh) | 一种中文文本分类模型的训练方法及装置 | |
CN109413028A (zh) | 基于卷积神经网络算法的sql注入检测方法 | |
CN105184312A (zh) | 一种基于深度学习的文字检测方法及装置 | |
CN112836496B (zh) | 一种基于bert和前馈神经网络的文本纠错方法 | |
CN109670036B (zh) | 新闻评论自动生成方法及其装置 | |
CN101540017B (zh) | 基于字节级n元文法的特征提取方法及垃圾邮件过滤器 | |
CN110428820A (zh) | 一种中英文混合语音识别方法及装置 | |
CN111866004B (zh) | 安全评估方法、装置、计算机***和介质 | |
CN114490953B (zh) | 训练事件抽取模型的方法、事件抽取的方法、装置及介质 | |
CN109993169A (zh) | 一种基于端到端的字符型验证码识别方法 | |
CN110263164A (zh) | 一种基于模型融合的情感倾向分析方法 | |
CN107992211A (zh) | 一种基于cnn-lstm的汉字拼写错别字改正方法 | |
CN109325125B (zh) | 一种基于cnn优化的社交网络谣言检测方法 | |
CN114282527A (zh) | 多语言文本检测与纠错方法、***、电子设备及存储介质 | |
CN111753290A (zh) | 软件类型的检测方法及相关设备 | |
CN111104513A (zh) | 一种游戏平台用户问答业务的短文本分类方法 | |
CN110009025A (zh) | 一种用于语音测谎的半监督加性噪声自编码器 | |
CN106803091A (zh) | 一种纸币币值的识别方法和*** | |
CN114266254A (zh) | 一种文本命名实体识别方法与*** | |
CN106600283A (zh) | 识别姓名国籍的方法、***及判断交易风险的方法、*** | |
CN110135566A (zh) | 基于lstm二分类神经网络模型的注册用户名检测方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190816 |
|
RJ01 | Rejection of invention patent application after publication |