《机器学习》这本书算是很好的一本了解机器学习知识的一本入门书籍吧,是南京大学周志华老师所著的鸿篇大作,很早就听闻周老师大名了,算是国内机器学习领域少数的大牛了吧,刚好研究生做这个方向相关的内容,所以今天买了一本所谓的西瓜书,准备研读,光读书记性不好,边读边做笔记练习印象深刻,接下来我就把自己的学习过程按每章节的内容整理如下:

Day1 第一章 绪论部分

本书作者周志华老师通过聊天的口吻开篇,以日常生活的小案例和场景,向读者介绍什么是机器学习,以及什么是学习算法。在这一章介绍了很多机器学习相关的术语概念。

首先,要做学习,先得有数据,我们要学习的对象记录收集起来组成的集合叫做一个“数据集(data set)”,把里面记录、对象的描述,称为一个“示例(instance)”或者“样本(sample)”,反应集合内事件或对象在某方面的表现或性质的事项,我们把它称为“属性(attribute)”或“特征(feature)”,属性张成的空间称为“属性空间(attribute space)”、 “样本空间(sample space)” 或者“输入空间”,由于空间中的每一个点对应一个坐标向量,因此我们把一个示例称为一个“特征向量(feature vector)”,这里的属性数量就是我们说的样本的“维数(dimensionality)”

上面得到了数据了,我们要从数据中学得模型的过程叫“学习(learning)”或者“训练(training)”,在这个过程执行某个学习算法来完成,训练的过程使用的数据称为“训练数据(集)(training data)”,这其中的每一个小样本叫一个“训练样本(training sample)”,训练样本构成的集合组成的集合叫做“训练集training set”,训练得到的模型对应数据的某种潜在的规律,把这种结果称为“假设(hypothesis)”,我们要用学习的结果来“预测(prediction)”,用学得模型进行预测的过程称为“测试(testing)”,被预测的样本叫“测试样本(testing sample)”。

我们要预测的是离散值,这类学习任务称为“分类(classification)”,要预测的是连续值,把这类学习任务称为“回归(regression)”,当然我们也可以对数据做“聚类(clustering)”,即把训练集中的对象分成若干组,每个组称为一个“簇(cluster)”。

我们根据训练数据是否拥有标记信息,学习任务可大致分为两大类:“监督学习(supervised learning)”和“无监督学习(unsupervised learning)”,分类和回归是前者的代表,聚类是后者的代表。

学得的模型适用于新样本的能力,称为“泛化(generation)”。

通常,我们假设样本空间中全体样本服从一个未知“分布(distribution)”,我们获得的每一个样本都是独立从这分布上采样得到的,即“独立同分布(independent and identically distributed简称i.i.d.)”。

归纳(induction)和演绎(deduction)是科学推理的两大基本手段,前者是从特殊到一般的“泛化(generation)”过程,后者是一般到特殊的“特化(specialization)”过程,如数学上由数学公理推出与之相洽的定理,这是演绎过程,而“从样本中学习”是一个归纳过程,叫做“归纳学习(inductive learning)”。

归纳学习中有归纳偏好,这里遵循奥卡姆剃刀原则。

发展历程:机器学习是人工智能(artificial intelligence)研究发展到一定阶段的必然产物。二十世纪五十年代到七十年代,人工智能研究处于“推理期”,那时的人们认为只要能赋予机器逻辑推理能力,机器就能拥有智能。二十世纪七十年代中期开始,人工智能研究进入“知识期”,这一时期大量的专家系统问世。二十世纪八十年代是机器学习成为一个独立的学科领域,各种机器学习技术百花初绽的时期。二十世纪九十年代中期,“统计学习(statistical learning)”闪亮登场并迅速占据主流舞台,代表技术是支持向量机(Support Vector Machine,简称SVM)以及更一般的“核方法(kernel methods)”。二十一世纪初,连接主义学习又卷土从来(五十年代中后期基于神经网络的“连接主义”),掀起了以“深度学习”为名的热潮,所谓深度学习,狭义地说就是“很多层”的神经网络

现在,机器学习已经发展成为一个相当大的学科领域,当今算力的提升和大数据的加持,逐步把机器学习推向高潮。

  (第一章笔记到此,继续学习后续章节)

Day1 《机器学习》第一章学习笔记的更多相关文章

  1. Spring实战第一章学习笔记

    Spring实战第一章学习笔记 Java开发的简化 为了降低Java开发的复杂性,Spring采取了以下四种策略: 基于POJO的轻量级和最小侵入性编程: 通过依赖注入和面向接口实现松耦合: 基于切面 ...

  2. [蛙蛙推荐]SICP第一章学习笔记-编程入门

    本书简介 <计算机程序的构造与解释>这本书是MIT计算机科学学科的入门课程, 大部分学生在学这门课程前都没有接触过程序设计,也就是说这本书是针对编程新手写的. 虽然是入门课程,但起点比较高 ...

  3. 《Django By Example》第一章 学习笔记

    首先看了下目录,在这章里 将会学到 安装Django并创建你的第一个项目 设计模型(models)并且生成模型(model)数据库迁移 给你的模型(models)创建一个管理站点 使用查询集(Quer ...

  4. 《Java基础教程》第一章学习笔记

    Java 是什么呀! 计算机语言总的来说分成机器语言,汇编语言,高级语言.其中Java一种高级计算机语言,它是一种可以编写跨平台应用软件,完全面向对象的程序设计语言. Java划分为三个技术平台,Ja ...

  5. 【Python自然语言处理】第一章学习笔记——搜索文本、计数统计和字符串链表

    这本书主要是基于Python和一个自然语言工具包(Natural Language Toolkit, NLTK)的开源库进行讲解 NLTK 介绍:NLTK是一个构建Python程序以处理人类语言数据的 ...

  6. <<学会提问>>第一章学习笔记

    中国应不应该现在取消死刑? 中医是不是伪科学? 读书无用论? 集体主义和团队精神? 欧洲难民危机,你是支持接收难民,还是反对? 欧洲白左是不是幼稚圣母,抑或是右派种族歧视,顽固保守? 如何看待&quo ...

  7. Scala第一章学习笔记

    面向对象编程是一种自顶向下的程序设计方法.用面向对象方法构造软件时,我们将代码以名词(对象)做切割,每个对象有某种形式的表示服(self/this).行为(方法).和状态(成员变量).识别出名词并且定 ...

  8. CSAPP:第一章学习笔记:斗之气1段

    一.信息就是位+上下文:系统中的所有信息(包括磁盘文件.内存中的程序.网络上传送的数据),都是由一串比特表示,根据上下文对这些比特表示进行翻译. 二.C程序编译过程 1.源码结构 // test.c ...

  9. 《Linux内核设计与实现》 第一二章学习笔记

    <Linux内核设计与实现> 第一二章学习笔记 第一章 Linux内核简介 1.1 Unix的历史 Unix的特点 Unix很简洁,所提供的系统调用都有很明确的设计目的. Unix中一切皆 ...

随机推荐

  1. Unity C# 自定义TCP传输协议以及封包拆包、解决粘包问题

    本文只是初步实现了一个简单的TCP自定协议,更为复杂的协议可以根据这种方式去扩展. TCP协议,通俗一点的讲,它是一种基于socket传输的由发送方和接收方事先协商好的一种消息包组成结构,主要由消息头 ...

  2. Sping--ApplicationEvent

    //让其他的应用事件继承它 public abstract class ApplicationEvent extends EventObject { /** use serialVersionUID ...

  3. dex分包方案

    当一个app的功能越来越复杂,代码量越来越多,也许有一天便会突然遇到下列现象: 1. 生成的apk在2.3以前的机器无法安装,提示INSTALL_FAILED_DEXOPT 2. 方法数量过多,编译时 ...

  4. android微信登录,分享

    这几天开发要用到微信授权的功能,所以就研究了一下.可是微信开放平台接入指南里有几个地方写的不清不楚.在此总结一下,以便需要的人. 很多微信公众平台的应用如果移植到app上的话就需要微信授权登陆了. 目 ...

  5. VS2010中使用Jquery调用Wcf服务读取数据库记录

    VS2010中使用Jquery调用Wcf服务读取数据库记录 开发环境:Window Servere 2008 +SQL SERVE 2008 R2+ IIS7 +VS2010+Jquery1.3.2 ...

  6. PS 滤镜算法原理——照亮边缘

    这个算法原理很简单,对彩色图像的R,G,B 三个通道,分别求梯度,然后将梯度值作为三个通道的值. clc; clear all;Image=imread('4.jpg');Image=double(I ...

  7. 解决IE7兼容H5新标签的方法

    外部引入JS <script src="http://cdn.bootcss.com/html5shiv/r29/html5.min.js"></script&g ...

  8. LeetCode刷题之合并排序链表

    合并两个有序链表并返回一个新的列表.新列表应该由连接在一起的节点前两个列表 给定实例:Input: 1->2->4, 1->3->4Output: 1->1->2- ...

  9. Fragment生命周期与Fragment执行hide、show后的生命周期探讨

    一.Fragment 生命周期中的每个方法的意义与作用: 1.setUserVisibleHint()(此方法不属于生命周期方法):设置Fragment 用户可见或不可见时调用此方法,此方法在Frag ...

  10. Oracle的网络监听配置

    listener.ora.tnsnames.ora和sqlnet.ora这3个文件是关系oracle网络配置的3个主要文件,都是放在$ORACLE_HOME\network\admin目录下.其中li ...