Giter VIP home page Giter VIP logo

deep_learning's Introduction

介绍

非专业的nlp、图像工程师,tensorflow调包工程师,注重快速实现,那么,让我们一起做点有趣的事情吧! 这个工程的目的是将自己在工程和学术研究中,一些应用到深度学习的思路和方法整理汇总出来:

  • 帮助深度学习入门同学快速上手
  • 提供一些在现有的机器学习方向上的新的方向和思路的整理
  • 解锁思维的禁锢

关于深度学习相关的浅入浅出的介绍,可以快速入门一下浅入浅出深度学习理论实践

关于深度学习相关的点击预估的介绍,可以快速入门一下yoho注册概率预估

关于深度学习相关的图像识别的介绍,可以快速入门一下基于SSD下的图像内容识别(一)基于SSD下的图像内容识别(二)

关于深度学习相关的目标向量化的介绍,可以快速入门一下深度学习下的电商商品推荐

关于深度学习相关的多层感知机的介绍,可以快速入门一下基于Tensorflow实现多层感知机网络MLPs

关于深度学习相关的deepfm的介绍,可以快速入门一下基于Tensorflow实现DeepFM

关于深度学习相关的Deep Neural Networks for YouTube Recommendations的介绍,可以快速入门一下利用DNN做推荐的实现过程总结

关于深度学习相关的RCNN_GRU的介绍,实在没空写博客了,sorry

关于深度学习相关的TextCNN的介绍,实在没空写博客了,sorry

关于深度学习相关的Bert做fine-tune的代码(类似接口,具体实现按照时间项目去改),我每次做nlp的baseline的时候,都是在这个代码上进行更改,主要是ner和classify两个问题的模版,可以快速入门一下Bert你需要知道的一些细节

关于深度学习相关的XDeepFM的介绍,可以快速入门一下xDeepFM架构理解及实现

关于深度学习相关的DeepInterestNetwork的介绍,实在没空写博客了,sorry

关于深度学习相关的Estimator框架模版的介绍,原因有三:

  • 组内同学开发不规范,tf代码风格包括:slim,keras,contrib,graph各式各样的写法,混乱不好管理
  • 代码逻辑不清晰,随处定义变量,随处定义函数
  • 由tornado服务迁往serving服务,需要更新的更频繁,接受的代码更加简单易上手,不需要高频去查各种tf接口

关于深度学习相关的Doc2Vec的介绍,可以快速入门一下Distributed Representations of Sentences and Documents


项目

RNN_applied_classification

利用GRU,提取用户的行为时序稀疏特征,并产出stack初始层的思路

CNN_applied_classification

利用全连接+CNN,提取稀疏特征,并产出stack初始层的思路

网络结构

Wide & Deep

Google 推荐算法的代码修正,原始代码来源于网络但是不能执行及流程不完整,修复代码demo,现可以直接复制后使用

网络结构

注意

在Linux环境下,tensorflow==1.0.0会有如下的报错,而MacBook环境下,tensorflow=1.0.0就不会报错:

double free or corruption (!prev): 0x0000000001f03dd0 ***

解决方法是更新版本到1.6.0(其他版本我没试),官方之前有人提过issue,大家注意一哈!

SSD_object_recognition

利用ssd直接实现物体区域识别

图片版效果:

视频版本地址:

行人识别场景

车辆识别场景

Word2vec_recommend

利用样本频率+Huffman树路径最大概率的方法,实现特征向量化的思路

MLPs

最简单的入门级神经网络算法 多层感知机网络

DeepFm

入门级别的CTR Prediction的神经网络算法 DeepFM的网络结构图

可能感兴趣的其他相关内容:FM部分||FFM部分

Deep Neural Networks for YouTube Recommendations

最近在利用来自google的YouTube团队发表在16年9月的RecSys会议的论文Deep Neural Networks for YouTube Recommendations做用户个性化商品推荐,看到不少论文上的理论总结分析,都很精彩,我手动实现了一遍,总结了一些实际工程中的体会,给大家也给自己一个总结交代。 Deep Neural Networks for YouTube Recommendations

