【机器学习】041_模型开发迭代过程

news2024/11/26 0:48:15

一、模型开发的一般步骤

1. 明确研究问题

确定问题的组成和结果,明晰问题是分类问题还是回归问题

2. 决定系统总体架构

①理解数据:采集(爬取)数据,生成(导入)数据,进行数据清洗操作,包括数据预处理:缺失值处理、重复值处理、转换数据类型、规整字符串、进行数据归一化/标准化等。

②特征工程:对所采集的数据根据问题分析所采取的特征、确定所需的特征值,计算各个特征和标签的相关性,查看标签对应的相关系数,并根据相关系数的大小选择特征列作为模型输入。

③建立数据集:选取训练数据和测试数据的特征和标签,划分好训练数据集与测试数据集。

④构建神经网络:根据问题和输入设计好神经网络架构。

⑤选择算法:选择合适的机器学习算法,导入算法或自写算法。

⑥选择超参数:选择、初始化好计算过程里相应的超参数。

⑦训练模型:构建好模型,开始训练。

3. 模型评估

①对模型的预测结果进行相应的精度评估。

②对模型的精度、误差等进行相应的优化,采取对应的优化方案,例如扩大神经网络、进行正则化等等,不断循环进行,使模型的精度更高,预测结果更好。

文本分类实例:

· 构建分类器来识别垃圾邮件和非垃圾邮件

思路:

· 训练一个监督学习算法,输入特征x为电子邮件的相关特征,输出标签y为1或0,表示电子邮件是否是垃圾邮件。

· 取英语或其它词典中排名前10,000的单词(字词),并使用它们来定义特征x_1,x_2...x_10,000。

例如,对于右边的电子邮件,取单词表设置各单词的特征为0或1或其出现的具体次数。

给定这个单词表各单词出现频率或次数的特征值,可以训练分类算法在给定x的情况下预测y值。

· 获取数据方式例子:创建大量虚假电子邮件地址,故意交到垃圾邮件发送者手中,以期获得大量垃圾邮件数据。或者基于电子邮件路由开发更复杂的数据获取方式。

· 在检测特征值、提取特征单词表的过程中,从电子邮件正文里可提出更复杂的功能。

不同的检测算法、不同的特征值提取方式、不同的数据获取方式都可能导致最终结果和模型效果的不同。

二、开发过程中的模型诊断

错误分析:

假设有500条交叉验证实例,模型算法错误分类了500个实例的100个;

※需手动查看这100个错误实例,并深入了解算法出错的地方及可能原因。

· 从交叉验证集中找到一组算法错误分类的实例,并尝试把它们分组为共同的主题、共同的属性或共同的特征——找清楚导致分类错误所可能的原因。

· 例如,很多被错误分类的垃圾邮件是药品销售类别,那么实际上通过这些示例并手动计算此分类中有多少垃圾邮件是药品垃圾邮件,并估计药品垃圾邮件分类错误的原因;如果分类错误可能是由于拼写错误,那么也会检查计算错误分类的示例有多少个是拼写错误引起的。

· 如果错误分类的数据不仅仅有100个而是更大(例如10,000个),那么通常会抽取大约一定数目的子集,在这些子集上进行查看以确定错误分类数据的情况。

· 如果经过此分析,发现很多错误集中于某一类的示例,那么可能下一步的工作就是收集更多该类型的示例训练数据,或者润色与该类相关的特征值、添加新功能,或者修改优化对该类数据的分析算法。

通过学习曲线反映的偏差方差分析能够反映出模型的一些错误,以提供一些“开发更大神经网络”或“收集更多数据”的工作线索。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1301246.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

绕过360给目标机器添加账户

CS BOF是什么? Beacon 对象文件 (BOF) 是一个已编译的 C 程序,按照约定编写,允许其在 Beacon 进程内执行并使用内部 Beacon API。BOF 是一种通过新的利用后功能快速扩展 Beacon 代理的方法。 BOF 的占地面积较小。它们在 Beacon 进程内部运…

备份和恢复Linux服务器上的HTTP配置

备份和恢复Linux服务器上的HTTP配置是一项重要的任务,它可以确保您的服务器在出现故障或配置错误时能够迅速恢复正常运行。下面我们将介绍如何备份和恢复Linux服务器上的HTTP配置。 备份HTTP配置 登录到Linux服务器上,并使用root权限。 备份HTTP配置文…

PPT插件-好用的插件-超级对齐-大珩助手

超级对齐 包含对齐幻灯、对齐对象、对齐文本三个层级,可共用水平分布、垂直分布、交换位置、统一尺寸、垂直居中、水平居中、绝对居中、靠左对齐、靠右对齐、靠上对齐、靠下对齐 可配合图形缩放使用 可配合文本打散使用 可配合素材库中的一键替换使用 选中场景中的…

代码随想录二刷 |二叉树 |144.二叉树的前序遍历

代码随想录二刷 |二叉树 |144.二叉树的前序遍历 题目描述解题思路代码实现递归法迭代法 题目描述 144.二叉树的前序遍历 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root [1,null,2,3] 输…

Android P 9.0 增加以太网静态IP功能

效果图 一、Settings添加以太网的配置&#xff1a; 1、vendor\mediatek\proprietary\packages\apps\MtkSettings\res\xml\network_and_internet.xml <com.android.settingslib.RestrictedPreferenceandroid:key"ethernet_settings"android:title"string/et…

【LeetCode热题100】【滑动窗口】找到字符串中所有字母异位词

