使用python和sklearn.neural_网络.MLPRegress公司

2024-06-28 20:52:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用scikit学习神经网络工具箱sklearn.neural_网络.mlprepressor训练输出向量为24个节点的回归器。我希望使用一个类似于动态时间扭曲(但稍微简化)的误差函数来量化预测误差。但我不确定,在这个函数中,如何量化输入向量之间的联系。在

问:这仅仅是定义一个评分对象的例子,如这里所示sklearn并将其输入到训练部分中。在

下面是我定义的损失函数。在

def MAAPE(actual,forecast,p,w):
error_array = np.zeros([len(actual), len(forecast)])
error_sum = 0

for i in range(len(actual)):
    for j in range(len(forecast)):            
        if abs(i-j)>w:
            error_array[i,j] = float('inf')
        else:
            error_array[i,j] = abs(actual[i] - forecast[j])/actual[i]        
    error_sum = error_sum + min(error_array[i,:])**p        
MAAPE = (error_sum**(1/p))/len(actual)    
return MAAPE 

Tags: 函数inforlen定义rangeerrorsklearn