深度学习
飞猫侠
渴望一流技术的三流技术宅
展开
-
Keras with R (MLP)
Keras 是一款很不错的深度学习框架,因为把深度学习需要用到的组件都封装更高级,可以很方便自由组合调用,这里贴出中文学习的文档 http://keras-cn.readthedocs.io/en/latest/ , 英文好的童鞋可直接阅读原生态的英文文档。 本来是支持 python 的框架,现在也支持 R , 直接如下命令即可完成安装。 install.packages("Ker原创 2017-12-11 22:31:17 · 1952 阅读 · 0 评论 -
技术思考--- 静心篇
很多时候明明大家都在做同一件事情,学习同样的事物,但时间总会拉开彼此的差距。求知是人的本能,但现实生活中,多数人追求的并不是如此。这也许就是凡人和大师之间不可逾月的鸿沟。心中总有太多杂念,心生污秽,则智止矣。 再谈机器学习,从事相关工作也有些时间,还没走到从入门到放弃这条路,机器学习作为一门学科其实也并不是啥新科学,只是近些年被炒作到风口浪尖,甚至和人工智能联系在...原创 2019-05-21 20:37:57 · 291 阅读 · 0 评论 -
关于神经网络训练总结和思考
之前一直在无脑训练神经网络,定义好参数,网络,启动Session,feed给Graph,然后就是无休止的等待,有时候运气好,数据本身有很好的区分度,模型自然很快收敛,loss直线下降。但是当数据中混淆数据占比较大时,模型难免不会受到很大的干扰,简单来说就是,在当前batch_size下,你告诉模型向下走,下一个batch_size你告诉模型向上走。所以模型也蒙蔽,你丫的是要向上还是要...原创 2019-05-24 19:30:19 · 732 阅读 · 0 评论 -
NLP ----- Bert with Sentiment Analysis
Bert模型可谓是在2018年NLP领域的大杀器,它的刷新了各种数据集上的NLP任务新高度,好像预示着人类在让机器理解自然语言的道路上又近了一步。google research方面也公布出了模型和代码,让该模型走近千家万户。作为模型的搬运工,自然不能错过把这样的神器收入囊中的机会。官方也给出了pretraining和fine-tuning的代码,但仅仅是调试官方的代码还是不能将模型很...原创 2019-05-25 17:47:30 · 1075 阅读 · 0 评论 -
关于DNN,CNN,RNN的一些思考
关于DNN(这里指的dense),CNN,RNN之前一直没搞清楚这三种网络到底本质的区别在哪里?经过一些反复的思考和实验,结合tensorflow提供的API,将一些感悟和想法记录一下。 首先,创建一个 batch_size=1 的序列,假设该序列是经过词嵌入处理后的,如下:x_inputs = tf.constant(np.random.random(10*...原创 2019-03-21 01:49:40 · 1763 阅读 · 0 评论 -
tensorflow 源码学习 (一)
作为主流的机器学习框架,tensorflow的提供的接口变化很多,项目代码也比较复杂,为了让自己使用起来更得心应手,所以觉得还是有必要学习一下源码。个人觉得提升编程水平的两种最好方式,一个是自己造轮子,再一个就是阅读源码。 1.版本 2. 整体项目结构 这并不是tensorflow完整的项目结构,而仅仅是python的 tensorf...原创 2019-01-22 19:03:42 · 500 阅读 · 0 评论 -
Use tensorflow ----- Model release (1)
模型训练好之后,需要投入生产环境让模型产生价值。此时就需要将模型部署到生产环境。Tensorflow 有很好的生态系统,自行开发出了一套 tensorflow serving 作为模型的服务系统。这个将在下节介绍,本节采用 Flask + tensorflow 的方式让模型提供服务。 项目结构: 模型定义:import tensorfl...原创 2018-12-03 23:38:35 · 254 阅读 · 0 评论 -
Use tensorflow ----- Model release (2)
上节介绍了简单的 Flask + tensorflow 模型的部署方案,本节采用上节提到 tensorflow serving 来对模型进行部署。tensorflow serving 是基于C++开发的一套基于tensorflow模型服务框架,所以服务在性能上应该是支持高并发的。因此当线上流量过大时可以采用此方案来部署模型。依旧选用上节的模型做例子,同时这里需要安装一下doc...原创 2018-12-05 02:49:24 · 235 阅读 · 0 评论 -
using keras learn Neural networks (3)
语言模型是现代NLP技术的基础,所有基于统计的NLP算法都是以语言模型作为基础来设计的。什么是语言模型?简单地说,语言模型就是用来计算一个句子的概率的模型,即P(W1,W2,...Wk)。利用语言模型,可以确定哪个词序列的可能性更大,或者给定若干个词,可以预测下一个最可能出现的词语。 训练一个能覆盖很多语料的语言模型有些难度,以下通过一个简单的RNN的demo来说明它的奇妙。 ...原创 2018-10-25 04:12:15 · 146 阅读 · 0 评论 -
using keras learn Neural networks (1)
nn是现在十分火热流行的机器学习算法,随着越来越多的科学家和工程师加入到该算法的研究和开发当中。该算法也越来越健壮,从最基本的Perceptron --->MLP--->(CNN,RNN) ----> CNN + RNN,更复杂的网络结构和组合不断涌现。越复杂的网络组合和结构让人越难以理解,但万变不离其宗,其都是由最基本的神经元构成。本系列文章围绕网络延变...原创 2018-08-07 21:26:59 · 281 阅读 · 0 评论 -
Keras with R (RNN)
之前学习过了,MLP,CNN,所以RNN也不能落下。下面以经典数据集IMDB来训练一个RNN模型。IMDB是25,000条影评数据,被标记为正面/负面两种评价。影评已被预处理为词下标构成的序列。关于词下标构成的序列,即是将词从词典中查找对应的索引构成的序列。 eg: 上图即表示了一个序列样本,序列中的数字代表词在词典中的索引,若以该索引...原创 2018-08-12 15:09:34 · 3500 阅读 · 0 评论 -
using keras learn Neural networks (2)
上节探究了模型输入和神经元输出的关系,其主要是为了疏理清楚一些之前的思维误区,为了更好的理解RNN。同时也是因为自己在之前的学习过程始终存在一些不明白的地方,正所谓理越辨越明,学习之路任重而道远,特此记录下来,可以帮助到同时也存在相同困惑的童鞋们(天才少年可以跳过,不浪费时间),若理解有误,欢迎拍砖纠正。 词嵌入是现在基于nn处理各种NLP任务的First st...原创 2018-08-12 04:17:30 · 177 阅读 · 0 评论 -
Learning Tensorflow (5)
前节训练了一个简单的 softmax回归 的模型,并且增加了迭代次数以及更换了一下损失函数做了对比参照,这节来训练一个复杂点的模型 卷积神经网络,当然也仅仅是引用和改进一下官网的例子(谁让我是菜鸟呢~呜呜),才被某“算法大神”明确指出我算法太垃圾,连入门的算不上,(可怜的我内心受到了一万点伤害。。。),所以要更加要努力学习才能入 大神 的法眼。(其实此刻我的内心是不服气的,呼呼~~),往往有部分原创 2017-08-27 00:35:10 · 2038 阅读 · 0 评论 -
Keras with R (CNN)
MLP 本身已经可以达到很不错的准确率了,但是随着模型的迭代次数增加,精度基本趋向于稳定而不再有更多变化。这时候模型本身就遇到了瓶颈,需要更高级深入的模型来做更专业的工作。 CNN 基于这样的问题被开发设计出来,专门解决图像识别的问题。 基于之前的模型,加入卷积层,池化层使用 R 语言作为控制语言来训练一个 CNN , 看看效果。library(keras)# downloa原创 2017-12-12 02:34:45 · 1054 阅读 · 1 评论 -
Tensorflow 那些年踩过的坑
指定GPU import osgpu_no = '0' # or '1'os.environ["CUDA_VISIBLE_DEVICES"] = gpu_no 定义TensorFlow训练配置 config = tf.ConfigProto()config.gpu_options.allow_growth = True # 配置GPU内存分配方式,按需增长,很关键c...原创 2019-06-06 19:24:02 · 586 阅读 · 0 评论