train_y = np.array(dataset.train_y) test_x = pad_sequences(dataset.test_seqs2, maxlen=max_len, padding='post') test_y = np.array(dataset.test_y) model = models.Model(dataset, model_path).cuda() attacker = LSAttack(model, word_candidate) all_test_num = len(dataset.test_y) print(f'Total have {all_test_num} test examples') wrong_classified_num = 0 total_num = 0 # logger cur_logger = MyLogger(log_file) # save results test_idx_list = [] cur_saver = ResultSaver() log_file.write('======================START======================\n\n') for test_idx in range(all_test_num): total_num += 1 pos_tags = test_pos_tags[test_idx] x_orig = test_x[test_idx] orig_label = test_y[test_idx] orig_preds = model.predict(x_orig[np.newaxis, :])[0] if np.argmax(orig_preds) != orig_label:
word_candidate, pop_size=pop_size, max_iters=max_iter) print('the length of test cases is:', len(test_s1)) test_idxs = np.arange(len(test_s1)) # np.random.shuffle(test_idxs) # test_idxs = np.random.choice(len(test_s1), size=len(test_s1), replace=False) test_list = [] skip_num = 0 total_num = 0 # logger cur_logger = MyLogger(log_file=log_file) # saver cur_saver = ResultSaver() print('start') for test_idx in test_idxs: total_num += 1 s1 = test_s1[test_idx] s2 = test_s2[test_idx] pos_tags = test_pos_tags[test_idx] attack_pred = np.argmax(model.pred([s1], [s2])[0]) true_label = test['label'][test_idx] x_len = np.sum(np.sign(s2)) if attack_pred != true_label: print('Wrong classified')