独热编码

独热编码函数用于将分类数据转换为机器学习库可以使用的数值格式。

此功能处于 alpha 阶段。有关功能阶段的更多信息,请参阅 API 阶段

独热编码示例

独热编码将返回一个列表,其长度等于可用值的长度。在列表中,选定值1表示,未选定值0表示。

以下将在硬编码列表上运行算法
RETURN gds.alpha.ml.oneHotEncoding(['Chinese', 'Indian', 'Italian'], ['Italian']) AS value
表 1. 结果

[0,0,1]

以下将创建一个示例图
CREATE (french:Cuisine {name:'French'}),
       (italian:Cuisine {name:'Italian'}),
       (indian:Cuisine {name:'Indian'}),

       (zhen:Person {name: "Zhen"}),
       (praveena:Person {name: "Praveena"}),
       (michael:Person {name: "Michael"}),
       (arya:Person {name: "Arya"}),

       (praveena)-[:LIKES]->(indian),
       (zhen)-[:LIKES]->(french),
       (michael)-[:LIKES]->(french),
       (michael)-[:LIKES]->(italian)
以下将返回每个用户的独热编码以及他们喜欢的菜系类型
MATCH (cuisine:Cuisine)
WITH cuisine
  ORDER BY cuisine.name
WITH collect(cuisine) AS cuisines
MATCH (p:Person)
RETURN p.name AS name, gds.alpha.ml.oneHotEncoding(cuisines, [(p)-[:LIKES]->(cuisine) | cuisine]) AS value
  ORDER BY name
表 2. 结果
姓名

艾莉亚

[0,0,0]

迈克尔

[1,0,1]

普拉维纳

[0,1,0]

[1,0,0]

表 3. 参数
名称 类型 默认值 可选 描述

availableValues

列表

null

可用值。如果为 null,则函数将返回一个空列表。

selectedValues

列表

null

选定值。如果为 null,则函数将返回一个全为 0 的列表。

表 4. 结果
类型 描述

列表

选定值的独热编码。