Я Йирне Ван Риллер, мне 14 лет, я живу в Бельгии. В школе я прохожу курс под названием STEM, что означает «Наука, технология, инженерная математика». Программирование — это малая часть. В первый год STEM мы научились программировать с помощью программного обеспечения под названием Arduino, так я сильно заинтересовался программированием, и когда я впервые увидел ИИ, я вдохновился им. Я не знал, как это работает в тот момент. Насколько больше у меня опыта программирования, насколько больше мне это нравится. Когда я закончу школу, я хочу стать программистом.

Во время самоизоляции я начал изучать Python и Java, Java — мой любимый язык программирования. Я разработал множество программ, таких как простые игры и алгоритмы. Однажды я создал программу, которая решает головоломку судоку, она отлично работала, но я хотел сделать ее лучше. Заполнение пустого поля занимает много времени, я хотел сделать программу, которая может заполнить это поле, сфотографировав судоку. Я не знал, как это сделать, поэтому искал в Интернете. Я нашел видео человека, который разработал программу на Python с программным обеспечением под названием Yolo, эта программа использует искусственную нейронную сеть для распознавания игральных карт в реальном времени. Когда я увидел это видео, мне захотелось узнать больше о программировании ИНС и о том, как использовать его в Java. Python имеет больше возможностей, и его библиотеки ИИ очень хорошо разработаны, но я нашел программное обеспечение под названием Deep Netts, которое позволило мне программировать ИНС на Java.

Машинное обучение в Java

Поскольку у Python больше возможностей, кажется, что вам нужно изучить Python, но программирование ANN возможно и на Java. Одной из самых известных платформ ИИ на Java является Neuroph, лично я не очень хорошо в ней разбирался и думаю, что новичкам вроде меня сложно освоить. Следующей платформой, которую я попробовал, стала Deep Netts, которую было легко освоить и использовать.

Глубокие сети

Deep Netts — это платформа машинного обучения, которую можно использовать для трех вещей: классификации данных, классификации изображений и числовых прогнозов. Существует стандартный Java API на основе Deep Netts под названием JSR381, который можно использовать для визуального распознавания. Большая разница между классификацией изображений и визуальным распознаванием заключается в том, что визуальное распознавание может распознавать объекты на изображении или кадре видео, классификация изображений может использоваться для маркировки изображений. Вы можете создавать и обучать ИНС, написав коды в Java IDE или используя IDE Deep Netts (и после этого загрузив обученную ИНС в Java).

Мое мнение и опыт
Я использую Deep Netts некоторое время, коды просты в освоении, а IDE Deep Netts делает это еще проще. Если вы используете мастер, вы можете быстро загрузить/создать все необходимые файлы в deepnetts-проект. Вы можете очень легко изучить программирование ИНС с помощью Deep Netts, потому что в загруженной папке есть много примеров и руководство по началу работы с большим количеством информации.

В моем первом проекте мне не удалось загрузить набор данных, я написал электронное письмо в Deep Netts, и через несколько минут мне ответил Зоран С. (генеральный директор Deep Netts). В итоге оказалось, что я неправильно написал слово throws, из-за чего и возникла ошибка. Тем не менее, я благодарен ему, потому что он хотел помочь мне.

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

Простой пример
Это видео представляет собой запись экрана программы, которую я создал с помощью Deep Netts. Мне нужно загрузить изображение в Java, используя путь к файлу на моем ноутбуке, и программа классифицирует это изображение как «судоку» или «негатив».