LibRec (https://guoguibing.github.io/librec/index.html) — это библиотека Java для рекомендательных систем (требуется Java версии 1.7 или выше). Он реализует набор современных рекомендательных алгоритмов, направленных на решение двух классических рекомендательных задач: прогнозирование рейтинга и ранжирование элементов .
Система рекомендаций фильмов разработана и доступна здесь.
Пожалуйста, обратитесь к документации LibRec и документации API.
Прошел год с момента выхода последней версии. В этом году в проект LibRec было внесено множество изменений, и самое значимое из них — формирование команды LibRec. Команда продвигает разработку LibRec благодаря мудрости многих экспертов и сотрудничеству опытных и энтузиастов. Без их огромных усилий и трудолюбия невозможно достичь того состояния, о котором может мечтать одиночный разработчик.
LibRec 2.0 — это не конец нашей командной работы, а только начало реализации более великих целей. Мы стремимся постоянно предоставлять версии NEXT для лучшего опыта и производительности. В планах много направлений и целей, и мы сделаем все возможное, чтобы они осуществились. Всегда приятно получать любые предложения по коду, предложения и комментарии от всех наших пользователей LibRec.
Надеемся, вам понравится новая версия!
PS: Следуйте за нами в WeChat, чтобы получать актуальную информацию о LibRec из первых рук.
Процедура LibRec проиллюстрирована следующим образом.
от maven
<dependency>
<groupId>net.librec</groupId>
<artifactId>librec-core</artifactId>
<version>2.0.0</version>
</dependency>
по пакетам
Вы можете запустить LibRec с настройками из аргументов команды:
librec Rec -exec -D Rec.recommender.class=itemcluster -D Rec.pgm.number=10 -D Rec.iterator.maximum=20
или из файла конфигурации:
librec -exec -conf itemcluster-test.properties
Вы можете использовать LibRec как часть своих проектов и использовать следующие коды для запуска рекомендателя.
public void main(String[] args) выдает исключение { // конфигурация рекомендации Конфигурация conf = новая конфигурация(); Ресурс ресурса = новый ресурс("rec/cf/userknn-test.properties"); conf.addResource(ресурс); // строим модель данных DataModel dataModel = новый TextDataModel (conf); DataModel.buildDataModel(); // устанавливаем контекст рекомендации Контекст RecommenderContext = новый RecommenderContext (conf, dataModel); RecommenderSimilarity сходство = новый PCCSimilarity(); Сходство.buildSimilarityMatrix(dataModel, true); context.setSimilarity(сходство); // обучение Рекомендатель рекомендатель = новый UserKNNRecommender(); рекомендатель.рекомендовать(контекст); // оценка RecommenderEvaluator оценщик = новый MAEEvaluator(); рекомендатель.оценка(оценщик); // результаты рекомендаций Список рекомендуемых элементовСписок = рекомендованный.getRecommendedList(); Фильтр РекомендуемыйФильтр = новый GenericRecommendedFilter(); рекомендуемыйItemList = filter.filter(recommendedItemList); }
Мы хотели бы выразить нашу признательность следующим людям за предоставление исходных кодов в LibRec, в том числе профессорам Робину Берку, Бин Ву, Диего Монти, Гэ Чжоу, Ли Вэньси, Марко Мера, Ран Локар, Шон Ратледж, ШуЛонг Чен, Тао Лянь. , Такуя Китадзава, Чжаохуа Хун, Тан Цзялэ, Даниэль Вельтен, Цянь Шаофэн и др. Мы благодарим г-на Лицзюня Дая за разработку и вклад логотип LibRec, а также большое спасибо г-ну Цзянбину Чжану за реализацию и распространение демо-версии LibRec.
Мы также признательны многим другим за сообщения об ошибках и проблемах, а также за ценные предложения и поддержку.
Пожалуйста, процитируйте следующие статьи, если LibRec поможет вашему исследованию.
LibRec является свободным программным обеспечением: вы можете распространять его и/или изменять в соответствии с условиями Стандартной общественной лицензии GNU (GPL), опубликованной Фондом свободного программного обеспечения, либо версии 3 лицензии, либо (по вашему выбору) любой более поздней версии. . LibRec распространяется в надежде, что она будет полезна, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии ТОРГОВОЙ ПРИГОДНОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. Дополнительную информацию см. в Стандартной общественной лицензии GNU.
Вы должны были получить копию Стандартной общественной лицензии GNU вместе с LibRec. Если нет, см. http://www.gnu.org/licenses/.