您的位置:首页 > 大数据 > 人工智能

机器学习入门指引【深度学习系列之-机器学习入门指引】

2018-02-04 21:19 211 查看
 -------------- 如要转发请注明原文地址

 研究人工智能之深度学习,现分享经验给大家,通过下面的学习步骤,可以达到入门水平

 首先,机器学习是深度学习的基础,深度学习是机器学习的一个方向

 1
机器学习入门网络教程:https://www.coursera.org/learn/machine-learning【机器学习入门第一课】

2 python入门:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000

【只是粗浅的python入门,计算机同行几个小时即可读完,但确涉及到了python绝大部分内容,完成这部分以后,在3,4步骤的实践中缺什么知识(库的运用)再专门去查资料,api之类,这样效果较好】
3 深入浅出深度学习(原理剖析与python实践)     【需要边学习边补数学知识】
4 Python 大战机器学习(数据科学家的第一个目标)    【需要边学习边补数学知识】
【3,4 为深度学习理论知识教学,特别是4中,结合了scikit-learn的使用,引入实践的案例,具有更好的操作性,可达到边学边用的目的,缺点是关于机器学习基础,深度学习理论方面,某些地方描述不够清晰,学习时将这两本书作为知识点大纲,同时翻阅网上其他资料,如5中的资料,5在深度学习方面描述的相当清楚】

5 深度学习入门系列教程:https://www.zybuluo.com/hanbingtao/note/433855
【深度学习入门必读】
按照上面的顺序学习,即可达到入门水平!其中,1,2步骤按照顺序阅读。3,4,5同时阅读。

如何学习深度挖掘?
计算机领域学习任何一门技术,需要以下几样并进取。
1 语言
 
语言方面,我选择的是python。没有任何理由。
2 框架
框架选择的是tensorflow + keras。这么来理解,keras提供比tensorflow更高级的api封装。tensorflow提供更细腻度的控制。对于初学者来说,先学习keras, keras可以迅速开发原型,让你可以快速上手用具体数据做实验,而不是把精力放在模型的细节上,当你对深度挖掘的理解越来越深,业务中需要的时候,再去学习tensorflow,对模型做细腻度控制,keras可以很好的结合tensorflow。再说说caffe,可以不用考虑了,他和tensorflow是在一个抽象层面的东西,安装起来比tensorflow复杂,所以我直接丢弃了对他的学习。
3 理论
理论知识来源于上面书籍中提供的知识。
4 业务应用
入门阶段可以采用框架提供的例子,或者kaggle官网的一些例子进行实际应用,加深对框架和理论知识的理解。在具有必须的理论知识以后,你需要知道的就是机器学习,深度学习,如何在实践中的运用。在实践过程中你可以更好的理解理论知识,你会用到框架去实现神经网络,同时也是个熟悉框架的过程。

机器学习,深度学习理论入门综述
下面我会对机器学习,深度学习做个简单的概念导入,不会涉及太多专业术语,力求让读者对整个知识体系有个框架性的认识。
何为机器学习?什么又是深度学习?
a 线性模型
假设我们需要预测孩子的身高和父母身高的关系,我们拿到一批数据X ,y 数据量为N; X 形如:(父亲身高,母亲身高)数组。 y 为(孩子的身高)数组。我们通过假设有这个一个模型
a*父亲身高 + b*母亲身高 + c = 孩子身高,然后我们通过这批X,y数据去拟合这个模型,使通过这个模型预测的身高和真实的身高比起来差距最小(即损失最小)。我们通过建立lost
= g(a,b,c)的损失函数,求解让g最小的a,b,c的值,求解的时候我们使用的方法就是对损失函数求导,和梯度下降。我们知道导数方向,即函数值变化的方向,我们通过改变导数的方向,不断的迭代来求取参数最优解。
我们最常用的模型就是线性模型,如上面a*x + b*y + c就是线性模型(线性的概念请百度)。如果我们对线性模型的输出不是最终的值,而是一个中间特征,也就是说我们假设的模型需要多次线性变换才能模拟最终的值,那么就是深度学习,可以理解深度学习指的是线性变换的深度。如果线性模型的输出是一个连续值,即我们预测的结果是个连续值,那么就是回归问题,但预测的结果也有可能是分类问题。我们称呼他们为线性回归和线性分类。线性指的是采用的模型是线性的,回归和分类指的是我们需要的结果是连续的,还是一个离散的问题。
当我们计算模型和输出和我们的预测间的差距的时候,我们引入了距离的概念,我们预测的值和真实值,都是我们量化后的数据,而距离也就是预测值和真实值量化的差距,我们常用的是Lp距离。我们需要设计我们的量化思路,怎么把现实生活中的东西量化表示,并且可以量化他们的距离。
b 其他模型
a中提到了模型的概念,其实除了线性模型,我们还有其他模型可用。机器学习的思路是:
我们根据业务的了解,假设业务中的逻辑符号某些特定规则,然后我们通过对大量数据的学习,来得到这些规则,以后我们就可以通过这些规则来处理数据(如预测)。
广义上的概念:
 模型:某种特定的规则
 学习:生成模型的过程,可以是调整参数,或者是生成模型的结构。学习基于某种理论,或者损失函数。
不同的模型可以拟合不同的业务需求。但是,并不是所有的现实问题都可以用数学模型来解决!
决策树模型:分类问题
 基于信息熵理论设计的规则。
贝叶斯分类器:分类问题
 根据贝叶斯理论设计的规则。

K-近邻法:分类和回归方法
 根据距离设计的规则。

          
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