热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

机器学习(一)——基础概念

小谈:一直想整理机器学习的相关笔记,但是一直在推脱,今天发现知识快忘却了(虽然学的也不是那么深),



小谈:一直想整理机器学习的相关笔记,但是一直在推脱,今天发现知识快忘却了(虽然学的也不是那么深),但还是浅浅整理一下吧,便于以后重新学习。


最近换到新版编辑器写文章了,有的操作挺方便的,但是😭我目前还没有找到在哪里插入目录。




📙参考:ysu期末复习资料和老师的课件




目录


1.机器学习的定义


2.机器学习的发展历程


3.监督学习、半监督学习和无监督学习的特点


3.1 监督学习


3.2 无监督学习


3.3 半监督学习


3.4 强化学习


4.机器学习的一般流程


4.1 数据预处理


4.1.1 数据清洗


4.1.2数据采样


4.1.3 数据集拆分


4.2 特征工程


4.2.1 特征编码


4.2.2 特征选择


4.3 数据建模


4.4 结果评估





1.机器学习的定义

机器学习专门研究计算机怎样模拟或实现人类的学习行为,以获取新知识或技能,重新组织已有的知识结构使之不断改善自己的性能。


机器学习是人工智能的一个分支。我们使用计算机设计一个系统,使它能够根据提供的训练数据按照一定的方式来学习;随着训练次数的增加,该系统可以在性能上不断学习和改进,通过参数优化的学习模型,能够用于预测相关问题的输出。


2.机器学习的发展历程

推理期→知识期→学科形成→繁荣期


  • 推理期:认为只要给机器赋予逻辑推理能力,机器就能具有智能
  • 知识期:认为要使机器具有智能,就必须设法使机器拥有知识
  • 学科形成:20世纪80年代,机器学习成为一个独立学科领域并开始迅速发展、各种机器学习技术百花齐放
  • 繁荣期:20世纪90年代后,统计学习方法占主导

3.监督学习、半监督学习和无监督学习的特点


3.1 监督学习


从给定的有标注的训练数据集中学习出一个函数(模型参数),当新的数据到来时,可以根据这个函数预测结果。


常见任务:包括分类与回归。


3.2 无监督学习


没有标注的训练数据集,需要根据样本间的统计规律对样本集进行分析


常见任务:聚类


3.3 半监督学习


结合(少量的)标注训练数据和(大量的)未标注数据来进行数据的分类学习。


半监督学习可进一步分为纯半监督学习和直推学习,前者假定训练数据中的未标记样本并非待测的数据,而后者则假定学习过程中所考虑的未标记样本恰是待预测数据,学习的目的就是在这些未标记样本上获得最优泛化性能。


3.4 强化学习


基于环境的反馈而行动,通过不断与环境交互、试错,使整体行动收益最大化,强化学习不需要训练数据的Label,但是它需要每一步行动环境给予的反馈,是奖励还是惩罚,基于反馈不断调整训练对象的行为。


(强化学习接触的很少,以后遇到会补充)


4.机器学习的一般流程

数据预处理→特征工程→数据建模→结果评估



4.1 数据预处理


数据预处理:数据清洗、数据集成、数据采样


4.1.1 数据清洗


数据清洗:对各种脏数据进行对应方式的处理,得到标准、干净、连续的数据,提供给数据统计,数据挖掘等使用。


确保数据的五个性质:完整性、合法性、一致性、唯一性、权威性!


数据清洗要保证:数据的完整性、数据的合法性、数据的一致性、数据的唯一性、数据的权威性


(这个期末考试考到了,没有写上一致性😶)


解析一下数据的一致性吧:


不同来源的不同指标,实际内涵是一样的,或是同一指标内涵不一致。


解决方法:建立数据体系,包含但不限于指标体系、维度、单位等


4.1.2数据采样


(1)数据不平衡


数据不平衡,指数据集的类别分布不均。


(2)解决方法


解决方法:过采样(Over-Sampling)、欠采样(Under-Sampling)


过采样:通过随机复制少数类来增加其中的实例数量,从而可增加样本中少数类的代表性。


欠采样:通过随机地消除占多数的类的样本来平衡类分布,直到多数类和少数类的实例实现平衡。


