Виммельбух, 3, перетяжка
Виммельбух, 3, перетяжка
Виммельбух, 3, перетяжка

JetBrains выпустила альфа-версию фреймворка для глубокого обучения нейросетей на Kotlin

Новости

В KotlinDL доступны простые API для описания и тренировки нейронных сетей. Разработчики надеются снизить порог входа в глубокое обучение на Java Virtual Machine за счёт высокоуровневого API и аккуратно подобранных значений по умолчанию для множества параметров.

1К открытий2К показов

В ранней версии KotlinDL разработчики найдут все необходимые методы для описания многослойных перцептронов и сверточных сетей. Для большинства параметров заданы разумные значения по умолчанию. Но в то же время пользователям предоставляется широкий выбор оптимизаторов, инициализаторов, функций активации и других настроек. Полученную в процессе обучения модель можно сохранить и использовать в приложениях, написанных на Kotlin и Java.

Благодаря схожести API в KotlinDL можно загружать и использовать модели, натренированные с помощью Keras на языке Python (поддерживаются версии 2.*). При загрузке можно применить технику Transfer Learning, которая позволяет не тренировать нейронную сеть с нуля, а воспользоваться готовой моделью, подогнав её под свою задачу.

В качестве движка KotlinDL использует TensorFlow Java API. Все вычисления выполняются в библиотеке машинного обучения TensorFlow, в нативной памяти. Во время тренировки все данные остаются в нативе.

В альфа-версии KotlinDL доступно ограниченное количество слоев: Input(), Flatten(), Dense(), Dropout(), Conv2D(), MaxPool2D() и AvgPool2D(). Это ограничение влияет и на то, какие модели Keras можно загружать во фреймворк. Архитектуры VGG-16 и VGG-19 уже поддерживаются, а ResNet50 пока нет. В ближайшие месяцы планируется выпуск минорного обновления, в котором количество поддерживаемых архитектур увеличится. Второе временное ограничение — отсутствие поддержки Android-устройств.

Следите за новыми постами
Следите за новыми постами по любимым темам
1К открытий2К показов