Описание
Cleora — это новаторский движок для построения графовых вложений на языке Rust, разработанный для обеспечения детерминированных и высокоточных графовых вложений. В отличие от традиционных методов, основанных на случайных обходах, отрицательной выборке и кластерах GPU, Cleora вычисляет точное распределение всех возможных обходов в одной степени разреженной матрицы. Этот подход устраняет шум и стохастическую аппроксимацию, обеспечивая идеальную воспроизводимость и значительно более быстрое вычисление на одном ядре CPU.
Читать далее
Суть инновации Cleora заключается в его алгоритме. Он строит разреженную переходную матрицу из входного графа, нативно обрабатывая гетерогенные гиперграфы с типизированными, многореляционными ребрами. Каждая итерация умножения матрицы на эту переходную матрицу захватывает полное распределение обходов определенной длины. За этим следует L2-нормализованное распространение, где вложение каждого узла обновляется до нормализованного среднего вложений его соседей. Этот процесс требует всего нескольких итераций для сходства по совместному появлению и немного больше для контекстуального сходства, что делает его на порядки быстрее методов, основанных на выборке.
Ключевые преимущества Cleora включают скорость, точность и эффективность. Он до 240 раз быстрее, чем GraphSAGE, и использует значительно меньше памяти, чем другие библиотеки, такие как NetMF. Движок по умолчанию детерминирован, что крайне важно для воспроизводимых исследований и производственных ML-конвейеров. Он нативно поддерживает гетерогенные гиперграфы, устраняя необходимость в сложной предварительной обработке графа. Кроме того, Cleora может похвастаться минимальным размером установки около 5 МБ с зависимостями только numpy и scipy, избегая проблем с установкой драйверов GPU и тяжелых фреймворков.
Cleora готов к производственному использованию, предлагая стабильные и индуктивные вложения, которые поддерживают вложение новых узлов без переобучения всего графа. Его возможности распространяются на различные приложения, включая рекомендательные системы, графы знаний, разрешение сущностей, обнаружение мошенничества и открытие лекарств. Эффективность движка подчеркивается в тематических исследованиях, таких как Zomato, которая заменила GraphSAGE на Cleora, сократив время генерации вложений с 20 часов до менее чем 5 минут для миллионов пользователей.
Cleora предоставляет комплексный набор инструментов, включая встроенные альтернативные алгоритмы для сравнения, богатый набор для оценки качества вложений, возможности выборки графов и настройку гиперпараметров. Он также включает инструмент командной строки для легкой интеграции в скрипты и конвейеры CI/CD. Вся библиотека является открытым исходным кодом, бесплатной для использования, модификации и развертывания, предлагая экономически эффективное решение по сравнению с GPU-альтернативами.
- КатегорияМашинное обучение и наука о данных
- Модель ценообразованияОткрытый исходный код
- РазвёртываниеТолько CPU
- ПлатформыВеб
Основные функции Cleora Graph Embedding Engine
Детерминированное вычисление графовых вложений с помощью степеней разреженной матрицы
Работает только на CPU, GPU не требуется
Нативно обрабатывает гетерогенные гиперграфы с типизированными, многореляционными ребрами
Исключает выборку случайных обходов и обучение skip-gram
Достигает высокой точности на реальных графах
Значительно быстрее, чем методы на основе GPU и выборки
Минимальные зависимости и небольшой размер установки (~5 МБ)
Поддерживает индуктивное обучение для новых узлов без переобучения
Включает встроенные альтернативные алгоритмы для сравнения
Предоставляет богатый набор для оценки качества вложений
Предлагает инструмент командной строки для интеграции в скрипты и CI/CD
Открытый исходный код, бесплатный для использования, модификации и развертывания
Как использовать Cleora Graph Embedding Engine?
Установка: pip install pycleora
Входные данные: Подавайте списки ребер, журналы взаимодействий или тройки знаний в формате TSV.
Построение графа: Cleora строит гетерогенный гиперграф из входных данных.
Степень матрицы: Вычисляет разреженную переходную матрицу и ее степени для захвата распределений обходов.
Генерация вложений: L2-нормализованное распространение генерирует детерминированные векторы вложений.
Последующее машинное обучение: Используйте сгенерированные вложения для рекомендаций, классификации, поиска и т. д.
Варианты использования Cleora Graph Embedding Engine
- Рекомендательные системы
- Графы знаний
- Разрешение сущностей
- Обнаружение мошенничества
- Анализ социальных сетей
- Открытие лекарств
- Оптимизация цепочек поставок
- Сегментация клиентов









