ShotaArima / demo-lowprofool

0 stars 0 forks source link

DeepFool-bug #8

Closed ShotaArima closed 1 month ago

ShotaArima commented 1 month ago

close: #7

ShotaArima commented 1 month ago

最初の症状

---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
/tmp/ipykernel_2903/4182338255.py in <module>
     55 # Generate adversarial examples
     56 df_adv_lpf = gen_adv(config, 'LowProFool')
---> 57 df_adv_df = gen_adv(config, 'Deepfool')
     58 config['AdvData'] = {'LowProFool' : df_adv_lpf, 'Deepfool' : df_adv_df}
     59 

/tmp/ipykernel_2903/3521497375.py in gen_adv(config, method)
     43             orig_pred, adv_pred, x_adv, loop_i = lowProFool(x_tensor, model, weights, encoded_bounds, maxiters, alpha, lambda_)
     44         elif method == 'Deepfool':
---> 45             orig_pred, adv_pred, x_adv, loop_i = deepfool(x_tensor, model, maxiters, alpha, bounds, weights=[])
     46         else:
     47             raise Exception("Invalid method", method)

/src/Adverse.py in deepfool(x_old, net, maxiters, alpha, bounds, weights, overshoot)
    197         # zero_gradients(x)
    198         x.grad = None
--> 199         output[I[1]].backward(retain_graph=True)
    200         cur_grad = x.grad.data.numpy().copy()
    201 

IndexError: index 1 is out of bounds for dimension 0 with size 1
ShotaArima commented 1 month ago

deepfoolを2値分類するために幾つかの変更する必要がある by Claude

ShotaArima commented 1 month ago

Key Error

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
/tmp/ipykernel_3095/4182338255.py in <module>
     55 # Generate adversarial examples
     56 df_adv_lpf = gen_adv(config, 'LowProFool')
---> 57 df_adv_df = gen_adv(config, 'Deepfool')
     58 config['AdvData'] = {'LowProFool' : df_adv_lpf, 'Deepfool' : df_adv_df}
     59 

/tmp/ipykernel_3095/1726810454.py in gen_adv(config, method)
     43             orig_pred, adv_pred, x_adv, loop_i = lowProFool(x_tensor, model, weights, encoded_bounds, maxiters, alpha, lambda_)
     44         elif method == 'Deepfool':
---> 45             orig_pred, adv_pred, x_adv, loop_i = deepfool(x_tensor, model, maxiters, alpha, bounds, weights=[])
     46         else:
     47             raise Exception("Invalid method", method)

/src/Adverse.py in deepfool(x_old, net, maxiters, alpha, bounds, weights, overshoot)
    234 
    235         if len(bounds) > 0:
--> 236             pert_x = clip(pert_x, bounds[0], bounds[1])
    237 
    238         x = Variable(pert_x, requires_grad=True)

KeyError: 0