自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

转载 深度学习(二):DNN损失函数和激活函数的选择

在《深度学习(一):DNN前向传播算法和反向传播算法》中,我们对DNN的前向反向传播算法的使用做了总结。里面使用的损失函数是均方差,而激活函数是sigmoid。实际上DNN可以使用的损失函数和激活函数不少。这些损失函数和激活函数如何选择呢?下面我们就对DNN损失函数和激活函数的选择做一个总结。一、 均方差损失函数+sigmoid激活函数的问题在讲反向传播算法时,我们用均方差损失函数和Sigmo...

2018-11-30 21:10:44 3021

转载 深度学习(一):DNN前向传播算法和反向传播算法

文章目录一、深度神经网络(DNN)模型1.1 从感知机到神经网络1.2 DNN的基本结构二、DNN前向传播算法2.1 DNN前向传播算法数学原理2.2 DNN前向传播算法2.3 DNN前向传播算法小结三、DNN反向传播算法3.1 DNN反向传播算法要解决的问题3.2 DNN反向传播算法的基本思路3. 3 DNN反向传播算法过程3.4 DNN反向传播算法小结参考文献一、深度神经网络(DNN)模型...

2018-11-29 17:32:13 19249 10

原创 hive 有序化地将多行拼接成一行

有这么一个数据集:session_id row_number sku_id aa 2 a aa 3 c aa 1 b bb 2 d bb 3 c bb 1 a bb 4 a 根据session_id分组,将sku_id按照row_number的顺序,多行拼接成一行。 ...

2018-11-28 19:04:26 7930 2

原创 关键词抽取算法介绍:TF-IDF和TextRank

一、前言关键词抽取就是从文本里面把跟这篇文档意义最相关的一些词抽取出来。这个可以追溯到文献检索初期,当时还不支持全文搜索的时候,关键词就可以作为搜索这篇论文的词语。因此,目前依然可以在论文中看到关键词这一项。除了这些,关键词还可以在文本聚类、分类、自动摘要等领域中有着重要的作用。比如在聚类时将关键词相似的几篇文档看成一个团簇,可以大大提高聚类算法的收敛速度;从某天所有的新闻中提取出这些新闻的关...

2018-11-25 16:33:37 4876

原创 word2vec的词向量&&神经网络的embedding层的关系

自己之前学习了一波word2vec的词向量&&神经网络的embedding,关于这2者的原理和实践,可以参看我之前的博客:利用神经网络的embedding层处理类别特征 (一)理解word2vec:原理篇 (二)理解word2vec:实践篇这篇文章的主题是分析word2vec的词向量&&神经网络的embedding层的关系,以及在实际中,如何同时应用它们。...

2018-11-22 11:55:28 9159 4

原创 (二)理解word2vec:实践篇

在《(一)理解word2vec:原理篇》中,我已经介绍了word2vec的相关应用和原理。在这篇博客中,我主要介绍word2vec的实践。本篇博客的基础实践代码仍然参考刘新建老师的博客,在他文章的基础上,我又扩展了一些功能。我用的实现word2vec的包是gensim(官方github)。gensim是一款开源的第三方Python工具包,用于从原始的非结构化的文本中,无监督地学习到文本隐层...

2018-11-20 17:52:17 3816

原创 (一)理解word2vec:原理篇

为什么想起来学习word2vec呢?其实之前自己根本没有接触过NLP的知识和任务,只是最近尝试使用了embedding的方法去处理类别特征和用embedding去做推荐,发现有不错的效果。同时,自己也感触到了所掌握知识的匮乏,因此,决定好好学习一下word2vec。最近几天自己研读了网上一些介绍word2vec原理的博客,写得非常得清晰和易懂。因此,自己也想做一个总结,关于word2vec的原理...

2018-11-20 10:10:54 3440 2

原创 Python:如何从字典的多value中的某个值得到这个多value?

在这里再次解释一下题目:目的:一个字典,存在着1key多value的现象,如果根据多value中的值,找到这个key,并且得到这个key对应的所有value?比如我们这里有一个字典:mydict = {'george':16,'amber':[19, 20]}我们想根据19,得到19和20。我这里提供2种方法:①:直接上代码,思路比较简单。# 找到19这个value...

2018-11-17 17:34:10 6429

翻译 基于深度神经网络的embeddding来构建推荐系统

在之前的博客中,我主要介绍了embedding用于处理类别特征的应用,其实,在学术界和工业界上,embedding的应用还有很多,比如在推荐系统中的应用。本篇博客就介绍了如何利用embedding来构建一个图书的推荐系统。本文主要译自《Building a Recommendation System Using Neural Network Embeddings》,完整详细的代码见官方GitH...

2018-11-17 14:47:41 1828 2

原创 Python生成器(Generator)和yield用法详解

通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中,这种一边...

2018-11-16 15:49:12 7637

原创 广义线性模型与指数分布族的理解

在机器学习领域,很多模型都是属于广义线性模型(Generalized Linear Model, GLM),如线性回归,逻辑回归,Softmax回归等。广义线性模型有3个基本假设:(1) 样本观测值yiy_iyi​满足带参数 η\etaη的指数分布族。即GLM是基于指数分布族的,所以我们先来看一下指数分布族的一般形式:p(y;η)=b(y)exp(ηTT(y)−a(η))p(y;\eta)...