normal_version:按照论文未修改的basemodel

attention_version:在basemodel的基础上,加了attention机制(线性attention/rnn attention)

record_dataformat_version:在basemodel的基础上,利用record机制存储数据,加快训练速度

RCNN_GRU

  • RCNN_GRU/model: 初始化模型的脚本
  • RCNN_GRU/process: 数据预处理的脚本

TextCNN

TextCNN

在做黄反广告文本的识别:

  • 初版本是朴素贝叶斯+LR(recall:72%,precision:88%)
  • 优化版是CBOW+LR(recall:77%,precision:88%)
  • 进阶版是CBOW/GLOVE+MLR(recall:85%,precision:91%)
  • 当前版是[D2V,CBOW,GLOVE]+TextCNN(recall:90%,precision:92%)

Bert

Bert+BiLSTM+Crf/FNN,关于Bert的更多可以参考我的ppt分享

XDeepFM

网络结构

主要把网络架构梳理了一边,后面项目结束再把整体的工程代码开源出来。

DeepInterestNetwork

和常见的网络上的版本不同的有两个地方的修改,我司实际使用上比官方版本要提升0.2pp的auc:

  • dice中的predict的bn过程采取了训练集的期望方差
  • 在fc的过程中用了tf.tanh替代tf.sigmoid/dice/prule

Estimator框架模版

  • data
    • 数据构造
    • DataMake.py
      • 常规构造方法
    • DeepFmDataMake.py
      • DeepFM的数据构造
    • TextCNNDataMake.py
      • TextCNN的数据构造
  • model
    • 模型框架
      • DeepFM
      • TextCNN
  • serving
    • docker部署
    • serving_grpc_client.py
      • 调用serving服务

Estimator框架重新写了DeepFm和TextCNN,总的来说,代码量差不多只是更加规范化了,以后建议以Estimator框架为模版开发。

Doc2Vector

来自于Distributed Representations of Sentences and Documents

工具

请参考:requirements.txt

其他

deep_learning's People

Contributors

nosuggest avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deep_learning's Issues

我的问题汇总——关于Youtube2016

hi,dear 大佬
这是我的一些浅显的问题,
请指点下,多谢

1.能不能提供下数据集
2.这里面
data.columns = ['UId', 'ItemId', 'BrandId', 'MiddlesortId', 'ClickTime', 'Date']
middlesortId是啥?Date呢?
3.负采样是怎么做的啊?
self.sub_sample = tf.placeholder(tf.int32, [None, None]) # soft layer (pos_clict,neg_list)[B,sub_size]
4.y是什么呢?怎么是2维的呢?是one-hot之前的吧?link
self.y = tf.placeholder(tf.float32, [None, None]) # label one hot[B]
5.这里的item与brand及middlesort各自代表什么意思呢?我原以为item就是brand呢?
还是说item是物品,brand是牌子名字,middlesort又是什么呢?同问题2

        item_emb_w = tf.get_variable("item_emb_w", [self.item_count, self.embedding_size])
        brand_emb_w = tf.get_variable("brand_emb_w", [self.brand_count, self.embedding_size])
        msort_emb_w = tf.get_variable("msort_emb_w", [self.msort_count, self.embedding_size])

6.请教下mask是表示什么?对这个词有点陌生
mask = tf.sequence_mask(self.sl, tf.shape(h_emb)[1], dtype=tf.float32) # [B,T]
另外这里的sl是什么啊?

还是请提供下数据及必要的说明吧
多谢大佬

loss is nan

楼主,您好,我的训练数据特征比较稀疏,有好多0,训练loss一直为nan,请问有什么解决办法么?
非常期待您的回答

loss没有显著下降

楼主,您好,在我的数据集上,训练过程loss一直没有明显下降,有什么改进的办法么?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.