序言 ----为了巩固一下之前的知识,最近重温了下西瓜书和统计学习方法,所以顺带写篇博客。
一、什么是机器学习,即机器学习的定义。
我认为可以从广义和狭义上去说,
广义上说就是让机器具有类似人一样的学习能力,通过学习新知识来提高自己的能力,而非直接编程告诉机器每一步执行什么。
狭义上说,就是让计算机基于数据构建(概率统计)模型,并通过该模型对未知数据进行预测与分析的方法。
(西蒙曾对“学习”下过这么一个定义:如果一个系统能够通过执行某个过程改进它的性能,这就是学习)
总结性的话说,机器学习研究的是数据,识别或总结出数据中的规律,构建模型。而它目的是对未知数据做预测,可以通过训练能够提升预测的准确度
二、有了定义,那么机器学习又可以分为哪些类呢?
常见的分类有:监督学习、无监督学习、强化学习
监督学习是我们最为常见的情况,它又可以分为回归问题、分类问题和标注问题。
输入和输出都是连续的值则是回归问题。输出是离散值则为分类问题。
下图监督学习的过程图,首先基于训练数据学习一个模型,然后再用该模型对测试集做预测。
模型一般有两种表示方法,决策函数(输入X,得到结果Y),或者 条件概率分布(已知X得到Y的概率)
那么模型又分为哪些类型呢?
根据决策函数是否是线性函数,可以分为线性模型和非线性模型。
感知机、线性回归、线性支持向量机、k近邻 k均值等都是线性模型
核函数支持向量机、决策树、神经网络都是非线性模型
根据生产方法的不同,又可以分为生产模型和判别模型
由数据学习联合概率分布P(X,Y)然后求出条件概率分布P(Y|X)作为预测模型,即生成模型。典型的生成模型有朴素贝叶斯 、隐马尔科夫模型。
由数据直接学习决策函数或条件概率分布作为预测的模型,即判别模型。包括k邻近 、感知机、决策树、逻辑回归、最大熵模型、支持向量机、条件随机场等。
我们已经知道,模型由决策函数或条件概率