Список языков программирования для искусственного интеллекта
(Перенаправлено с Языки программирования для искусственного интеллекта )
Часть серии о |
Искусственный интеллект |
---|
![]() |
Исторически сложилось так, что некоторые языки программирования были специально разработаны для искусственного интеллекта (ИИ) приложений . В настоящее время многие общего назначения языки программирования также имеют библиотеки , которые можно использовать для разработки приложений искусственного интеллекта.
Языки общего назначения [ править ]
- Python — это высокоуровневый , язык программирования общего назначения популярный в области искусственного интеллекта. [1] Он имеет простой, гибкий и легко читаемый синтаксис. [2] Его популярность приводит к появлению обширной экосистемы библиотек , в том числе для глубокого обучения , таких как PyTorch , TensorFlow , Keras , Google JAX . Библиотеку NumPy можно использовать для манипулирования массивами, SciPy для научного и математического анализа, Pandas для анализа табличных данных, Scikit-learn для различных машинного обучения задач , NLTK и spaCy для обработки естественного языка , OpenCV для компьютерного зрения и Matplotlib для визуализации данных. . [3] Библиотека трансформеров Hugging Face может манипулировать большими языковыми моделями . [4] Jupyter Notebooks может выполнять ячейки кода Python, сохраняя контекст между выполнением ячеек, что обычно облегчает интерактивное исследование данных. [5]
- R широко используется в искусственном интеллекте нового типа, включая статистические вычисления, численный анализ, использование байесовского вывода , нейронных сетей и в машинном обучении в целом . В таких областях, как финансы, биология, социология или медицина, он считается одним из основных стандартных языков. Он предлагает несколько парадигм программирования, таких как векторные вычисления, функциональное программирование и объектно-ориентированное программирование .
- Лисп был первым языком, разработанным для искусственного интеллекта. Он включает в себя функции, предназначенные для поддержки программ, которые могут решать общие проблемы, такие как списки, ассоциации, схемы (фреймы), динамическое распределение памяти, типы данных , рекурсия, ассоциативный поиск, функции в качестве аргументов, генераторы (потоки) и совместная многозадачность.
- C++ — это компилируемый язык , который может взаимодействовать с аппаратным обеспечением низкого уровня. В контексте искусственного интеллекта он особенно используется для встроенных систем и робототехники . такие библиотеки, как TensorFlow C++, Caffe или Shogun. Можно использовать [1]
- JavaScript широко используется для веб-приложений и, в частности, может выполняться с помощью веб-браузеров . Библиотеки для искусственного интеллекта включают TensorFlow.js, Synaptic и Brain.js. [6]
- Julia — это язык, запущенный в 2012 году, который призван сочетать простоту использования и производительность. Он в основном используется для численного анализа , вычислительной техники и машинного обучения. [6]
- C# можно использовать для разработки моделей машинного обучения высокого уровня с использованием Microsoft .NET пакета . ML.NET был разработан для облегчения интеграции с существующими проектами .NET, упрощая процесс для существующего программного обеспечения, использующего платформу .NET.
- Smalltalk широко использовался для моделирования, нейронных сетей, машинного обучения и генетических алгоритмов . Он реализует чистую и элегантную форму объектно-ориентированного программирования с использованием передачи сообщений .
- Haskell — чисто функциональный язык программирования. списка и LogicT Ленивые вычисления, а также монады упрощают выражение недетерминированных алгоритмов, что часто и происходит. Бесконечные структуры данных полезны для деревьев поиска . Возможности языка позволяют композиционно выражать алгоритмы. Однако работать с графиками поначалу немного сложнее из-за функциональной чистоты.
- Wolfram Language включает в себя широкий спектр интегрированных возможностей машинного обучения: от высокоавтоматизированных функций, таких как прогнозирование и классификация, до функций, основанных на конкретных методах и диагностике. Функции работают со многими типами данных, включая числовые, категориальные, временные ряды, текстовые и графические. [7]
- Mojo может запускать некоторые программы Python и поддерживает программирование оборудования искусственного интеллекта. Его цель – объединить удобство использования Python с производительностью языков программирования низкого уровня, таких как C++ или Rust . [8]
Специализированные языки [ править ]
- Пролог [9] [10] — это декларативный язык, в котором программы выражаются в терминах отношений, а выполнение происходит путем выполнения запросов к этим отношениям. Пролог особенно полезен для символьных рассуждений, баз данных и приложений синтаксического анализа языка.
- Язык разметки искусственного интеллекта (AIML) [11] это XML диалект [12] для использования с типа «Искусственный лингвистический интернет-компьютерный объект » (ALICE) чат-ботами .
- Planner — это гибрид процедурного и логического языков. Он дает процедурную интерпретацию логическим предложениям, где значения интерпретируются с помощью вывода, ориентированного на шаблоны.
- Решение задач Стэнфордского исследовательского института (STRIPS) — это язык для описания экземпляров задач автоматического планирования . Он выражает исходное состояние, целевые состояния и набор действий. Для каждого действия указываются предусловия (то, что должно быть установлено до выполнения действия) и постусловия (то, что устанавливается после выполнения действия).
- POP-11 — это рефлексивный , инкрементно компилируемый язык программирования со многими функциями интерпретируемого языка. Это основной язык Poplog программирования среды , первоначально разработанный в Университете Сассекса , а недавно в Школе компьютерных наук Университета Бирмингема , где размещен веб-сайт Poplog . Он часто используется для ознакомления программистов с методами символьного программирования. обычные языки, такие как Pascal , для которых синтаксис POP более знаком, чем синтаксис Lisp . Одной из особенностей POP-11 является поддержка первоклассных функций .
- CycL — это язык специального назначения для Cyc .
См. также [ править ]
- Глоссарий искусственного интеллекта
- Список языков программирования с ограничениями
- Список систем компьютерной алгебры
- Список языков логического программирования
- Список построенных языков
- Язык программирования пятого поколения.
Примечания [ править ]
- ↑ Перейти обратно: Перейти обратно: а б Водецки, Бен (5 мая 2023 г.). «7 языков программирования искусственного интеллекта, которые вам нужно знать» . ИИ-бизнес .
- ^ Лопес, Мэтью (11 января 2021 г.). «10 главных причин, почему Python хорош для искусственного интеллекта» . Техника сумо .
- ^ Канаде, Виджай (6 мая 2022 г.). «Лучшие библиотеки Python ML 2022» . Мастерская специй . Проверено 3 февраля 2024 г.
- ^ Чаухан, Нагеш Сингх (16 февраля 2021 г.). «Пакет трансформеров для обнимающего лица — что это такое и как его использовать» . КДнаггетс . Проверено 3 февраля 2024 г.
- ^ Перкель, Джеффри М. (30 октября 2018 г.). «Почему Jupyter является предпочтительным вычислительным ноутбуком для специалистов по обработке данных» . Природа . 563 (7729): 145–146. Бибкод : 2018Natur.563..145P . дои : 10.1038/d41586-018-07196-1 . ПМИД 30375502 .
- ↑ Перейти обратно: Перейти обратно: а б Водецки, Бен (5 мая 2023 г.). «7 языков программирования искусственного интеллекта, которые вам нужно знать» . ИИ-бизнес .
- ^ Язык Вольфрама
- ^ Егулалп, Сердар (7 июня 2023 г.). «Первый взгляд на язык Mojo» . Инфомир .
- ^ История логического программирования:
- Кревье, 1993 , стр. 190–196.
- ^ Пролог :
- Пул, Макворт и Гебель, 1998 , стр. 477–491,
- Люгер и Стабблфилд 2004 , стр. 641–676, 575–581.
- ^ согласно (вступительной странице) репозиторию AIML, заархивированному 14 апреля 2015 г. на Wayback Machine на nlp-addiction.com.
- ^ См. «Вводную» (веб-страницу) AIML. Архивировано 29 октября 2013 г. на Wayback Machine на сайте www.alicebot.org.
Ссылки [ править ]
Основные учебники по искусственному интеллекту [ править ]
- Люгер, Джордж ; Стабблфилд, Уильям (2004), Искусственный интеллект: структуры и стратегии решения сложных проблем (5-е изд.), The Benjamin/Cummings Publishing Company, Inc., ISBN 0-8053-4780-1
- Нильссон, Нильс (1998), Искусственный интеллект: новый синтез , Morgan Kaufmann Publishers, ISBN 978-1-55860-467-4
- Рассел, Стюарт Дж .; Норвиг, Питер (2003), Искусственный интеллект: современный подход (2-е изд.), Аппер-Сэддл-Ривер, Нью-Джерси: Прентис-Холл, ISBN 0-13-790395-2
- Пул, Дэвид ; Макворт, Алан ; Гебель, Рэнди (1998), Вычислительный интеллект: логический подход , Нью-Йорк: Oxford University Press, ISBN. 0-19-510270-3
- Уинстон, Патрик Генри (1984), Искусственный интеллект , Ридинг, Массачусетс: Аддисон-Уэсли, ISBN 0-201-08259-4
История ИИ [ править ]
- Кревье, Дэниел (1993). ИИ: бурные поиски искусственного интеллекта . Нью-Йорк, штат Нью-Йорк: BasicBooks. ISBN 0-465-02997-3 .
- МакКордак, Памела (2004), Машины, которые думают (2-е изд.), Натик, Массачусетс: AK Peters, Ltd., ISBN 1-56881-205-1