/SememePSO-Attack

Code and data of the ACL 2020 paper "Word-level Textual Adversarial Attacking as Combinatorial Optimization"

Primary LanguagePythonMIT LicenseMIT

SememePSO-Attack

Code and data of the ACL 2020 paper "Word-level Textual Adversarial Attacking as Combinatorial Optimization". [paper]

Citation

Please cite our paper if you find it helpful.

@inproceedings{zang2020word,
  title={Word-level Textual Adversarial Attacking as Combinatorial Optimization},
  author={Zang, Yuan and Qi, Fanchao and Yang, Chenghao and Liu, Zhiyuan and Zhang, Meng and Liu, Qun and Sun, Maosong},
  booktitle={Proceedings of ACL},
  year={2020}
}

This repository is mainly contributed by Yuan Zang and Chenghao Yang.

Requirements

  • tensorflow-gpu == 1.14.0
  • keras == 2.2.4
  • sklearn == 0.0
  • anytree == 2.6.0
  • nltk == 3.4.5
  • OpenHowNet == 0.0.1a8
  • pytorch_transformers == 1.0.0
  • loguru == 0.3.2

Make sure you have run the following codes to complete the installation of OpenHowNet before running any codes in this repo.

import OpenHowNet
OpenHowNet.download()

General Required Data and Tools

Reproducibility Support

Since data processing and models training may take a lot of time and computing resources, we provide the data and models we use for experiments. You can directly download the data and models we used for related experiments from TsinghuaCloud or Google Drive. The instructions of how to use these files can be found in the README.md files in IMDB/, SNLI/ and SST/.

Running Instructions

Please see the README.md files in IMDB/, SNLI/ and SST/ for specific running instructions for each attack models on corresponding downstream tasks.