我应该使用哪种语言进行Web项目的人工智能

我必须为我的论文做一个涉及人工智能,协同过滤和机器学习方法的项目。

我只知道PHP / mysq / JS,并且在PHP中没有太多的AI内容示例。

互联网上有一些人工智能的书,但他们使用的是Java,Python。

现在我必须在Web应用程序上应用AI技术。

我应该选择哪种语言java或python。

我在互联网上搜索,我可以在我的PHP内部调用java类,这样可以帮助我,因为我非常擅长PHP

我也看到python也可以和php一起使用

那么我应该走哪条路,大概要花多少钱来学习java

我已经完成了java基础知识,但那是在6年前

在您提到的语言中,您可能会找到Java中最常用的工具,尤其是机器学习资源。 一个很好的例子是WEKA ,它是一种用Java编写的流行的数据挖掘工具。

机器学习算法通常是您不希望从头开始编写的,如果您不需要。 虽然你肯定会从中学到很多,但是他们可能需要花费大量的时间来调试,因为通常很难区分工作和非工作行为,例如,他们有时可能无法学习没有错误,他们也可以学习有或没有错误的模式。

我首先寻找工具,然后考虑工具选项来决定语言。

你的书使用哪种语言真的很重要吗? 我的意思是,你不会复制粘贴那些例子。 而且你将学会很快识别基本结构(函数,循环等)。 这不像学习中文。

谈到学习时间,这个问题可能没有明确的答案。 我认为最好的方法是查看java和python中的代码示例,看看哪个看起来“更好”,更容易,更熟悉。

祝你好运!

您可以使用Java或Python。 这两种语言都有很多资源。

我认为以下书籍可能适合您的目的。

编程集体智慧:构建智能Web 2.0

集体智慧在行动

您可以使用任何您喜欢的语言,只要它托管的服务器支持它。 您可以使用HTML / JS作为用户界面,并使用AJAX请求从服务器请求结果。

什么回答这些请求将是你的AI代码,这可以是你想要的任何东西。 PHP使得回答AJAX请求变得非常简单。 既然你已经熟悉它,我会建议你,虽然如果你的AI很复杂,你可能想要更高效的东西,比如C / C ++。

我应该选择哪种语言java或python。

以下是一些需要考虑的事项:

  • java被更广泛地使用(可能是更成熟的代码“在那里”看 – 但我还没有测试过)

  • python更多产(你在python中写得比在java中写得快),从学习语言到编写你想要的代码在python中比在java中少得多

  • python是多范式的,java是(几乎)严格的OOP

  • 编译java(而python是脚本化的); 这意味着java在编译时发现了你的错误; python在执行 – 这可以产生很大的不同,这取决于您的开发风格/实践

  • java比python更严格定义,更冗长。 在java中你必须正式化你的合同,在python中你使用duck-typing。

最后,您可以做的最好的事情是设置一个小项目,用两种语言编写它,看看你最喜欢什么。 您可能还会发现某些语言无法解决的限制。

最后,这取决于你:)

编辑 :这不是一个详尽的列表,我试图尽可能公正(但结束于此 :我将使用python:D)

永远不要使用PHP进行AI。 Java或C / C ++是最好的,但Python用于快速开发。

几乎任何语言都可以用来编写几乎任何东西 – 考虑到努力和意志。 但是Python有更多的函数式编程结构,在编写AI时可能会更有用。

我相信Python对于这类任务很有用,因为它具有灵活性。 使用numpy / scipy库和一个漂亮的绘图库(例如chaco或matplotlib)可以轻松处理数据和算法的工作流程,并且您可以以类似matlab的方式在实时解释器中实现代码。 在这里更改一行代码,清理那里的数据,并在图形窗口中观看整个事物,而不必费心重新编译等。

一旦你确定了算法,如果你担心性能,就可以很容易地分析代码并将热点移动到C / C ++或Fortran中。

(如果你真的喜欢在JVM平台上,你甚至可以在Jython中编写这些东西并下载到java中以获得性能较高的代码)

AI不是一种语言或特定问题,如求和或找到一些数字的平均值。 这是人工开发的情报。 为了使系统智能化,特别是计算机,您可以使用计算机可以理解的任何语言,并且您对(C,Java,Python,C ++)感到满意。 一个非常简单的AI示例可能是井字游戏。 这个游戏可以使用你想要的任何语言。 重要的是需要开发的算法。 人工智能是一个广阔的领域,它包括图像处理,NLP,机器学习,心理学等许多东西。 最重要的是,数学必须非常强大,这是软计算中最重要和最重要的部分。 因此,AI不再是基于纯数学的语言而是智能算法。