Для решения подавляющего большинства задач в современных бизнес-процессах с использованием нейронных сетей вовсе не обязательно обладать академическими знаниями во всех областях высшей математики. Современные разработчики в основном используют готовые библиотеки кода, главным образом написанные для использования с языком программирования Python, и при этом весьма прилично зарабатывают.
Как правило, новичку в разработке нейронных сетей без соответствующей «дорожной карты» весьма непросто подступиться к изучению даже базовых дисциплин, ибо этот пласт знаний поистине огромен. Кроме того, для эффективной разработки нейронных сетей необходимо использовать соответствующие инструменты для повышения производительности и снижения количества ошибок.
Задача серии публикаций на канале «Искусственнй интеллект. Начало» — разъяснить тем, кто только собирается написать свою первую нейронную сеть, какие именно выборочные знания из теории вероятностей и математической статистики, теории графов, дискретной математики, матричного анализа и линейной алгебры, математической логики действительно пригодятся в работе, а какие нужны исключительно разработчикам самого высокого уровня.
Этот «джентльменский» минимум знаний необходим хотя бы для того, чтобы понять, как работает нейронная сеть и как «прикрутить» библиотеку, например, TensorFlow или OpenCV, к коду нейронной сети.
Язык программирования
Как уже было упомянуто выше, основным и самым удобным языком, который используют для разработки нейронных сетей, является Python (пито́н, па́йтон). На момент написания этой статьи последней рабочей версией является Python 3.8.2, версия 3.9.0 доступна для тестирования. Скачать и установить Python для любой из известных операционных систем можно и нужно на официально сайте языка совершенно бесплатно.
Кстати, не всегда рекомендую использовать в разработке самую последнюю версию языка, потому как не всегда под неё уже есть нужные библиотеки в официальном репозитории.
Операционная система
В принципе, нейронные сети можно писать на любой ОС, но, если в дальнейшем планируется развернуть НС в облаке (на сервере), то настоятельно рекомендую разрабатывать под Linux (Ubuntu, Debian и т. п.), так будет меньше «танцев с бубном» и ненормативной лексики при переносе вашего веб-приложения с локального на боевой сервер, потому как подавляющее большинство серверов с вменяемой поддержкой Python работают именно на Linux-подобных операционных системах.
Интегрированная среда разработки (IDE)
Писать нейронные сети можно прямо в «Блокноте», по затем полгода искать ошибку среди 10 МБ кода. Безусловным лидером среди IDE (Integrated Development Environment) для разработки на Python вообще и нейронных сетей в частности является IDE JetBrains PyCharm. Доступны подсветка синтаксиса, автосохранение, проверка кода «на лету», автодополнение кода и многие-многие другие «фичи», упрощающие жизнь разработчику, избавляя его от рутинного труда. Кроме платной версии, для этой IDE существует также бесплатная CE (Community Edition) версия.
Язык обучения
Несмотря на то, что в последнее время появляется всё больше публикаций о ИИ на русском языке, самое свежее всё же ещё издаётся на английском. Это касается как текстовых публикаций, учебной литературы, так и записей лекций на Youtube-каналах ведущих мировых учебных заведений.
Это всё, что касается инструментов разработки. В следующей публикации познакомимся с необходимыми для обучения дисциплинами, и какой их сектор обязателен для изучения разработчику нейронных сетей.
#искусственный интеллект #нейронные сети #сильный ии #python #pycharm