似乎Matlab給多項邏輯迴歸的結果不正確。mnrfit的Matlab不正確?
在他們使用Fisher's Iris數據集 [link]的示例文檔中,他們給出了可用於相同數據集本身以獲取建模概率的模型係數。
load fisheriris
sp = categorical(species);
[B,dev,stats] = mnrfit(meas,sp);
PHAT=mnrval(B,meas);
然而,沒有預期值聚集體的相匹配的人口聚集體爲最大墒分類器的要求(見幻燈片35 [here],或等式14 [here],或Agresti「分類數據分析」 PG 298,等)
例如
>> sum(PHAT)
>> 49.9828 49.8715 50.1456
都應該等於50(總體值),同樣地,對於其他聚合
如果參數
B=[36.9450 42.6378
12.2641 2.4653
14.4401 6.6809
-30.5885 -9.4294
-39.3232 -18.2862]
,替代了,那麼所有彙總統計足以匹配。
此外,它似乎很奇怪,Matlab軟件與可能性,它可以產生一個錯誤解決它,
警告:最大似然估計沒有收斂。超出限制 。您可能需要合併類別,增加觀察 計數
其中唯一的要求,通過MLE考慮證明,是預期值匹配,並且不需要可能性的評估。
這將是一個很好的功能,如果不是真正的類給出,我們可以給出一個選項,只包括聚合信息。
這是很好的找到這個bug。你有任何更新嗎? –
來自7/20/17的部分電子郵件:我們的記錄顯示,2016年3月7日,您聯繫了有關MATLAB 8.3(R2014a)的技術支持。這個問題的主題是: 「多項邏輯迴歸擬合(mnrfit)沒有給出正確的結果」我們很高興地通知您,這個問題已在R2016b版中得到解決。 – sheppa28