2018-11-14 17:39:58 3074

转载 数据倾斜及其高效解决方法

数据倾斜是大数据领域绕不开的拦路虎,当你所需处理的数据量到达了上亿甚至是千亿条的时候,数据倾斜将是横在你面前一道巨大的坎。很可能有几周甚至几月都要头疼于数据倾斜导致的各类诡异的问题。数据倾斜是指:mapreduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时间很长,这是因为某一个key的条数比其他key多很多(有时是百倍或者千...

2018-11-13 18:20:07 34691 1

翻译 矩阵与张量的区别

关于矩阵和张量的区别有些人可能不太清楚,看了这篇文章相信你会很明白了。矩阵是由括号括起的n×m(例如,3×3)个数字的网格。我们可以加上和减去相同大小的矩阵,只要大小兼容((n×m)×(m×p)= n×p),就将一个矩阵与另一个矩阵相乘,以及可以将整个矩阵乘以常数。向量是一个只有一行或一列的矩阵。我们可以对任何矩阵进行一系列数学运算。不过,基本的思想是,矩阵只是一个二维的数字网格。张量...

2018-11-13 11:15:51 18809 5

转载 如何理解数据科学的中的数据泄露(Data Leakage)

数据科学竞赛中有时会出现这样的奇特景观:某只队伍,靠着对极个别feature的充分利用,立即将对手超越,成功霸占冠军位置,而且与第二名的差距远超第二名与第十名的差距。然而,这些feature却不是在因果关系上顺利解释预测值的‘因’,反而是预测值的‘果’。1. Data Leakage定义存在和利用这种倒‘因’为‘果’的feature的现象,叫数据竞赛中的Data Leakage。这里的...

2018-11-12 11:31:15 8400

转载 为什么对预测任务里的标签Y做对数处理?

平时在一些数据处理中,经常会把原始数据取对数后进一步处理。之所以这样做是基于对数函数在其定义域内是单调增函数,取对数后不会改变数据的相对关系,取对数作用主要有:1. 缩小数据的绝对数值,方便计算。例如,每个数据项的值都很大,许多这样的值进行计算可能对超过常用数据类型的取值范围,这时取对数,就把数值缩小了,例如TF-IDF计算时,由于在大规模语料库中,很多词的频率是非常大的数字。2. 取对数...

2018-11-08 20:25:46 3519

原创 (一)因式分解机(Factorization Machine,FM)原理及实践

因子分解机(Factorization Machine),是由Konstanz大学(德国康斯坦茨大学)Steffen Rendle(现任职于Google)于2010年最早提出的,旨在解决大规模稀疏数据下的特征组合问题。不久后,FM的升级版模型场感知分解机(Field-aware Factorization Machine,简称FFM)由来自Yu-Chin Juan(阮毓钦,毕业于中国台湾大学,现...

2018-11-06 14:30:41 12984 3

原创 Windows下安装pyFM

本篇博客根据自己实际安装的经验,记录了下如何在Windows下安装pyFM。我的系统是Windows 10,Python版本是3.6。遇到了不少的安装错误,但是都一一解决了。安装步骤:一、从官方github上克隆然后试图安装:pip install git+https://github.com/coreylynch/pyFM会报错:error: Microsoft ...

2018-11-05 15:33:37 2855 2

原创 (三)提升树模型:Lightgbm原理深入探究

本篇博客是提升树模型博客的第三篇文章,也是最后一篇文章。第一篇介绍GBDT的博客可以参看这里。第二篇介绍Xgboost的博客可以参看这里。本篇博客主要讲解轻量级的提升树模型-LightGBM。LightGBM的资料网上很多,但是讲解得都很浅,大部分都是从官方文档摘抄过来的,没有深究。因此,在参考部分资料和源码的基础上,本篇博客想深入体会作者的思路,记录一些细节问题,供读者参考。...

2018-11-02 18:57:08 12471 1

原创 类别特征的处理方法大全

类别特征在现实数据里十分常见,处理类别特征对于机器学习里的各种算法来说都是必不可少的过程。本篇文章总结了几种常见的处理类别特征的方法,这些方法不仅有传统的one-hot编码的形式,也有目前最先进的思路。一、one-hot编码详见这篇文章。二、类别特征的最优切分。该方法需要特定工具的支持,如LightGBM,详见这篇文章。三、转成数值特征3.1 利用embedding...

2018-11-01 20:30:51 6486

原创 利用神经网络的embedding层处理类别特征

类别特征在现实里十分常见,处理的方法也很多,最常见的思路是转为one-hot编码,当然这种处理方式比较粗暴,在许多算法里效果也不是很好。还有的处理方式寻找类别特征的最优切分,这个需要特定工具的支持,如LightGBM,细节见这篇文章。本篇文章主要讲解如何利用神经网络的embedding层处理类别特征。可以说,本篇文章是目前讲解利用神经网络的embedding层处理类别特征的最清晰的文章,相信读...

2018-11-01 17:20:51 26054 10

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除