OpenAttack
28 строк · 790.0 Байт
1'''
2This example code shows how to conduct adversarial attacks against a Chinese review classification model using PWWS
3'''
4import OpenAttack
5import datasets
6
7def dataset_mapping(x):
8return {
9"x": x["review_body"],
10"y": x["stars"],
11}
12
13def main():
14print("New Attacker")
15attacker = OpenAttack.attackers.PWWSAttacker(lang="chinese")
16
17print("Building model")
18victim = OpenAttack.loadVictim("BERT.AMAZON_ZH").to("cuda:0")
19
20print("Loading dataset")
21dataset = datasets.load_dataset("amazon_reviews_multi",'zh',split="train[:20]").map(function=dataset_mapping)
22
23print("Start attack")
24attack_eval = OpenAttack.AttackEval(attacker, victim)
25attack_eval.eval(dataset, visualize=True, progress_bar=True)
26
27if __name__ == "__main__":
28main()
29