注:本文内容资源来自 Andrew Ng 在 Coursera上的 Machine Learning 课程,在此向 Andrew Ng 致敬。函数
对于要买房子的人,充分的市场调研能够充分的了解市场行情。假设你想买一栋 750 feet2 的房子,而在其余方面没有太大的要求,现已收集了许多房屋的尺寸极其对应的价格的信息,如图所示:学习
若是你想买一个750 feet2 的房子,大概要多少钱呢?为了让你的估价更加准确,咱们最好能求出一个函数,这个函数表明的线最好能表明房价的走势,这样咱们就能轻松计算了。若是咱们选择了一条直线,如图所示:spa
如今咱们能够估计,750 feet2 的房子大概值 $150,000 了。可是,从咱们的直观感受来看,房价的走势更像是一条曲线。那么,咱们如今选择一条曲线来近似这些数据:code
咱们发现选择的这条曲线更加地接近数据了。不幸的是,750 feet2 的房子原来要 $220,000。ci
在这里,就要讲到两个概念:资源
监督学习(Supervised Learning)io
对于给定的样例输入,都有特定的输出。 例如房价问题,输入房屋尺寸(Size),输出价值(Price)都是已知的。 换句话说,它们都在你的监督范围内。
回归(Regression)ast
找到一条曲线,以预测连续的输出。 例如房价问题,找到一条尺寸-价格曲线,对于任意房屋尺寸都能对其价格进行推测。 回归是解决预测连续输出的一种途径。
与回归相对应的一个概念,就是分类。下面看一个分类问题的例子。import
假设要预测一我的的乳腺癌(Breast Canser)是良性(benign)的仍是恶性(malignant)的。如今有了肿瘤大小(Tumor Size)和对应是否为恶性(Malignant)的数据,如图所示:sed
图中,蓝色的 X 表明良性,红色的X表明恶性,那么,橙色的箭头所指,表明的是什么呢?这就是一个两类分类问题。
分类(Classification)
对于输入,它们的输出值能够分为多个离散的类。 例如这个问题中,将输出分为了恶性与良性两类,还能够根据癌症类型分为多个类。 分类的目的就是将数据进行有效的区分。
以上,咱们还只讨论了输出仅为一个元素的状况。房价问题上,咱们只考虑了房屋的尺寸。癌症问题上,咱们只考虑了肿瘤的尺寸。
为确切地进行预测,每每要考虑多方面的因素。例如癌症问题,除了肿瘤尺寸(Tumor Size),还应考虑患者的年龄(Age)、肿块厚度(Clump Thickness),这样才能更加准确地诊断。咱们把年龄这一重要元素加入进来:
根据肿瘤和患者年龄,进行病情推测,相比只有一个元素时要更加准确。
这里,咱们所说的元素,即输入的属性,称为 特征,全部的特征构成的一个向量称做 特征向量。
上图中右侧所罗列的,都是可选的特征,关于特征,将在后面作详细介绍。
在上面监督学习中,对于给定的输入,都有特定的输出,以下图所示。咱们能够明确的看出,哪一个样例输出是 O ,哪一个样例输出是 X :
可是,在非监督学习中,状况就不大同样了。对于给定的样例,咱们对于它属于哪一类并不明确,以下图所示:
那么,如何进行分类?到底要分红几个类?对于新来的输入,要把它分在哪个类中?
这一问题要由非监督学习方法来解决。
非监督学习
对于给定的样例,输出并不明确。换句话说,并不在你的掌控之中。 对于一堆混杂的数据,如何利用有效的方法,分出几个类来。
非监督学习的例子有不少,例如Google News,须要对新闻进行筛选,而后分红Business、Sci/Tech、Health、Sports等类别: