5.4 绘制数据图 参考视频: 5 - 4 - Plotting Data (10 min) 5.4.1 绘制曲线 1.画一个sin曲线 >> t = [:0.01:0.98]; >> y1 = sin( * pi * * t); >> plot(t,y1); 2.画一个cos曲线 >> y2 = cos( * pi * * t); >> plot(t,y2); 3.将两个曲线合并在一起 >> plot(t,y1); >>…
Lecture 5 Octave教程 5.1 基本操作 Basic Operations 5.2 移动数据 Moving Data Around 5.3 计算数据 Computing on Data 5.4 绘制数据图 Plotting Data 5.5 控制语句: for, while, if 语句 5.6 向量化 Vectorization 5.1 基本操作 参考视频: 5 - 1 - Basic Operations (14 min).mkv 5.1.1  简单运算 不等于符号的写法是这个…
5.6 向量化 Vectorization 参考视频: 5 - 6 - Vectorization (14 min).mkv 下面是向量化的小例子,如果将所有u(j) .所有v(j).所有w(j)都看成列向量,则公式变为为向量加法 u = 2v + 5w 再复杂一些,在线性回归中 h(x) 的公式如下: 假设此时n=2,只有两个特征.将其向量化: 在Octave中,如果使用for循环实现,则为左边的代码.使用看做向量相乘,则只需要右边一行代码: 在C++中,for循环和向量化方法的对比如下: 当…
5.5 控制语句: for, while, if 语句 参考视频: 5 - 5 - Control Statements_ for, while, if statements (13 min).mkv 1.for 循环 通过 index 访问列向量 >> v = zeros(,) v = >> : , v(i) = ^ i; end; >> v v = 2.for 循环 直接访问列向量元素 >> indices = : ; >> indices…
Lecture 15 Anomaly Detection 异常检测 15.1 异常检测问题的动机 Problem Motivation 异常检测(Anomaly detection)问题是机器学习算法的一个常见应用.这种算法虽然主要用于无监督学习问题,但从某些角度看,它又类似于一些监督学习问题.举例: 当飞机引擎从生产线上流出时需要进行QA(质量控制测试),数据集包含引擎的一些特征变量,比如运转时产生的热量,或者振动等.当有一个新的飞机引擎从生产线上流出,它具有特征变量 xtest .异常检测问…
Lecture 16 Recommender Systems 推荐系统 16.1 问题形式化 Problem Formulation 在机器学习领域,对于一些问题存在一些算法, 能试图自动地替你学习到一组优良的特征.通过推荐系统(recommender systems),将领略一小部分特征学习的思想. 假使有 5 部电影,3部爱情片.2部动作片.  4 个用户为其中的部分电影打了分.现在希望构建一个算法,预测每个人可能给没看过的电影打多少分,以此作为推荐的依据. 下面引入一些标记:nu     …
Lecture 14 Dimensionality Reduction 降维 14.1 降维的动机一:数据压缩 Data Compression 现在讨论第二种无监督学习问题:降维. 降维的一个作用是数据压缩,允许我们使用较少的内存或磁盘空间,也加快算法速度. 举例: 假设用两个特征描述同一个物品的长度,x1单位是厘米cm,x2单位是英寸inches.这将导致高度冗余,所以需要减到一维. 将数据从三维降至二维: 将三维向量投射到一个二维的平面上,强迫使得所有的数据都在同一个平面上,降至二维的特征…
Lecture 13 聚类 Clustering 13.1 无监督学习简介  Unsupervised Learning Introduction 现在开始学习第一个无监督学习算法:聚类.我们的数据没有附带任何标签,拿到的数据就是这样的: 例子: (注:这里有考题,问哪些可以使用聚类算法) 13.2 K-means算法 K-Means Algorithm K-Means 是最普及的聚类算法,算法接受一个未标记的数据集,然后将数据聚类成不同的组.迭代过程为:1)选择K个随机的点,称为聚类中心(cl…
Lecture 12 支持向量机 Support Vector Machines 12.1 优化目标 Optimization Objective 支持向量机(Support Vector Machine) 是一个更加强大的算法,广泛应用于工业界和学术界.与逻辑回归和神经网络相比, SVM在学习复杂的非线性方程时提供了一种更为清晰,更加强大的方式.我们通过回顾逻辑回归,一步步将其修改为SVM. 首先回顾一下逻辑回归: 其 cost function 公式如下(这里稍微有点变化,将负号移到了括号内…
Lecture 11—Machine Learning System Design 11.1 垃圾邮件分类 本章中用一个实际例子: 垃圾邮件Spam的分类 来描述机器学习系统设计方法.首先来看两封邮件,左边是一封垃圾邮件Spam,右边是一封非垃圾邮件Non-Spam:垃圾邮件有很多features.如果我们想要建立一个Spam分类器,就要进行有监督学习,将Spam的features提取出来,而希望这些features能够很好的区分Spam.事实上,对于spam分类器,通常选取spam中词频最高的…
Lecture 10—Advice for applying machine learning 10.1 如何调试一个机器学习算法? 有多种方案: 1.获得更多训练数据:2.尝试更少特征:3.尝试更多特征:4.尝试添加多项式特征:5.减小 λ:6.增大 λ 为了避免一个方案一个方案的尝试,可以通过评估机器学习算法的性能,来进行调试. 机器学习诊断法 Machine learning diagnostic 的定义: 10.2 评估一个假设 想要评估一个算法是否过拟合 (一)首先,划分测试集和训练集…
目录 1.1 欢迎1.2 机器学习是什么 1.2.1 机器学习定义 1.2.2 机器学习算法 - Supervised learning 监督学习 - Unsupervised learning  无监督学习 - Reinforcement learning 强化学习 - Recommender systems 推荐系统 1.2.3 课程目的 如何在构建机器学习系统时,选择最好的实践类型决策.节省时间. 1.3 监督学习 1.3.1 Regression 回归问题 1.3.2 Classific…
Lecture 18—Photo OCR 应用实例:图片文字识别 18.1 问题描述和流程图 Problem Description and Pipeline 图像文字识别需要如下步骤: 1.文字侦测(Text detection)——将图片上的文字与其他环境对象分离开来2.字符切分(Character segmentation)——将文字分割成一个个单一的字符3.字符分类(Character classification)——确定每一个字符是什么 如果用任务流程图来表达这个问题,每一项任务可以…
Lecture17 Large Scale Machine Learning大规模机器学习 17.1 大型数据集的学习 Learning With Large Datasets 如果有一个低方差的模型, 通常通过增加数据集的规模,可以获得更好的结果. 但是如果数据集特别大,则首先应该检查这么大规模是否真的必要,也许只用 1000个训练集也能获得较好的效果,可以绘制学习曲线来帮助判断. 17.2 随机梯度下降法 Stochastic Gradient Descent 如果必须使用一个大规模的训练集…
Lecture2   Linear regression with one variable  单变量线性回归 2.1 模型表示 Model Representation 2.1.1  线性回归 Linear regression 2.1.2 单变量线性回归  Linear regression with one variable 2.2 代价函数 Cost Function 2.2.1  如何选择模型的参数 θ 2.2.2  建模误差 modeling error 2.2.3  平方误差代价函…
Lecture 4 Linear Regression with Multiple Variables 多变量线性回归 4.1 多维特征 Multiple Features4.2 多变量梯度下降 Gradient Descent for Multiple Variables4.3 梯度下降法实践 1-特征缩放 Gradient Descent in Practice I - Feature Scaling4.4 梯度下降法实践 2-学习率 Gradient Descent in Practice…
神经网络的学习(Neural Networks: Learning) 9.1 代价函数 Cost Function 参考视频: 9 - 1 - Cost Function (7 min).mkv 假设神经网络的训练样本有…
Lecture3   Linear Algebra Review 线性代数回顾 3.1 矩阵和向量3.2 加法和标量乘法3.3 矩阵向量乘法3.4 矩阵乘法3.5 矩阵乘法的性质3.6 逆.转置 3.1 矩阵和向量 参考视频: 3 - 1 - Matrices and Vectors (9 min).mkv 3.2 加法和标量乘法 参考视频: 3 - 2 - Addition and Scalar Multiplication (7 min).mkv 3.3 矩阵向量乘法 参考视频: 3 - 3…
Lecture6 Logistic Regression 逻辑回归 6.1 分类问题 Classification6.2 假设表示 Hypothesis Representation6.3 决策边界 Decision Boundary6.4 代价函数 Cost Function6.5 简化的代价函数和梯度下降 Simplified Cost Function and Gradient Descent6.6 高级优化 Advanced Optimization6.7 多类别分类:一对多  Mult…
Lecture7 Regularization 正则化 7.1 过拟合问题 The Problem of Overfitting7.2 代价函数 Cost Function7.3 正则化线性回归  Regularized Linear Regression7.4 正则化的逻辑回归模型 Regularized Logistic Regression 7.1 过拟合问题 The Problem of Overfitting 参考视频: 7 - 1 - The Problem of Overfitti…
神经网络是一种受大脑工作原理启发的模式. 它在许多应用中广泛使用:当您的手机解释并理解您的语音命令时,很可能是神经网络正在帮助理解您的语音; 当您兑现支票时,自动读取数字的机器也使用神经网络. 8.1 非线性假设 Non-linear Classification 参考视频 : 8 - 1 - Non-linear Hypotheses (10 min).mkv 线性回归和逻辑回归的缺点: 当输入数据特征过多,计算负荷大. 计算机视觉中,图片的表示是通过像素矩阵表示的.假设一个图片是50×50p…
Andrew Ng机器学习课程笔记(三)之正则化 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365475.html 前言 学习了Andrew Ng课程,开始写了一些笔记,现在写完第5章了,先把这5章的内容放在博客中,后面的内容会陆续更新! 这篇博客主要记录Andrew Ng课程第三章正则化,主要介绍了线性回归和逻辑回归中,怎样去解决欠拟合和过拟合的问题 简要介绍:在进行线性回归或逻辑回归时,常常会出现以下三种情况 回归…
Andrew Ng机器学习课程笔记(五)之 应用机器学习的建议 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7368472.html 前言 学习了Andrew Ng课程,开始写了一些笔记,现在写完第5章了,先把这5章的内容放在博客中,后面的内容会陆续更新! 这篇博客主要记录了Andrew Ng课程第五章应用机器学习的建议,主要介绍了在测试新数据出现较大误差该怎么处理,这期间讲到了数据集的分类,偏差,方差,学习曲线等概念,帮…
title: Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归) tags: 机器学习, 学习笔记 grammar_cjkRuby: true --- 之前看过一遍,但是总是模模糊糊的感觉,也刚入门,虽然现在也是入门,但是对于一些概念已经有了比较深的认识(相对于最开始学习机器学习的时候).所以为了打好基础,决定再次学习一下Andrew Ng的课程,并记录笔记以供以后复习参考. 1. 内容概要 Introduction 什么是机器学习 监督学习 非监督学习 Linear R…
笔记总结,各章节主要内容已总结在标题之中 Andrew Ng机器学习课程笔记–week1(机器学习简介&线性回归模型) Andrew Ng机器学习课程笔记--week2(多元线性回归&正规公式) Andrew Ng机器学习课程笔记--week3(逻辑回归&正则化参数) Andrew Ng机器学习课程笔记--week4(神经网络) Andrew Ng机器学习课程笔记--week5(上)(神经网络损失函数&反向传播算法) Andrew Ng机器学习课程笔记--week5(下)(…
Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7392408.html 前言 这篇博客主要记录了Andrew Ng课程第6章机器学习系统的设计,Andrew用他的丰富经验讲述了如何有效.耗时少地实现一个机器学习系统,内容包括误差分析,误差度量,查准率和查全率等等 I 首先要做什么 以一个垃圾邮件分类器算法为例,为了解决这样一个问题,我们首先要做的决定是如何选择并…
Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 学习了Andrew Ng课程,开始写了一些笔记,现在写完第5章了,先把这5章的内容放在博客中,后面的内容会陆续更新! 这篇博客主要记录Andrew Ng课程第四章和第五章的神经网络,主要介绍前向传播算法,反向传播算法,神经网络的多类分类,梯度校验,参数随机初始化,参数的更新等等 1.神经网络概述…
Andrew Ng机器学习课程笔记(二)之逻辑回归 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7364636.html 前言 学习了Andrew Ng课程,开始写了一些笔记,现在写完第5章了,先把这5章的内容放在博客中,后面的内容会陆续更新! 这篇博客主要记录了Andrew Ng课程第二章逻辑回归,主要介绍了梯度下降法,逻辑回归的损失函数,多类别分类等等 简要介绍:逻辑回归算法是分类算法,我们将它作为分类算法使用.有时候…
Andrew Ng机器学习课程笔记(一)之线性回归 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7364598.html 前言 学习了Andrew Ng课程,开始写了一些笔记,现在写完第5章了,先把这5章的内容放在博客中,后面的内容会陆续更新! 这篇博客主要记录了Andrew Ng课程第一章线性回归,主要介绍了梯度下降法,正规方程,损失函数,特征缩放,学习率的选择等等 1.梯度下降法 原理图解: (1)  目标:最小化建立…
Advice for applying machine learning 本周主要学习如何提升算法效率,以及如何判断学习算法在什么时候表现的很糟糕和如何debug我们的学习算法.为了让学习算法表现更好,我们还会学习如何解决处理偏态数据(skewed data). 以下内容部分参考我爱公开课-Advice for applying machine learning 一.内容概要 Evaluating a learning algorithm Deciding what to try next(决定…