10 лучших библиотек Javascript для машинного обучения и анализа данных

Опубликовано: 20 Мая, 2021

JavaScript - это язык программирования в сети, поэтому он очень важен! Тем не менее, он в основном использовался в качестве языка сценариев в веб-разработке без особой связи с машинным обучением или наукой о данных по сравнению с R и Python. Это потому, что R и Python специально подходят для Data Science или ML с большим набором вспомогательных библиотек, членов сообщества и инфраструктуры. Однако за последние несколько лет популярность JavaScript возросла до такой степени, что все больше и больше людей сходят с ума по нему! Вот почему в этой статье рассматриваются 10 лучших библиотек JavaScript , которые довольно популярны в наши дни.

В их число входит множество замечательных библиотек JavaScript для различных реализаций машинного обучения и анализа данных, таких как nlp.js или Compromise для обработки естественного языка, D3.js или Chart.js для визуализации данных, а также Brain.js, TensorFlow.js и т. Д. для использования в общем машинном обучении. Вы можете реализовать все эти аспекты машинного обучения или анализа данных в JavaScript, используя эти библиотеки как в браузере, так и в серверной части с помощью Node.js. Итак, без лишних слов, давайте сейчас проверим эти библиотеки.

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

1. Brain.js

Brain.js - это библиотека javascript для машинного обучения и, в частности, нейронных сетей. Это довольно быстро, поскольку для вычислений используется графический процессор, а также есть возможность вернуться к чистому JavaScript, когда графический процессор недоступен. Brain.js предоставляет реализации для различных типов нейронных сетей, и самое лучшее, что вам не нужно глубоко знакомиться с нейронными сетями, чтобы использовать эту библиотеку. Вы также можете импортировать эти модели как функцию или в формате JSON и интегрировать их на свой веб-сайт.

2. TensorFlow.js

TensorFlow.jsis - библиотека машинного обучения на языке javascript, которая имеет обширный и гибкий набор инструментов, библиотек и ресурсов для машинного обучения. Вы можете запускать официальные модели TensorFlow, которые уже доступны, или также конвертировать свои модели Python. Существуют также уже существующие модели машинного обучения, которые можно переобучить, используя собственные данные. Вы также можете развернуть модели машинного обучения в любом месте, включая облако, браузер, локально или на устройстве, независимо от того, какой язык вы используете. Однако TensorFlow.js - это всего лишь одна версия TensorFlow со многими другими доступными опциями, такими как TensorFlow Lite для мобильных устройств, TensorFlow Extended для полноценной работы, TensorFlow Rust для привязок Rust и т. Д.

3. Синаптический

Synaptic - это библиотека нейронной сети JavaScript, созданная для node.js и браузера. Сети также можно импортировать или экспортировать в JSON как отдельные функции. Их можно подключить к другим сетям или даже к воротам. Библиотека также имеет множество полезных встроенных архитектур, таких как машины с жидким состоянием, многоуровневые сети с долговременной краткосрочной памятью (LSTM), многослойные персептроны, сети Хопфилда и т. Д. В сочетании с обучающими программами, которые могут брать любой тип сети и использовать любой обучающий набор. с этим. Synaptic также является библиотекой с открытым исходным кодом от Массачусетского технологического института, так что любой может внести свой вклад или использовать ее бесплатно.

4. ConvNetJS

ConvNetJS - это библиотека javascript, специально предназначенная для обучения моделей глубокого обучения, включающих нейронные сети. Большим преимуществом этой библиотеки является то, что ее можно использовать полностью в браузере без каких-либо специальных требований к программному обеспечению, таких как графические процессоры, компиляторы и т. Д. ConvNetJS имеет параметры для нейронных сетей, задач классификации и регрессии, сверточных сетей, ориентированных на изображения, и модуль обучения с подкреплением, который находится на экспериментальной стадии.

5. ml5.js

ml5.js - это библиотека машинного обучения javascript, основанная на TensorFlow без каких-либо других внешних зависимостей. Он обеспечивает доступ к различным предварительно обученным алгоритмам машинного обучения в браузере, которые используются для определения человеческих поз, определения высоты тона, стилизации изображения с другим, генерации текста, поиска взаимосвязей слов на английском языке, создания музыки и т. Д. Ml5.js имеет особое внимание уделяется предоставлению людям более глубокого понимания машинного обучения наряду с его сложностями, такими как ответственный сбор данных, этические вычисления и т. д.

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

1. nlp.js

nlp.jsp предоставляет утилиту естественного языка на основе javascript для nodejs. Он имеет множество различных функций, таких как угадывание языка фразы или получение стеммеров и токенизаторов для разных языков. nlp.js также может анализировать тональность различных фраз, написанных на определенном языке. Вы также можете классифицировать намерение любого предложения, а затем сгенерировать ответ для предложения на основе намерения, используя классификатор обработки естественного языка и диспетчер генерации естественного языка соответственно. nlp.js имеет встроенную поддержку 40 языков, в то время как он может поддерживать дополнительные 104 языка с интеграцией BERT.

2. Компромисс

Компромисс - это библиотека JavaScript, которая специально ориентирована на обработку естественного языка, чтобы было легче интерпретировать и предварительно анализировать текст для принятия решений на основе текста. Компромисс может сжимать много слов и расширять их во время выполнения, чтобы можно было получить предположения. Около 99,99% всего словарного запаса английского языка можно обработать с помощью 14 000 слов, которые сжаты в файл размером всего 40 КБ. Это позволяет очень быстро найти компромисс в понимании и сканировании слов с задержкой в несколько миллисекунд.

Наука о данных и визуализация

1. D3.js

D3or Data-управляемые документы - это библиотека JavaScript, которую можно использовать для управления данными с помощью HTML, CSS и SVG для получения пользовательских визуализаций данных. D3 имеет возможность комбинировать документы с объектной моделью Document, а затем преобразовывать документ в соответствии с требованиями. D3 также имеет различные типы диаграмм для анализа данных, такие как прямоугольные диаграммы, гистограммы, для иерархий, таких как древовидные карты, для сетей, таких как диаграммы в виде диаграмм, а также общие диаграммы, такие как точечные диаграммы, линейные диаграммы, гистограммы, круговые диаграммы и т. Д. D3 также предоставляет анимацию параметры, такие как анимированная древовидная карта, масштабируемые гистограммы и сосульки, гонки на гистограммах и т. д.

2. Chart.js

Chart.js - это библиотека диаграмм javascript с открытым исходным кодом, которая предоставляет 8 широких типов диаграмм, которые включают все распространенные диаграммы, такие как гистограммы, круговые диаграммы, гистограммы, диаграммы рассеяния, диаграммы ошибок и т. Д. Все эти диаграммы можно объединять для создания смешанных диаграмм которые можно настраивать и анимировать. Chart.js также может легко отображаться во всех веб-браузерах и настраивает диаграмму в соответствии с размером окна в веб-браузере. Все диаграммы в этой библиотеке также можно комбинировать с библиотекой moment.js, если требуется ось времени.

3. Sigma.js

Графики - очень важная часть визуализации данных, и sigma.js специально ориентирован на рисование графиков. Он имеет встроенные функции, упрощающие визуализацию графиков и их публикацию на веб-страницах. Sigma.js имеет поддержку Canvas и WebGL, а также опции для поддержки мыши и сенсорного ввода, настраиваемый рендеринг, дополнительные возможности и т. Д. Вы также можете изменять данные, перемещать камеру, прослушивать события и изменять рендеринг любым желаемым образом. чтобы добавить дополнительные уровни интерактивности с графиками.

Мы видели 10 лучших библиотек JavaScript, которые охватывают различные аспекты машинного обучения и науки о данных. Хотя JavaScript не так популярен в этих областях по сравнению с Python или R, в наши дни он становится все более заметным. Например, D3 - довольно важная и известная библиотека для визуализации данных. Так что ознакомьтесь со всеми этими библиотеками, и кто знает, возможно, вы найдете их полезными для вашего следующего проекта в области машинного обучения или науки о данных.