4.1.3 数据集拆分


(1)常将数据划分为3份


  • 训练数据集,train dataset:用来构建机器学习模型
  • 验证数据集,validation dataset:辅助构建模型,用于在构建过程中评估模型,提供无偏估计,进而调整模型参数
  • 测试数据集,test dataset:用来评估训练好的最终模型的性能



(2)常用拆分方法




4.2 特征工程


特征工程:特征编码、特征选择、特征降维、规范化


4.2.1 特征编码


数据集中经常会出现字符串信息,例如男女、高中低等,这类信息不能直接用于算法计算,需要将这些数据转化为数值形式进行编码,便于后期进行建模。


比如:


ont-hot编码:


语义编码:


4.2.2 特征选择


不是所有属性特征都有用。


  • 过滤法

按照发散性或相关性对各特征进行评分,设定阈值完成特征选择。


互信息:指两个随机变量之间的关联程度,即给定一个随机变量后,另一个随机变量的确定性。


所以,互信息取值最小为0,意味着给定一个随机变量对,确定和另一个随机变量没有关系,越大表示另一个随机变量的确定性越高。




  • 包裹法

选定特定算法,然后通过不断的启发式方法来搜索特征。


  • 嵌入法

利用正则化的思想,将部分特征属性的权重调整到0,则这个特征相当于就是被舍弃了。


常见的正则有L1的Lasso,L2的Ridge,和一种综合L1和L2这两个方法的Elastic Net方法。


4.3 数据建模


数据建模:回归问题、分类问题、聚类问题、其他问题


4.4 结果评估


结果评估:拟合度量、查准率、查全率、F1值、PR曲线、ROC曲线





推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 提升Python编程效率的十点建议
    本文介绍了提升Python编程效率的十点建议,包括不使用分号、选择合适的代码编辑器、遵循Python代码规范等。这些建议可以帮助开发者节省时间,提高编程效率。同时,还提供了相关参考链接供读者深入学习。 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • 硬科技投资时代,投资者们该如何抉择?
    随着越来越多符合国家战略、市场认可度高、突破关键核心技术的科技创新型企业挂牌上市,硬科技投资越来越热。华夏中证科创创业50ETF联接基金的开售为投资者提供了新的选择。硬科技的发展有助于突破“卡脖子”技术、实现进口替代,以及推动产业升级。在硬科技投资时代,投资者们应该如何抉择? ... [详细]
  • Learning to Paint with Model-based Deep Reinforcement Learning
    本文介绍了一种基于模型的深度强化学习方法,通过结合神经渲染器,教机器像人类画家一样进行绘画。该方法能够生成笔画的坐标点、半径、透明度、颜色值等,以生成类似于给定目标图像的绘画。文章还讨论了该方法面临的挑战,包括绘制纹理丰富的图像等。通过对比实验的结果,作者证明了基于模型的深度强化学习方法相对于基于模型的DDPG和模型无关的DDPG方法的优势。该研究对于深度强化学习在绘画领域的应用具有重要意义。 ... [详细]
  • 本文介绍了使用Spark实现低配版高斯朴素贝叶斯模型的原因和原理。随着数据量的增大,单机上运行高斯朴素贝叶斯模型会变得很慢,因此考虑使用Spark来加速运行。然而,Spark的MLlib并没有实现高斯朴素贝叶斯模型,因此需要自己动手实现。文章还介绍了朴素贝叶斯的原理和公式,并对具有多个特征和类别的模型进行了讨论。最后,作者总结了实现低配版高斯朴素贝叶斯模型的步骤。 ... [详细]
  • 引号快捷键_首选项和设置——自定义快捷键
    3.3自定义快捷键(CustomizingHotkeys)ChemDraw快捷键由一个XML文件定义,我们可以根据自己的需要, ... [详细]
  • 3年半巨亏242亿!商汤高估了深度学习,下错了棋?
    转自:新智元三年半研发开支近70亿,累计亏损242亿。AI这门生意好像越来越不好做了。近日,商汤科技已向港交所递交IPO申请。招股书显示& ... [详细]
author-avatar
mobiledu2502917293
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有