当前位置: 首页 > news >正文

Iterative loop of ML development|机器学习的迭代发展

-----------------------------------------------------------------------------------------------

这是我在我的网站中截取的文章,有更多的文章欢迎来访问我自己的博客网站rn.berlinlian.cn,这里还有很多有关计算机的知识,欢迎进行留言或者来我的网站进行留言!!!

-----------------------------------------------------------------------------------------------

一、机器学习迭代发展过程

A3B7DA0D-C729-4B06-A261-5354467AA75E.png

这张图片展示了机器学习(ML)开发的迭代循环过程。循环包括三个主要步骤:

  1. 选择架构(模型、数据等):确定模型类型和准备数据。

  2. 训练模型:使用选定的架构和数据来训练模型。

  3. 诊断(偏差、方差和错误分析):评估模型性能,识别问题。

这个循环是迭代的,意味着在诊断后可能需要返回到选择架构的步骤进行调整。


例子:建立一个垃圾邮件分类器


1. 垃圾邮件分类示例

EE98F6CA-22E3-4701-A9F9-B0E2DA522C85.png

左边的邮件:

  • 发件人cheapsales@buystufffromme.com,这是一个可能看起来不太可信的域名,常用于垃圾邮件发送者。

  • 收件人:Andrew Ng,可能是一个真实存在的收件人。

  • 主题:Buy now!,使用了紧迫性的语言,试图促使收件人立即行动。

  • 内容:邮件内容提供了一些商品的促销信息,如“Rolex w4tches - $100”(故意拼写错误以规避过滤),“Med1cine (any kind) - £50”(同样使用了数字和字母的混合拼写),以及“Also low cost MOrgages available.”(拼写错误)。这些内容通常与垃圾邮件相关,因为它们试图通过低价吸引收件人购买商品或服务。

右边的邮件:

  • 发件人:Alfred Ng,看起来像是一个个人名字,可能是收件人的熟人。

  • 收件人:Andrew Ng,与左边邮件相同。

  • 主题:Christmas dates?,这是一个询问性质的主题,与个人交流相关。

  • 内容:邮件内容是关于圣诞节计划的个人交流,提到了与家人的对话和具体的会面日期(Dec 22),这表明邮件是私人和非商业性质的。

这两封邮件的对比展示了垃圾邮件通常包含促销信息、拼写错误和紧迫性的语言,而非垃圾邮件则更可能是个人交流和询问。


2. 构建垃圾邮件分类器

62D07AC9-0367-4FBC-ABDE-B62588C4AEA7.png

这张图片详细说明了如何构建一个垃圾邮件分类器的过程,主要通过以下几个步骤:

  1. 监督学习:这是一个机器学习的方法,其中模型通过已标记的数据集进行训练,以学习如何对新的数据进行分类。在这个例子中,x 代表电子邮件的特征,而 y 是一个标签,表示邮件是垃圾邮件(1)还是非垃圾邮件(0)。

  2. 特征提取:特征是用于训练模型的输入数据。在这个案例中,特征是从电子邮件中提取的词汇。具体来说,选择了最常用的10,000个单词作为特征,这些单词用于构建特征向量 x1​,x2​,…,x10,000​。

  3. 特征向量:图片中展示了一个特征向量 x 的示例。这个向量是一个包含10,000个元素的向量,每个元素对应一个特定的单词。如果某个单词在邮件中出现,则对应的元素值为1;如果没有出现,则为0。例如,单词 "andrew" 和 "deal" 在邮件中出现了,所以它们对应的特征值为1。

  4. 邮件内容分析:右侧展示了一封电子邮件的内容,其中一些单词被标记,这些单词在特征向量中对应的位置会有值。例如,"buy" 和 "deal" 在邮件中出现了,所以在特征向量中对应的位置会有值。

通过这种方式,每封电子邮件都可以被转换成一个特征向量,然后这个向量可以被用于训练一个分类器,以识别未来的邮件是否为垃圾邮件。


3. 少垃圾邮件分类器错误的方法

D0C6B358-9800-4DD1-AC8D-1A0F57B863A2.png

这张图片提供了减少垃圾邮件分类器错误的几种方法:

  1. 收集更多数据,例如通过“Honeypot”项目。

  2. 基于电子邮件路由(从邮件头)开发更复杂的特征。

  3. 从电子邮件正文定义更复杂的特征,例如将“discounting”和“discount”视为同一个词。

  4. 设计算法来检测拼写错误,例如识别“w4tches”、“med1cine”和“m0rtgage”。

-----------------------------------------------------------------------------------------------

这是我在我的网站中截取的文章,有更多的文章欢迎来访问我自己的博客网站rn.berlinlian.cn,这里还有很多有关计算机的知识,欢迎进行留言或者来我的网站进行留言!!!

-----------------------------------------------------------------------------------------------

http://www.dtcms.com/a/359922.html

相关文章:

  • JavaEE初阶网络原理-初识
  • PythonDay42
  • 提取动漫图像轮廓并拟合为样条曲线(MATLAB)
  • Mysql学习 Day3 Explain详解与索引优化
  • APB验证VIP Agent的各个组件之间的通信
  • SpringAI应用开发面试实录:核心技术、架构设计与业务场景全解析
  • React前端开发_Day12_极客园移动端项目
  • 解决 uni-app 中大数据列表的静默UI渲染失败问题
  • UniApp 基础开发第一步:HBuilderX 安装与环境配置
  • Wi-Fi技术——物理层技术
  • 【C++】构造函数初始化详解
  • 漫谈《数字图像处理》之基函数与基图像
  • 分布式测试平台ITP:让自动化测试更高效、更稳定
  • IS-IS 与 OSPF 协议机制比较
  • 软考 系统架构设计师系列知识点之杂项集萃(138)
  • 【Proteus仿真】开关控制系列仿真——开关控制LED/拨码开关二进制计数/开关和继电器控制灯灭
  • Java试题-选择题(26)
  • zkML-JOLT——更快的ZK隐私机器学习:Sumcheck +Lookup
  • 【iOS】MVC架构
  • OpenCL C 内核(Kernel)
  • 在实践中学Java(中)面向对象
  • Elasticsearch vs Solr vs OpenSearch:搜索引擎方案对比与索引设计最佳实践
  • [光学原理与应用-353]:ZEMAX - 设置 - 可视化工具:2D视图、3D视图、实体模型三者的区别,以及如何设置光线的数量
  • 设计模式概述:为什么、是什么与如何应用
  • Ethers.js vs Wagmi 的差异
  • 如何利用AI IDE快速构建一个简易留言板系统
  • Playwright Python 教程:实战篇
  • 外贸服装跟单软件怎么选才高效?
  • C++ 迭代器的深度解析【C++每日一学】
  • 从零到一:使用anisble自动化搭建kubernetes集群