コード例 #1
0
    def run(self, epochs=400):
        d = self.data
        X_train, X_test, y_train, y_test = d.X_train, d.X_test, d.y_train, d.y_test
        X, y = d.X, d.y
        m = self.model
        h = m.fit(X_train,
                  y_train,
                  epochs=epochs,
                  validation_data=[X_test, y_test],
                  verbose=0)

        skeras.plot_loss(h)
        plt.title('History of training')
        plt.show()

        yp = m.predict(X_test)
        print('Loss:', m.evaluate(X_test, y_test))
        plt.plot(yp, label='Origial')
        plt.plot(y_test, label='Prediction')
        plt.legend(loc=0)
        plt.title('Validation Results')
        plt.show()

        yp = m.predict(X)

        plt.plot(yp, label='Origial')
        plt.plot(y, label='Prediction')
        plt.legend(loc=0)
        plt.title('All Results')
        plt.show()
コード例 #2
0
def main(epochs=20):
    Nin = 784
    Nh_l = [100, 50]
    number_of_class = 10
    Nout = number_of_class

    data = Data_func()
    model = DNN(Nin, Nh_l, Nout)
    batch_size = 100
    (X_train, Y_train), (X_test, Y_test) = data
    N_tr = X_train.shape[0]

    loss_l = {"loss": [], "val_loss": []}
    acc_l = {"accuracy": [], "val_accuracy": []}
    for epoch in range(epochs):
        # Train
        train(model, X_train, Y_train, N_tr, batch_size)

        # Validation
        validation(model, X_test, Y_test)

        print(f'Epoch {epoch}, '
              f'Loss: {tr_loss.result():.3}, '
              f'Acc: {tr_acc.result() * 100:.3}, '
              f'Test Loss: {te_loss.result():.3}, '
              f'Test Accuracy: {te_acc.result() * 100:.3}')

        loss_l["loss"].append(tr_loss.result())
        acc_l["accuracy"].append(tr_acc.result())
        loss_l["val_loss"].append(te_loss.result())
        acc_l["val_accuracy"].append(te_acc.result())

    plot_loss(loss_l)
    plot_acc(acc_l)
    plt.show()
コード例 #3
0
def main(in_ch=1, epochs=10, batch_size=512, fig=True):
    data = DATA(in_ch=in_ch)
    print(data.input_shape, data.x_train_in.shape)
    unet = UNET(data.input_shape, data.n_ch)

    history = unet.fit(data.x_train_in, data.x_train_out,
                       epochs=epochs,
                       batch_size=batch_size,
                       shuffle=True,
                       validation_split=0.2)

    if fig:
        plot_loss(history)
        show_images(data, unet)
コード例 #4
0
def main():
    Nin = 13
    Nh = 5
    Nout = 1

    model = ANN(Nin, Nh, Nout)
    (X_train, y_train), (X_test, y_test) = Data_func()

    history = model.fit(X_train, y_train, epochs=100, batch_size=100, validation_split=0.2, verbose=2)

    performace_test = model.evaluate(X_test, y_test, batch_size=100)
    print('\nTest Loss -> {:.2f}'.format(performace_test))

    plot_loss(history)
    plt.show()
コード例 #5
0
def main():
    model = DNN(Nin, Nh_l, Nout)
    (X_train, Y_train), (X_test, Y_test) = Data_func()

    history = model.fit(X_train,
                        Y_train,
                        epochs=5,
                        batch_size=100,
                        validation_split=0.2)
    performace_test = model.evaluate(X_test, Y_test, batch_size=100)
    print('Test Loss and Accuracy ->', performace_test)

    plot_loss(history)
    plt.show()
    plot_acc(history)
    plt.show()
