x = txs[:inp].reshape((-1, 28, 28, 1)) hook = UserHook() with chainer.using_config('train', False): with hook: p = model(x) softmax_a = F.softmax(p) ans = np.argmax(softmax_a.data, axis=1) #idx = int(ans.data) print("pr:answer number =", ans) if __name__ == '__main__': args = argparse.ArgumentParser() args.add_argument('-i', '--images', type=int, default=20) args.add_argument('-g', '--gpu', type=int, default=0) args = args.parse_args() # For GPU device = chainer.get_device(args.gpu) assert '@cupy' in str(device), "Supports Only GPU" print('GPU device is ', device) device.use() model.to_device(device) # load model to GPU txs = cupy.asarray(txs) # load data to GPU var.n = -1 # No fault injection for Normal System case infer(args.images, model, txs, tts) copy_tree('dnn_params', 'original_data2')
args.add_argument('-f', '--faults', type=int, default=784, dest='faults') args.add_argument('-F', '--Faults', type=int, nargs='+') args = args.parse_args() faultNo_list = args.Faults if args.Faults is not None else range(args.faults) data_P = args.images print("Run on Faults as", faultNo_list) from mylist_block import mylist d = mylist() #print(d) #for k in range(784): # k:fault pattern No. for k in faultNo_list: var.n = k # if(k!=0): # replace_userfunc(k) print("mylist=", d[k], k) # for i in range(0,2): # i:number of feeding image # if(i!=0): # replace_sample(i) # print("input picture no=" ,i) # subprocess.run("python3 sample.py",shell =True) sample2.infer(data_P) print('sample done') # rename = "list" + str(k)+"_no-"+str(i) rename = "list%d" % (k) # rename2 = "cp -fr dnn_params "+ rename