129页继续往下:
(6)深度学习
支持主流的Tensflow、MXnet、Caffe、XGBoost、LightGBM 等深度学习框架,利用这些组件可以灵活、高效的构建深度学习应用。
Tensorflow Google公司开源的深度学习框架。(谷歌出品,必属精品)Theano 诞生于蒙特利尔理工学院。(因为Theano的研究人员大都去了Google,某种程度上Theano是Tensorflow的爸爸)Caffe 由加州伯克利大学的贾扬清博士开发。(早期在计算机视觉领域应用非常广泛)MXnet 有李沐等人开发的兴趣项目,如今是亚马逊的官方框架。----------------------------------------------------
关于Tensflow :
一篇文章讲的挺好的,翻译了2017年google工程师在开发者大会里面的一个视频介绍。详细参考这里:https://zhuanlan.zhihu.com/p/32225723
1.什么是tensflow?
在深度学习初始阶段,每个深度学习的研究者都需要写大量的重复代码。为了提高工作效率,一些研究者将这些重复的代码写成一套深度学习框架,供后续研究者使用。TensorFlow能够让你直接解决各种机器学习任务,TensorFlow的真正独特之处在于,能够在5行或者10行代码中构建模型。然后应用这个模型,进行扩展做出产品。
判断一张图片是猫是狗
举个例子,如何判断一个图片是猫是狗,tensflow可以构建一个神经网络。这像是人脑中神经元运行的极简版本。图中每个小点都是一个神经元,这些神经元以层为集合单位被关联起来。从那些我们所看到的图片,到我们所能理解的输出。
图像分类神经网络
图中每个小点都是一个神经元,这些神经元以层为集合单位被关联起来。从那些我们所看到的图片,到我们所能理解的输出。
接着浏览大量猫狗的图片,它们均被标注为正确的类别,然后进行预测。一开始,所有这些神经元都被随机地初始化,完全凭猜。
我们要计算猜测与正确结果之间的距离,即误差。然后使用误差,来调整神经元之间的连接强度。基本上,我们想缓慢地逼近正确答案。在我们重复上述步骤约一百万次之后,你就可以得到一个不错的猫狗预测模型。
但是你真正想实现的,其实是创建一个预测猫狗的网站。用户给了你一张图片,你需要告诉他们这当中包含了猫还是狗。在训练中习得的连接强度,能使你的模型推广。
1.什么是tensflow?
1-1 : 基于tensflow的框架,开发者可以训练出类似上面的猫狗分类的模型,含许多层,比早期的神经网络更复杂。
所谓深度学习的深度,就是在进行训练的时候,构建了一层层的神经元,层与层之间有更深层次的协调,这样可以产生更加复杂的链接。最终的结果就是,开发者的模型中,有百万级别甚至十亿级别的神经元,极大优于早期的手工构建的模型。
1-2:Tensflow 另外一个好处就是把用户的代码转换成一层层的操作图。
tensflow 把代码转成操作图
2.Tensflow 可以做什么?
机器翻译、实时相机翻译(图片识别+机器翻译)、图片描述(基于提供的图片做一个文字描述)、机器视觉(眼科的疾病预测)、视觉自动分类(黄瓜分类)
----------------------------------------------------------------------------
另外一个pytorch 现在很火,特意搜了下。下面这篇文章讲的很好:
https://zhuanlan.zhihu.com/p/58821816
1.什么是pytorch?
PyTorch是目前全世界最流行的深度学习框架之一。是一个基于Torch的Python开源机器学习库,用于自然语言处理(NLP)等应用程序。
PyTorch
PyTorch 是由 Torch7 团队开源的,这也是Facebook 的 AI 研究团队发布了一个 Python 工具包,据该项目官网介绍,是一个 Python 优先的深度学习框架,能够在强大的 GPU 加速基础上实现张量和动态神经网络。
总结一下pytorch1.0特点:
(1)支持GPU
(2)动态神经网络
(3)Python优先
(4)命令式体验
(5)轻松扩展
2.Pytorch 实践
手写体分类。
下面链接介绍了更多pytorch的知识
https://pytorch123.com/FirstSection/PyTorchIntro/
关于pytorch 相比tensflow的优势:
pytorch 主要由Facebookd的人工智能小组开发,不仅能够 实现强大的GPU加速,同时还支持动态神经网络,这一点是现在很多主流框架如TensorFlow都不支持的。 PyTorch提供了两个高级功能:
* 具有强大的GPU加速的张量计算(如Numpy)
* 包含自动求导系统的深度神经网络
TensorFlow和Caffe都是命令式的编程语言,而且是静态的,首先必须构建一个神经网络,然后一次又一次使用相同的结构,如果想要改 变网络的结构,就必须从头开始。但是对于PyTorch,通过反向求导技术,可以让你零延迟地任意改变神经网络的行为,而且其实现速度 快。正是这一灵活性是PyTorch对比TensorFlow的最大优势。
另外,PyTorch的代码对比TensorFlow而言,更加简洁直观,底层代码也更容易看懂,这对于使用它的人来说理解底层肯定是一件令人激 动的事。
所以,总结一下PyTorch的优点: * 支持GPU * 灵活,支持动态神经网络 * 底层代码易于理解 * 命令式体验 * 自定义扩展
-----------------------------------------------------------------
(7) 文本分析:
主要包括文本相关的特征处理、模型构建等功能、专门用于实现文本分类、关键词抽取、摘要生成等文本相关应用。包括PLDA、TF-IDF、Word2Vec、Doc2Vec、词频统计、去停用词、分词处理和关键词抽取等。
-----------------------------------------------------------------------------
TF-IDF:
TF-IDF 是一种统计方法,用以评估一个字或词相对一个文件集或一个语料库中的其它词语的重要程度。字词的重要性随着它在文件集中出现的次数的增加成正比,同时随着它在语料库中出现的频率成反比下降。
在某案例中,对于每个用户来说,其身上同一标签出现的次数越多,该标签对于这个用户来说越重要,该标签在全部用户的所有标签产生的标签集中出现的次数越多,该标签的重要性越低。
rel(P,T) = TF(P,T)* IDF(P,T)TF 表示一个标签(T)在这个用户(P)所有标签中出现的频率,表示用户和标签的紧密程度。IDF 表示标签(T)在所有标签中出现的次数(P),这个标签越稀有,表示它和用户之间的关系越紧密。
摘自用户画像-用户标签IDF权重
Word2vec:
Word2Vec是一个处理文本的两层神经网络。 它的输入是一个文本语料库,它的输出是一组向量:语料库中的单词的特征向量。 Word2Vec不是一个深度神经网络,它将文本转换成一个深度网络可以理解的数值形式。
2. 词向量
自然语言处理相关任务中要将自然语言交给机器学习中的算法来处理,通常需要将语言数学化,因为机器不是人,机器只认数学符号。向量是人把自然界的东西抽象出来交给机器处理的东西,基本上可以说向量是人对机器输入的主要方式了。
词向量就是用来将语言中的词进行数学化的一种方式,顾名思义,词向量就是把一个词表示成一个向量。 我们都知道词在送到神经网络训练之前需要将其编码成数值变量,常见的编码方式有两种:One-Hot Representation 和 Distributed Representation。
.Word2Vec的网络结构
Word2Vec是轻量级的神经网络,其模型仅仅包括输入层、隐藏层和输出层,模型框架根据输入输出的不同,主要包括CBOW和Skip-gram模型。 CBOW的方式是在知道词的上下文的情况下预测当前词,而Skip-gram是在知道了词的情况下,对词的上下 文进行预测。
Word2Vec在工业界的应用
Word2Vec主要原理是根据上下文来预测单词,一个词的意义往往可以从其前后的句子中抽取出来。
而用户的行为也是一种相似的时间序列,可以通过上下文进行推断。当用户浏览并与内容进行交互时,我们可以从用户前后的交互过程中判断行为的抽象特征,这就使得我们可以把词向量模型应用到推荐、广告领域当中。
7.1 NLP领域
Word2Vec学习到的词向量代表了词的语义,可以用来做分类、聚类、也可以做词的相似度计算。
把Word2Vec生成的向量直接作为深度神经网络的输入,可以做sentiment analysis(情绪分析)等工作。
7.2 图嵌入
基于Word2Vec这一类的Graph Embedding方法有很多,具体可以参考论文:DeepWalk(是引入Word2Vec思想比较经典的图嵌入算法),node2vec,struc2vec 等等。
7.3 推荐领域
Airbnb在论文《Real-time Personalization using Embeddings for Search Ranking at Airbnb》中提出将用户的浏览行为组成List,通过Word2Vec方法学习item的向量,其点击率提升了21%,且带动了99%的预定转化率。该论文主要是在Skip-gram 模型的基础上做了改进。
Yahoo在论文《E-commerce in Your Inbox: Product Recommendations at Scale》中提出Yahoo邮箱从发送到用户的购物凭证中抽取商品并组成List,通过Word2Vec学习并为用户推荐潜在的商品;
7.4 广告领域
Yahoo在论文《Scalable Semantic Matching of Queries to Ads in Sponsored Search Advertising》中提出将用户的搜索查询和广告组成List,并为其学习特征向量,以便对于给定的搜索查询可以匹配适合的广告。
看到page130页,只看了一页,但翻了好多资料。。。。
待续。
还没有评论,来说两句吧...