コード例 #6
0
    def run(self, epochs=400):
        d = self.data
        X_train, X_test, y_train, y_test = d.X_train, d.X_test, d.y_train, d.y_test
        X, y = d.X, d.y
        m = self.model
        h = m.fit(X_train,
                  y_train,
                  epochs=epochs,
                  validation_data=[X_test, y_test],
                  verbose=0)

        skeras.plot_loss(h)
        plt.title('History of training')
        plt.show()

        yp = m.predict(X_test)
        print('Loss:', m.evaluate(X_test, y_test))
        plt.plot(yp, label='Origial')
        plt.plot(y_test, label='Prediction')
        plt.legend(loc=0)
        plt.title('Validation Results')
        plt.show()

        yp = m.predict(X_test).reshape(-1)
        print('Loss:', m.evaluate(X_test, y_test))
        print(yp.shape, y_test.shape)

        df = pd.DataFrame()
        df['Sample'] = list(range(len(y_test))) * 2
        df['Normalized #Passengers'] = np.concatenate([y_test, yp], axis=0)
        df['Type'] = ['Original'] * len(y_test) + ['Prediction'] * len(yp)

        plt.figure(figsize=(7, 5))
        sns.barplot(x="Sample",
                    y="Normalized #Passengers",
                    hue="Type",
                    data=df)
        plt.ylabel('Normalized #Passengers')
        plt.show()

        yp = m.predict(X)

        plt.plot(yp, label='Origial')
        plt.plot(y, label='Prediction')
        plt.legend(loc=0)
        plt.title('All Results')
        plt.show()
コード例 #7
0
def main():
    Nh_l = [100, 50]
    Pd_l = [0.0, 0.0]
    number_of_class = 10
    Nout = number_of_class

    (X_train, Y_train), (X_test, Y_test) = Data_func()
    model = DNN(X_train.shape[1], Nh_l, Pd_l, Nout)
    history = model.fit(X_train, Y_train, epochs=10, batch_size=100, validation_split=0.2)

    performace_test = model.evaluate(X_test, Y_test, batch_size=100)
    print('Test Loss and Accuracy ->', performace_test)

    plot_loss(history, '(a) 손실 추이')
    plt.show()
    plot_acc(history, '(b) 정확도 추이')
    plt.show()
コード例 #8
0
ファイル: AE_MNIST.py プロジェクト: MoDeep/MyoGAN
def main(epochs=20, batch_size=128):
    data = DATA()
    autoencoder = AE(data.input_shape)

    history = autoencoder.fit(data.x_train, data.x_train,
                              epochs=epochs,
                              batch_size=batch_size,
                              shuffle=True,
                              validation_split=0.2)

    plot_acc(history, '(a) Accuracy')
    plt.show()
    plot_loss(history, '(b) Cost')
    plt.show()

    show_ae(autoencoder, data)
    plt.show()
コード例 #9
0
def main():
    Nin = 784
    Nh_l = [100, 50]
    number_of_class = 10
    Nout = number_of_class

    (X_train, Y_train), (X_test, Y_test) = Data_func()
    model = DNN(Nin, Nh_l, Nout)
    history = model.fit(X_train, y_train, epochs=10, batch_size=100, validation_split=0.2)
    
    performace_test = model.evaluate(X_test, y_test, batch_size=100)
    print('Test Loss and Accuracy ->', performace_test)

    plot_acc(history)
    plt.show()
    plot_loss(history)
    plt.show()
コード例 #10
0
ファイル: AE_MNIST.py プロジェクト: MoDeep/MyoGAN
def main():
    x_nodes = 784
    z_dim = 36

    autoencoder = AE(x_nodes, z_dim)

    history = autoencoder.fit(X_train, X_train,
                              epochs=10,
                              batch_size=256,
                              shuffle=True,
                              validation_data=(X_test, X_test))

    plot_acc(history, '(a) Accuracy Change')
    plt.show()
    plot_loss(history, '(b) Loss Change')
    plt.show()

    show_ae(autoencoder)
    plt.show()
コード例 #11
0
def main():
    x_nodes = 784
    z_dim = 36

    autoencoder = AE(x_nodes, z_dim)

    history = autoencoder.fit(X_train,
                              X_train,
                              epochs=500,
                              batch_size=256,
                              shuffle=True,
                              validation_data=(X_test, X_test))

    plot_acc(history, '(a) 학습 경과에 따른 정확도 변화 추이')
    plt.show()
    plot_loss(history, '(b) 학습 경과에 따른 손실값 변화 추이')
    plt.show()

    show_ae(autoencoder)
    plt.show()
コード例 #12
0
def main():
    Nin = 784
    Nh = 100
    number_of_class = 10
    Nout = number_of_class

    # model = ANN_models_func(Nin, Nh, Nout)
    # model = ANN_seq_func(Nin, Nh, Nout)
    # model = ANN_models_class(Nin, Nh, Nout)
    model = ANN_seq_class(Nin, Nh, Nout)
    (X_train, Y_train), (X_test, Y_test) = Data_func()

    history = model.fit(X_train, Y_train, epochs=5, batch_size=100, validation_split=0.2)
    performace_test = model.evaluate(X_test, Y_test, batch_size=100)
    print('Test Loss and Accuracy ->', performace_test)

    plot_loss(history)
    plt.show()
    plot_acc(history)
    plt.show()
