机器学习

机器学习(Machine Learning,简称ML)是一种人工智能(AI)的分支,致力于研究让计算机系统能够从数据中学习并自动改进性能的算法和技术。机器学习使计算机系统能够从经验中学习,而不需要明确地进行编程。

机器学习:完整机器学习项目流程,数据清洗

一、完整机器学习项目流程

1. 数学抽象--任务目标

明确问题是进行机器学习的第一步。机器学习的训练过程通常都是一件非常耗时的事情,胡乱尝试时间成本是非常高的。

这里的抽象成数学问题,指的是根据数据明确任务目标,是分类、还是回归,或者是聚类。

2. 数据获取--数据集

数据决定了机器学习结果的上限,而算法只是尽可能逼近这个上限。

数据要有代表性,否则必然会过拟合。

对于分类问题,数据偏斜不能过于严重(平衡),不同类别的数据数量不要有数个数量级的差距。

对数据的量级要有一个评估,多少个样本,多少个特征,据此估算出内存需求。如果放不下就得考虑改进算法或者使用一些降维技巧,或者采用分布式计算。

机器学习:高级算法课程学习总结

作为一个机器学习方面的小白,在闵老师课上学的两个聚类算法,即经典的K-means聚类和基于随机游走的聚类算法,是我学习到的头两个与机器学习相关的算法。算法课上,闵老师先讲了简单但是经典的K-means聚类算法,让我们对聚类算法有了一个初步的理解,紧接着又花了大量的时间剖析了基于随机游走的聚类算法。五周十二次的课程,我学到的不只是算法本身,下面将从几个方面来总结我对本课程的收获。

译 | 机器学习概念

机器学习致力于研究如何通过计算的手段,利用经验来改善系统自身的性能。在计算机系统中,“经验”通常以“数据”形式存在,因此机器学习研究的主要内容,是关于在计算机上从数据中产生模型(model)的算法,即学习算法(learning algoritmn),有了学习算法,我们把经验数据提供给它,它就能基于这些数据产生模型。在面对新的情况的时候,模型会给我们新的判断。

成为一名机器学习算法工程师,你需要这些必备技能!

成为一名合格的开发工程师不是一件简单的事情,需要掌握从开发到调试到优化等一系列能力,这些能力中的每一项掌握起来都需要足够的努力和经验。而要成为一名合格的机器学习算法工程师(以下简称算法工程师)更是难上加难,因为在掌握工程师的通用技能以外,还需要掌握一张不算小的机器学习算法知识网络。

下面我们就将成为一名合格的算法工程师所需的技能进行拆分,一起来看一下究竟需要掌握哪些技能才能算是一名合格的算法工程师。

成为一名机器学习算法工程师,你需要这些必备技能!
图1 机器学习算法工程师技能树

基础开发能力

机器学习和深度学习概念入门

对于很多初入学习人工智能的学习者来说,对人工智能、机器学习、深度学习的概念和区别还不是很了解,有可能你每天都能听到这个概念,也经常提这个概念,但是你真的懂它们之间的关系吗?那么接下来就给大家从概念和特点上进行阐述。先看下三者的关系。

[译]机器学习:有监督算法之分类

机器学习横跨计算机科学、工程技术和统计学等多个科学。人们很难直接从原始数据本身获得所需信息,机器学习可以把无序的数据转换成有用的信息;移动计算和传感器产生的海量数据意味着未来将面临越来越多的数据,如何从中抽取到有价值的信息很重要,机器学习可以帮助我们从中抽取有用的信息。

从安全视角对机器学习的部分思考

近数十年内,由于机器学习的热潮,计算能力有着摩尔定律的加持,以及大数据时代的来临,让越来越多的领域里都能被机器学习很好的应用。特别是在自然语言处理,计算机视觉等领域都有非常好的发展,甚至已经可以达到商业用途的地步。但是随着数据的增长,数据的安全是否得到了保障,模型的功能性是否得到了验证这仍然是个大大的问号。

不容错过:10本让你成为机器学习领域的专家的好书!

机器学习是个跨领域的学科,而且在实际应用中有巨大作用,但是没有一本书能让你成为机器学习的专家。

在这篇文章中,我挑选了10本书,这些书有不同的风格,主题也不尽相同,出版时间也不一样。因此,无论你是新手还是领域专家,一定能找到适合你的。

新手的最佳读物

这本书绝对是初学者非常期待的入门书。这本书条理清晰,学习成本低,因此我把它列为新手的最佳读物。

下面让我们深入讨论一些关于人工智能程序的话题。

人工智能编程范例

如果您想接触最新的人工智能技术,那么Peter Norvig写的人工智能编程范例将非常适合。

机器学习算法选用指南

摘要: 本文对机器学习的一些基本概念给出了简要的介绍,并对不同任务中使用不同类型的机器学习算法给出一点建议。

在从事数据科学工作的时候,经常会遇到为具体问题选择最合适算法的问题。虽然有很多有关机器学习算法的文章详细介绍了相关的算法,但要做出最合适的选择依然非常困难。

在这篇文章中,我将对一些基本概念给出简要的介绍,对不同任务中使用不同类型的机器学习算法给出一点建议。在文章的最后,我将对这些算法进行总结。

首先,你应该能区分以下四种机器学习任务:
  •   监督学习
  •   无监督学习
  •   半监督学习
  •   强化学习

监督学习

监督学习是从标记的训练数据中推断出某个功能。通过拟合标注的训练集,找到最优的模型参数来预测其他对象(测试集)上的未知标签。如果标签是一个实数,我们称之为回归。如果标签来自有限数量的值,这些值是无序的,那么称之为分类。

机器学习中在线学习、批量学习、迁移学习、主动学习的区别

一、批量学习

在监督学习的批量方法中,多层感知器的突出权值的调整在训练样本集合的所有N个例子都出现后进行,这构成了训练的一个回合。换句话说,批量学习的代价函数是由平均误差能量定义的。多层感知器的突触权值的调整是以回合-回合为基础的。相应地,学习曲线的一种实现方式是通过描绘平均误差能量对回合数的图形而得到,对于训练的每一个回合,训练样本集合的样例是随机选取的。学习曲线通过对足够大量的这样实现的总体平均来计算,这里每次实现是在随机选取不同初始条件下完成的。这一特点符合交叉验证的规律,实验中的实验集、验证集、测试集一般都是批量处理的典例。

优点:
(1)消除样本顺序的影响
(2)对梯度向量的精确估计,因此,在简单条件下,保证了这一方法最速下降到局部极小点的收敛性。
(3)学习的并行性。

缺点:
(1)有着存储需求

二、在线学习