机器学习基础

所谓“机器学习”就是利用计算机将纷繁复杂的数据处理成有用的信息,这样就可以发掘出数据带来的意义以及隐藏在数据背后的规律。现如今,“机器学习”和“大数据”可以说是IT行业中最热点的两个词汇,而无论是“机器学习”还是“大数据”最终要解决的问题本质上是一样的,用最为直白的话来说就是用现有的数据去预测将来的状况。

按照问题的“输入”和“输出”,我们可以将用计算机解决的问题分为四大类:

  1. 输入的信息是精确的,要求输出最优解。
  2. 输入的信息是精确的,无法找到最优解。
  3. 输入的信息是模糊的,要求输出最优解。
  4. 输入的信息是模糊的,无法找到最优解。

在上面的四大类问题中,第1类问题是计算机最擅长解决的,这类问题其实就是“数值计算”和“逻辑推理”方面的问题,而传统意义上的人工智能也就是利用逻辑推理来解决问题(如早期的“人机对弈”)。一直以来,我们都习惯于将计算机称为“电脑”,而基于“冯诺依曼”体系结构的“电脑”实际上只是实现了“人脑”理性思维这部分的功能,而且在这一点上“电脑”通常是优于“人脑”的,而“人脑”在处理输入模糊信息时表现出来的强大的处理能力,在今天看来也不是“电脑”可以完全企及的。所以我们研究人工智能也好,研究机器学习也好,是希望输入模糊信息时,计算机能够给出满意的甚至是最优的答案。

至此,我们可以给“机器学习”下一个定义:机器学习是一门专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身性能的学科。机器学习目前已经广泛的应用到生产生活的各个领域,以下列举了一些经典的场景:

  1. 搜索引擎:根据搜索和使用习惯,优化下一次搜索的结果。
  2. 电商网站:自动推荐你可能感兴趣的商品。
  3. 贷款申请:通过你最近的金融活动信息进行综合评定。
  4. 图像识别:自动识别图片中有没有不和谐的内容。

机器学习可以分为监督学习和非监督学习。监督学习是从给定的训练数据集中学习得到一个函数,当新的数据到来时,可以根据这个函数预测结果,监督学习的训练集包括输入和输出,也可以说是特征和目标。监督学习的目标是由人来标注的,而非监督学习的数据没有类别信息,训练集也没有人为标注结果,通过无监督学习可以减少数据特征的维度,以便我们可以使用二维或三维图形更加直观地展示数据信息 。

实现机器学习的一般步骤:

  1. 数据收集
  2. 数据准备
  3. 数据分析
  4. 训练算法
  5. 测试算法
  6. 应用算法