(19)中华 人民共和国 国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202111477718.6
(22)申请日 2021.12.0 6
(71)申请人 南京理工大 学
地址 210000 江苏省南京市玄武区孝陵卫
街道孝陵卫 街200号
(72)发明人 肖明霏 刘龙恩 王慧慧 周沧琦
(74)专利代理 机构 江苏圣典律师事务所 32 237
代理人 胡建华
(51)Int.Cl.
G06K 9/62(2022.01)
G06N 20/00(2019.01)
H04L 51/212(2022.01)
H04L 51/42(2022.01)
(54)发明名称
一种基于MPI的分布式ADMM垃圾邮件分类方
法
(57)摘要
本发明公开了一种基于MPI的分布式ADMM垃
圾邮件分类方法, 包含以下步骤: 将文本数据向
量化为数字格式的数据集; 将数据集分割为训练
集和测试集, 对训练集进行过采样处理, 再分割
为若干份分别保存在若干个从节点上; MPI并行
执行所有节 点上的代码, 从节 点并行更新局部模
型; 主节点通过MPI规约功能汇总从节点的局部
模型; 主节点更新全局模型, 并利用MPI广播功能
将全局模型分发到各个从节点; 循环交替更新从
节点和主节点的模型, 直到满足终止条件; 保存
主节点的全局模 型作为分类器模 型; 利用训练得
到的分类器模 型对测试集进行分类, 输出分类结
果。 本发明适合大数据场景下垃圾邮件分类任
务, 有效提升 了分类的效率和精度。
权利要求书4页 说明书7页 附图2页
CN 114154581 A
2022.03.08
CN 114154581 A
1.一种基于 MPI的分布式ADM M垃圾邮件分类方法, 其特 征在于, 包括如下步骤:
步骤1、 将文本数据向量 化为数字格式的数据集;
步骤2、 将数据集分割为训练集和测试集, 对训练集进行过采样处理, 再分割为若干份
分别保存在若干个从节点上;
步骤3、 MPI并行 执行所有节点上的代码, 从节点并行 更新局部模型;
步骤4、 主节点 通过MPI规约功能汇总从节点的局部模型;
步骤5、 主节点更新全局模型, 并利用MPI广播功能将全局模型分发到各个从节点;
步骤6、 循环交替更新从节点和主节点的模型, 直到满足 终止条件;
步骤7、 保存主节点的全局模型作为分类 器模型;
步骤8、 利用训练得到的分类 器模型对测试集进行分类, 输出分类结果。
2.根据权利要求1所述的一种基于MPI的分布式ADMM垃圾邮件分类方法, 其特征在于,
步骤1利用NLP技术, 将文本数据向量化为数字格式的数据集; 处理后的数据集表示为
其中n为样本数量, xi为第i个d维的样本数据向量, yi
为第i个样本标签, Rd表示d维的实数集, i取值1~n; 使用L2正则化的L2损失支持向量机SVM
作为线性分类模型, 目标函数表示 为:
其中C>0是一个超参数, 用来控制正则项和损失项比重关系, w是分类模型变量, 且w∈
Rd;
使用SMOTE算法对训练集过采样处理使得训练集中正样本和负样本数量相当, 接着再
分割为若干份分别保存在若干个从节点上。
3.根据权利要求2所述的一种基于MPI的分布式ADMM垃圾邮件分类方法, 其特征在于,
步骤2将数据集按照4: 1的比例分割为训练集和测试集, 并分割为若干份 分别保存在若干台
从节点上, 同时复制代码文件到若干个从节点, 假设数据被存在了m个节点(D1,D2,…,Dm)
上, 式(1)改写为:
s.t.wj‑z=0,j=1, …,m
其中ρ 是一个超参数, wj是第j个从节点的局部模型变量, z是在主节点上更新的全局模
型变量, 且z∈Rd;
将式(2)改写成增广拉格朗日形式得到式(3), 即:
权 利 要 求 书 1/4 页
2
CN 114154581 A
2其中θj是第j个从节点的模型对偶变量。
4.根据权利要求3所述的一种基于MPI的分布式ADMM垃圾邮件分类方法, 其特征在于,
步骤3中MPI并行 执行所有节点上的代码, 通过mpiexec命令 完成;
主节点上随机初始化全局模型变量z, 各从节点上随机初始化局部模型变量wj及其对偶
变量θj, 初始化为全零; 从节点并行更新局部模型变量, 由ADMM算法更新规则得到, w,z, θ按
如下公式迭代更新:
其中k是迭代次数, 拉格朗日函数L(w,z, θ )对于wj可分解; 在各个从节点上并行地解 决
公式(4)来更新局部模型变量 wj:
5.根据权利要求4所述的一种基于MPI的分布式ADMM垃圾邮件分类方法, 其特征在于,
步骤4中主节点通过MPI规约功能汇总从节点的局部模型, 通过如下代码创建MPI的通信子
comm:
comm=MPI.COM M_WORLD,
其中COMM_WORLD是MPI的内置对象, 接着利用通信子实现规约功能, 表示如下:
comm.Reduce(sendbuf,recvbuf,Op,ro ot)
其中Reduce是规约函数, sendbuf表 示从节点发送的内容, 传入局部模 型变量
及其
对偶变量
recvbuf表示主节点用于接收的变量, Op表示具体规约的操作函数, 使用
MPI.SUM函数, 表示将从节点的值相加后传给主节点, root表示根节点序号, 传入主节点序
号0。
6.根据权利要求5所述的一种基于MPI的分布式ADMM垃圾邮件分类方法, 其特征在于,
步骤5主节点更新全局模 型, 并利用MPI广播功能将全局模 型分发到各个从节 点; 公式(5)写
为闭式解 来更新全局变量z:
接着利用通信子实现广播功能, 表示如下:
comm.Bcast(buf,ro ot)
其中Bcast是广播函数, buf表示被广播的数据, 传入主节点的全局模型变量zk+1, root
表示根节点序号, 传入主节点序号0 。
7.根据权利要求6所述的一种基于MPI的分布式ADMM垃圾邮件分类方法, 其特征在于,
令θj=ρ uj, 得到wj,z,uj的更新公式:权 利 要 求 书 2/4 页
3
CN 114154581 A
3
专利 一种基于MPI的分布式ADMM垃圾邮件分类方法
文档预览
中文文档
14 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-19 01:19:11上传分享