network = LSTMs(lstm_conf) if lstm_conf['use_previous_model']: network.load(lstm_conf['load_file_name']) else: network.train(train_x, train_y) network.save(lstm_conf['save_file_name']) # step 5: Predict train_pred = network.predict(train_x) test_pred = network.predict(test_x) # step 6: Evaluate evaluator = Evaluator() # method1 train_acc = evaluator.evaluate_trend(y_true=train_y, y_pred=train_pred) print('train=', train_acc) test_acc = evaluator.evaluate_trend(y_true=test_y, y_pred=test_pred) print('test=', test_acc) # method 2 acc_train_list = evaluator.evaluate_divided_trend(train_y, train_pred) acc_test_list = evaluator.evaluate_divided_trend(test_y, test_pred) print('train=', acc_train_list) print('test=', acc_test_list) # method 3 train_acc = evaluator.evaluate_trend_simple(train_y, train_pred) print('train=', train_acc) test_acc = evaluator.evaluate_trend_simple(test_y, test_pred) print('test=', test_acc)
clf.fit(train_x, train_y) clf.save_model('xgboost.m') else: clf.load_model('xgboost.m') train_pred = clf.predict(train_x) test_pred = clf.predict(test_x) show_feature_importance(clf, conf['feature_name']) # plot_scatter(test_y, test_pred) plot_classification(test_y, test_pred) evaluator = Evaluator() print('evaluate trend') acc = evaluator.evaluate_trend(train_y, train_pred) print(acc) acc = evaluator.evaluate_trend(test_y, test_pred) print(acc) print('evaluate trend without stay') acc = evaluator.evaluate_trend_2(train_y, train_pred) print(acc) acc = evaluator.evaluate_trend_2(test_y, test_pred) print(acc) print('simple evaluate') acc = evaluator.evaluate_trend_simple(train_y, train_pred) print(acc) acc = evaluator.evaluate_trend_simple(test_y, test_pred) print(acc)
# step 5: Predict train_pred = network.predict(train_x) test_pred = network.predict(test_x) # step 6: Evaluate evaluator = Evaluator() train_y = one_hot_decode(batch_labelize_prob_vector(train_y)) train_pred = one_hot_decode(batch_labelize_prob_vector(train_pred)) test_y = one_hot_decode(batch_labelize_prob_vector(test_y)) test_pred = one_hot_decode(batch_labelize_prob_vector(test_pred)) # plot_scatter(test_y, test_pred) # method 1 print('evaluate trend') total_acc, stay_acc, rise_dec_acc = evaluator.evaluate_trend(y_true=train_y, y_pred=train_pred) print(total_acc, stay_acc, rise_dec_acc) total_acc, stay_acc, rise_dec_acc = evaluator.evaluate_trend(y_true=test_y, y_pred=test_pred) print(total_acc, stay_acc, rise_dec_acc) # method 2 print('evaluate trend without stay') acc = evaluator.evaluate_trend_with_delay(y_true=train_y, y_pred=train_pred) print(acc) acc = evaluator.evaluate_trend_with_delay(y_true=test_y, y_pred=test_pred) print(acc) # method 3 print('simple evaluation') acc = evaluator.evaluate_trend_simple(y_true=train_y, y_pred=train_pred)