Easyrec 是什么
easyrec
项目是一个开源推荐系统,可以为任何具有个性化需求的网站提供高质量建议。通过Web服务提供对easyrec的访问,确保轻松快速的集成。可以直接为网站部署(例如,封装API调用的脚本,放在客户端页面中,见下文)。项目的重点是简化集成,在大多数情况下,基于Web的管理界面应足以配置 easyrec
。它由 Studio Smart Agent Technologies
在 GNU General Public License
下发布,并在 SourceForge
上托管。它是用Java编写,使用MySQL数据库并附带一个管理工具。
安装
API 文档
https://sourceforge.net/p/easyrec/wiki/API/
基本概念
Operator
一个 operator
只与 easyrec
服务器的一个用户帐户相关联,每个operator
都可以创建和管理多个 tenant
,以便将 easyrec
推荐服务集成到多个网站中。
对于每个operator
,都会生成一个 API 密钥,必须在 API 调用中指定该密钥以及相应的operator ID
。
Tenant
easyrec
服务端可以为多个应用提供推荐服务。在 easyrec
中,此类应用被称为 tenants
(“租户”),由一个operator
管理。每个 tenant
都有一个唯一的名称,必须在API调用中提供,以及运营商的 API 密钥。
你可以在 Web 应用程序管理界面中创建 tenant
。目前,无法在创建之后更改 tenant
名称。
Demo tenant
当您注册我们的演示实例或在您自己的服务器上安装应用程序时,您将自动拥有一个名为 EASYREC_DEMO
的 tenant
。
使用此 tenant
可以了解 easyrec
, - 例如,你可以通过发送以下操作强制创建规则:
VIEW ACTION: ITEM A - USER 1
VIEW ACTION: ITEM A - USER 2
VIEW ACTION: ITEM A - USER 3
VIEW ACTION: ITEM B - USER 1
VIEW ACTION: ITEM B - USER 2
VIEW ACTION: ITEM B - USER 3
一旦提交的规则运行起来(在 demo
实例上的 2AM - 或在自己的服务上手动触发),将会在 ITEM A
和 ITEM B
之间有一个 USER_ALSO_VIEWED
规则
Item
Item
是你的内容在 easyrec
中的抽象。Item
会在消息发送到 easyrec Web服务
时自动创建。一个 Item
创建后无法删除。但是你可以通过 easyrec Web管理界面
禁用它,它就不会包含在任何推荐结果中。任何 Item
都由 tenantId-itemId-itemType
三个部分标识。Item
是所有推荐结果的基本单位,虽然直觉上看起来是统计结果,但在 easyrec
的上下文中,只是特殊类型的 USER
。
Items are easyrec representations of your content. Items get created automatically when you send actions to an easyrec web service. Once an item has been created you cannot delete it. However, you can deactivate it trough the easyrec web administration interface and it will not be in included in any recommendations. Any item is identified by the triple tenantId-itemId-itemType. Items are the basic unit of all recommender operations. Eventhough it might seem counter intuitive at first, in the context of easyrec even users are just items of the special type USER.
Item Type
一个 Item Type
是特殊 Item
项的类型。当发送第一个 VIEW action
或通过 API 接口 导入一个 Item
时 Item Type
会和其他 Item
信息一起被保存。 Item Type
必须在easyrec Web 管理界面
中显式的创建。每一个默认创建的 Item Type
都会在没有其他显示调用的情况下被使用。
An is a type of a specific item. It is saved together with the other item information when you send the first VIEW action or when you import an item using certain API calls (e.g. importitem, storeitemwithprofile). Item types have to be created explicitly within the easyrec web administration interface. Per default the item type ITEM is created and will be used whenever no other type is explicitly supplied.
Action Types
每个 action
都有一个 action type
。默认情况下定义了 VIEW
,BUY
和 RATE
类型。在 easyrec Web管理界面
中可以自定义其他的 action type
。action type
还可以特别指一个值(例如 RATE类型
的评级数值)和权重,所以不同的 action
会被赋予不同的权重在分析生成推荐结果的过程中。Generators
(生成器) 使用 action type
来选择适用于计算规则的所有 actions
的子集。例如,SlopeOne Recommender Recommender
仅使用 RATE actions
,而 Association Rule Miner
可以配置为使用 VIEW actons
或 BUY actions
。
Each action has an action type. Per default the types VIEW, BUY and RATE are defined. Additional action types can be defined in the type manager within the easyrec web administration interface. Actions types can also specifiy an action value (e.g. a rating value for the type RATE) as well as a weight, so different actions can be weighted differently when analysing actions for recommendation generation. Generators use action types to select a subset of all actions for calculating Rules. For example, the SlopeOne Recommender generator only uses RATE actions, whereas the Association Rule Miner can be configured to use either VIEW or BUY actions.
Assoc Types
Assoc Types
定义两种 item
之间的关系。
例如: ITEM1 - VIEWED_TOGETHER - ITEM2
典型的 Assoc Types
像下面这样:
VIEWED_TOGETHER
BOUGHT_TOGETHER
GOOD_RATED_TOGETHER
IS_RELATED
可以在 easyrec web应用程序管理
中的类型管理器中创建其他的 Assoc Types
。推荐算法(或叫 rule generators
/plugins
)与关联类型相关联。这意味着,如果要使用其他生成器,则必须创建 Assoc Types
以便可以将插件配置与其关联,并使用 API 查询结果(例如,relateditems
相关调用)。
Additional assoc types can be created in the type manager within the easyrec web application admin gui. Recommendation algorithms (or rule generators/plugins, as we call them) are associated to assoc types. This means, if you want to use additional generators, you have to create assoc types so that you can associate a plugin configuration to it and query the results using the API (e.g. the relateditems call).
Rule
Rule
是具有特定关联类型的两个 Item
之间的加权关联。Rule Generator
(规则生成器) 用于计算这些关联。 easyrec 管理界面
允许为每种关联类型配置生成规则的方式。
A Rule is a weighted association between two items that has a certain association type. Rule Generators are used to compute these associations. The easyrec administration interface allows configuring how rules are generated for each association type.
Cluster
一个 Cluster
对应一组 Item
,可以手动创建。详细见 Cluster
Profile System
easyrec 1.0
包含一个基于 JSON 的配置文件系统,允许以 JSON 格式存储Iterm
的其他元数据。有关其工作原理的更多信息见 profile system.
Plugins
Association Rule Miner
Slope One
User Profile Aggregator
Developing easyrec
Coding Guide
Plugin Guide
Download
You can download easyrec for free at https://sourceforge.net/projects/easyrec/ if you find it useful let us know by twittering it.
Demo Server
We're hosting a demo instance, so if you want to play around with easyrec start at http://easyrec.org/ and create an account. Then check the easyrec version deployed on our server and read the documentation for this version to get started.
Older versions
Our old Wiki can be found at: http://easyrec.sourceforge.net/wiki/index.php/Main_Page
网友评论