1 Star 0 Fork 2

qingyang/对抗训练笔试

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

基本框架基于TextCNN原始项目. 将对抗训练项目中train_fgsm.py, train_free.py, train_pgd.py三个文件的训练方式整合到train_eval.py一个文件中, 运行时可通过函数train(..., which = optMethod)来切换训练方式, optMethod默认原始训练方法, optMethod="fgsm", "free", "pgd"则可指定相应的对抗训练方式.

沿用原始的数据加载器以及词向量. 对于对抗训练代码的修改, 大致不变, 首先用pdb.set_trace()弄清楚原始训练方式文本数据的各种维度, 然后将对抗训练中相应的delta以及epsilon, alpha的维度改成相应的维度即可.

两个项目的utils也整合为一个utils.py文件.

#原始训练方式

python run.py --model TextCNN

#fgsm对抗训练, 文件中的args默认参数都为fgsm的参数, 所以此处不需要指定其他参数

python run.py --model TextCNN --optMethod fgsm

#free对抗训练

python run.py --model TextCNN --optMethod free --lr_max 0.04

#pgd对抗训练

python run.py --model TextCNN --optMethod pgd --alpha 2

空文件

简介

对抗训练笔试 展开 收起
Python
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/RookieQYang/exam.git
git@gitee.com:RookieQYang/exam.git
RookieQYang
exam
对抗训练笔试
master

搜索帮助