def get_model_optimizer(args): model = SVM(c=args.c, penalty=args.penalty) if args.gpu >= 0: model.to_gpu() if args.penalty == 'L2': optimizer = optimizers.SGD(lr=args.lr) elif args.penalty == 'L1': optimizer = SGD(lr=args.lr) optimizer.setup(model) return model, optimizer
elif optimizer_flag == 'Adam': optimizer = Adam(lr=Adam_list[0], p1=Adam_list[1], p2=Adam_list[2], eps=Adam_list[3]) elif optimizer_flag == 'RMSpropGraves': optimizer = RMSpropGraves(lr=RMSpropGraves_list[0], p=RMSpropGraves_list[1], eps=RMSpropGraves_list[2]) elif optimizer_flag == 'SMORMS3': optimizer = SMORMS3(lr=SMORMS3_list[0], eps=SMORSM3_list[1]) model = MLP(model_list) #optimizerの設定 optimizer.setup(model) #n_epochとbatchsizeを変更可能 train_loss_list, train_acc_list, test_loss_list, test_acc_list = learning( model, optimizer, n_epoch, batchsize) if gpu: #cpuへの変換 train_loss_list = np.asnumpy(train_loss_list) train_acc_list = np.asnumpy(train_acc_list) test_loss_list = np.asnumpy(test_loss_list) test_acc_list = np.asnumpy(test_acc_list) import numpy as np # for plot #______________________________________________________________________________________ #______________________________________________________________________________________