WikiSort.ru - Компьютерные программы

ПОИСК ПО САЙТУ | о проекте
Deeplearning4j
Тип Обработка естественного языка, глубокое обучение, компьютерное зрение, искусственный интеллект
Автор Адам Гибсон, Крис Николсон, Джош Паттерсон
Разработчик Various
Написана на Java, Scala, CUDA, C, C++, Python, Clojure
Операционная система Linux, macOS, Windows, Android
Языки интерфейса английский
Аппаратная платформа кроссплатформенность
Последняя версия
Состояние активный
Лицензия Apache 2.0
Сайт deeplearning4j.org

Deeplearning4j — библиотека программ на языке Java, используемая как фреймворк для глубокого обучения[2][3][4]. Включает реализацию ограниченной машины Больцмана, глубокой сети доверия, глубокого автокодировщика, стекового автокодировщика с фильтрацией шума, рекурсивной тензорной нейронной сети, word2vec, doc2vec, and GloVe. Эти алгоритмы включены также в версии библиотеки, поддерживающие распределённые вычисления, интегрированные с архитектурами Apache Hadoop и Spark[5].

Является открытым программным обеспечением, распространяется под лицензией Apache 2.0[6]; основные разработчики — группа машинного обучения в Сан-Франциско во главе с Адамом Гибсоном[7][8], коммерческие внедрения поддерживают стартап Skymind.

Технология

Deeplearning4j реализована на языке Java и выполняется в среде, при этом совместима с Clojure и включает интерфейс (API) для языка Scala. Дополнительная библиотека ND4J открытого доступа обеспечивает вычисления на графических процессорах с поддержкой CUDA[9][10]. Кроме того, имеются средства для работы с библиотекой на языке Python через фреймворк Keras[11].

Фреймворк позволяет комбинировать компоненты, объединяя обычные нейронные сети с машинами Больцмана, свёрточными нейронными сетями, автокодировщиками и рекуррентными сетями в одну систему. Кроме того, поддерживаются расширенные средства визуализации[12]. Обучение проводится как с помощью обычных многослойных нейронных сетей, так и для сложных сетей, в которых определён граф вычислений[13].

Распределённые вычисления

Обучение в Deeplearning4j осуществляется через кластеры. Нейронные сети обучаются параллельно по итерациям, процесс поддерживается архитектурами Hadoop-YARN и Spark[7][14]. Deeplearning4j осуществляет также интеграцию с ядром архитектуры CUDA для осуществления чистых операций с GPU и распределения операций на графических процессорах.

Научные расчёты для JVM

Deeplearning4j включает в себя класс для работы с n-мерным массивом данных в библиотеке ND4J. Это облегчает вычисления для научных задач на языках Java и Scala, функциональность при этом соответствует языку NumPy для Pythonа. Использование этих средств позволяет эффективно решать задачи линейной алгебры и матричных преобразований в практических приложениях.

Библиотека векторизации DataVec для машинного обучения

Библиотека DataVec проводит векторизацию файлов в различных входных и выходных форматах методом, подобным MapReduce; при этом данные трансформируются в векторную форму. DataVec векторизирует табличный формат CSV, изображения, звуки, тексты, видео и временные последовательности данных[15][16].

Обработка естественного языка и текстов

Для обработки больших объёмов текстов с использованием мощности параллельных графических процессоров Deeplearning4j привлекает инструментарий векторного и тематического моделирования на языке Java.

В библиотеку входят реализации частотной инверсии (TF-IDF), глубинное обучение, алгоритм Миколова word2vec[17], doc2vec, и GloVe, которые оптимизированы на Java. При этом используется принцип стохастического встраивания соседей с распределением Стьюдента (t-SNE[en]) для реализации облака слов.

Безопасность

В библиотеку включены средства защиты от внешнего вмешательства и безопасности от взлома, что особенно важно в финансовых задачах[18][19], в промышленных системах, в электронной коммерции и предпринимательстве применяется распознавание аномалий[20] и распознавание образов[21]. Deeplearning4j интегрирован с другими платформами машинного обучения — такими как RapidMiner, Prediction.io[22] и Weka[23].

Тесты производительности

Сопоставление производительности показывает, что Deeplearning4j сопоставим с Caffe в задачах нетривиального распознавания образов с привлечением параллельных графических процессоров[24]. Для программистов, незнакомых с HPC на JVM, имеется несколько параметров, которые можно регулировать для улучшения производительности обучения нейронных сетей. В эти параметры входит настройка динамической памяти, алгоритм сборки мусора, подкачка памяти и предварительное сохранение данных для ускорения ETL[25]. Комбинируя эти настройки, можно увеличить производительность Deeplearning4j до десяти раз.

См. также

Примечания

  1. Release 0.9.1 — 2017.
  2. Metz, Cade The Mission to Bring Google's AI to the Rest of the World. Wired.com (2 июня 2014). Проверено 28 июня 2014.
  3. Vance, Ashlee Deep Learning for (Some of) the People. Bloomberg Businessweek (3 июня 2014). Проверено 28 июня 2014.
  4. Novet, Jordan Want an open-source deep learning framework? Take your pick. VentureBeat (14 ноября 2015). Проверено 24 ноября 2015.
  5. TV, Functional Adam Gibson, DeepLearning4j on Spark and Data Science on JVM with nd4j, SF Spark @Galvanize 20150212. SF Spark Meetup (12 февраля 2015). Проверено 1 марта 2015.
  6. Github Repository.
  7. 1 2 deeplearning4j.org.
  8. Crunchbase Profile.
  9. Harris, Derrick A startup called Skymind launches, pushing open source deep learning. GigaOM.com (2 июня 2014). Проверено 29 июня 2014.
  10. Novet, Jordan Skymind launches with open-source, plug-and-play deep learning features for your app (2 июня 2014). Проверено 29 июня 2014.
  11. Архивированная копия (недоступная ссылка). Проверено 25 июля 2017. Архивировано 25 февраля 2017 года.
  12. Deeplearning4j Visualization Tools
  13. Deeplearning4j Computation Graph
  14. Iterative reduce.
  15. DataVec ETL for Machine Learning
  16. Anomaly Detection for Time Series Data with Deep Learning
  17. word2vec
  18. Finance & Fraud | Skymind
  19. https://skymind.ai/bsa-aml (недоступная+ссылка)
  20. Архивированная копия. Проверено 22 февраля 2016. Архивировано 10 марта 2016 года.
  21. https://skymind.ai/image (недоступная+ссылка)
  22. https://www.rapidminerchina.com/en/products/shop/product/deeplearning4j/ (недоступная+ссылка)
  23. Generated Documentation (Untitled)
  24. GitHub - deeplearning4j/dl4j-benchmark: Repo to track dl4j benchmark code
  25. Benchmarking with DL4J and ND4J | Deeplearning4j

Литература

  • Паттерсон Дж., Гибсон А. Глубокое обучение с точки зрения практика = Deep Learning. A Practitioner’s Approach. ДМК-Пресс, 2018. — 418 с. ISBN 978-5-97060-481-6.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии