支付宝红包
京东盲盒抽奖
幸运转盘
秒杀
自营热卖
支付宝红包

#学习笔记# 机器学习的动机与应用

烟祭 1年前   阅读数 858 0

       有空就学,关于学习机器学习的笔记如下,有兴趣的同学可以搜索 网络公开课《斯坦福大学公开课 :机器学习课程》,笔记学习主要是为了加深一下自身的印象 同时不至于被告诉的IT技术列车所抛弃,也很庆幸自己有这样的一点动力与好奇心来了解 关于  机器学习 的领域,先学习了解 .........
        首先,机器学习 设计到很多算法,大多数情况下,我们不是去创造算法,而是把一些算法综合使用,解决一些具体的业务实际业务,所以 想了解 机器学习的同学也不要压力太大,因为我一开始感觉机器学习是一门很深奥,需要很多知识面才能触及的一门课程,之后听完   吴恩达 的第一堂课,感觉本科生毕节的知识体系足以,如果是计算机系毕业的,那就更加有优势,因为   机器学习 最终是需要编程 来给机器传递知识的。 好了,一下的环节,是我在听的过程中的一些笔记,通过自己的梳理,不一定正确,大家要怀着批判的精神去阅读。

        机器学习的本质是学习型算法的具体展现,那么学习型算法又是什么呢,专家们给出了的定义: 
        通俗的讲:在不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域。针对这句话不知大家如何理解,但是作为从事多年编程的IT从业人员而言,是无法落地的,不知道如何设计程序,如何让其运行。所以,有可如下更加技术性的定义:“对于一个计算机程序来讲,给他一个任务T以及一个性能测试方法P,如果在经验E的影响下,P对T的测量记过得到了改进,那么就说该程序从E中学习”,好,通过第二种定义,至少给出了一个比较明确的设计思路,基本上有了一个思考的方向,所以,后者的定义更加专业化,也符合程序员的思维,因为 程序员的思维 一般都是直线型思维~~~
       
      有了定义后,那么接下来我们需要了解一下,学习这门课程需要的一些知识背景,这些背景是学习这门课程所必须掌握的,不一定很精通,至少在学习的过程中,遇到这些知识的范畴,不是一脸的无辜,对不起老师,我是来吃瓜的,值得庆幸的是,这些课程都是我们本科上学所涉及的范畴,如果说自己没学会,说明你大学的学费可以找学校退款了,如下的几点是所涉及的、必须的知识范畴:
      1、基本的计算机编程能力:因为机器学习,要把指令传输给机器,还是需要一定的编程能力,所以,计算机系的学生有先天的优势,这里的编程能力,更多的是指 纯粹的编程,而不是Java世界中,框架满天飞的各种框架,说起Java框架,是我的老本行,在这里也建议各位学习的范畴:Spring家族体系的框架,学习要多多益善,因为所有的框架都面向SpringIOC容器,所以提供标准官方的集成,第二、学习Apachecommons 下的各种API, 第三、学习 google 旗下关于Java提供了一套高效的API 包。例如 guava (番石榴),居然实现了 函数式元编程。 这些都是硬技能,主要是基于API的学习与了解。学会这些,可以驰骋于中小型项目的任何技术疆场。
     2、计算机数据结构:这里的数据结构按照 吴恩达 老师的讲解,应该是狭义上的数据结构,我记得我上大学计算机系才开设的这门课程,例如 二叉树   链表 ....等等之类的,我回忆起起来的也不多,也许 学会之后再 忘记, 才是真正的学会  哈哈
    3、基本的概率统计学知识,这个是重点,机器学习的本质其实就是利用 给他的真实数据,让机器帮帮我们分析数据之间的规律,而规律的得到则是 针对数据自身的的特点,采用不同的算法,这一点的确是需要 买本书 从头学习一下了。
    4、 基本的线性代数知识,这是一个学习魔方的课程,大学我最头晕这门课程了,因为线性代数中,矩阵的学习是让我对晕乎的,有了矩阵 还有 逆矩阵~~ 我的天啊,矩阵之间还有 加减乘 的运算,其中 还有 向量因子  我要回炉重造了。
    好了,有了上述的知识体系做基本,学习 机器学习  应该是问题不大,如果哪方面有所前欠缺的,需要自己恶补一下,想象看,考一个本科生的知识体系,居然可以 品尝 机器学习  如此高尖端的技术, 可以偷笑了~~~~ 上述的“基本”是吴恩达老师说的,我们就权当 这样去理解了   .............
  
       机器学习的编程是什么样子的,按照吴恩达老师的推荐,首先是一个名为 MATLAB的编程软件,该软件功能强大,可惜收费。  所以 退而求其次,业界还有免费版本的 OCTAVE ,这也是一个如软件,功能相比前者 就差一些。 最后 是 鼎鼎的R语言,R语言集成了 各种统计学习算法,他跟多的是一门语言。也可以作为大数据学习时的工具。其他的语言 例如 Java、C、Ruby等 基本和这些没啥关系。。。。。大家不要试图用这些语言做这方面的尝试,否则 你的工作重点是 ,如何利用这些语言实现 算法本身,而不是 利用这些算法如何分析数据  本末倒置了   

      课程的重点是,在这节课中,吴恩达 老师 讲解了 机器学习的 四个重要组成部分,这四个组成部分讲解的时候 字字千金,建议大家自己听,这里我只是总结一下,四个部分分别是:
      第一、监督学习
      何为监督学习呢?这是一种最容易理解的场景,我们明确的告诉计算机 我们想要的结果,而结果的获取则是通过大量的真实的数据样本以及合理的算法,从而得出一个相对比较符合真实规律的规律,例如 房子的面积 与价格 这两个维度,两者之间肯定有某种联系,而这种联系如何能相对更加精准的算法来描述呢,例如,针对具有连续性的数据结构的样本,可以采用回归型算法(方差等),如果数据结构是处于离散性的 ,在可采用分类型算法 加以统计分析。
     第二、 学习性算法
    这一章听的比较粗浅一些,因为这一部分重点强调的是 数据样本的采集 ,以及针对数据的算法选择,首先是数据采集,现在有各种各样的 分布式计算 可以通 结构化的 非结构化的 数据源中进行分析采集。之后则是通过一定的处理,让其符合某种学习型算法的数据结构,之后就是丢给算法,让他不断的学习,这种学习型算法就是 高智商 的结晶,我们是很实用的拿来主义。
     第三、无监督学习 
     无监督学习就有点高大上了,何为无监督呢,就是我们自己都他妈不知道要分析的数据有什么特点以及想得到什么的样的结果,这个可以问上帝去,好了,这个时候就一股脑的把这些丢给无监督算法去分析,无监督算法会按照数据的特点,去得出一个结果,而 你这是 针对这个结果,考虑如何有效的结合实际,发现他的价值体现。 无监督学习,吴恩达老师提到一类算法,聚类算法,这一类算法就是 可以把具有相似数据特征的数据进行分类,他在讲课的时候,分享了一段很精彩的实战,有兴趣的课听一下,例如 他所谓的 鸡尾酒会问题,人们在鸡尾酒会上打电话给对方,在对方听来应该有一个很喧嚣的背景,通过聚类算法,可以把这个人的声音 与 喧嚣的背景声音很好的得到区分。只能的帮堆放过滤掉背景音乐。
    第四、强化学习(决策算法)
    这一类就是,在上述的基础上,让机器给分析的结果下一个定义,这个听起来很深奥,其实很简单,无人驾驶就是机器学习的一个结果,在驾驶的过程中,汽车会遇到各种意外意外的情况,而这对这种情况,汽车需要做出一个决策,我该如何办,而通过决策,辅助机器更好的学习,在算法上  吴恩达老师 提到了 回归型函数  可以实现类似的决策分析 

    如上所述是第一堂可得笔记,分享给大家~~~周末 早起码字,等孩子睡醒,就不可能有联系的思路来做这些事情了。。。。。。。。   如果大家要是有兴趣,我更加喜欢线下的聚会与讨论 ........ 


注意:本文归作者所有,未经作者允许,不得转载

全部评论: 0

    我有话说: