机器学习方法、装置、系统、存储介质及设备制造方法及图纸

技术编号:17249564 阅读:38 留言:0更新日期:2018-02-11 08:00
本发明专利技术公开一种机器学习方法、装置、系统、存储介质及设备,用于恶意网络bot的识别。该方法包括:获取步骤,获取目标网站中的用户访问日志数据,用户访问日志数据包括用户请求的网络地址和请求之间的时间间隔;学习步骤,将用户访问日志数据进行机器学习,得到请求的时间间隔模型。本发明专利技术的技术方案无需使用侵入式技术,能够有效地识别网络异常bot,从而显著地提高了异常bot检测的准确率。

【技术实现步骤摘要】
机器学习方法、装置、系统、存储介质及设备
本专利技术涉及计算机网络的数据处理领域,具体涉及一种机器学习方法、装置、系统、存储介质及设备。
技术介绍
目前网站流量中已经超过50%来自网络bot(Robot,机器人),而在这些网络bot流量中,大约只有三分之一为正常的流量,例如搜索引擎的爬虫等。更多的异常流量用于诸如恶意爬虫,cc攻击,利用业务漏洞进行刷单刷接口,扫描等异常请求。这也直接导致异常bot的检测是目前业界比较迫切需要解决的问题。针对此问题,业界目前采取的方案多为主动探测类方法,使用侵入式的SDK(SoftwareDevelopmentKit,软件开发工具包)实现特定信息的收集然后进行分析判断处理。Bot本身是计算机程序,侵入式SDK的方法用于收集探测bot的一些参数信息。例如目前业界使用较为普遍的检测bot的Cookie支持性,Javascript支持程度,验证码以及设备指纹技术等。侵入式的SDK需要在和潜在客户端交互时,进行干预处理。例如服务端再返回的信息中加上Cookie,script等,然后判断客户端返回的信息是否合规。验证码技术即为在交互过程中强制加入验证逻辑。设备指纹技术用于收集客户端的参数信息,返回给服务端加以判断客户端的合规性。验证码技术主要存在三个问题。第一,验证逻辑会增加通信交互,从而增加正常业务时延;第二,验证码会降低客户体验,即使随机性的加入验证码对正常客户来说,体验会迅速下降;第三,验证码同样可以被bot绕过,随着深度学习技术在图像声音领域的应用,验证码被机器识别的概率越来越高。Cookie/Javascript探测对客户来说是透明的,但是缺陷比较明显,bot仅需要支持它们即可。Bot可以通过浏览器插件方式工作,或者修改浏览器而实现。随着应用的移动化,很多服务本身的移动端客户端也不支持Cookie/Javascript,因此实际应用场景也会缩小。设备指纹技术,是目前比较流行的技术。采集客户端多项属性参数计算哈希得到。例如比较突出的画布(canvas)指纹技术,原理是调用设备的canvas接口生成一个复杂定义的图像,由于硬件配置,软件版本等因素的影响,生成的图像在像素级别存在一定区别,以此作为一种指纹。这种技术同样存在三个问题:第一,bot通过浏览器插件或者修改浏览器得到,同样可以返回指纹;第二,设备指纹是由bot返回给服务端,因此bot可以修改。目前的通信体系,并没有普及服务端对客户端的身份校验,因此无法引入非对称加密技术来保证。第三,指纹冲突,随着云计算,IT基础设施的统一化处理,使得机器的硬件配置,操作系统版本以及应用软件版本完全一致,从而导致指纹冲突概率增加,准确度降低。还有一些基于行为分析模型的实现多在尝试阶段。行为分析技术,原理上对行为(请求的资源)进行建模,例如基于贝叶斯,隐马尔科夫以及神经网络,这些实现都存在较高的误报和漏报问题。例如bot对某些模式的资源随机地发起模拟人的请求,行为模型都难以进行有效识别。另一方面,侵入式SDK解决方案,在部署时成本较高,需要修改接入SDK,对原有业务代码进行改动。影响原有业务的安全性和隐私性。
技术实现思路
为了解决上述问题和现有技术的缺陷,本专利技术实施例提供了一种实现机器学习的方法、装置、系统、存储介质及设备。由于大部分诸如抢单、刷单和刷评论等的网络恶意bot无法在时间维度上模拟人的操作行为。本专利技术基于非侵入式的方式,仅使用网站的访问日志进行数据分析,在时间维度上区分恶意bot的请求。第一方面,本专利技术实施例提供了一种实现机器学习的方法,该方法包括:获取步骤,获取目标网站中的用户访问日志数据,用户访问日志数据包括用户请求的网络地址和请求之间的时间间隔;学习步骤,将用户访问日志数据进行机器学习,得到请求的时间间隔模型。结合第一方面,本专利技术实施例的机器学习的方法还可以进一步包括:拟合步骤,拟合用户访问日志数据,得到时间间隔的特征,特征包括时间间隔的异常度;确定步骤,根据用户访问日志数据,确定时间间隔的条件信息熵;建模步骤,根据异常度和条件信息熵,得到用于建立时间间隔模型的模型函数。进一步地,模型函数通过条件信息熵累积异常度的修正值获得。进一步地,确定步骤根据以下公式确定条件信息熵:CCEm=H(X1,...Xm)-H(X1,...Xm-1)+perc(Xm)*EN(X1)其中,X={Xi}表示所有时间间隔的随机序列,xi表示第i个请求和第i-1个请求的时间间隔,H(X1,...Xm)表示信息熵,perc(Xm)表示在长度为m的序列在样本序列中仅出现过一次所占的比例,EN(X1)表示当m=1时的信息熵。进一步地,拟合步骤根据正态分布模型拟合用户访问日志数据。进一步地,建模步骤根据以下公式建立时间间隔模型:LCCEm=CCEm*∏x(1-f(x;u,σ))其中,x>u+2σ或x<u-2σ,CCEm表示条件信息熵,f(x;u,σ)表示正态分布的概率密度函数。进一步地,本专利技术实施例的机器学习的方法还可以进一步包括:泛化步骤,在学习步骤之前,根据目标网站的结构,对用于学习的用户访问日志数据进行泛化。第二方面,本专利技术实施例提供了一种实现机器学习的装置,该装置包括:获取模块,用于获取目标网站中的用户访问日志数据,用户访问日志数据包括用户请求的网络地址和请求之间的时间间隔;学习模块,用于将用户访问日志数据进行机器学习,得到请求的时间间隔模型。结合第二方面,本专利技术实施例提供的一种实现机器学习的装置还可以进一步包括:拟合单元,用于拟合用户访问日志数据,得到时间间隔的特征,特征包括时间间隔的异常度;确定单元,用于根据用户访问日志数据,确定时间间隔的条件信息熵;建模单元,用于根据异常度和条件信息熵,得到用于建立时间间隔模型的模型函数。进一步地,模型函数通过条件信息熵累积异常度的修正值获得。进一步地,确定单元根据以下公式确定条件信息熵:CCEm=H(X1,...Xm)-H(X1,...Xm-1)+perc(Xm)*EN(X1)其中,X={Xi}表示所有时间间隔的随机序列,xi表示第i个请求和第i-1个请求的时间间隔,H(X1,...Xm)表示信息熵,perc(Xm)表示在长度为m的序列在样本序列中仅出现过一次所占的比例,EN(X1)表示当m=1时的信息熵。进一步地,拟合单元根据正态分布模型拟合用户访问日志数据。进一步地,建模单元根据以下公式建立时间间隔模型:LCCEm=CCEm*Πx(1-f(x;u,σ))其中,x>u+2σ或x<u-2σ,CCEm表示条件信息熵,f(x;u,σ)表示正态分布的概率密度函数。进一步地,本专利技术实施例的机器学习的装置还可以进一步包括:泛化模块,用于在学习步骤之前,根据目标网站的结构,对用于学习的用户访问日志数据进行泛化。第三方面,本专利技术实施例提供了一种实现机器学习的系统,该系统包括第二方面或结合第二方面的机器学习装置。第四方面,本专利技术实施例提供了一种非易失性存储介质,该非易失性存储介质具有存储在其中的指令,当该指令被执行时,使得处理器执行机器学习方法,具体的,该指令包括:获取指令,获取目标网站中的用户访问日志数据,用户访问日志数据包括用户请求的网络地址和请求之间的时间间隔;学习指令,将用户访问日志数据进行机器学习,得到本文档来自技高网
...
机器学习方法、装置、系统、存储介质及设备

