数据挖掘概述
目录
- 1、数据挖掘概述
- 2、数据挖掘常用库
- 3、模型介绍
- 3.1 分类
- 3.2 聚类
- 3.3 回归
- 3.4 关联
- 3.5 模型集成
- 4、模型评估
- ROC 曲线
- 5、模型应用
1、数据挖掘概述
数据挖掘:寻找数据中隐含的知识并用于产生商业价值
数据挖掘产生原因:海量数据、维度众多、问题复杂
数据挖掘作用:
- 分类问题(该新闻是属于体育新闻还是娱乐新闻还是其他类型)
- 聚类问题(地上掉落的一堆树叶,哪些属于同一棵树)
- 回归问题(已知前几年的房价数据,预测明年的房价)
- 关联问题(推荐算法)
数据挖掘流程:
- 业务理解:和业务方充分沟通,明确需求
- 数据理解
- 数据准备
数据清洗:
.缺失值处理(删除、填充、不做处理)
.异常值处理:数据本身错误(记录时错误)、数据本身是正常的但不符号业务实际(某账号游戏充值10万)要对正常异常值保留甚至特别留意
.数据偏差:处理数据严重不对等不均衡情况
.特征选择:
构建训练集和测试集方法(留出法、交叉严重法、自助法)
- 构建模型
- 评估模型
- 模型部署
2、数据挖掘常用库
数学模块math
日期时间模块datetime
随机模块random
文件模块操作file
正则匹配模块re
系统接口模块sys
import math
dir(math) #查看math中所有方法名称
help(math) #match的描述,以及方法的介绍
3、模型介绍
3.1 分类
分类是有监督的学习过程。 处处理分类问题首先要有一批已经有标签结果的数据,经过分类算法的学习,
就可以预测新的未知数据的分类。
分类模型: KNN 算法、决策树算法、随机森林、SVM 等
3.2 聚类
聚类是无监督的,聚类就是把一个数据集划分成多个组的过程,使得组内的数据尽量高度集中,而和其他组的数据之间尽量远离。这种方法是针对已有的数据进行划分,不涉及未知的数据。
3.3 回归
回归:与分类问题十分相似,都是根据已知的数据去学习,然后为新的数据进行预测。但是不同的是,分类方法输出的是离散的标签,回归方法输出的结果是连续值
3.4 关联
关联问题对应的方法就是关联分析。这是一种无监督学习,关联分析是要在已有的数据中寻找出数据的相关关系。比如在我们津津乐道的啤酒与尿布
3.5 模型集成
模型集成也可以叫作集成学习,其思路就是去合并多个模型来提升整体的效果
训练多个并列的模型,或者串行地训练多个模型
模型集成的 3 种方式:
- Bagging(装袋法):多次随机抽样构建训练集,每构建一次,就训练一个模型,最后对多个模型的结果附加一层决策,使用平均结果作为最终结果。随机森林算法就运用了该方法

- Boosting(增强法):是串行的训练,即每次把上一次训练的结果也作为一个特征,不断地强化学习的效果。

- Stacking(堆叠法):是对前面两种方法进行了扩展,训练的多个模型既可
以进行横向扩展,也可以进行串行增强,最终再使用分类或者回归的方法把前面模型的结果进行整合。
其中的每一个模型可以使用不同的算法,对于结构也没有特定的规则,真正是 “黑猫白猫,抓住老鼠就是好猫”。所以,在使用堆叠法时,就需要你在具体业务场景中不断地去进行尝试和优化,以达到最佳效果。
4、模型评估
模型评估就是对你的模型进行多种维度的评估,来确认你的模型是否可以应用。
准确率指标:
- TP(true positive)原本为真,且被预测为真
- TN(true negative)原本为真,但预测为假
- FP(false positive)原本为假,但被预测为真
- FN(false negative)原本为假,且预测为假
计算数值:
- 准确率:预测正确的比例 (TP+FN)/(TP+TN+FP+FN)
在所有样本中,预测正确的概率 - 精确率:在所有真的样本中被预测为真的比例 TP/(TP+FP)你认为的正样本中,有多少是真的正确的概率
- 召回率:按预测结果分,在所有预测为真的样本中实际也是真的比例 TP/(TP+FN)正样本中有多少是被找了出来
ROC 曲线
两个值:真正例率和假正例率
真正例率:TP/(TP+FN)
假正例率:FP/(FP+TN)
使用这两个值在坐标系上画出一系列的点,纵坐标是真正例率,横坐标是假正例率,把这些点连起来形成的曲线就是 ROC 曲线
ROC 曲线下方的面积是 AUC 值(Area Under Curve,曲线下面积),ROC 曲线和 AUC 值可以反映一个模型的稳定性,当 ROC 曲线接近对角线时,说明模型输出很不稳定,模型就越不准确

