我使用预测形式sklearn.cross_分解与MATLAB(2014a)的plsregres得到的结果略有不同。我肯定我使用了相同的组件和数据。Matlab总是比scikit learn性能更好。在
Python:
from sklearn.cross_decomposition import PLSRegression
pls = PLSRegression(n_components=8)
pls.fit(X_train, Y_train)
Y_pred = pls.predict(X_train)
Matlab软件:
^{pr2}$
我相信scikit learn使用NIPALS算法来处理PLS,而MATLAB使用simples算法。它们的结果可能略有不同。在
请参阅MATLAB中有关^{} 的文档页,并参考底部的算法。我没有一个方便的NIPALS链接,但它是Svante Wold的一个算法,在互联网上被广泛描述。在
相关问题 更多 >
编程相关推荐