【技术保护点】
一种机器学习方法,其特征在于,包括:获取步骤,获取目标网站中的用户访问日志数据,所述用户访问日志数据包括用户请求的网络地址和所述请求之间的时间间隔;学习步骤,将所述用户访问日志数据进行机器学习,得到所述请求的时间间隔模型。

【技术特征摘要】
1.一种机器学习方法,其特征在于,包括:获取步骤,获取目标网站中的用户访问日志数据,所述用户访问日志数据包括用户请求的网络地址和所述请求之间的时间间隔;学习步骤,将所述用户访问日志数据进行机器学习,得到所述请求的时间间隔模型。2.根据权利要求1所述的方法,其特征在于,所述学习步骤进一步包括:拟合步骤,拟合所述用户访问日志数据,得到所述时间间隔的特征,所述特征包括所述时间间隔的异常度;确定步骤,根据所述用户访问日志数据,确定所述时间间隔的条件信息熵;建模步骤,根据所述异常度和所述条件信息熵,得到用于建立所述时间间隔模型的模型函数。3.根据权利要求2所述的方法,其特征在于,所述模型函数通过所述条件信息熵累积所述异常度的修正值获得。4.根据权利要求3所述的方法,其特征在于,所述确定步骤根据以下公式确定所述条件信息熵:CCEm=H(X1,…Xm)-H(X1,…Xm-1)+perc(Xm)*EN(X1)其中,X={Xi}表示所有所述时间间隔的随机序列,xi表示第i个请求和第i-1个请求的时间间隔,H(X1,…Xm)表示信息熵,perc(Xm)表示在长度为m的序列在样本序列中仅出现过一次所占的比例,EN(X1)表示当m=1时的信息熵。5.根据权利要求4所述的方法,其特征在于,所述拟合步骤根据正态分布模型拟合所述用户访问日志数据。6.根据权利要求5所述的方法,其特征在于,所述建模步骤根据以下公式建立所述时间间隔模型:LCCEm=CCEm*∏x(1-f(x;u,σ))其中,x>u+2σ或x<u-2σ,CCEm表示所述条件信息熵,f(x;u,σ)为正态分布的概率密度函数。7.根据权利要求1-6任一项所述的方法,其特征在于,包括:泛化步骤,在所述学习步骤之前,根据所述目标网站的结构,对用于学习的所述用户访问日志数据进行泛化。8.一种机器学习装置,其特征在于,包括:获取模块,用于获取目标网站中的用户访问日志数据,所述用户访问日志数据包括用户请求的网络地址和所述请求之间的时间间隔;学习模块,用于将所述用户访问日志数据进行机器学习,得到所述请求的时间间隔模型。9.根据权利要求8所述的装置,其特征在于,所述学习模块进一步包括:拟合单元,用于拟合所述用户访问日志数据,得到所述时间间隔的特征,所述特征包...

【专利技术属性】
技术研发人员:刘少东
申请(专利权)人:上海优刻得信息科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1