当前在Octave中工作,但是由于文档不佳,进度非常慢。
哪种语言易于学习和使用,并且有充分的文献记载来解决机器学习问题?我希望在一个小的数据集(成千上万的示例)上建立原型,因此速度并不重要。
编辑:我正在开发一个推荐引擎。因此,我对使用正则化线性回归,神经网络,SVN或协作过滤感兴趣。
当前在Octave中工作,但是由于文档不佳,进度非常慢。
哪种语言易于学习和使用,并且有充分的文献记载来解决机器学习问题?我希望在一个小的数据集(成千上万的示例)上建立原型,因此速度并不重要。
编辑:我正在开发一个推荐引擎。因此,我对使用正则化线性回归,神经网络,SVN或协作过滤感兴趣。
Answers:
如果您指定感兴趣的特定算法,您可能会得到更好的答案。您可以在此处查看现有功能:
http://cran.r-project.org/web/views/MachineLearning.html
在Hastie,Tibshirani和Friedman的统计学习元素中有R代码可以实现分析:
http://www-stat.stanford.edu/~tibs/ElemStatLearn/
R的打包系统非常棒,可以促使人们编写他们的代码,它是开源的,因此您可以随时查看实现。几年来我没有使用过Matlab,也没有在很多机器学习中使用过Matlab-他们的工具箱通常都有很好的文档记录,但价格昂贵,但是用户提供的代码将像其他任何文件一样缺乏文献记录。
在他的机器学习在线课程中,Andrew Ng建议使用Octave / Matlab。
我建议您参加本课程的下一版:它确实很有用,您将学到许多有关Octave和不同机器学习算法的知识。
编辑1:我同意其他喜欢在R中工作的人。但是,在解决机器学习问题时,您的大多数计算将采用矩阵形式,正如@Wayne所指出的那样,Matlab或Octave语言非常受欢迎因为他们的力量。您可能想看看其他学生提出的机器学习课程练习的解决方案;当然,您可以从中学到一些东西:
t(A) %*% B
)不如Matlab直观。
如果您指的是工业原型(例如,某些东西是要被真实的人使用,而不是用于纯粹的研究),那么python是目前唯一的选择。
如果使用Matlab,Octave或R,您将获得一个易于使用的ML研究环境,但是将模型与用户界面或Web服务一起使用将是一场噩梦。
在蟒蛇,我们是幸运的,同时具有广泛的科学的生态系统(sklearn为ML,熊猫数据wragling,matplotlib / seaborn可视化)和应用生态系统(想想Django和静止框架)。
Python是一种易于学习的语言。我希望将来Javascript生态系统能够像python一样在科学上健全,但是尽管有一些伟大的项目,但我认为这种情况不会很快出现。
不要把自己包裹在盒子里,要用通用的语言!