使用各种人工智能算法来尝试预测电力负荷,从图中可以看出预测的负荷数据,与实际数据的差距,

想了解详情请下载附件http://www.apollocode.net/a/728.html

from sklearn.linear_model import LinearRegression
import numpy as np
import nn_models

# NOTE: All algorithms must follow this function header to work in the runner
# def fun(X_train, Y_train, X_test,Y_test)
def linear_regression(X_train, Y_train, X_test, Y_test):
    lm = LinearRegression()
    lm.fit(X_train, Y_train)
    predictions = lm.predict(X_test)
    coefficients = lm.coef_
    return (predictions, coefficients)

# Note that NN regression reshapes the input arrays to make them easier to batch
def NN_regression(X_train, Y_train, X_test, Y_test, batch_size=100, epochs=50, filepath="nn_models/best_basicE2E.nn"):
    nn = nn_models.BasicE2ENN()
    nn.build_model(X_train, Y_train, tuple(np.asarray(X_train).shape[1:]))
    nn.train(X_train, Y_train, X_test, Y_test, batch_size, epochs, filepath)
    predictions = nn.predict(X_test)
    loss = nn.evaluate(X_test,Y_test)
    return (predictions,loss)

def svr(X_train, Y_train, X_test, Y_test):
    clf = SVR(gamma='scale', C=1.0, epsilon=0.2,verbose=True)
    clf.fit(X_train, Y_train)
    predictions = clf.predict(X_test)
    score = sklearn.metrics.mean_squared_error(Y_test, predictions)
    return (predictions, score)

####################################################################################
# HELPER FUNCTIONS
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