机器学习算法概述

机器学习就是把无序的数据转换成有用的信息。

机器学习横跨计算机科学、工程技术和统计学等多个学科,需要多学科的专业知识。机器学习的主要任务就是分类。很多机器学习算法非常善于分类。

机器学习算法进行分类,首先要做的是算法训练,即学习如何分类。通常我们为算法输入大量已分类数据作为算法的训练集。训练集是用于训练机器学习算法的数据样本集合。为了测试机器学习算法的效果,通常使用两套独立的样本集:训练数据和测试数据。当机器学习程序开始运行时,使用训练样本集作为算法的输入,训练完成之后输入测试样本。

机器学习的另一项任务是回归,它主要用于预测数值型数据。分类和回归属于监督学习,之所以称之为监督学习,是因为这类算法必须知道预测什么,即目标变量的分类信息。与监督学习相对应的是无监督学习,此时数据没有类别信息,也不会给定目标值。

下表中列出机器学习的主要任务,以及解决相应问题的算法。

用于执行分类、回归、聚类和密度估计的机器学习算法

监督学习的用途
k-近邻算法 线性回归
朴素贝叶斯算法 局部加权线性回归
支持向量机 Ridge回归
决策树 Lasso最小回归系数估计
无监督学习的用途
K-均值 最大期望算法
DBSCAN Parzen窗设计

选择实际可用的算法,必须考虑下面两个问题:
使用机器学习算法的目的,想要算法完成何种任务
需要分析或收集的数据是什么
充分了解数据特性可以缩短选择机器学习算法的时间。

机器学习算法虽然各不相同,但是使用算法创建应用程序的步骤却基本类似。通常遵循以下的步骤:
收集数据
准备输入数据
分析输入数据
训练算法(无监督学习算法,不需要)
测试算法
使用算法