所以我试图在MATLAB上为线性最小二乘模型拟合一个自定义函数。我的数据叫做logprice_hour_seas
,看起来像一个复杂的非线性函数,我想用我自定义的函数seasonMatrix
来适应,但是要理解MATLAB的MLE是如何工作的,我这样做是愚蠢的,因为seasonMatrix只是一个线性函数。帮助我理解这个代码,这是我从MATLAB的站点复制,以及逻辑(阅读以下)MATLAB简单的MLE解决方案
Times = [0:1/8760:8712/8760];
% Calibrate parameters for the seasonality model
seasonMatrix = @(t) [t];
C = seasonMatrix(Times);
seasonParam = C\logprice_hour_seas;
现在,我应该有我的模型的一些错误(不少呢!)。但我做logprice_hour_seas-C*seasonParam
,这是全零!那么,MLE使用logprice_hour_seas=C*seasonParam
来解决,所以这并不奇怪。我不明白什么?
您缺少信息。你不需要有错误,有些模型可以完全适合数据,它只取决于数据。你刚刚说过你使用相同的数据创建数据logprice_hour_seas吗?我的意思是,如果你使用模型创建数据,然后解决它,你显然会得到数据,对吗?没有噪音。你是否犯了[反犯罪](https://arxiv.org/abs/math-ph/0401050)? –
@AnderBiguri没有我使用的模型不适合数据。事实上,如果我选择任何其他模型,就会发生同样的问题。我没有创建数据。 – bissi
您需要向我们展示一个完整的示例,然后 –