1.一种利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,包括以下步骤:
S1,获取网络域名,将获取的网络域名作为待处理网络域名;
S2,对步骤S1中获取的待处理网络域名进行预处理;预处理后得到处理网络域名;
S3,对步骤S2中的处理网络域名进行网络域名特征图拼接;
S4,将其输出的标量特征转换为向量特征;
S5,对特征进行整合选择,得到最优的特征;在本步骤中包括:其中,l表示度量子层胶囊与父层胶囊的网络聚类的值;
N表示子层胶囊的数量;
K表示父层胶囊的数量;
min表示求最小值函数;
表示子层胶囊与父层胶囊相似性;
表示子层的胶囊i;
vj表示父层胶囊j;
其中,Wji表示非共享参数;
<>表示相似性度量方法S6,通过损失函数优化模型参数;
S7,判断其输出的结果是否为DGA域名或/和DGA域名家族类别;
S8,对评估指标展示;评估指标展示包括第一评估指标或/和第二第估指标;
第一评估指标包括准确率Acc、查准率Pc、查全率Rc、调和平均值Fc之一或者任意组合;
其准确率Acc的计算方法为:其中,Acc表示准确率;
M′表示样本的数量;
表示第一判定式,判断 是否成立:若成立,
若不成立,
(m)
y 表示真实标签值;
表示预测标签值;
其查准率Pc的计算方法为:其中,Pc表示类别c的查准率;
TPc表示一个样本的真实类别为c并且模型正确地预测为类别c的数量;
FPc表示一个样本的真实类别为其他类,模型错误地预测为类别c的数量;
其查全率Rc的计算方法为:其中,Rc表示类别c的查全率;
TPc表示一个样本的真实类别为c并且模型正确地预测为类别c的数量;
FNc表示一个样本的真实类别为c,模型错误地预测为其他类的数量;
Fc表示查准率和召回率的调和平均值;
β表示权重因子;
Pc表示类别c的查准率;
Rc表示类别c的查全率;
第二评估指标包括总体查准率Pmacro、总体召回率Rmacro、总体F1macro值之一或者任意组合;
其总体查准率Pmacro的计算方法为:其中,Pmacro表示采用Macro计算方式求得总体查准率;
G表示样本类别数;
Pc表示类别c的查准率;
其总体召回率Rmacro的计算方法为:其中,Rmacro表示采用Macro计算方式求得总体召回率;
G表示样本类别数;
Rc表示类别c的查全率;
其总体F1macro值的计算方法为:其中,F1macro表示采用Macro计算方式求得召回率总体F1‑Score值;
Pmacro表示采用Macro计算方式求得总体查准率;
Rmacro表示采用Macro计算方式求得总体召回率;
其中,TPc表示一个样本的真实类别为c并且模型正确地预测为类别c的数量;
M′表示样本的数量;
表示第二判定式,判断 是否成立:若成立,
若不成立,
(m)
y 表示真实标签值;
表示预测标签值;
其中,FNc表示一个样本的真实类别为c,模型错误地预测为其他类的数量;
M′表示样本的数量;
表示第三判定式,判断 是否成立:若成立,
若不成立,
(m)
y 表示真实标签值;
表示预测标签值;
∧表示逻辑运算与;
其中,FPc表示一个样本的真实类别为其他类,模型错误地预测为类别c的数量;
M′表示样本的数量;
表示第四判定式,判断 是否成立:若成立,
若不成立,
(m)
y 表示真实标签值;
表示预测标签值;
^表示逻辑运算与。
2.根据权利要求1所述的利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,在步骤S2中,对待处理网络域名进行预处理的方法为:将域名字符串经过one‑hot编码;
或者,将域名字符串经过one‑hot编码后,再进行字符编码压缩。
3.根据权利要求1所述的利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,步骤S3包括:a
特征图A的每一列 的计算方法为:a
其中, 表示特征图A的每一列;
f()表示非线性激活函数;
表示词窗口;
⊙表示逐元素相乘;
a
W表示滤波器;
b0表示第一偏置项;
C=[A1,A2,A3,...,An],其中,C表示多个滤波器在卷积后组合在一起的特征图;
Aζ表示一个滤波器在卷积后得到的特征图,ζ=1,2,3,…,n。
4.根据权利要求1所述的利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,步骤S4包括:β
ui=g(WiCi+b1),ui表示第i特征表达的胶囊;
g()表示一种矩阵变换方式;
β
Wi表示共享滤波器中的第i滤波器;
Ci表示分组后的特征图;
b1表示第二偏置项;
u=[u1,u2,u3,...,uP],其中,u表示多个胶囊的信息特征;
uψ表示第ψ特征表达的胶囊;ψ=1,2,3,...,P。
5.根据权利要求4所述的利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,在步骤S5中还包括:其中,cij表示第i子层胶囊对第j父层胶囊的支持权重因子;
leaky‑softmax()表示一种softmax函数变种;
|| ||表示1范数操作;
2
其中,|| ||表示2范数操作。
6.根据权利要求1所述的利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,步骤S6包括:+ 2 ‑ 2
Lc=Tcmax(0,m‑||vj||) +λ(1‑Tc)max(0,||vj||‑m) ,其中,Lc表示每一个类别胶囊的损失值;
Tc表示分类的指示函数;
max()表示取最大值操作;
+
m表示上边界;
λ表示类缺失的权重因子;
‑
m表示下边界。
7.根据权利要求6所述的利用胶囊网络和k‑means的DGA域名Botnet识别判断方法,其特征在于,在步骤S6中还包括:γ
FL(pt)=‑αt(1‑pt) log(pt),其中,FL(pt)表示损失值函数;
αt表示控制正负样本的权重;
pt表示样本类别的概率值;
γ表示聚焦参数;
其中,p表示模型对正向样本类预测值;
y表示样本标签值;
其中,Total_Loss表示模型损失值;
M表示一共有M个类。