机器学习和深度学习
jim_cainiaoxiaolang
我热爱大数据开发,希望大家多交流
展开
-
深度强化学习(机器之心)
深度强化学习1.增强学习的主要挑战是什么?信用分配问题(credit assignment problem )与探索-开发困境(exploration-exploitation dilemma)。2.如何用数学术语公式化强化学习?我们将会定义马尔可夫决策过程(Markov Decision Process)并利用它来推导强化学习。3.我们如何生成长期策略?我们会定义「折扣未来奖转载 2016-09-19 23:21:10 · 5528 阅读 · 0 评论 -
机器学习算法(降维)—主成分分析(PCA)
一、数据降维 对于现在维数比较多的数据,我们首先需要做的就是对其进行降维操作。降维,简单来说就是说在尽量保证数据本质的前提下将数据中的维数降低。降维的操作可以理解为一种映射关系,例如函数,即由原来的二维转换成了一维。处理降维的技术有很多种,如前面的 SVD奇异值分解,主成分分析(PCA),因子分析(FA),独立成分分析(ICA)等等。二、PCA的概念 PCA是一种较为常原创 2016-12-14 21:36:52 · 824 阅读 · 0 评论 -
机器学习算法(降维)—SVD奇异值分解
一、SVD奇异值分解的定义 假设是一个的矩阵,如果存在一个分解:其中为的酉矩阵,为的半正定对角矩阵,为的共轭转置矩阵,且为的酉矩阵。这样的分解称为的奇异值分解,对角线上的元素称为奇异值,称为左奇异矩阵,称为右奇异矩阵。二、SVD奇异值分解与特征值分解的关系 特征值分解与SVD奇异值分解的目的都是提取一个矩阵最重要的特征。然而,特征值分解只适用于方阵,而SVD奇异原创 2016-12-14 21:38:38 · 4559 阅读 · 0 评论 -
机器学习算法(聚类算法)—K-Means算法
K-Means首先随机初始化k个聚类中心,通过迭代的方式不断调整聚类中心,知道k个聚类中心不再改变为之。在K-Means算法中,和K-近邻算法一样,这里的K的取值和相似性的度量都是很重要的。一、聚类算法的简介 聚类算法是一种典型的无监督学习算法,主要用于将相似的样本自动归到一个类别中。聚类算法与分类算法最大的区别是:聚类算法是无监督的学习算法,而分类算法属于监督的学习算法原创 2016-11-22 21:23:23 · 593 阅读 · 0 评论 -
机器学习算法(聚类算法)—基于密度的聚类算法DBSCAN
一、基于密度的聚类算法的概述 最近在Science上的一篇基于密度的聚类算法《Clustering by fast search and find of density peaks》引起了大家的关注(在我的博文“机器学习算法(聚类算法)-基于密度峰值的聚类算法”中也进行了中文的描述)。于是我就想了解下基于密度的聚类算法,熟悉下基于密度的聚类算法与基于距离的聚类算法,如K-Means算法之原创 2016-11-22 21:30:50 · 1170 阅读 · 1 评论 -
机器学习算法(推荐算法)—协同过滤推荐算法(1)
一、推荐系统的概念 推荐系统(Recommendation System, RS),简单来说就是根据用户的日常行为,自动预测用户的喜好,为用户提供更多完善的服务。举个简单的例子,在京东商城,我们浏览一本书之后,系统会为我们推荐购买了这本书的其他用户购买的其他的书:推荐系统在很多方面都有很好的应用,尤其在现在的个性化方面发挥着重要的作用。二、推荐系统的分类 推荐系原创 2016-11-23 17:48:18 · 1321 阅读 · 0 评论 -
机器学习算法(推荐算法)—协同过滤推荐算法(2)
一、基于协同过滤的推荐系统 协同过滤(Collaborative Filtering)的推荐系统的原理是通过将用户和其他用户的数据进行比对来实现推荐的。比对的具体方法就是通过计算两个用户数据之间的相似性,通过相似性的计算来说明两个用户数据之间的相似程度。相似度函数的设计必须满足度量空间的三点要求,即非负性,对称性和三角不等性。常用的相似度的计算方法有:欧式距离法、皮尔逊相关系数法和夹角余原创 2016-11-23 17:51:04 · 1026 阅读 · 0 评论 -
学习18大经典数据挖掘算法
本文所有涉及到的数据挖掘代码的都放在了github上了。 地址链接: https://github.com/linyiqun/DataMiningAlgorithm 大概花了将近2个月的时间,自己把18大数据挖掘的经典算法进行了学习并且进行了代码实现,涉及到了决策分类,聚类,链接挖掘,关联挖掘,模式挖掘等等方面。也算是对数据挖掘领域的小小入门了吧。下面就做个小小的总结,后面都是我自原创 2016-12-15 13:01:00 · 492 阅读 · 0 评论 -
玩转机器学习
“玩转”攻略 1.下载Anaconda套件,把python和195个库一键安装,记得,全选全安装,傻瓜式流程,不要节外生枝哦! 下载地址:http://continuum.io/downloads选择适合自己电脑的版本(32位或者64位系统),其中记得选Python2.7版。2.复制scikit-learn的notebook教程。 下载地址:https://原创 2016-12-15 13:02:33 · 358 阅读 · 0 评论 -
数据研究必备:国内40个免费数据源大放送!
一、政府类1、国家数据(统计局)http://data.stats.gov.cn/如果你需要一应俱全的最新宏观经济数据,一个宝贵的来源是国家统计局提供的《进度统计数据》,网址是http://www.stats.gov.cn/tjsj/。 如果想要从数据收集之日起的完整国民经济核算资料,权威的来源是国家统计局国民经济核算司出版的《中国国内生产总值核算历史资料》(1952-1995)和原创 2016-12-15 13:03:28 · 13117 阅读 · 0 评论 -
数据挖掘数据集下载搜集整理版
1、气候监测数据集 http://cdiac.ornl.gov/ftp/ndp026b 2、几个实用的测试数据集下载的网站 Data for MATLAB hackers (Handwritten Digits、Faces、Text) http://www.cs.toronto.edu/~roweis/data.html 3、UCI KDD Archive(各类原创 2016-12-15 13:04:34 · 1546 阅读 · 0 评论 -
python学习之NumPy基础
今天在deeplearning.net上看theano tutorial,发现一个numpy-100-exercise,介绍numpy一些基本用法的,不过不是很具体,我利用闲暇时间照着敲了一些,权且当作翻译吧,增加函数的原型和详细介绍。持续更新。 一、初学者10道1、在python环境中导入numpy包,并命名为np[python] view plaincopy"font-原创 2016-12-15 13:06:39 · 788 阅读 · 0 评论 -
深度学习将会变革NLP中的中文分词
文转自ResysChina高翔,文章主要介绍了1)区分中文分词的方法;2)用深度学习的方法来解决中文分词的好处及其具体应用。现有分词介绍自然语言处理(NLP,Natural Language Processing)是一个信息时代最重要的技术之一,简单来讲,就是让计算机能够理解人类语言的一种技术。在其中,分词技术是一种比较基础的模块。对于英文等拉丁语系的语言而言,由于词之间有空格作为转载 2016-08-10 08:36:09 · 2814 阅读 · 1 评论 -
深度学习知识结构图
原创 2016-11-14 14:46:18 · 1013 阅读 · 0 评论 -
相比于深度学习,传统的机器学习算法难道就此没落了吗,还有必要去学习吗?
自从 MIT Technology Review(麻省理工科技评论) 将 深度学习 列为 2013 年十大科技突破之首。加上今年 Google 的 AlphaGo 与 李世石九段 惊天动地的大战,AlphaGo 以绝对优势完胜李世石九段。人工智能、机器学习、深度学习、强化学习,成为了这几年计算机行业、互联网行业最火的技术名词。其中,深度学习在图像处理、语音识别领域掀起了前所未有的一场革转载 2016-10-18 07:44:48 · 1265 阅读 · 0 评论 -
深度增强学习Deep Reinforcement Learning (DQN方面)
Introduction深度增强学习Deep Reinforcement Learning是将深度学习与增强学习结合起来从而实现从Perception感知到Action动作的端对端学习的一种全新的算法。简单的说,就是和人类一样,输入感知信息比如视觉,然后通过深度神经网络,直接输出动作,中间没有hand-crafted工作。深度增强学习具备使机器人实现完全自主的学习一种甚至多种技能的潜力。虽转载 2016-09-19 23:18:52 · 2450 阅读 · 0 评论 -
深度学习框架的介绍与比较(Caffe, TensorFlow, MXNet, Torch, Theano)
在这里,我将会介绍当前比较主流的5种深度学习框架,包括 Caffe, TensorFlow, MXNet, Torch, Theano,并对这些框架进行分析。首先对这些框架进行总览。库名称开发语言速度灵活性文档适合模型平台上手难易Caffec++/cu转载 2016-08-28 18:12:58 · 3686 阅读 · 0 评论 -
MLP(多层神经网络)介绍
写在前面的 接触神经网络(ANN)的时间很长了,以前也只是学了学原理,做过一个BPN的练习,没有系统的总结过,最近看Torch的源码,对MLP有了更多的了解,写写自己学到的东西吧,算是做了一次总结!ANN的特点(1) 高度的并行性人工神经网络是由许多相同的简单处理单元并联组合而成,虽然每个单元的功能简单,但大量简单单元的并行活动,使其对信息的处理能力与效果惊人。(2原创 2017-05-29 15:13:50 · 7256 阅读 · 0 评论 -
机器学习算法工程师,该学点儿啥?
1. 前言作为一名新手,对于机器学习这一热门技术非常感兴趣,故而了解下,想要成为一名机器学习算法工程师,我们该学点儿啥呢?2. 我们学习机器学习的目的实话实说,目前大部分人上各种班来学习机器学习,学习大数据,归根到底还是希望能找到一个好的工作,拿到更高的薪水,当然还有一部分原因是自己对这一方面比较感兴趣,希望更深入的了解这个领域。我个人觉得,第一个原因的因素更大。3原创 2016-12-03 10:01:59 · 772 阅读 · 0 评论 -
机器学习的应用
引言 前阵子看到一篇文章,学习了一段时间的机器学习算法后,再回头看机器学习问题,发现要想利用机器学习去很好的求解一个问题,其实并不是一件容易办到的事情,尤其是能够对整个模型的解释方面,要想能够对模型很好的解释,那么难度就会更大。因为利用机器学习处理一个实际的问题就不仅仅是我们得学会怎么使用机器学习算法,更重要的是如何对整个问题建模。我刚开始是学习智能计算,当然一个优化问题怎么去建模,建模转载 2016-11-15 16:49:12 · 469 阅读 · 0 评论 -
朴素贝叶斯方法(Naive Bayes)
本文主要描述了朴素贝叶斯分类方法,包括模型导出和学习描述。实例部分总结了《machine learning in action》一书中展示的一个该方法用于句子感情色彩分类的程序。1方法概述学习(参数估计)实现:朴素贝叶斯下的文本分类模型概述朴素贝叶斯方法,是指朴素:特征条件独立贝叶斯:基于贝叶斯定理根据贝叶斯定理,对一个分类问题,给定样本特征x,样本属于类别y的概率是原创 2016-07-17 15:49:08 · 4362 阅读 · 0 评论 -
分类算法之朴素贝叶斯分类(Naive Bayesian classification)
0、写在前面的话 我个人一直很喜欢算法一类的东西,在我看来算法是人类智慧的精华,其中蕴含着无与伦比的美感。而每次将学过的算法应用到实际中,并解决了实际问题后,那种快感更是我在其它地方体会不到的。 一直想写关于算法的博文,也曾写过零散的两篇,但也许是相比于工程性文章来说太小众,并没有引起大家的兴趣。最近面临毕业找工作,为了能给自己增加筹码,决定再次复习算法方面的知识,我决转载 2016-07-18 16:52:01 · 266 阅读 · 0 评论 -
机器学习算法(分类算法)—极限学习机(ELM)
一、极限学习机的概念 极限学习机(Extreme Learning Machine) ELM,是由黄广斌提出来的求解单隐层神经网络的算法。 ELM最大的特点是对于传统的神经网络,尤其是单隐层前馈神经网络(SLFNs),在保证学习精度的前提下比传统的学习算法速度更快。二、极限学习机的原理ELM是一种新型的快速学习算法,对于单隐层神经网络,ELM 可以随机初始化输入权重和偏原创 2016-11-16 07:51:19 · 8682 阅读 · 1 评论 -
机器学习算法(分类算法)—神经网络之BP神经网络
一、BP神经网络的概念 BP神经网络是一种多层的前馈神经网络,其主要的特点是:信号是前向传播的,而误差是反向传播的。具体来说,对于如下的只含一个隐层的神经网络模型:(三层BP神经网络模型)BP神经网络的过程主要分为两个阶段,第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和原创 2016-11-16 08:06:15 · 6670 阅读 · 0 评论 -
机器学习算法(分类算法)—支持向量机 (2)
一、线性可分支持向量机的概念 线性可分支持向量机是用于求解线性可分问题的分类问题。对于给定的线性可分训练数据集,通过间隔最大化构造相应的凸二次优化问题可以得到分离超平面:以及相应的分类决策函数称为线性可分支持向量机。二、线性可分支持向量机的原理1、原始问题 支持向量机学习的基本想法是求解能够正确划分训练数据集并且几何间隔最大的分离超平面,这里的间隔原创 2016-11-16 08:26:55 · 1108 阅读 · 0 评论 -
机器学习算法(回归算法)—线性回归(1)
本文主要实现了基本的线性回归和局部加权线性回归。主要通过正规方程组的方式求解权重。在线性回归中最容易出现过拟合和欠拟合的问题,所以引入局部加权线性回归,通过权重调节每个特征的重要程度。一、线性回归的概念 对连续型数据做出预测属于回归问题。举个简单的例子:例如我们在知道房屋面积(HouseArea)和卧室的数量(Bedrooms)的情况下要求房屋的价格(Price)。通过一组数据,原创 2016-11-17 10:04:32 · 883 阅读 · 0 评论 -
机器学习算法(分类算法)—支持向量机(4)
一、回顾 前面三篇博文主要介绍了支持向量机的基本概念,线性可分支持向量机的原理以及线性支持向量机的原理,线性可分支持向量机是线性支持向量机的基础。对于线性支持向量机,选择一个合适的惩罚参数0" alt="">,并构造凸二次规划问题:求得原始问题的对偶问题的最优解,由此可求出原始问题的最优解:其中为中满足的分量。这样便可以求得分离超平面原创 2016-11-17 09:57:10 · 602 阅读 · 0 评论 -
机器学习算法(分类算法)—支持向量机(1)
一、引言 支持向量机(Support Vector Machines, SVM)被公认为比较优秀的分类模型,有很多人对SVM的基本原理做了阐述,我在学习的过程中也借鉴了他们的研究成果,在我的博客中只是想介绍基本的原理,用通俗易懂的方式把原理解释清楚,并期望通过MATLAB的代码实现这些基本的原理。由于SVM对数学理论的要求很高,并且SVM的形式也有多种,有不同的实现方式,在这个系列中我们原创 2016-11-16 08:11:00 · 1298 阅读 · 0 评论 -
机器学习算法(分类算法)—支持向量机(3)
一、线性支持向量机的概念 线性支持向量机是针对线性不可分的数据集的,这样的数据集可以通过近似可分的方法实现分类。对于这样的数据集,类似线性可分支持向量机,通过求解对应的凸二次规划问题,也同样求得分离超平面以及相应的分类决策函数二、与线性可分支持向量机的比较 线性支持向量机与线性可分支持向量机最大的不同就是在处理的问题上,线性可分支持向量机处理的是严格线性原创 2016-11-16 08:29:27 · 1051 阅读 · 0 评论 -
机器学习算法(分类算法)—Rosenblatt感知机的对偶解法
一、Rosenblatt感知机回顾 在博文“简单易学的机器学习算法——Rosenblatt感知机”中介绍了Rosenblatt感知机的基本概念。Rosenblatt感知机是针对线性可分问题的二分类算法。通过构造分离超平面将正类和负类区分开。构造了如下的输入空间到输出空间的函数:其中,为权重,为偏置。为符号函数:求解这个函数的重点就是求解函数中的参数:和。Rosen原创 2016-11-15 11:13:31 · 1041 阅读 · 0 评论 -
机器学习算法(分类算法)—Rosenblatt感知机
一、感知机的概念 感知机是一种二类分类的线性模型,输入实例的特征向量,输出为实例的类别,即+1或者-1。感知机模型是神经网络和支持向量机的基础。 假设特征为,类标签为,由特征到类标签的映射可以表示为这样的函数称为感知机。其中和为感知机的参数,为权重,为偏置。为向量与向量之间的内积。为符号函数:为分隔超平面。二、感知机模型的训练原创 2016-11-15 11:00:31 · 1017 阅读 · 0 评论 -
机器学习算法(分类算法)—决策树之ID3算法
一、决策树分类算法概述 决策树算法是从数据的属性(或者特征)出发,以属性作为基础,划分不同的类。例如对于如下数据集(数据集)其中,第一列和第二列为属性(特征),最后一列为类别标签,1表示是,0表示否。决策树算法的思想是基于属性对数据分类,对于以上的数据我们可以得到以下的决策树模型(决策树模型)先是根据第一个属性将一部份数据区分开,再根据第二个属性将剩余的区原创 2016-11-14 16:00:38 · 1909 阅读 · 0 评论 -
机器学习算法(分类算法)—Logistic回归
一、Logistic回归的概述 Logistic回归是一种简单的分类算法,提到“回归”,很多人可能觉得与分类没什么关系,Logistic回归通过对数据分类边界的拟合来实现分类。而“回归”也就意味着最佳拟合。要进行最佳拟合,则需要寻找到最佳的拟合参数,一些最优化方法就可以用于最佳回归系数的确定。二、最优化方法确定最佳回归系数 最优化方法有基于梯度的梯度下降法、梯度上升法,改进原创 2016-11-14 12:07:13 · 759 阅读 · 0 评论 -
机器学习算法(分类算法)—朴素贝叶斯
一、贝叶斯定理 1、条件概率 条件概率是指在事件B发生的情况下,事件A发生的概率,用表示。 2、全概率公式 含义是:如果和构成样本空间的一个划分,那么事件B的概率,就等于和的概率分别乘以B对这两个事件的条件概率之和。 3、贝叶斯推断 其中P(A)称为先验概率,即在事件B发生之前,我们对事件A的概率的一个判断。称为后验原创 2016-11-14 11:24:16 · 494 阅读 · 0 评论 -
机器学习算法(分类算法)—k-近邻算法
一、机器学习算法概述 机器学习算法主要分为监督学习算法,无监督学习算法。其中监督学习算法需要的数据包括样本,如训练样本,和每组数据的标签,即所属的类别;而无监督学习只有样本数据,我们需要构建出样本与样本之间的差异。常见的分类算法,回归算法属于监督学习算法,如K-近邻,决策树,logistic回归,朴素贝叶斯,SVM等;聚类算法属于无监督学习算法,如K-均值等。对于监督学习,机器学习算原创 2016-11-08 18:57:22 · 381 阅读 · 0 评论 -
机器学习算法(回归算法)—线性回归(2)
一、基本线性回归模型的抽象 在基本的线性回归中(可见机器学习算法(回归算法)-线性回归(1)),对于一个线性回归为题,我们得到一个线性方程组:在上一篇中我们是构建平方误差函数使得误差函数取得最小值得方法求得回归系数。换种思考,对于这样的一个线性方程组的求解我们有其他的方式,这里我们提到了广义逆。二、广义逆 1、广义逆的概念 广义逆的形式很多,并且广原创 2016-11-18 21:03:35 · 863 阅读 · 0 评论 -
机器学习算法(回归算法)—岭回归(Ridge Regression)
一、一般线性回归遇到的问题 在处理复杂的数据的回归问题时,普通的线性回归会遇到一些问题,主要表现在:预测精度:这里要处理好这样一对为题,即样本的数量和特征的数量时,最小二乘回归会有较小的方差时,容易产生过拟合时,最小二乘回归得不到有意义的结果模型的解释能力:如果模型中的特征之间有相互关系,这样会增加模型的复杂程度,并且对整个模型的解释能力并没有提高,这时,原创 2016-11-18 21:06:29 · 4092 阅读 · 0 评论 -
深度神经网络结构以及Pre-Training的理解
http://www.cnblogs.com/neopenx/p/4575527.htmlLogistic回归、传统多层神经网络1.1 线性回归、线性神经网络、Logistic/Softmax回归 线性回归是用于数据拟合的常规手段,其任务是优化目标函数:h(θ)=θ+θ1x1+θ2x2+….θnxn线性回归的求解法通常为两种:①解优化多元一次方程(矩阵)的传统方法,在数值分析里通常被称作”最小二乘转载 2017-05-29 15:21:09 · 378 阅读 · 1 评论