一些其他指标:泛化能力(过拟合与欠拟合)、可解释性、鲁棒性、模型速度
这些模型评估,大多适用于分类模型,因为分类模型是一种监督模型,对于无监督模型,本身没有非常明确的结果标准,所以也很难找到一个衡量指标
5、模型应用
模型产出结果,都需要应用到业务当中去
服务架构部署一些概念:
Flask Web 框架:在日常的任务中可以使用 Flask 作为构建我们的 Web 服务框架,它是用 Python 来实现的。
Gunicorn HTTP 服务:可以理解成 HTTP 服务器,需要注意的是 Gunicorn 只能运行在 Linux 服务器上面。
Nginx 负载均衡:Nginx 是一个功能很强大的 Web 服务项目,它可以用作负载均衡器,很多大公司都在使用。负载均衡用于通过集群中的多个服务器或实例将工作负载进行分布,目的是避免任何单一资源发生过载,进而将响应时间最小化、程序吞吐量最大化。在上图中,负载均衡器是面向客户端的实体,会把来自客户端的所有请求分配到集群中的多台服务器上。
客户端:业务的具体场景,可能是手机 App,也可能是其他服务器应用,客户端会向托管用于模型预测的架构服务器发送请求。比如今日头条 App 页面下拉,将会调用推荐算法模型进行推荐内容的计算。
相关文章:
数据挖掘概述
目录1、数据挖掘概述2、数据挖掘常用库3、模型介绍3.1 分类3.2 聚类3.3 回归3.4 关联3.5 模型集成4、模型评估ROC 曲线5、模型应用1、数据挖掘概述 数据挖掘:寻找数据中隐含的知识并用于产生商业价值 数据挖掘产生原因:海量数据、维度众多、问题复杂 数…...
linux kernel iio 架构
linux kernel iio 架构讲解Linux IIO(Industrial I/O)架构是Linux内核提供的一种用于支持各种类型传感器和数据采集设备的子系统,包括温度、压力、湿度、加速度、光度等多种传感器。IIO架构的核心是一个通用的IIO子系统,它提供了一…...
Socket通信详解
Socket通信详解 文章目录Socket通信详解Socket流程介绍函数介绍编程实例Socket流程介绍 socket通信类似于电话通信,其服务器基本流程就是 Created with Raphal 2.3.0安装电话socket()分配电话号码bind()连接电话线listen()拿起话筒accept()函数介绍 socket() 其中…...
多分类、正则化问题
多分类问题 利用逻辑回归解决多分类问题,假如有一个训练集,有 3 个类别,分别为三角形 𝑦 1,方框𝑦 2,圆圈 𝑦 3。我们下面要做的就是使用一个训练集,将其分成 3 个二…...
史上最全面的软件测试面试题总结(接口、自动化、性能全都有)
目录 思维发散 Linux 测试概念和模型 测试计划与工具 测试用例设计 Web项目 Python基础 算法 逻辑 接口测试 性能测试 总结感谢每一个认真阅读我文章的人!!! 重点:配套学习资料和视频教学 思维发散 一个球ÿ…...
速来~与 Werner Vogels 博士一起探索敏捷性与创新速度一起提升的秘方
Amazon Web Services 的现代应用程序创新一直是 Amazon 公司坚持追求的核心目标。约20年前,我们经历了一次彻底的转型,旨在建立起“发明、发布、再发明、再发布、重新开始、洗牌、再重复”的快速迭代流程。正是此番探索,彻底改变了我们构建应…...
Apache Hadoop、HDFS介绍
目录Hadoop介绍Hadoop集群HDFS分布式文件系统基础文件系统与分布式文件系统HDFS简介HDFS shell命令行HDFS工作流程与机制HDFS集群角色与职责HDFS写数据流程(上传文件)HDFS读数据流程(下载文件)Hadoop介绍 用Java语言实现开源 允许…...
python“r e 模块“常见函数详解
正则表达式:英文Regular Expression,是计算机科学的一个重要概念,她使用一种数学算法来解决计算机程序中的文本检索,匹配等问题,正则表达式语言是一种专门用于字符串处理的语言。在很多语言中都提供了对它的支持,re模块…...
【数据结构】二叉树的四种遍历方式——必做题
写在前面学完上一篇文章的二叉树的遍历之后,来尝试下面的习题吧开始做题144. 二叉树的前序遍历 - 力扣(LeetCode)94. 二叉树的中序遍历 - 力扣(LeetCode)145. 二叉树的后序遍历 - 力扣(LeetCode)…...
Nginx使用“逻辑与”配置origin限制,修复CORS跨域漏洞
目录1.漏洞报告2.漏洞复现3.Nginx 修复3.1 添加请求头3.2 配置origin限制2.3 调整origin限制1.漏洞报告 漏洞名称: CORS 跨域漏洞等级: 中危漏洞证明: Origin从任何域名都可成功访问,未做任何限制。漏洞危害: 因为同源…...
Laravel框架02:路由与控制器
Laravel框架02:路由与控制器一、路由配置文件二、路由参数三、路由别名四、路由群组五、控制器概述六、控制器路由七、接收用户输入一、路由配置文件 以web网页路由文件为例: 默认根路由 路由定义格式Route::请求方式(请求的URL, 匿名函数或控制响应的方…...
【POJ 2418】Hardwood Species 题解(映射)
描述 阔叶树是一种植物群,具有宽阔的叶子,结出果实或坚果,通常在冬天休眠。 美国的温带气候造就了数百种阔叶树种的森林,这些树种具有某些生物特征。例如,虽然橡树、枫树和樱桃都是硬木树,但它们是不同的物…...
React组件之间的通信方式总结(下)
一、写一个时钟 用 react 写一个每秒都可以更新一次的时钟 import React from react import ReactDOM from react-domfunction tick() {let ele <h1>{ new Date().toLocaleTimeString() }</h1>// Objects are not valid as a React child (found: Sun Aug 04 20…...
【RabbitMQ笔记07】消息队列RabbitMQ七种模式之Publisher Confirms发布确认模式
这篇文章,主要接收消息队列RabbitMQ七种模式之Publisher Confirms发布确认模式。 目录 一、消息队列 1.1、发布确认模式 1.2、案例代码 (1)引入依赖 (2)编写生产者【消息确认--单条确认】 (3…...
【华为OD机试模拟题】用 C++ 实现 - IPv4 地址转换成整数(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 去重求和(2023.Q1) 文章目录 最近更新的博客使用说明IPv4 地址转换成整数题目输入输出示例一输入输出说明示例一输入输出说明Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,...
闭包与高阶函数
文中内容均来自于曾探《JavaScript设计模式与开发实践》的学习笔记。闭包作用域变量的作用域,就是指变量的有效范围。局部变量、全局变量。变量的搜索是从内到外而非从外到内的。变量的生命周期对于全局变量莱索,全局变量的生命周期是永久的,…...
人工智能轨道交通行业周刊-第35期(2023.2.20-2.26)
本期关键词:重庆智慧轨道、智能运维主机、标准轨距、地方铁路公报、景深、机器视觉应用 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通Rai…...
快慢指针判断链表是否有环
快慢指针判断链表是否有环 单链表有可能存在环,有些情况下要判断一个单链表是否有环。数组的有个快慢指针的方法,其实单链表和数组有相似的地方,可以使用快慢指针的方法。具体做法如下: 首先创建两个指针,它们初始时…...
《MongoDB入门教程》第26篇 聚合统计之$max/$min表达式
本文将会介绍两个 MongoDB 表达式,返回一组数据中最大值的 $max 表达式,以及返回一组数据中最小值的 $min 表达式。 $max 表达式 $max 表达式用于返回一组数据中的最大值,语法如下: { $max: <expression> }$max 表达式在…...
FPGA纯verilog解码SDI视频 纯逻辑资源实现 提供2套工程源码和技术支持
目录1、前言2、硬件电路解析SDI摄像头Gv8601a单端转差GTX解串SDI解码VGA时序恢复YUV转RGB图像输出FDMA图像缓存HDMI输出3、工程1详解:无缓存输出4、工程2详解:缓存3帧输出5、上板调试验证并演示6、福利:工程代码的获取1、前言 FPGA实现SDI视…...
RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...
聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
