All Projects → HongZhaoHua → Jstarcraft Example

HongZhaoHua / Jstarcraft Example

Licence: apache-2.0
基于JStarCraft RNS引擎,Spring Boot框架和公共数据集搭建的千人千面演示项目. 系统会根据用户的行为记录,自动调整用户的推荐内容和搜索内容.使用者可以通过该项目了解*推荐系统*与*搜索系统*的运作流程. 涵盖了个性化推荐与个性化搜索2个部分.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Jstarcraft Example

Awesome Backend Architecture
后端开发常用技术框架、数据库、开源中间件、微服务、系统架构集合。
Stars: ✭ 114 (-4.2%)
Mutual labels:  spring
Googleimageshell
Google image search extension for Windows Explorer.
Stars: ✭ 116 (-2.52%)
Mutual labels:  search
Haystack
🔍 Haystack is an open source NLP framework that leverages Transformer models. It enables developers to implement production-ready neural search, question answering, semantic document search and summarization for a wide range of applications.
Stars: ✭ 3,409 (+2764.71%)
Mutual labels:  search
Alfred Learn Anything
Alfred workflow to search Learn Anything
Stars: ✭ 115 (-3.36%)
Mutual labels:  search
Hypertag
Knowledge Management for Humans using Machine Learning & Tags
Stars: ✭ 116 (-2.52%)
Mutual labels:  search
Matrix
🔑 Nepxion Matrix is an AOP framework integrated with Spring AutoProxy, Spring Registrar and Spring Import Selector with high universality, robustness, flexibility and usability 面向注解的业务场景,包括代理、拦截、开关
Stars: ✭ 117 (-1.68%)
Mutual labels:  spring
Spring Cloud Build
Common build concerns, shared plugin configuration, etc. for Spring Cloud modules
Stars: ✭ 114 (-4.2%)
Mutual labels:  spring
Dfi
Peer-to-peer torrent indexing
Stars: ✭ 118 (-0.84%)
Mutual labels:  search
Evernote Alfred
使用 Alfred 快速搜索印象笔记中的内容
Stars: ✭ 116 (-2.52%)
Mutual labels:  search
Instant Username Search
⚡ Instantly search for the availability of your username on more than 100 social media sites.
Stars: ✭ 118 (-0.84%)
Mutual labels:  search
Search Online
🔍A simple extension for VSCode to search online easily using search engine.
Stars: ✭ 115 (-3.36%)
Mutual labels:  search
Spring Native
Spring Native provides beta support for compiling Spring applications to native executables using GraalVM native-image compiler.
Stars: ✭ 2,282 (+1817.65%)
Mutual labels:  spring
Ibase4j
Spring,SpringBoot 2.0,SpringMVC,Mybatis,mybatis-plus,motan/dubbo分布式,Redis缓存,Shiro权限管理,Spring-Session单点登录,Quartz分布式集群调度,Restful服务,QQ/微信登录,App token登录,微信/支付宝支付;日期转换、数据类型转换、序列化、汉字转拼音、身份证号码验证、数字转人民币、发送短信、发送邮件、加密解密、图片处理、excel导入导出、FTP/SFTP/fastDFS上传下载、二维码、XML读写、高精度计算、系统配置工具类等等。
Stars: ✭ 1,548 (+1200.84%)
Mutual labels:  spring
Spring Boot 2 Oauth2 Authorization Jwt
Spring Boot 2 OAuth2 JWT Authorization server implementation with Database for Users and Clients (JPA, Hibernate, MySQL)
Stars: ✭ 115 (-3.36%)
Mutual labels:  spring
Searchobjectgraphql
GraphQL plugin for SearchObject gem
Stars: ✭ 118 (-0.84%)
Mutual labels:  search
Java Interview
At the beginning, it was the repository with questions from Java interviews. Currently, it's more like knowledge base with useful links.
Stars: ✭ 114 (-4.2%)
Mutual labels:  spring
Milkomeda
Spring extend componets which build from experience of bussiness, let developers to develop with Spring Boot as fast as possible.(基于Spring生态打造的一系列来自业务上的快速开发模块集合。)
Stars: ✭ 117 (-1.68%)
Mutual labels:  spring
Distancepicker
Custom UIKit control to select a distance with a pan gesture, written in Swift
Stars: ✭ 118 (-0.84%)
Mutual labels:  search
Regular
🔍The convenient paste of regular expression🔎
Stars: ✭ 118 (-0.84%)
Mutual labels:  search
Wicket Spring Boot
Spring Boot starter for Apache Wicket
Stars: ✭ 117 (-1.68%)
Mutual labels:  spring

