#6 理解 LSTM 网络

循环神经网络(RNN)

人们的每次思考并不都是从零开始的。比如你在阅读这篇文章时,你基于对前面的文字的理解来理解你目前阅读到的文字,而不是每读到一个文字时,都抛弃掉前面的思考,从头开始。你的记忆是有持久性的。

传统的神经网络并不能如此,这似乎是一个主要的缺点。例如,假设你在看一场电影,你想对电影里的每一个场景进行分类。传统的神经网络不能够基于前面的已分类场景来推断接下来的场景分类。

循环神经网络(Recurrent Neural Networks)解决了这个问题。这种神经网络带有环,可以将信息持久化。

14585451475265 继续阅读#6 理解 LSTM 网络

#5 Deep learning RNN-RBM简单理解

前言:

本文主要是bengio的deep learning tutorial教程主页中最后一个sample:rnn-rbm in polyphonic music. 即用RNN-RBM来model复调音乐,训练过程中采用的是midi格式的音频文件,接着用建好的model来产生复调音乐。对音乐建模的难点在与每首乐曲中帧间是高度时间相关的(这样样本的维度会很高),用普通的网络模型是不能搞定的(普通设计网络模型没有考虑时间维度,图模型中的HMM有这方面的能力),这种情况下可以采用RNN来处理,这里的RNN为recurrent neural network中文为循环神经网络,另外还有一种RNN为recursive neural network翻为递归神经网络。本文中指的是循环神经网络。

 

RNN简单介绍:

首先来看RNN和普通的feed-forward网络有什么不同。RNN的网络框架如下:

23214434-ef7947ebef344d86b21e0d0550dc833d 继续阅读#5 Deep learning RNN-RBM简单理解

重要python工具-代码质量篇

作为一名开发者,无论是不是在IDE或者命令行,你应该使用那些有用的工具库武装自己。如果你没有考虑代码干净、可读和可维护性,你就很可能看不到一些工具的好处。

python禅道

% python -m this

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
...

继续阅读重要python工具-代码质量篇

Factorization Machines介绍

Steffen Rendle2010年提出Factorization Machines[1](下面简称FM),并发布开源工具libFM[2]。凭借这单个模型,他在KDD Cup 2012上,取得Track1的第2名和Track2的第3名。这篇文章简要介绍下这个模型。

与其他模型的对比

SVM相比,FM对特征之间的依赖关系用factorized parameters来表示。对于输入数据是非常稀疏(比如自动推荐系统),FM搞的定,而SVM搞不定,因为训出的SVM模型会面临较高的bias。还有一点,通常对带非线性核函数的SVM,需要在对偶问题上进行求解;而FM可以不用转为对偶问题,直接进行优化。

目前还有很多不同的factorization models,比如matrix factorization和一些特殊的模型SVD++, PITF, FPMC。这些模型的一个缺点是它们只适用于某些特定的输入数据,优化算法也需要根据问题专门设计。而经过一些变换,可以看出FM囊括了这些方法。

模型简介

2-way FM(degree = 2)FM中具有代表性,且比较简单的一种。就以其为例展开介绍。其对输出值是如下建模:

Factorization Machines介绍 - vividfree - 罗维的BLOG

继续阅读Factorization Machines介绍

#4 大话“奇异值”矩阵

“奇异值”的物理意义是什么?

矩阵的奇异值是一个数学意义上的概念,一般是由奇异值分解(Singular Value Decomposition,简称SVD分解)得到。如果要问奇异值表示什么物理意义,那么就必须考虑在不同的实际工程应用中奇异值所对应的含义。下面先尽量避开严格的数学符号推导,直观的从一张图片出发,让我们来看看奇异值代表什么意义。

这是女神上野树里(Ueno Juri)的一张照片,像素为高度450*宽度333。暂停舔屏先(痴汉脸)

7916513406802738740

继续阅读#4 大话“奇异值”矩阵

文本特征提取方法研究

一、课题背景概述

文本挖掘是一门交叉性学科,涉及数据挖掘、机器学习、模式识别、人工智能、统计学、计算机语言学、计算机网络技术、信息学等多个领域。文本挖掘就是从大量的文档中发现隐含知识和模式的一种方法和工具,它从数据挖掘发展而来,但与传统的数据挖掘又有许多不同。文本挖掘的对象是海量、异构、分布的文档(web);文档内容是人类所使用的自然语言,缺乏计算机可理解的语义。传统数据挖掘所处理的数据是结构化的,而文档(web)都是半结构或无结构的。所以,文本挖掘面临的首要问题是如何在计算机中合理地表示文本,使之既要包含足够的信息以反映文本的特征,又不至于过于复杂使学习算法无法处理。在浩如烟海的网络信息中,80%的信息是以文本的形式存放的,WEB文本挖掘是WEB内容挖掘的一种重要形式。 继续阅读文本特征提取方法研究

8个学习pandas数据分析的超级资源

转自:Top 8 resources for learning data analysis with pandas

我最近发布了一系列关于“pandas”的视频,pandas是一个流行的python数据分析,控制和可视化的库。但是对于想要学习pandas的小伙伴,我已经准备了我的推荐列表:

    1. pandas数据结构入门: 这是Greg Reda的经典pandas教程三部曲的第一部, 第二部和第三部戳这里:第二部, 第三部 。它非常易读,对入门非常有益, 而且有很多有用的例子。
    2. Pandas简介 / 用Pandas折腾数据/ Pandas作图: 三个比较长但是写的很好、很好读的Jupyter notebook笔记,出自范德堡大学的Chris Fonnesbeck写的高级统计计算教程。 如果你想深入了解Pandas的细节和强大功能,这些笔记不容错过。

    继续阅读8个学习pandas数据分析的超级资源