예제 #1
0
train_loss_list=[]
train_acc_list=[]
test_acc_list=[]
#1エポック当たりの繰り返し数
iter_per_epoch =max(train_size/batch_size,1)


for i in range(iters_num):
    batch_mask = np.random.choice(train_size , batch_size)
    x_batch=x_data_train[batch_mask]
    t_batch=t_data_train[batch_mask]
    #grad=network.numerical_gradient(x_batch,t_batch)
    grad=network.gradient(x_batch,t_batch)
    for key in("W1","b1","W2","b2"): #Wは大文字
        network.params[key] -=learning_rate*grad[key]
        loss=network.loss(x_batch,t_batch)
        train_loss_list.append(loss)
        """
        train_acc = network.accuracy(x_data_train, t_data_train)
        test_acc = network.accuracy(x_data_test, t_data_test)
        train_acc_list.append(train_acc)
        test_acc_list.append(test_acc)
        """
print("ここまで1")


"""
network.predict(引数)で 予測が可能  この引数は入力データの列数と同じであれば行数にかかわらず出てくる

今回は6802やったかなあれを入れたら、onehotの結果が出る
예제 #2
0
    optimizer_mul = AdaGrad()
    optimizer_multi = AdaGrad()

    for i in range(max_iterations):
        batch_mask = np.random.choice(train_size, batch_size)
        x_batch = x_train[batch_mask]
        t_batch = t_train[batch_mask]

        grads_mul = mul_layer_net.gradient(x_batch, t_batch)
        grads_multi = multi_layer_net.gradient(x_batch, t_batch)

        optimizer_mul.update(mul_layer_net.params, grads_mul)
        optimizer_multi.update(multi_layer_net.params, grads_multi)

        loss_mul = mul_layer_net.loss(x_batch, t_batch)
        loss_multi = multi_layer_net.loss(x_batch, t_batch)

        if i % 100 == 0:
            print("===========" + "iteration:" + str(i) + "===========")
            loss_mul = mul_layer_net.loss(x_batch, t_batch)
            loss_multi = multi_layer_net.loss(x_batch, t_batch)
            print('mul-loss' + ":" + str(loss_mul))
            print('multi-loss' + ":" + str(loss_multi))

    # optimizer_function = Adam()
    # batch_size = 128
    # for i in range(2000):
    #     batch_index = np.random.choice(x_train.shape[0],batch_size)
    #     x_batch = x_train[batch_idex]
    #     t_batch = t_train[batch_index]
    #     gradient = mul_layer_net.gradient(x_batch, t_batch)