机器学习
机器学习(Machine Learning)是人工智能的一个分支,主要研究让计算机可以自动学习的算法,是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。传统的机器学习算法包括决策树、聚类、贝叶斯分类、支持向量机、Adaboost(自适应提升算法)等。因为机器学习算法涉及很多统计学理论,与统计学的关系密切,故也称为统计机器学习。
- 机器学习 = 机器(计算机) + 学习
- 人的学习过程:读书-练习-测验-成绩
机器学习是一种通过利用数据,训练出模型,然后使用模型预测的方法。
数据挖掘(data mining)是指从大量的数据中,挖掘出未知的且有价值的信息和知识的过程。
按照学习算法对数据利用方式的不同,机器学习算法可分为监督学习、无监督学习、半监督学习、深度学习与强化学习等。
监督学习分为回归(Regression)和分类(Classification)两类:
- 回归(Regression):其数据集是给定一个函数和他的一些坐标点,然后通过回归分析的算法,来估计原函数的模型,求得最符合这些数据集的函数解析式。然后我们就可以用来预估未知数据,输入一个自变量便会根据这个模型解析式输出因变量,这些自变量就是特征向量,因变量即为标签,而且标签的值是建立在连续范围的。
- 分类(Classfication):其数据集由特征变量和标签组成,当你学习这些数据之后,给你一个只知道特征向量不知道标签的数据,让你求他的标签是哪一个?分类和回归的主要区别就是输出结果是连续还是离散。
与监督学习不同,无监督学习是指数据本身不包含标注信息,半监督学习是指一部分数据有标注信息,而一部分数据没有标注信息。无监督学习包括聚类、降维(如主成分分析)、期望极大算法(EM)等。
强化学习 强化学习也使用未标记的数据对模型进行训练,与无监督学习相比,强化学习可以通过某种方式知道模型结果是否在逐步接近正确结果。在没有任何标签数据的情况下,强化学习先尝试做出一些行为,得到结果,判断结果是好是坏,根据反馈结果不断调整行为,直到找到最优的策略。强化学习能够学习到在什么情况下选择什么行为,可以得到最好的结果。
深度学习 深度学习是一个复杂的机器学习算法,使机器模仿人类视听和思考等行为,解决了很多复杂的模式识别难题,在声音、图像等领域带来了革命性的突破。深度学习算法一般通过构造逐层抽象的“端到端(end-to-end)”机制来学习隐含在数据内部的隐含模式,得到具有更强表达能力和泛化能力的特征表达,然后将深度学习得到的特征用于识别和分类等任务。例如,卷积神经网络CNN通过卷积层、池化层、激活函数和全连接层构造深度模型,辅以误差反向传播等机制学习模型参数,得到比输入数据更具区别力的特征表达。 2006年之后,随着多层神经网络的快速发展,深度学习在声音、图像等领域带来了革命性的突破。深度学习(Deep Learning)在生物信息研究中也日益受到重视,在药物开发、医学诊断等领域展现出超过传统机器学习方法的优势。与传统机器学习算法最大的不同在于,深度学习是一类端到端的学习算法,不需要经过数据的特征提取等过程,它能够自动提取数据的有用特征。然而,由于深度学习的网络结构很深,需要优化的参数很多,因此需要使用更多的训练数据对模型进行训练,并且随着数据量的增大,对计算机性能的要求提高,通常大型的深度学习模型会使用GPU进行训练。因此,以机器学习为代表的人工智能技术的发展为生物信息学研究带来了新的工具与方法,并将是生物学家不可或缺的工具之一。但是,与传统统计分析相比,使用机器学习进行数据分析需要研究人员具有更强的数学背景,才能避免产生无意义的分析结果。
One of the best ways to study machine learning methods is to take the online courses. The one by Andrew Ng is awesome: https://www.coursera.org/learn/machine-learning
References
- James, Witten, Hastie, and Tibshirani, An Introduction to Statistical Learning with Applications in R: https://www.statlearning.com/
- A visual introduction to machine learning: