Новости и события » Hi-Tech » Доступна СУБД EuclidesDB, использующая элементы машинного обучения

Доступна СУБД EuclidesDB, использующая элементы машинного обучения

Доступна СУБД EuclidesDB, использующая элементы машинного обучения

Подготовлен первый экспериментальный выпуск СУБД EuclidesDB, предоставляющей средства для использования методом машинного обучения при индексировании и выборки данных. СУБД позволяет привязывать к различным классам информации отдельные модели машинного обучения, например, можно подключить модель для классификации изображений и применять СУБД для поиска похожих фотографий или выборки изображений, на которых присутствует определенный объект. Проект написан на языке С++ и распространяется под лицензией Apache 2.0. Модели машинного обучения обрабатываются при помощи библиотеки PyTorch (используется C++-интерфейс libtorch).

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

При добавлении новых данных в БД, например, изображения, вместе с данными указывается модель машинного обучения, которую следует применить для индексации. Результаты обработки сохраняются в локальное хранилище, манипулирующими объектами в формате ключ/значение, и используются при построении индекса запросов. При обработке запроса похожих элементов, переданный в запросе эталонный элемент обрабатывается с использованием одного из выбранных алгоритмов поиска похожих объектов. В запросе определяется допустимый диапазон моделей, которые следует использовать при поиске. На выходе для каждой из выбранных моделей возвращается список наиболее близких элементов с указанием уровня релевантности.

Взаимодействие с СУБД осуществляется с использованием протокола gRPC c применением HTTP/2 для сетевого взаимодействия и Protocol Buffers для сериализации данных. Низкоуровневое хранение данных реализовано с использованием LevelDB. Логика обработки моделей задается на языке Python (TorchScript ) и оформляется в виде модулей. В комплекте поставляются три готовые модели (resnet101, resnet18 и vgg16), обеспечивающие распознавание и классификацию изображений.

Поддерживается несколько методов индексации и поиска данных:

  • annoy - движок нечеткого поиска на базе библиотеки Annoy (Approximate Nearest Neighbors Oh Yeah), которая применяется для формирования рекомендаций в музыкальном сервисе Spotify. Библиотека реализует алгоритм решения задачи поиска ближайшего соседа, оптимизированный для снижения оперативной памяти и подкачки данных с диска;
  • faiss - движок на основе библиотеки поиска похожих элементов Faiss, развиваемой компанией Facebook. Faiss предлагает большой набор настроек, позволяющих добиться необходимого компромисса в отношении времени поиска, качества поиска, потребления оперативной памяти и длительности обучения;
  • exact_disk - простейший движок, в котором применяется линейный поиск точных совпадений. Индекс сразу сохраняется на диск, что позволяет добиться минимального расхода оперативной памяти.

Що треба знати, щоб почати працювати SMM-менеджером з нуля?

Що треба знати, щоб почати працювати SMM-менеджером з нуля?

Про професію SMM-спеціаліста говорять всі. Одні кажуть, що це людина, яка поститить меми, інші - спеціаліст, який просто веде соцмережі. Але хто насправді такий SMM-спеціаліст і що треба знати, щоб почати ним працювати? Про це розповіли далі. Що таке SMM і...

сегодня 12:13

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

Вверх