我开始研究机器学习,似乎这两个经常用于这个领域.它们看起来非常相似,那么如何决定最好使用哪种?
我还说R因为多种原因而更好.我说这已经使用了Matlab多年并且已经切换到R并且我希望我首先学习了R. 博客Abandon Matlab列出了为什么使用Matlab有时非常烦人的一些原因.这里有一个主要问题,为什么R对我来说更有效率:
在工具箱中使用不一致的语法调用Matlab函数.例如,如果我想在RI中的模型中更改我的分类器,通常只需要更改函数的名称并保持调用和数据不变.在Matlab中,这通常涉及重新格式化数据和完全不同的函数调用,我必须从文档中查找.
R有更好的数据结构我认为Matlab中唯一可行的构造是基本数组,除了数值变量之外的其他任何东西都很笨拙,你不能按名称调用列,但你必须使用变量的索引(嗯,是第33或34栏,我想绘制......).你无法击败R中的data.frame!
R有很多有用的ML包
Matlab没有函数的命名参数
最后,如果您使用矩阵工作很多并且发现Matlab语法更好,那么请使用Numpy和Scipy查看Python.Python也有一些很好的ML库,比如PyBrain.我不打算在这里比较R和Python,因为这是一个完全不同的问题:)
"哪个更好" - 问题通常在很大程度上取决于背景.这也不例外.
您希望通过机器学习实现什么目标?如果您只是为了理解机器学习而学习它,那么最好选择能够从您的直接环境中获得最多支持的语言.你的朋友知道R里面出来了?选择R.无论如何,这两种语言都允许您轻松地进行机器学习实验,以便您能够获得一般的想法.
如果你想进入机器学习以便做更具体的事情,那么就会有差异.您的机器学习任务是否涉及图像?与Matlab一起使用,因为您可能也想使用图像处理.您是否想深入了解机器学习背后的理论并使用花哨的统计方法来制作新算法?如果您想使用丰富的功能,请选择R,如果编程环境更适合您,请选择Matlab.