学习笔记: 机器学习经典算法-简介

简介: 机器学习经典算法-个人笔记和学习心得分享

输入数据集

数据采集表组织格式:

样本特征 可以是有明确语义的(如细胞表达的基因就是描述细胞的特征);也可以是非常抽象的(如图像识别时候图像的每个像素点就可以看作描述图像的特征,2828的图像就有784个特征)。
特征空间(feature sapce):样本对象的本质是测量特征所组成的空间中的一个点。
*分类任务
的本质就是在特征空间的切分

学习算法的输出结果极大程度依赖数据的输入特征可靠性。

有监督机器学习的主要任务

  • 分类任务
    ① 二分类(二选一任务[0/1]),现实中大部分任务都是典型的分类任务;
    ② 多分类(多选一任务),数字识别、图像识别、评级...;多分类任务可以与二分类任务进行转换;
    ③ 多标签分类,如识对一张图像内的人、物都进行判别,从而综合这些信息对图片传达的语义进行判断;
  • 回归任务
    该类任务的结果输出是一个连续数值,而非一个类别。如果判断根据房屋所在环境判断其价格;

在算法上,有些仅用于回归问题或分类问题,也有存在能同时解决这两类问题的。

机器学习算法分类

  • 监督学习:输入的训练数据集带有分类“标签”或者“答案”。
    k近邻、线性回归和多项式回归、逻辑回归、SVM、决策树和随机森林

  • 非监督学习:输入的训练数据集不带有"标记"。通常用于对未标记的样本集进行分类【聚类分解】,从而辅助监督学习任务。

    除了聚类,非监督学习还常用于 数据降维处理 包括:
    $\ \ \ \ \ \ \ \ \ $①特征提取(从采样的大量特征中抽取对预期结果具有重要贡献的特征);
    $\ \ \ \ \ \ \ \ \ $②特征压缩-PCA(该方法并不会对采样特征进行取舍,而是对其中一些关联性特别强的特征进行投影降维来压缩高维数据到低维)。
    数据降维 最主要的意义还是为了方便可视化,把高维数据放在二维平面或三维立体里进行展示。
    最后非监督学习还用于 异常检测 ,识别高维空间中的离群点。

  • 半监督学习:输入的训练数据集部分带有“标签”,另一部分因为各种原因导致了标签缺失。该类任务通常首先使用无监督学习手段对数据进行处理,之后使用监督学习手段做模型的训练和预测。

  • 增强学习:根据周围环境的情况来采取行动,根据采取行动的反馈结果来学习行动方式。其中反馈方式一般使用奖赏或惩罚机制;在迭代反馈和执行的过程中增强算法的"智能"。在无人机、机器人等需要强人工智能的领域都需要使用该类算法。
    增强学习过程

根据数据采集和训练过程,机器学习算法被分成批量学习(Batch learning,也叫做离线学习)和在线学习(Online learning)。

  • Batch learning 指的是由样本数据训练的模型在投入生产环境以后,模型将不再更新迭代。缺点就是不能实时适应生产环境的变化,解决方案一般就是定时更新模型。该方法无法应用于快速变化的生产环境。
  • Online learning 区别于批量学习过程,该方法在新样例输入的时候除了输入判别结果,样例数据同时用于迭代模型。该方法的缺点主要是 当设备故障产出异常结果的时候 会导致模型的准确率收到干扰。所以在线学习过程通常需要较高的数据监控强度。当面对会消耗大量硬件资源,一次性离线学习无法完成的大数据,可以通过拆分成小批数据的形式以在线学习的形式训练离线学习模型。

机器学习的参数学习与非参数学习

  • 参数学习:根据数据基本情况,对特征与结果之间的关系提出统计模型的假设,参数学习任务就是计算提出的假设模型中的参数。比如特征与结果之间假设存在线性关系$f(x) = ax+b$,该学习过程就是求取该线性模型的参数$a、b$。 该方法的特点是一旦学到了参数,样例的预测就不再需要原有数据集的参与。

  • 非参数学习:该方法不对模型进行假设。在处理新样例的预测过程中需要原始数据集的参与。非参数学习不代表没有参数。

机器学习通常面对是高度不确定的系列问题,所以其给出的答案也是具有不确定性但有统计意义的。预测答案的可靠性本身不在于算法本身,而在于数据的质量和数量,当数据量膨胀到一定程度的时候,由算法产生预测结果之间的差异是非常小的。

所以提高模型可靠性的主要方法是:① 收集更多数据;② 提高数据质量; ③ 提高数据代表性; ⑤ 研究更重要的特征。

在研究具体领域的具体问题选择算法的时候,尝试多种算法进行对比试验,是很有必要的!

目录
相关文章
|
1月前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
99 4
|
9天前
|
算法
PAI下面的gbdt、xgboost、ps-smart 算法如何优化?
设置gbdt 、xgboost等算法的样本和特征的采样率
25 2
|
27天前
|
机器学习/深度学习 算法 数据挖掘
C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出
本文探讨了C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出。文章还介绍了C语言在知名机器学习库中的作用,以及与Python等语言结合使用的案例,展望了其未来发展的挑战与机遇。
44 1
|
1月前
|
机器学习/深度学习 自然语言处理 算法
深入理解机器学习算法:从线性回归到神经网络
深入理解机器学习算法:从线性回归到神经网络
|
1月前
|
机器学习/深度学习 算法
深入探索机器学习中的决策树算法
深入探索机器学习中的决策树算法
41 0
|
1月前
|
机器学习/深度学习 算法 Python
机器学习入门:理解并实现K-近邻算法
机器学习入门:理解并实现K-近邻算法
36 0
|
2天前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
105 80
|
21天前
|
算法
基于WOA算法的SVDD参数寻优matlab仿真
该程序利用鲸鱼优化算法(WOA)对支持向量数据描述(SVDD)模型的参数进行优化,以提高数据分类的准确性。通过MATLAB2022A实现,展示了不同信噪比(SNR)下模型的分类误差。WOA通过模拟鲸鱼捕食行为,动态调整SVDD参数,如惩罚因子C和核函数参数γ,以寻找最优参数组合,增强模型的鲁棒性和泛化能力。
|
7天前
|
供应链 算法 调度
排队算法的matlab仿真,带GUI界面
该程序使用MATLAB 2022A版本实现排队算法的仿真,并带有GUI界面。程序支持单队列单服务台、单队列多服务台和多队列多服务台三种排队方式。核心函数`func_mms2`通过模拟到达时间和服务时间,计算阻塞率和利用率。排队论研究系统中顾客和服务台的交互行为,广泛应用于通信网络、生产调度和服务行业等领域,旨在优化系统性能,减少等待时间,提高资源利用率。
|
15天前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。