Библиотеки для систем рекомендаций (для разных языков программирования)

beauty-books-girl-library-Favim.com-1951026

Все, что нашли, собрали здесь. Кому есть, чем дополнить — дополняйте, добавим.

SUGGEST

Рекомендательный механизм типа Top-N реализованный в виде библиотеки. Механизм SUGGEST, созданный Джорджем Кариписом (George Karypis) в Миннесотском университете, использует несколько алгоритмов коллаборативной фильтрации и реализует коллаборативную фильтрацию на основе пользователей и на основе элементов. Конкретный алгоритм можно указать при инициализации определенного набора данных.

Язык: C

  • opensource
  • простой API

easyrec

Опенсорсное веб-приложение, которое позволяет интегрировать персональные рекомендации в веб-сайт, используя веб-сервисы RESTful.

Язык: Java

  • opensource
  • без привязки к языку
  • вывод статистики и других бизнес-данных в административной панели

MyMediaLite

Опенсорсное ПО, доступное для использования только в некоммерческих целях.

Язык: C#, F#, Clojure, Python, Ruby

  • не нуждается в базе данных.
  • содержит базовые типы рекомендательных алгоритмов: предсказание рейтинга и товара (последнее — исходя из позитивного фидбека: кликов, лайков, покупок).
  • не содержит сложных функций вроде комплексных рекомендаций, потоков рекомендаций, интеграции с OpenID.

LensKit

Опенсорсное ПО, предоставляющее API для рекомендательных алгоритмов, инструменты оценки (в том числе офлайн), коллаборативной фильтрации.

Язык: Java

Duine

Библиотека программного обеспечения для создания прогнозирующих механизмов, созданная в Институте телематики (Норвегия). Последнее обновление кода этой платформы было выполнено в 2009 году, поэтому скорее всего этот проект в настоящее время неактивен.

Язык: Java

Crab

Инфраструктура рекомендательного механизма для Python, в которой используются некоторые составляющие экосистемы Python для вычислений научного характера, такие как NumPy и SciPy. В Crab реализована коллаборативная фильтрация на основе пользователей и на основе элементов. В рамках будущего развития проекта Crab запланирована реализация алгоритма Slope One и алгоритма сингулярного разложения (Singular Value Decomposition), а также применение API-интерфейсов типа REST.

Язык: Python

Waffles

Комплект инструментов на базе интерфейса командной строки. Реализует мелкомодульные задачи из области машинного обучения, включая формирование рекомендаций (а также задач более высокого уровня).

Язык: С++

  • возможность тонкой настройки благодаря большому количеству параметров.

Recommenderlab

Расширение для среды R, позволяющее работать с коллаборативной фильтрацией, а также оценку и сравнение нескольких алгоритмов.

Язык: R

Apache Mahout

Опенсорс-библиотека для машинного обучения от Apache. Алгоритмы, которые библиотека реализует в совокупности можно назвать машинным обучением или коллективным интеллектом. Это может означать многое, но в настоящий момент это означает в первую очередь рекомендательные системы (коллаборативная фильтрация), кластеризацию и классификацию.

likelike

Использует вероятностный метод понижения размерности многомерных данных. Область применения: рекомендации товаров на e-commerce сайтах, новостей.

Язык: Java

  • Поддерживает только MinHash, технику для быстрой оценки похожести двух наборов.

OpenSlopeOne

Cемейство алгоритмов для коллаборативной фильтрации (используемой в рекомендательных системах) для анализа различных мнений и пожеланий пользователей и выработки персональных рекомендаций.

Язык: PHP/MySQL

Voogoo

Библиотека, которая дает возможность веб-мастерам быстро внедрять функции персонализации в сайты.

Язык: PHP

Кто пользовался какой-то библиотекой, можете накидать плюсы и минусы, читающим будет интересно.

Подпишитесь на рассылку

Мы отправляем ее не чаще раза в неделю. Внутри — главные обновления продукта, полезные руководства и крутые статьи о e-commerce.