我必须为我的论文做一个涉及人工智能,协同过滤和机器学习方法的项目。
我只知道PHP / mysq / JS,PHP中没有太多的AI内容。
互联网上有一些人工智能的书,但他们使用的是Java,Python。
现在我必须在网络应用程序上应用AI技术。
我应该选择java或python。
我在互联网上搜索我可以在我的php中调用java类,这样可以帮助我,因为我非常擅长php
我也看到python也可以和php一起使用
那么我应该采用哪种方式大致花费多少学习java
我已经完成了java基础知识,但那是6年前的
答案 0 :(得分:6)
您的图书使用哪种语言真的很重要吗?我的意思是,你不会复制粘贴这些例子。而且你将学会很快识别基本结构(函数,循环等)。这不像是学习中文。
谈到学习时间,这个问题可能没有明确答案。我认为最好的方法是查看java和python中的代码示例,看看哪个更好,更容易,更熟悉。
祝你好运!答案 1 :(得分:6)
在您提到的语言中,您可能会找到Java中最常用的工具,尤其是机器学习资源。一个很好的例子是WEKA,这是一个用Java编写的流行的数据挖掘工具。
如果您不需要,机器学习算法通常是您不希望从头开始编写代码的。虽然你肯定会从中学到很多,但是他们可能需要花费大量的时间来调试,因为通常很难区分工作和非工作行为,例如,他们有时可能无法学习没有错误,他们也可以学习有或没有错误的模式。
我首先寻找工具,然后考虑工具选项来决定语言。
答案 2 :(得分:4)
您可以使用Java或Python。这两种语言都有很多资源。
我认为以下书籍可能适合您的目的。
答案 3 :(得分:3)
您可以使用您喜欢的任何语言,只要它托管的服务器支持它。您可以使用HTML / JS作为用户界面,并使用AJAX请求从服务器请求结果。
这些请求的答案是您的AI代码,这可以是您想要的任何内容。 PHP使得回答AJAX请求变得非常简单。既然你已经熟悉它,我会建议你,虽然如果你的AI很复杂,你可能想要更有效率的东西,比如C / C ++。
答案 4 :(得分:3)
我应该选择java或python。
以下是需要考虑的一些事项:
java被广泛使用(可能是更成熟的代码“在那里”看 - 但我没有测试过它)
python更多产(你在python中的编写速度比在java中快),从学习语言到编写你想要的代码在python中比在java中更少
python是多范式的,java是(几乎)严格的OOP
编译java(而python是脚本化的);这意味着java在编译时发现了你的错误;执行时的python - 这可能会产生很大的不同,具体取决于您的开发风格/实践
java的定义更严格,比python更冗长。在java中你需要将你的合同正式化,在python中你使用duck-typing。
最后,您可以做的最好的事情是设置一个小项目,用两种语言编写,看看你最不喜欢什么。您可能还会发现一些限制,无法解决其中一种语言。
最后取决于你:)
编辑:这不是一个详尽的列表,我试图尽可能公正(但结束这里:我会选择python:D)
答案 5 :(得分:0)
永远不要将PHP用于AI。 Java或C / C ++是最好的,但是用于快速开发的Python。
答案 6 :(得分:0)
几乎任何语言都可以用来编写几乎任何东西 - 考虑到努力和意志。但是Python有更多的函数式编程结构,在编写AI时可能会更有用。
答案 7 :(得分:0)
我相信Python很适合这类任务,因为它具有灵活性。使用numpy / scipy库和一个漂亮的绘图库(例如chaco或matplotlib)可以简化数据和算法的工作流程,并且您可以以类似matlab的方式在实时解释器中实现代码。在这里更改一行代码,清理那里的数据,并在图形窗口中观看整个事物,而不必费心重新编译等。
一旦你确定了算法,如果你担心性能,可以很容易地分析代码并将热点移动到C / C ++或Fortran中。
(如果你真的想加入JVM平台,你甚至可以在Jython中编写这些内容并下载到java中以获得性能较高的代码)
答案 8 :(得分:0)
AI不是语言或特定问题,如求和或找到某些数字的平均值。这是人工开发的情报。要使系统智能化,特别是计算机,您可以使用计算机可以理解的任何语言,并且您对(C,Java,Python,C ++)感到满意。一个非常简单的AI示例可能是井字游戏。这个游戏可以使用你想要的任何语言。重要的是需要开发的算法。 AI是一个广阔的领域,它包括许多东西,如图像处理,NLP,机器学习,心理学等等。最重要的是,数学必须非常强大,这是软计算中最重要和最重要的部分。因此,AI不再是基于纯数学的语言而是智能算法。