给定两个字符串 s 和 p&#xff0c;找到 s 中所有 p 的 异位词 的子串&#xff0c;返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指由相同字母重排列形成的字符串&#xff08;包括相同的字符串&#xff09;。 示例 1: 输入: s "cbaebabacd", p "…

Java Web——过滤器 监听器

目录 1. Filter & 过滤器 1.1. 过滤器概述 1.2. 过滤器的使用 1.3. 过滤器生命周期 1.4. 过滤器链的使用 1.5. 注解方式配置过滤器 2. Listener & 监听器 2.1. 监听器概述 2.2. Java Web的监听器 2.2.1. 常用监听器 2.2.1.1. ServletContextListener监听器 …

深度学习与逻辑回归模型的融合--TensorFlow多元分类的高级应用

手写数字识别 文章目录 手写数字识别1、线性回归VS逻辑回归Sigmoid函数 2、逻辑回归的基本模型-神经网络模型3、多元分类基本模型4、TensorFlow实战解决手写数字识别问题准备数据集数据集划分 特征数据归一化归一化方法归一化场景 标签数据独热编码One-Hot编码构建模型损失函数…

RT-DERT改进策略:AKConv即插即用,轻松涨点

摘要 提出了一种算法&#xff0c;用于生成任意尺寸卷积核的初始采样坐标。与常规卷积核相比&#xff0c;提出的AKConv实现了不规则卷积核的函数来提取特征&#xff0c;为各种变化目标提供具有任意采样形状和尺寸的卷积核&#xff0c;弥补了常规卷积的不足。在COCO2017和VisDro…

网络设备的健康检查方式

网络设备的健康检查方式 L3检查 通过ICMP来检查IP地址是否正常 L4检查 通过三次握手来检查端口号是否正常 L7检查 通过真实的应用通信来检查应用程序是否正常

实战-docker方式部署个人私有云相册-PhotoPrism-2023.12.10-测试成功

实战-docker方式部署个人私有云相册-PhotoPrism-2023.12.10-测试成功 目录 文章目录 实战-docker方式部署个人私有云相册-PhotoPrism-2023.12.10-测试成功目录需求前提环境环境1、部署2、测试3、使用4、效果总结参考关于我最后 需求 目前为止&#xff1a; 自己的博客、知识库…

【分布式】浅谈分布式事务及解决方案

目录 一、背景 1.1、本地事务的基本概念 1.2、本地事务的基本特性 1.3、为什么需要分布式事务&#xff1f; 二、分布式事务常见解决方案 2.1、两阶段提交&#xff08;2PC&#xff09; 2.1.1、2PC实现原理 准备阶段&#xff08;Prepare phase&#xff09; 提交阶段&…

Oracle-pl/sql developer客户端连接报错问题分析

问题一&#xff1a; 用户在windows电脑使用pl/sql developer客户端使用tns方式连接数据库时&#xff0c;出现ORA-12170 TNS连接超时报错 使用ezconnect方式连接可以成功 问题一分析: 首先&#xff0c;查看pl/sql developer软件的Oracle客户端配置configure-->preferences,确…

详细介绍下OP-TEE,以及TF-A与OP-TEE的关系

什么是OP-TEE OP-TEE&#xff08;Open Portable Trusted Execution Environment&#xff09;是一个开源的可信执行环境&#xff08;TEE&#xff09;框架&#xff0c;用于嵌入式系统中的安全应用程序执行。它提供了一种安全的执行环境&#xff0c;用于保护敏感数据和执行安全操…

JRT文件服务实现

网站与客户端打印和导出方面已经无大碍了&#xff0c;今天抽时间整整文件服务&#xff0c;文件服务设计可以查看下面连接。原理一样&#xff0c;代码会有些变化。 文件服务设计 首先实现文件服务的服务端&#xff0c;就是一个业务脚本&#xff0c;用来接收上传、移动和删除文件…

大华摄像头windows、linuxJavaSDK开发使用

文章目录 简介环境要求库加载问题及解决方法大华摄像头Java SDK&#xff0c;完成摄像头设备登录、视频录像目录结构windows 的c代码Linux的C代码项目结构 登录云台控制录像调用的接口注意码云地址 简介 本文档主要介绍 SDK 接口参考信息&#xff0c;包括主要功能、接口函数和回…

使用Git进行版本控制

参考&#xff1a;《Python编程从入门到实践》 前言1、安装、配置 Git1.1 在Linux系统中安装Git1.2 在OS X系统中安装Git1.3 在Windows系统中安装Git1.4 配置Git 2、创建项目3、忽略文件4、初始化仓库5、检查状态6、将文件加入到仓库中7、执行提交8、查看提交历史 前言 版本控制…

计算机毕业设计 SpringBoot的乐乐农产品销售系统 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

stu05-前端的几种常用开发工具

前端的开发工具有很多&#xff0c;可以说有几十种&#xff0c;包括记事本都可以作为前端的开发工具。下面推荐的是常用的几种前端开发工具。 1.DCloud HBuilder&#xff08;轻量级&#xff09; HBuilder是DCloud&#xff08;数字天堂&#xff09;推出的一款支持HTML5的web开发…

HCIP---RSTP/MSTP

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 STP协议虽然能够解决环路问题&#xff0c;但是收敛速度慢&#xff0c;影响了用户通信质量。IEEE于2001年发布的802.1w标准定义了快速生成树协议RSTP&#xff08;Rapid Spanning-Tree Proto…