一个新的模块化、可扩展、可配置、易于使用和扩展的基础设施,用于基于深度学习的分类。

deepra的Python项目详细描述


DeePray深度祈祷):一个新的模块化、可伸缩、可配置、易于使用和扩展的基础设施,用于基于深度学习的推荐。在

Documentation StatusPyPI versionGitHub version

简介

DeePray库为[深度学习推荐]提供最先进的算法。 DeePray基于最新的[TensorFlow 2]构建[(https://tensorflow.org/)]采用模块化结构设计 以表格的形式来发现问题和答案。在

DeePray的主要目标:

  • 简单易用,新手可以通过深入学习快速掌握
  • 具有良好的网络规模数据性能
  • 易于扩展,模块化架构让你像玩乐高一样建立你的神经网络!在

我们开始吧!请参阅https://deepray.readthedocs.io/en/latest/的正式文件。在

安装

使用PyPI安装DeePray:

{{5}使用下面的cdray}安装命令执行{a5}:

pip install deepray

从Github安装DeePray源:

首先,使用git克隆DeePray存储库:

^{pr2}$

然后,cd到deepray文件夹,并通过执行以下命令安装库:

cd deepray
pip install .

教程

人口普查成人数据集

数据准备

在表格数据中,指定numeric作为继续特性,CATEGORY用于分类功能,VARIABLE用于可变长度的功能,显然,LABEL用于标签列。然后将它们处理为TFRecord格式,以便在大规模数据集中获得良好的性能。在

importpandasaspdfromsklearn.model_selectionimporttrain_test_splitfromsklearn.preprocessingimportMinMaxScaler,LabelEncoderfromdeepray.utils.converterimportCSV2TFRecord# http://archive.ics.uci.edu/ml/datasets/Adulttrain_data='DeePray/examples/census/data/raw_data/adult_data.csv'df=pd.read_csv(train_data)df['income_label']=(df["income_bracket"].apply(lambdax:">50K"inx)).astype(int)df.pop('income_bracket')NUMERICAL_FEATURES=['age','fnlwgt','hours_per_week','capital_gain','capital_loss','education_num']CATEGORY_FEATURES=[colforcolindf.columnsifcol!=LABELandcolnotinNUMERICAL_FEATURES]LABEL=['income_label']forfeatinCATEGORY_FEATURES:lbe=LabelEncoder()df[feat]=lbe.fit_transform(df[feat])# Feature normilizationmms=MinMaxScaler(feature_range=(0,1))df[NUMERICAL_FEATURES]=mms.fit_transform(df[NUMERICAL_FEATURES])prebatch=1# flags.prebatchconverter=CSV2TFRecord(LABEL,NUMERICAL_FEATURES,CATEGORY_FEATURES,VARIABLE_FEATURES=[],gzip=False)converter.write_feature_map(df,'./data/feature_map.csv')train_df,valid_df=train_test_split(df,test_size=0.2)converter(train_df,out_file='./data/train.tfrecord',prebatch=prebatch)converter(valid_df,out_file='./data/valid.tfrecord',prebatch=prebatch)

您将得到一个这样的特征映射文件:

9,workclass,CATEGORICAL
16,education,CATEGORICAL
7,marital_status,CATEGORICAL
15,occupation,CATEGORICAL
6,relationship,CATEGORICAL
5,race,CATEGORICAL
2,gender,CATEGORICAL
42,native_country,CATEGORICAL
1,hours_per_week,NUMERICAL
1,capital_gain,NUMERICAL
1,age,NUMERICAL
1,fnlwgt,NUMERICAL
1,capital_loss,NUMERICAL
1,education_num,NUMERICAL
2,income_label,LABEL

然后分别创建两个txt文件train和{},记录列车集TFRecords和有效的set TFRecords文件路径。在

选择您的模式、培训和评估

"""build and train model"""importsysfromabslimportapp,flagsimportdeeprayasdpfromdeepray.base.trainerimporttrainfromdeepray.model.build_modelimportBuildModelFLAGS=flags.FLAGSdefmain(flags=None):FLAGS(flags,known_only=True)flags=FLAGSmodel=BuildModel(flags)history=train(model)print(history)argv=[sys.argv[0],'--model=lr','--train_data=/Users/vincent/Projects/DeePray/examples/census/data/train','--valid_data=/Users/vincent/Projects/DeePray/examples/census/data/valid','--feature_map=/Users/vincent/Projects/DeePray/examples/census/data/feature_map.csv','--learning_rate=0.01','--epochs=10','--batch_size=64',]main(flags=argv)

型号列表

TitileBooktitleResources
FM: Factorization MachinesICDM'2010[pdf][code]
FFM: Field-aware Factorization Machines for CTR PredictionRecSys'2016[pdf][code]
FNN: Deep Learning over Multi-field Categorical Data: A Case Study on User Response PredictionECIR'2016[pdf][code]
PNN: Product-based Neural Networks for User Response PredictionICDM'2016[pdf][code]
Wide&Deep: Wide & Deep Learning for Recommender SystemsDLRS'2016[pdf][code]
AFM: Attentional Factorization Machines: Learning the Weight of Feature Interactions via Attention NetworksIJCAI'2017[pdf][code]
NFM: Neural Factorization Machines for Sparse Predictive AnalyticsSIGIR'2017[pdf][code]
DeepFM: DeepFM: A Factorization-Machine based Neural Network for CTR Prediction[C]IJCAI'2017[pdf][code]
DCN: Deep & Cross Network for Ad Click PredictionsADKDD'2017[pdf][code]
xDeepFM: xDeepFM: Combining Explicit and Implicit Feature Interactions for Recommender SystemsKDD'2018[pdf][code]
DIN: DIN: Deep Interest Network for Click-Through Rate PredictionKDD'2018[pdf][code]
DIEN: DIEN: Deep Interest Evolution Network for Click-Through Rate PredictionAAAI'2019[pdf][code]
DSIN: Deep Session Interest Network for Click-Through Rate PredictionIJCAI'2019[pdf][code]
AutoInt: Automatic Feature Interaction Learning via Self-Attentive Neural NetworksCIKM'2019[pdf][code]
FLEN: Leveraging Field for Scalable CTR PredictionAAAI'2020[pdf][code]
DFN: Deep Feedback Network for RecommendationIJCAI'2020[pdf][code]

如何使用DeePray构建自己的模型

from deepray.model.model_ctr继承BaseCTRModel类,并实现您自己的build_network()方法!在

贡献

DeePray仍在开发中,请大家捐款!在

* Hailin Fu (`Hailin <https://github.com/fuhailin>`)
* Call for contributions!

深水区

引用

DeePray由Hailin设计、开发和支持。 如果您在研究中使用了本库的任何部分,请使用以下BibTex条目引用它

@misc{DeePray,
  author = {Hailin Fu},
  title = {DeePray: A new Modular, Scalable, Configurable, Easy-to-Use and Extend infrastructure for Deep Learning based Recommendation},
  year = {2020},
  publisher = {GitHub},
  journal = {GitHub Repository},
  howpublished = {\url{https://github.com/fuhailin/deepray}},
}

许可证

版权所有(c)版权所有©2020 The DeePray Authors。版权所有。在

根据Apach许可证授权。在

参考文献

https://github.com/shenweichen/DeepCTR

https://github.com/aimetrics/jarvis

https://github.com/shichence/AutoInt

联系人

如果您需要合作或有任何疑问,请关注我的微信公众号:

编号:【最新技术】

StateOfTheArt

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将cassandra中的行数据转换为与列相关的嵌套json   java如何使用jcr XPath在jcr:content/@jcr:data中搜索?   java在使用openCV进行安卓开发时如何利用手机的广角镜头   java解析扩展了接口,结束了一个潜在的无限循环   位置服务的@Override方法中存在java Android应用程序错误   java本地线程的用途和需求是什么   具有左右子访问的java节点树遍历   java验证JsonWebToken签名   JUL日志处理程序中的java日志记录   嵌入式Java读取给定时间段的串行数据。   java有没有办法从多个URL获取多个图像?   java线程通过等待intent阻止自己发送intent   java Spring MVC解析多部分内容请求   java JPA/Hibernate静态元模型属性未填充NullPointerException   java格式错误的字符(需要引号,得到I)~正在处理   java为什么PrintWriter对象抛出FileNotFoundException?   java Neo4j未正确保存标签   java IE不加载图像