Github项目推荐 | entity_embeddings_categorical:基于Keras的实体嵌入工具库

2019 年 3 月 14 日 AI研习社

使用带有Keras的神经网络将实体嵌入到分类变量上的即插即用库

by Rodrigo Bresan


概述

本项目旨在利用Keras框架,通过神经网络对实体嵌入进行预处理、训练和提取。注意:项目还在建设中,所以请谨慎使用。


项目地址:

https://github.com/bresan/entity_embeddings_categorical


安装

如果您的计算机上已经安装了virtualenv,那么安装过程会非常简单。前提是不依赖VirtualEnv官方文档。

pip install entity-embeddings-categorical

文档

除了文档字符串,有关文档的主要内容可以在这里找到


测试

该项目旨在满足大多数现有需求,因此可测试性是一个主要问题。 大多数代码都经过了严格的测试,Travis作为持续集成工具,一旦有新的提交就会运行所有的单元测试。


用法

本实用程序库的用法有两种模式提供:default(默认)和custom(自定义)。 在默认配置中,可以执行以下操作:回归、二进制分类和多类分类。

如果你的数据类型与这些数据类型不同,你可以随意使用自定义模式,你可以在其中定义与目标处理和神经网络输出相关的大多数配置。


默认模式

默认模式的使用非常简单,你只需要给配置对象提供一些参数:

因此,为了创建一个从文件sales_last_semester.csv读取的简单嵌入网络,其中目标名称为total_sales,所需输出为二进制分类,训练比率为0.9,我们的Python脚本如下所示:

config = Config.make_default_config(csv_path='sales_last_semester.csv', 
target_name='total_sales',
target_type=TargetType.BINARY_CLASSIFICATION,
train_ratio=0.9)


embedder = Embedder(config)
embedder.perform_embedding()

看起来很简单,对吧?

你可以这里可以找到默认模式的工作示例Python脚本


自定义模式

如果你打算自定义神经网络的输出甚至是目标变量的处理方式,则需要在创建配置对象时指定这些。 这可以通过创建从 TargetProcessor ModelAssembler 扩展的类来完成。

你可以在这里找到自定义配置模式的工作示例


可视化

完成模型训练后,可以使用模块 visualization_utils 从生成的权重中创建一些可视化操作。

以下是为Rossmann数据集创建的一些示例:

故障排除

如果项目有任何问题,或者有其他问题,请不要犹豫,在GitHub项目的issue板块上进行留言。

点击阅读原文,查看本文划线链接部分内容

登录查看更多
0

相关内容

Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
129+阅读 · 2020年3月15日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
KGCN:使用TensorFlow进行知识图谱的机器学习
专知会员服务
81+阅读 · 2020年1月13日
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
Github 项目推荐 | PyTorch 实现的 GAN 文本生成框架
AI研习社
35+阅读 · 2019年6月10日
Github项目推荐 | pikepdf - Python的PDF读写库
AI研习社
9+阅读 · 2019年3月29日
Github项目推荐 | gensim - Python中的主题建模
AI研习社
15+阅读 · 2019年3月16日
Github项目推荐 | RecQ - Python推荐系统框架
AI研习社
8+阅读 · 2019年1月23日
Arxiv
15+阅读 · 2018年2月4日
VIP会员
Top
微信扫码咨询专知VIP会员