JStarCraft Example


License Total lines

希望路过的同学,顺手给JStarCraft框架点个Star,算是对作者的一种鼓励吧!

目录


介绍

JStarCraft Example是一个基于JStarCraft RNS引擎引擎,Spring Boot框架和公共数据集搭建的千人千面演示项目.

系统会根据用户的行为记录,自动调整用户的推荐内容和搜索内容.使用者可以通过该项目了解推荐系统搜索系统的运作流程.

涵盖了个性化推荐与个性化搜索2个部分.


特性

个性化模型

本演示项目使用了以下8中个性化模型:

  • AssociationRule
  • MostPopular
  • Random
  • BPR
  • ItemKNN
  • LDA
  • UserKNN
  • WRMF

点击了解更多的个性化模型


安装

项目为了尽可能聚焦于个性化推荐和个性化搜索的演示,不包含任何多余组件的部署(例如MySQL/Redis/Spark/Elasticsearch).

JStarCraft Examlpe要求使用者具备以下环境:

  • JDK 8或者以上
  • Maven 3

安装JStarCraft-Core框架

git clone https://github.com/HongZhaoHua/jstarcraft-core.git

mvn install -Dmaven.test.skip=true

安装JStarCraft-AI框架

git clone https://github.com/HongZhaoHua/jstarcraft-ai.git

mvn install -Dmaven.test.skip=true

安装JStarCraft-RNS引擎

git clone https://github.com/HongZhaoHua/jstarcraft-rns.git

mvn install -Dmaven.test.skip=true

打包JStarCraft-Example项目

git clone https://github.com/HongZhaoHua/jstarcraft-example.git

mvn package -Dmaven.test.skip=true

使用

运行JStarCraft-Example项目

java -jar jstarcraft-example-1.0.jar

电影的个性化推荐与搜索

  1. 复制链接http://127.0.0.1:8080/movie.html到浏览器.
  2. 选择用户
  3. 选择模型
  4. 填写查询条件
  5. 选择是否过滤(已评价的条目)
    • 选择是,则相当于个性化推荐
    • 选择否,则相当于个性化搜索
  6. 点击个性化

个性化效果如图所示: movie

根据行为记录自动调整模型

用户可以通过点击评价:1 2 3 4 5对应的分数给条目打分,系统每隔5分钟会自动刷新模型.


架构


概念

推荐与搜索的本质


示例

词项查询

支持单词和语句:

  • 单词
  • 语句(使用双引号""包括)
Story
"Toy Story"

范围查询

支持指定最小值和最大值:

  • {}尖括号表示不包含最小值或最大值
  • []方括号表示包含最小值或最大值
[1990,2000}

通配符查询

支持在单词或者语句中结合通配符:

  • 使用?匹配单个字符
  • 使用*匹配0个或多个字符
te?t
te*t

模糊查询

test~

组合查询

支持多种逻辑操作符:

  • 使用&&实现交集操作
  • 使用||实现并集操作
  • 使用!实现差集操作
  • 使用()实现分组操作,形成更为复杂的逻辑查询
1990 || (Toy && Story)

对比


版本


参考


协议

JStarCraft Example遵循Apache 2.0协议,一切以其为基础的衍生作品均属于衍生作品的作者.


作者

作者 洪钊桦
E-mail [email protected], [email protected]

致谢

特别感谢LibRec团队在推荐方面提供的支持与帮助.

特别感谢陆徐刚在搜索方面提供的支持与帮助.


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].