Какой язык я должен использовать для искусственного интеллекта в веб-проектах - PullRequest
6 голосов
/ 16 июня 2010

Мне нужно сделать один проект для моей диссертации, включающей в себя искусственный интеллект, методы совместной фильтрации и машинного обучения.

Я знаю только PHP / mysq / JS, и в PHP не так много примеров искусственного интеллекта.

В Интернете есть несколько книг по ИИ, но они используют Java, Python.

Теперь я должен применить методы ИИ к веб-приложению.

Какой язык выбрать: Java илиpython.

Я искал в интернете, что могу вызывать java-классы внутри своего php, чтобы это помогло, так как я очень хорош в php

Я также видел, что python также может использоваться сphp также

Итак, в какую сторону мне идти, и примерно сколько мне потребуется, чтобы выучить Java

Я изучил основы Java, но это было 6 лет назад

Ответы [ 9 ]

6 голосов
/ 16 июня 2010

Из упомянутых вами языков вы, вероятно, найдете самые легкодоступные инструменты, доступные в Java, особенно для ресурсов машинного обучения.Хорошим примером этого является WEKA , который является популярным инструментом интеллектуального анализа данных, написанным на Java.

Алгоритмы машинного обучения - это, как правило, то, что вам не нужно кодировать с нуля, если выне надоХотя вы, безусловно, многому научитесь, сделав это, им может потребоваться значительное количество времени для отладки, поскольку зачастую бывает трудно определить разницу между рабочим и нерабочим поведением, например, иногда они могут не учиться с помощью илибез ошибок, и они также могут изучать шаблоны с ошибками или без них.

Сначала я выберу инструменты, а затем выберу язык с учетом параметров инструмента.

6 голосов
/ 16 июня 2010

Действительно ли имеет значение, какой язык используют ваши книги?Я имею в виду, вы не будете копировать и вставлять эти примеры.И вы научитесь распознавать базовые конструкции (функции, циклы и т. Д.) Довольно быстро.Это не то же самое, что научиться читать по-китайски.

Если говорить о времени обучения, то, вероятно, нет однозначного ответа на этот вопрос.Я думаю, что лучше всего взглянуть на примеры кода как на Java, так и на Python и посмотреть, какой из них кажется вам «приятнее», проще и знакомее.

4 голосов
/ 16 июня 2010

Вы можете использовать либо Java, либо Python.Много ресурсов доступно для обоих языков.

Я думаю, что следующие книги могут подойти для вашей цели.

Программирование коллективного интеллекта: создание умного Интернета 2.0

коллективный разум в действии

3 голосов
/ 16 июня 2010

Какой язык выбрать: Java или Python.

Вот несколько вещей, которые следует учитывать:

  • Java используется более широко (предположительно более зрелый код "там", чтобы посмотреть - но я не проверял это)

  • Python более плодовит (вы пишете быстрее в Python, чем в Java), и изизучение языка для написания кода, который вы хотите, требует меньше в Python, чем в Java

  • Python является мульти-парадигмой, Java (почти) строго ООП

  • Java скомпилирована (тогда как Python написан на скрипте);это означает, что java находит ваши ошибки при компиляции;Python при исполнении - это может иметь большое значение, в зависимости от вашего стиля / практики разработки

  • Java более строго определено и гораздо более многословно, чем Python.Где в Java вы должны формализовать свои контракты, в Python вы используете Duck-Typing.

В конце концов, лучшее, что вы можете сделать, это создать небольшой проект, запишите его на обоихязыки и посмотрим, что вы предпочитаете.Вы также можете найти некоторые ограничения, которые вы не можете обойти для одного из языков.

В конце концов, вам решать:)

Редактировать : это былоне исчерпывающий список, и я старался быть максимально беспристрастным (но это заканчивается здесь : я бы пошел с питоном: D)

2 голосов
/ 16 июня 2010

Вы можете использовать любой язык, который вам нравится, если сервер, на котором он размещен, поддерживает его.Вы можете использовать HTML / JS в качестве пользовательского интерфейса и запрашивать результаты с сервера с помощью запросов AJAX.

Что ответит на эти запросы, будет ваш код AI, и это может быть что угодно.PHP позволяет очень просто отвечать на запросы AJAX.Поскольку вы уже знакомы с ним, я бы порекомендовал, хотя, если ваш ИИ очень сложный, вы можете захотеть пойти с чем-то более эффективным, например, C / C ++.

0 голосов
/ 02 ноября 2017

ИИ не является языком или конкретной проблемой, такой как суммирование или нахождение среднего числа.Это интеллект, который будет развиваться искусственно.И чтобы сделать систему интеллектуальной, особенно компьютер, вы можете использовать любой язык, понятный компьютеру, с которым вам удобно (C, Java, Python, C ++).Очень простым примером ИИ может быть крестики-нолики.Эта игра может быть сделана с использованием любого языка, который вы хотели бы.Важным моментом является алгоритм, который необходимо разработать.ИИ - это обширная область, и он включает в себя множество вещей, таких как обработка изображений, НЛП, машинное обучение, психология и многое другое.И самое главное, нужно быть очень сильным в математике, которая является наиболее важной и неотъемлемой частью мягких вычислений.Итак, опять же, ИИ не является языком, а скорее интеллектуальным алгоритмом, основанным на чистой математике.

0 голосов
/ 16 июля 2010

Я считаю, что Python хорош для такого рода задач благодаря своей гибкости.Использование библиотек numpy / scipy вместе с отличной библиотекой plotting (например, chaco или matplotlib) упрощает рабочий процесс работы с данными и алгоритмами, и вы можете поработать с кодом в живом интерпретаторе почти в стиле matlab.Измените строку кода здесь, очистите там данные и наблюдайте все это в реальном времени в графическом окне, не беспокоясь о перекомпиляции и т. Д.

Как только вы остановитесь на алгоритмах, довольно легко профилировать код иПереместите горячие точки в C / C ++ или Fortran, например, если вы беспокоитесь о производительности.

(вы могли бы даже написать материал в Jython и перейти в java для больших кусков кода, если вам действительно нравитсябыть на платформе JVM)

0 голосов
/ 16 июня 2010

Практически любой язык может использоваться для кодирования практически чего угодно - учитывая усилия и волю. Но в Python есть более функциональные программные конструкции, которые могут быть более полезны при кодировании AI.

0 голосов
/ 16 июня 2010

Никогда не используйте PHP для AI. Java или C / C ++ - лучший, но Python для быстрой разработки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...