机器学习简介
前言
本文来源于李宏毅老师的机器学习课程。`
一、机器学习框架Framework
机器学习≈寻找一个function,具备根据所提供的资料寻找出function,具体步骤见下图:
Step1:包含多个function,根据输入内容找到对应的function;
Step2:衡量一个function的好坏;
Step3:用一个好算法从多个function里面挑选最好的function。
二、Learning Map
机器学习学习模块主要如下图所示:
1.监督学习Supervised Learning
监督学习是从输入/输出中学习总结规律,针对新的输入给出对应的输出,特点是训练数据具有标签label。
(1)回归问题
回归问题输出值是连续的,是一种定量输出,其输出空间是一个度量空间。例如:预测明天空气PM2.5的含量·、预测温度、预测价格等。
(2)分类问题
分类问题输出值是离散的,是一种定性输出,输出空间不是度量空间。分类问题被分为:二分类和多分类问题,二分类问题更多是yes or no,例如:垃圾邮件过滤、西瓜好坏判别等;而多分类问题则有多个分类选项,从多个类别里面选择一个正确的类别,例如:手写数字识别1-9。
常用的算法:K-近邻KNN、线性回归、逻辑回归LR、支持向量机SVM、决策树decision tree、随机森林Random Forest、神经网络。
2.半监督学习Semi-supervised Learning
半监督学习包含大量未标注数据和少量标注数据。主要是利用无标签数据,辅助有标签数据,进行监督学习。
3.迁移学习Transfer Learning
论文《A survey on transfer learning》
论文地址:https://ieeexplore.ieee.org/document/5288526/
迁移学习定义:给定源域和学习任务 、目标域和学习任务 ,迁移学习的目的是获取源域和学习任务中的知识,以帮助提升目标域中预测函数的学习。
适用场景:
(1)有大量无标注数据,可以通过寻找与当前数据相似的有标注数据,用有标签的数据训练模型,再将该模型的参数迁移到新模型上,提高对目标数据的预测效果或者标注精度。
(2)跨域推荐系统。
(3)数据样本小时,用迁移学习提高模型泛化能力。
迁移学习中关注三点: What to transfer; How to transfer; When to transfer。
4.无监督学习Unsupervised Learning
无监督学习是使用未标记的数据训练模型,常见的无监督学习分为:聚类和降维。
聚类算法:k-means、DBSCAN、分层聚类算法、EM等,一般使用的是sklearn库。
降维算法:主成分分析PCA、、流形学习t-SNE、非负矩阵分解NMF等,同样使用sklearn库。
5.强化学习Reinforcement Learning
强化学习主要由智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)组成。
智能体agent与环境之间交互的任务,agent像人类一样通过试错,不断地学习在不同的环境下做出最优的动作,而不是有监督地直接告诉agent在什么环境下应该做出什么动作,强化学习中不知道正确的动作是什么,reward是告诉agent执行一个动作或一系列动作后得到的奖励,强化学习通过一序列的最优动作,获得最大的长期回报。
强化学习是一个马尔科夫决策过程,由五元组<S,A,P,r,γ>组成。
总结
第一节视频内容主要对机器学习的分类进行介绍以及机器学习的优势。