本系列学习笔记用来记录我学习吴恩达教授的《机器学习》课程,课程版本为在 Coursera 版,在 B 站、网易云课堂都可以找到相应的视频资源,配合 @fengdu78 整理的笔记「Coursera-ML-AndrewNg-Notes」来学习。

限于本人是机器学习的初学者,在笔记过程中难免有思考不周之处,读者请自行查阅吴恩达教授课程内容。

本文内容包括对「机器学习」定义的阐述,及「监督学习」和「非监督学习」的基本理解。

Introduction

1.1 What is Machine Learning

什么是机器学习?即使是在机器学习的专业人士中,也不存在一个被广泛认可的定义来准确定义机器学习。

1. Arthur Samue 提出的定义:

“The field of study that gives computers the ability to learn without being explicitly programmed.”

在进行特定编程的情况下,给予计算机学习能力的领域。

2. Tom Mitchell 提出的定义:

“A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.”

一个好的学习问题定义如下,一个程序被认为能从经验 E 中学习,解决任务 T,达到性能度量值 P,当且仅当,有了经验 E 后,经过 P 评判,程序在处理 T 时的性能有所提升。

1.2 Supervised Learning

In supervised learning, we are given a data set and already know what our correct output should look like, having the idea that there is a relationship between the input and the output.

在监督学习中,我们已经得到了一个数据集,并且数据集中的每一个样本都是“正确答案”,再根据这些样本来做出预测。

监督学习的问题被分为“回归(regression)“分类(classification)”两类。

  • 在回归问题中,我们尝试预测出连续的输出。
  • 在分类问题中,我们尝试预测出离散的输出。

在这种监督学习模式下,我们有输入模块叫特征(features),和输出模块叫目标(target)。学习的目的是基于给定的输入和对应的标签训练模型,然后用训练好的模型对给定的新输入来预测输出。

为此,我们收集一个训练数据集(training set),在这个数据集中,我们有许多成对的训练样本,每对样本包含特征向量(feature vector)作为输入(用符号 X 表示所有的特征向量)及其相应的目标(output)作为输出(用符号 Y 表示所有的目标值)。 由于每一个输入都有来自事实对应的标签,我们将这种学习称为监督学习(supervised learning),同时将训练好的模型称为假设(hypothesis)

1.3 Unsupervised Learning

Unsupervised learning, allows us to approach problems with little or no idea what our results should look like. We can derive structure from data where we don’t necessarily know the effect of the variables.

无监督学习中,我们对对已知的数据集不知道如何处理,未被告知每一个数据点是什么。我们可以在不知道变量的具体影响的情况下,从数据中提取出结构(structure)。

我们可以根据数据中的变量关系对数据进行聚类(clustering),来提取出数据的结构。

聚类应用的例子,如在谷歌新闻中,将同一主题的新闻事件聚类在一起显示。我们没有提前告知算法一些信息,算法自动地聚类,我们没有算法正确答案来回应数据集中的数据。

专业名词整理

  • supervised learning:监督学习
  • regresssion:回归
  • classification:分类
  • horizontal axis:横轴、vertical axis:纵轴
  • quadratic function:二次函数、cubic function:三次函数
  • discrete value:离散值、continuous value:连续值
  • training set:训练集、data set:数据集
  • unsupervised learning:非监督学习
  • cluster:簇、clustering algorithm:聚类算法

参考

驿舟小站

Coursera-ML-AndrewNg-Notes

斯坦福大学 2014 机器学习