TextAttack Extended Functions (Multilingual)¶
Textattack Supports Multiple Model Types besides huggingface models and our textattack models:¶
- Example attacking TensorFlow models @ https://textattack.readthedocs.io/en/latest/2notebook/Example_0_tensorflow.html
- Example attacking scikit-learn models @ https://textattack.readthedocs.io/en/latest/2notebook/Example_1_sklearn.html
- Example attacking AllenNLP models @ https://textattack.readthedocs.io/en/latest/2notebook/Example_2_allennlp.html
- Example attacking Kera models @ https://textattack.readthedocs.io/en/latest/2notebook/Example_3_Keras.html
Multilingual Supports¶
- see tutorial notebook for using our framework to attack French-BERT.: https://textattack.readthedocs.io/en/latest/2notebook/Example_4_CamemBERT.html
- see example code for using our framework to attack French-BERT: https://github.com/QData/TextAttack/blob/master/examples/attack/attack_camembert.py .
- see tutorial notebook for using our framework to attack Chinese-NLP model.: https://textattack.readthedocs.io/en/latest/2notebook/Example_6_Chinese_Attack.html
User defined custom inputs and models¶
Custom Datasets: Dataset from a file¶
Loading a dataset from a file is very similar to loading a model from a file. A ‘dataset’ is any iterable of (input, output)
pairs.
The following example would load a sentiment classification dataset from file my_dataset.py
:
dataset = [('Today was....', 1), ('This movie is...', 0), ...]
You can then run attacks on samples from this dataset by adding the argument --dataset-from-file my_dataset.py
.
Custom Model: from a file¶
To experiment with a model you’ve trained, you could create the following file
and name it my_model.py
:
model = load_your_model_with_custom_code() # replace this line with your model loading code
tokenizer = load_your_tokenizer_with_custom_code() # replace this line with your tokenizer loading code
Then, run an attack with the argument --model-from-file my_model.py
. The model and tokenizer will be loaded automatically.
User defined Custom attack components¶
The documentation website contains walkthroughs explaining basic usage of TextAttack, including building a custom transformation and a custom constraint..
- custom transformation example @ https://textattack.readthedocs.io/en/latest/2notebook/1_Introduction_and_Transformations.html
- custome constraint example @https://textattack.readthedocs.io/en/latest/2notebook/2_Constraints.html#A-custom-constraint
Visulizing TextAttack generated Examples;¶
- You can visualize the generated adversarial examples vs. see examples, following visualization ways we provided here: https://textattack.readthedocs.io/en/latest/2notebook/2_Constraints.html
- If you have webapp, we have also built a new WebDemo TextAttack-WebDemo Github for visualizing generated adversarial examples from textattack..