コード例 #13
0
    def run(self, epochs=100, batch_size=128, verbose=1):
        data = self.data
        model = self.model
        fig = self.fig

        history = self.fit(epochs=epochs,
                           batch_size=batch_size,
                           verbose=verbose)

        score = model.evaluate(data.X_test, data.Y_test, verbose=0)

        print('Confusion matrix')
        Y_test_pred = model.predict(data.X_test, verbose=0)
        y_test_pred = np.argmax(Y_test_pred, axis=1)
        print(metrics.confusion_matrix(data.y_test, y_test_pred))

        print('Test score:', score[0])
        print('Test accuracy:', score[1])

        # Save results
        suffix = sfile.unique_filename('datatime')
        foldname = 'output_' + suffix
        os.makedirs(foldname)
        skeras.save_history_history('history_history.npy',
                                    history.history,
                                    fold=foldname)
        model.save_weights(os.path.join(foldname, 'dl_model.h5'))
        print('Output results are saved in', foldname)

        if fig:
            plt.figure(figsize=(12, 4))
            plt.subplot(1, 2, 1)
            skeras.plot_acc(history)
            plt.subplot(1, 2, 2)
            skeras.plot_loss(history)
            plt.show()

        self.history = history

        return foldname
コード例 #14
0
def main():
    batch_size = 128
    epochs = 10

    data = DATA()
    model = CNN(data.input_shape, data.num_classes)

    history = model.fit(data.x_train,
                        data.y_train,
                        batch_size=batch_size,
                        epochs=epochs,
                        validation_split=0.2)

    score = model.evaluate(data.x_test, data.y_test)
    print()
    print('Test loss:', score[0])
    print('Test accuracy:', score[1])

    plot_loss(history)
    plt.show()
    plot_acc(history)
    plt.show()
コード例 #15
0
ファイル: LSTM.py プロジェクト: Stanlee/LSTM_StockPrediction
                #print('y_train_shape:{}'.format(y_train.shape))
                #print('X_test_shape:{}'.format(X_test.shape))
                #print('y_test_shape:{}'.format(y_test.shape))

                #print(X_train[0], y_train[0])

                model = lstm_obj.build_model([5, window, 1])
                h = model.fit(X_train,
                              y_train,
                              batch_size=512,
                              epochs=30,
                              validation_split=0.1,
                              verbose=1)

                fig, ax = plt.subplots(nrows=1, ncols=1)
                skeras.plot_loss(h)
                plt.title('History of training')
                #plt.show()
                #skeras.save_history_history(symbol_name, h, fold='/home/deep-core2/바탕화면/Stock1')
                #fig.savefig('/home/deep-core2/바탕화면/Stock1/{}_training_history.png'.format(symbol_name))

                diff = []
                ratio = []
                predicted_test_norm = model.predict(
                    X_test
                )  # test set의 X(normalized)값에 대해서 예측한 y(normalized)값을 p라고 명함.
                print(predicted_test_norm.shape)
                # for each data index in test data
                for u in range(len(y_test)):  # y_test의 날짜 만큼 예측 값을 기록함.
                    # pr = prediction day u
                    pr = predicted_test_norm[u][0]
コード例 #16
0
def load_data():
    (X_train, y_train), (X_test, y_test) = datasets.boston_housing.load_data()
    scaler = preprocessing.MinMaxScaler()
    X_train = scaler.fit_transform(X_train)
    X_test = scaler.transform(X_test)
    return (X_train, y_train), (X_test, y_test)


if __name__ == "__main__":
    Nin = 13
    Nh = 5
    Nout = 1

    model = ANN(Nin, Nh, Nout)
    (X_train, y_train), (X_test, y_test) = load_data()

    history = model.fit(X_train,
                        y_train,
                        epochs=100,
                        batch_size=100,
                        validation_split=0.2,
                        verbose=2)

    performace_test = model.evaluate(X_test, y_test, batch_size=100)
    print("\nTest Loss -> {:.2f}".format(performace_test))

    plt.figure(figsize=(5, 5), dpi=100)
    plot_loss(history)
    plt.show()