我拥有C ++,ruby,rails和其他一些脚本语言的技能。我想开始尝试和学习数据挖掘和机器学习中的概念。
我希望能够熟练掌握这些概念所需的编程知识。
哪种语言对DM和ML有最佳支持? puthon,Java,C ++? Javascript中是否有任何内容?
由于
答案 0 :(得分:2)
使用您最满意的任何内容。
至少如果它有基础知识。 JavaScript和PHP在这个领域并不是很好。它们只是不适合数值计算。 Python,R,Java和Scala最受欢迎。 Theres Matlab,但那里没有太多事情发生了。朱莉娅有一个类似的语法,但它更活跃,并显示一些承诺,如果它不是colum主要,1索引数组和类似matlab的语法。有些人使用Lua,有些人使用Mathematica ...... 有很多因素可以发挥作用。 例如,像Python和R这样的脚本语言真的很慢 - 但是这两个语言也很好地与C库(和Fortran!)连接,所以如果你把它们当作“驱动程序”使用它们并且库完成所有的工作那么它们就可以了非常实用。只要确保不要假设每个模块都很快......
答案 1 :(得分:1)
我想也许你的问题有点偏离目标。语言本身通常不具备支持:它是与这些语言接口的软件包,例如Apache Spark(其ML包的接口),Intel的MKL(针对Xeon Phi优化的矢量和矩阵操作),SciKit(Python接口),等
也就是说,我看到对支持分布式处理的语言的最积极支持。在我的范围内,Java / Spark是目前的领跑者,但是一两个主要版本可以大大改变市场 - 例如,看看Tensor的嗡嗡声,或者说BeautifulSoup的持久力。
对于实验,从舒适区开始。有很多很好的工具可以很好地与Ruby和C ++连接。只要你使用它来学习基本概念,我相信你会用你已经知道的语言做得最好:这会让你在学习曲线上减少一点挫折感。
Anony-Mousse和Patricio给了你非常好的观点,我完全同意。我正在使用Python和Scala,Java和Spark就在下面。
答案 2 :(得分:0)
Python得到了数据科学社区的强大支持,你有非常好的软件包,如Pandas和Python与Spark有很好的集成