コード例 #1
0
def modelTrain(x_data, y_data):

    # now = datetime.utcnow().strftime("%Y%m%d")
    # model_dir = "model/{}/".format(now)
    model_dir = "Model/Regression/" + save_date + "/"

    name = model_dir + gas_type + "_reg"

    try:
        if not (os.path.isdir(model_dir)):
            os.makedirs(os.path.join(model_dir))
    except OSError as e:
        if e.errno != errno.EEXIST:
            raise

    start = timeit.default_timer()
    before = 0

    x_data = torch.Tensor(x_data).float()
    y_data = torch.Tensor(y_data).float()

    input = len(x_data[0])
    hidden = 100
    hidden2 = 500
    hidden3 = 100
    hidden4 = 300
    hidden5 = 500

    output = 1

    epoch = 20000
    learning_rate = 0.001
    batch_size = 10

    dnn = DNN(input,
              output, [hidden, hidden2, hidden3, hidden4, hidden5],
              softmax=False)

    for step, loss in dnn.learn(x_data,
                                y_data,
                                epoch=epoch,
                                learning_rate=learning_rate,
                                batch_size=batch_size,
                                loss_func=MSELoss):

        if step % 100 == 0:
            gap = loss.tolist() - before
            before = loss.tolist()
            pick = timeit.default_timer()
            time_gap = pick - start
            print('step : %d, loss : %.10f, loss gap = %.10f, seconds = %d' %
                  (step, loss.tolist(), gap, time_gap))
        if loss == 0:
            gap = loss.tolist() - before
            pick = timeit.default_timer()
            time_gap = pick - start
            break
    print('step : %d, loss : %.10f, loss gap = %.10f, seconds = %d' %
          (step, loss.tolist(), gap, time_gap))
    save_model(dnn, name + '.pkl')
コード例 #2
0
ファイル: test2.py プロジェクト: sejongkang/MachineLearning
def modelTrain(x_data,y_data,name):
    start = timeit.default_timer()
    before = 0

    x_data = torch.Tensor(x_data).float()
    y_data = torch.Tensor(y_data).float()

    input = len(x_data[0])
    hidden = 200
    hidden2 = 300
    hidden3 = 300
    hidden4 = 200
    hidden5 = 100
    output = 4

    epoch = 10000
    learning_rate = 0.01
    batch_size = 10

    dnn = DNN(input, output, [hidden,hidden2,hidden3,hidden4,hidden5],softmax=True)

    for step, loss in dnn.learn(x_data, y_data, epoch=epoch, learning_rate=learning_rate, batch_size=batch_size, loss_func=MSELoss):

        if step % 10 == 0:
            gap = loss.tolist() - before
            before = loss.tolist()
            pick = timeit.default_timer()
            time_gap = pick-start
            print('step : %d, loss : %.10f, loss gap = %.10f, seconds = %d' %(step,loss.tolist(),gap,time_gap))
        # if loss ==0 or gap==0:
        #     gap = loss.tolist() - before
        #     pick = timeit.default_timer()
        #     time_gap = pick - start
        #     print('step : %d, loss : %.10f, loss gap = %.10f, seconds = %d' % (step, loss.tolist(),gap,time_gap))
        #     break

    print('step : %d, loss : %.10f, loss gap = %.10f, seconds = %d' % (step, loss.tolist(), gap, time_gap))
    save_model(dnn, name+'.pkl')
コード例 #3
0
from datetime import datetime
コード例 #4
0
from datetime import datetime
コード例 #5
0
ファイル: test.py プロジェクト: sejongkang/MachineLearning
from datetime import datetime