01.机器学习引言
1.机器学习的步骤
1. 数据搜集
其中数据划分,是将数据集分为训练集、验证集和测试集(通常不考虑时间)
2. 数据清洗
3. 特征工程
-
提取对象:原始数据(特征提取一般在特征选择之前)
-
提取目的:自动地构建新的特征,将原始数据转换为一组具有明显物理意义(例如,几何特征、纹理特征)或统计意义的特征
-
常用方法:
-
降维方面:PCA、ICA、LDA等
-
图像方面:SIFT、Gabor、HOG等
-
文本方面:词袋模型、词嵌入模型等
-
注意:传统机器学习跟深度学习在特征提取的区别:
深度学习不需要去做特征工程,模型自己对数据做特征工程
4. 数据建模
4.1 模型分类:
- 概率模型:决策树、朴素贝叶斯、隐马尔科夫模型、高斯混合模型等
- 非概率模型:感知机、支持向量机、KNN、AdaBoost、K-means以及神经网络等
4.2损失函数(衡量模型的好坏):
损失函数就是用来衡量模型预测结果跟真实数据之间的真值的。例如,平均损失函数(Quadratic Loss Function)L(Y,f(x)) = (Y- f(x))2,损失函数越小,模型性能越好。
所以我们在设定好一个模型之后,给定一个训练集,训练的目的就是去优化这个损失函数:
min f 1 N ∑ i = 1 n L ( y i , f ( x i ) ) \mathop {\min }\limits_f {1 \over N}\sum\limits_{i = 1}^n {L{{({y_i},f({x_i}))}}} fminN1i=1∑nL(yi,f(xi))
4.3 优化算法
怎么求这个损失函数呢?怎求的具体算法就称为优化算法,现在主要的优化算法有:梯度下降法、牛顿法、拟牛顿法、ADAM等等。
4.4评价指标
(1).评测模型好坏的评价指标:
-
正确肯定(True Positive,TP):预测为真,实际为真
-
正确否定(True Negative,TN):预测为假,实际为假
-
错误肯定(False Positive,FP):预测为真,实际为假
-
错误否定(False Negative,FN):预测为假,实际为真
(2).参考指标
Accuracy (准确率) = T P + T N T P + T N + F P + F N {{TP + TN} \over {TP + {\rm{TN}} + {\rm{FP + FN}}}} TP+TN+FP+FNTP+TN
Precision(精确率) = T P T P + F P {{TP} \over {TP + {\rm{FP}}}} TP+FPTP
Recall(召回率) = T P T P + F N {{TP} \over {TP + {\rm{FN}}}} TP+FNTP
F1 score = 2 × P r e c i s i o n × R e c a l l P r e c i s i o n + R e c a l l {{2 \times {\rm{Precision}} \times {\rm{Recall}}} \over {{\rm{Precision}} + {\rm{Recall}}}} Precision+Recall2×Precision×Recall
3.
2.数据集
2.1 K折交叉验证
交叉验证既可以解决数据集的数据量不够大的问题,也可以解决参数调优的问题。
步骤:
1.使用训练集训出k个模型
2.用k个模型分别对交叉验证集计算得出交叉验证误差(代价函数的值)
3.选取代价函数值最小的模型
4.用步骤3中选出的模型对测试集计算,得出推广误差(代价函数的值)
2.2 数据集的不均衡
数据不平衡是指数据集中各类样本数量不均匀的情况。这种情况会给模型的训练带来很大的问题
平滑数据集分布不平衡的解决方法:
SMOTE (Synthetic Minority Over-sampling Technique)算法:在少样本的距离的中间再生成一个新的样本
3.机器学习分类
-
监督学习:输入的数据中有监督信息,以概率函数、代数函数或人工神经网络为基函数模型,采用迭代计算方法,学习结果为函数
-
无监督学习:输入数据中没有监督信息,采用聚类方法,学习结果为类别。典型的无监督学习有聚类,降维算法等。除此之外,还有自监督学习,半监督学习,对比学习等概念。
-
强化学习:以环境为反馈(奖/惩信号)作为输入,以统计和动态规划技术为指导的一种学习方法。
3.1 监督学习
-
分类(classfication)
-
回归(regression)
3.2 无监督
-
聚类(Clustering)
-
降维(Demensionality Reduction)
3.3 强化学习
用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
4.编程基础
- 编程语言:python、R
- 编程系统:Linux、anaconda
- 编程平台:jupyter notebook , vscode,pycharm
- 编程库:numpy,pandas,matplotlib,scikit-learn,pytorch,tensorflow
相关文章:
01.机器学习引言
1.机器学习的步骤 1. 数据搜集 其中数据划分,是将数据集分为训练集、验证集和测试集(通常不考虑时间) 2. 数据清洗 3. 特征工程 提取对象:原始数据(特征提取一般在特征选择之前) 提取目的:…...
结构型(二) - 桥接模式
一、概念 桥接模式(Bridge Pattern):是用于把抽象化与实现化解耦,使得二者可以独立变化。它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。 另一种理解方式:一个类存在两个(或多个…...
多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测
多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测,WOA-CNN-GR…...
C#与西门子PLC1500的ModbusTcp服务器通信1--项目背景
最近在一个120万元的项目中,涉及到modbustcp通信,我作为软件总工负责项目的通信程序开发,modbus是一个在工业自动化领域中的通信协议,可以是modbusrtu,modbusascii,modbustcp三个形式,具体来说是…...
Socks5代理与IP代理:网络安全与爬虫之道
1. Socks5代理的多功能性 Socks5代理是一种支持TCP和UDP协议的代理技术,适用范围广泛。不同于传统HTTP代理,Socks5代理在传输数据时更为灵活,可以满足实时数据传输的需求,适用于在线游戏、视频流等场景。此外,Socks5代…...
苹果电脑怎么录屏?步骤详解,看到就是赚到
苹果电脑作为一款受欢迎的高性能设备,不仅在日常工作中发挥着重要作用,还可以用于创造内容,如录制屏幕内容。录屏功能能够帮助用户将屏幕上的活动记录成视频,方便分享、演示或存档。可是您知道苹果电脑怎么录屏吗?通过…...
vb毕业生管理系统设计与实现
【摘要】 本毕业生管理系统是使用VB和ACCESS数据库为开发工具开发的一个全新的管理系统(MIS)。开发出的软件可以在任何一个装有VB环境的机器上运行。本毕业生管理系统包括六个子模块:用户登陆模块、学籍管理模块、学生成绩模块、毕业设计选题模块、毕业设计成绩管理模块、系…...
WPF入门到精通:4.页面增删改查及调用接口(待完善)
在WPF中,页面的增删改查可以通过使用DataGrid等控件来实现。接口的调用可以使用HttpClient或RestSharp等网络库来完成。 1.页面增删改查 使用DataGrid控件来展示数据,并通过绑定数据源来实现数据的增删改查操作。示例代码如下: XAML代码&a…...
容器和云原生(三):kubernetes搭建与使用
目录 单机K8S docker containerd image依赖 kubeadm初始化 验证 crictl工具 K8S核心组件 上文安装单机docker是很简单docker,但是生产环境需要多个主机,主机上启动多个docker容器,相同容器会绑定形成1个服务service,微服务…...
spring boot集成jasypt 并 实现自定义加解密
一. 技术需求 由于项目中的配置文件 配置的地方过多,现将配置文件统一放到nacos上集中管理 且密码使用加密的方式放在配置文件中 项目中组件使用的版本环境如下 spring cloud 2021.0.5 spring cloud alibaba 2021.0.5.0 spring boot 2.6.13 二. 技术实现 配置文…...
Qt文件系统操作和文件的读写
一、文件操作类概述 QIODevice:所有输入输出设备的基础类 QFile:用于文件操作和文件数据读写的类QSaveFile:用于安全保存文件的类QTemporaryFile:用于创建临时文件的类QTcpSocket和QUdpSocket:分别实现了TCP和UDP的类…...
MME: A Comprehensive Evaluation Benchmark for Multimodal Large Language Models
本文也是LLM系列相关文章,针对《MME: A Comprehensive Evaluation Benchmark for Multimodal Large Language Models》的翻译。 MME:一个多模态大型语言模型的综合评估基准 摘要1 引言2 MME评估套件3 实验4 分析5 结论 摘要 多模态大语言模型(MLLM&…...
学习开发振弦采集模块的注意事项
学习开发振弦采集模块的注意事项 (三河凡科科技/飞讯教学)振弦采集模块是一种用来实时采集和处理振弦信号的电子设备,在工业、航空、医疗等领域都有广泛应用。学习开发振弦采集模块需要注意以下几点: 一、硬件选择 首先需要选择…...
抵御时代风险:高级安全策略与实践
目录 网页篡改攻击 流量攻击 数据库攻击 恶意扫描攻击 域名攻击 在今天的数字时代,网站已经成为企业、机构和个人展示信息、交流互动的重要平台。然而,随着网络攻击技术的不断进步,网站也面临着各种安全威胁。本文将探讨五种常见的网络攻…...
(3)、SpringCache源码分析
1、入口说明 @EnableCaching是开启SpringCache的一个总开关,开启时候我们的缓存相关注解才会生效,所以我们@EnableCaching开始作为入口进行分析, 2、分析@EnableCaching注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Import(...
如何在 Ubuntu 中安装最新的 Python 版本
动动发财的小手,点个赞吧! Python 是增长最快的主要通用编程语言。其原因有很多,例如其可读性和灵活性、易于学习和使用、可靠性和效率。 目前使用的 Python 有两个主要版本 – 2 和 3(Python 的现在和未来)࿱…...
等保测评--安全物理环境--测评方法
安全子类--物理位置选择 a)机房场地应选择在具有防震、防风和防雨等能力的建筑内; 一、测评对象 记录类文档和机房 二、测评实施 1)检查机房所在建筑物是否具有建筑物抗震设防审批文档; 2)检查机房门窗是否不存在因风导致的尘土严重; 3)检查机房是否不存在雨水渗漏…...
解决jmeter导入jmx文件报错方法
有的时候我们导入别人的jmx文件,但是在导入的时候会报错,如下图: 这是缺少jmeter插件jar包所引起的,下载对应jar包放到jmeter安装目录对应的lib/ext下就可以了。可以通过插件管理工具包下载安装,也可以直接下载对应的…...
CH32V307 开启浮点后rtthread的修改
官方版本是3.1.3,而且只有整数的,开启浮点后要做一些修改,这里问了官方并贴出来方便大家使用: 首先在mounriver开启浮点,步骤: 开启浮点:ide 开启float point->rvf, floating point abi->…...
网络面试题(172.22.141.231/26,该IP位于哪个网段? 该网段拥有多少可用IP地址?广播地址是多少?)
此题面试中常被问到,一定要会172.22.141.231/26,该IP位于哪个网段? 该网段拥有多少可用IP地址?广播地址是多少? 解题思路: 网络地址:172.22.141.192 10101100.00010110.10001101.11000000 广播…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
ArcPy扩展模块的使用(3)
管理工程项目 arcpy.mp模块允许用户管理布局、地图、报表、文件夹连接、视图等工程项目。例如,可以更新、修复或替换图层数据源,修改图层的符号系统,甚至自动在线执行共享要托管在组织中的工程项。 以下代码展示了如何更新图层的数据源&…...
【大模型】RankRAG:基于大模型的上下文排序与检索增强生成的统一框架
文章目录 A 论文出处B 背景B.1 背景介绍B.2 问题提出B.3 创新点 C 模型结构C.1 指令微调阶段C.2 排名与生成的总和指令微调阶段C.3 RankRAG推理:检索-重排-生成 D 实验设计E 个人总结 A 论文出处 论文题目:RankRAG:Unifying Context Ranking…...
