我是机器学习初学者,我非常感谢你的帮助 .
我正在尝试使用FastICA MATLAB工具箱,经过大量的谷歌搜索和阅读文档后,我变得越来越困惑 .
我正在使用Car Data Set并且我正在使用1000张100x40图像(500辆汽车,500辆非汽车) . 我正在使用fastica来寻找独立的组件(我将在稍后使用它们来构建汽车检测系统) .
我在我的火车数据集上运行以下代码:
[icasig, A, W] = fastica(Training_Set);
A和W是1000x1000矩阵,icasig是1000x4000矩阵,据我所知,icasig的行包含独立的组件,A是混合矩阵 .
如何绘制独立组件?有人能用简单的英语向我解释什么是W?
还有一件令我困惑的事情是,如果我在icasig中删除一些行并获得例如300x4000矩阵我是否正在进行特征压缩?
如果我使用分类算法(例如SVM),我如何改变我用来训练它的独立组件的数量?我认为rica是完美的,但不幸的是我没有统计和机器学习工具箱 .
1 回答
ICA中的 w 通常表示分离矩阵 . 给定一个混合图像, X ,可以通过计算 wX 得到独立的组件 . 结果 S 通常是另一个矩阵,其大小与 X 相同 . S 的每一行都包含代表一个独立组件的数据 .
使用ICA算法的主要目的之一是找到分离矩阵 w . 如果您对此一无所知,我建议您在继续阅读之前阅读更多文献 . 甚至fast ICA's Wikipedia页面也会告诉你 w .
如果
icasig
是 S ,您可以尝试以下操作:如果删除某些单独的组件意味着功能压缩,那么是 .