《数据挖掘》期末考核重点
1.数据预处理的目的与形式
数据预处理的目的是提供干净,简洁,准确的数据,以达到简化模型和提高算法泛化能力的目的,使挖掘过程更有效,更容易,提高挖掘效率和准确性。
2.数据预处理的形式
数据清理,数据集成,数据变换,数据归约
3.分类过程一般包括三个环节
一、将数据集划分为两部分,一部分作为训练集,一部分作为测试集。
二、通过分析训练集的特点来构建分类模型(模型可以是决策树或分类规则等形式)。
三、对测试集用建立的分类模型进行分类,评估该分类模型的分类准确度等指标,通常使用分类性能好的分类模型对类标号未知的样本进行分类。
4.剪枝的原则
是去除对未知样本预测准确度低的子树,通常有前剪枝和后剪枝两种基本方法后,后剪枝所需要的计算比前剪枝多,但通常产生更可靠的树。
前剪枝的目标是控制决策树充分生长,通过事先指定一些控制参数来提前停止树的构建,如决策树最大深度,树中父结点和子结点所包含的最少样本量或比例,结点中测试输出结果的最小差异减少量。
后剪枝就是在决策树充分生长的基础上,根据一定的规则,剪去那些不具有代表性的叶子结点或子树,以创建更稳定的模型,是一个边剪枝边检验的过程。
5.决策树算法的特点
优点:
一、原理简单易懂。
二、效率高,每次预测的最大计算次数不超过决策树的深度。
三、对缺失值不敏感。
四、可以处理不相关特征数据。
缺点:
一、容易出现过度拟合。
二、当类别太多时,错误可能增加的比较快。
三、在处理特征关联性比较强的数据时,表现得不是太好。
6.K-最近邻分类算法的优缺点
优点:是原理简单,实现起来比较方便,KNN是一种非参数化方法,适合概率密度函数参数形式未知的场合,能对超多边形的复杂决策空间建模,最近邻分类器可以生成任意形状的决策边界。
缺点:①当k很小时,对噪声非常敏感,很难找到最优的k值,通常采用试探法,对不同的k值进行实验,以决定取哪个值较好。②对大规模数据集的分类效率低,由于kNN存放所有的训练样本,不需要事先建模,直到有新的样本需要分类时才进行分类。因此,当训练样本数量很大时,算法时间开销也非常大。
7.简述人工神经网络的分类及主要网络的定义
答:按照神经元的连接方式,神经网络分为不同网络连接模型,如:向前网络、反馈网络。
前向网络的神经元分层排列,即组成输入层、隐含层和输出层。每层的神经元只接受前一层神经元的输入。输入模式经过各层的顺次变换后由输出层输出。各神经元之间不存在反馈。
反馈网络在输出层到输入层存在反馈,即每个输入节点都有可能接受来自外部的输入和来自输出神经元的反馈。
按学习方法分类,神经网络分为有监督的学习网络和无监督的学习网络。无监督的学习网络基本思想是当输入的实例模式进入神经网络后,网络按预先设定的规则自动调整权值。 有监督的学习网络基本思想是对实例k的输入,由神经网络根据当前的权值分布计算网络的输出,把网络的计算输出与实例k的期望输出进行比较,根据两者之问的差的某函数的值的输出来调整网络的权值分布,最终使差的函数值达到最少。
8.简述神经网络的优缺点。
优点:
(1)对噪声数据有较好适应能力,并且对未知数据也具有较好的预测分类能力。
(2)能逼近任意非线性函数。
(3)对信息的并行分布式综合优化处理能力。
(4)高强的容错能力。
(5)对学习结果有很好的泛化能力和自适应能力。
(6)便于集成实现和模拟。
(7)可以多输入、多输出。
缺点:
(1)当处理问题的规模很大时,计算开销变大,因此它仅适用于时间容许的应用场合。
(2)神经网络可以硬件实现,但不如软件灵活。
(3)神经网络对于输入数据预处理有一定讲究。
(4)神经网络对处理结果不能解释,相当于一个黑盒。
(5)实际应用中,神经网络在学习时, 需要设置一些关键参数,如网络结构等,神经网络的设计缺乏充分的理论指导,这些参数通常需要经验方能有效确定。
9.简述分类模型性能评价指标
答:比较不同的分类器时,需参照的关键性能指标如下:
(1)分类准确率:指模型正确地预测新的或先前未见过的数据的类标号的能力。通常分类算法寻找的是分类准确率高的分类模型,一般可以满足分类器模型的比较。影响分类准确率的因素有训练数据集 记录的数目、属性的数目、属性中的信息、测试数据集记录的分布情况等。
(2)计算复杂度:决定算法执行的速度和占用的资源,依赖于具体的实现细节和软/硬件环境。由于数据挖掘中的操作对象是海量的数据库因而空间和时间复杂度将是非常重要的问题。
(3)可解释性:分类结果只有可解释性好,容易理解,才能更好地用于决策支持。结果的可解释性越好,算法受欢迎的程度越高。
(4)强壮性或鲁棒性:指在数据集中含有噪声和缺失值的情况下,仍具有较好的正确分类数据的能力。
(5)累积增益图:在给定的类别中显示,通过把个案总数的百分比作为目标“增益”的个案总数的百分比。累积增益图通过选择对应于大量收益的百分比选择分类标准值,然后将百分比与适当分界值映射。
10.简述k-means聚类算法的形式化描述
算法:k-means
输入:数据集D,划分簇的个数k
输出:k个簇的集合
(1)从数据集D中任意选择k个对象作为初始簇中心
(2) repeat
(3) for数据集D中每个对象Pdo
(4) 计算对象P到k个簇中心的距离
(5) 将对象P指派到与其最近(距离最短)的簇
(6)end for
(7) 计算每个簇中对象的均值,做为新的簇的中心
(8)until k个簇的簇中心不再发生变化
11.简述层次聚类算法的定义及主要种类的介绍
答:层次聚类法是一种已得到广泛使用的经典方法,是通过将数据组织为若干组并形成一个相应的树来进行聚类。层次聚类方法可分为自上向下和自下而上两种。
1、自上向下层次聚类方法的策略与自下而上的层次聚类方法相反,首先将所有对象置于同一个簇,然后将其不断分解,而得到规模越来越小但个数越来越多的小簇,直到所有对象均独自构成一个,或满足一定终止条件为止。
2、自下而上层次聚类方法就是最初将每个对象(自身)作为一个簇,然后将这些簇进行聚合, 以构造越来越大的簇,直到所有对象均聚合为一个簇,或满足一定终止条件为止。绝大多数层次聚类方法属于这一类,只是簇间相似度的定义有所不同。
12.CURE算法的思想主要体现为
①算法采用的是凝聚层次聚类,每个对象就是一个独立的簇,然后从最相似的对象开始进行合并。
②为了处理大数据集,采用随机抽样和分割手段,抽样可以降低数据量,提高算法的效率。在样本大小选择合适的情况下,一般能够得到比较好的聚类结果。分割是指将样本集分割为几部分,然后针对各部分中的对象分别进行局部聚类,形成子簇,再针对子簇进行聚类,形成新的簇。
③传统的算法常常采用一个对象来代表一个簇,而 cure算法由分散的若干对象在按收缩因子移向其所在簇的中心后代表该簇,因此能够处理非球形分布的对象
④分两个阶段消除异常值的影响,第一个阶段在最开始每个对象是一个独立的簇,然后从最相似的对象开始进行合并,由于异常直通其他对象的差距更大,因此其所在的簇中对象数目的增大就会非常缓慢,甚至不增长。第二个阶段的工作是将聚类过程中增长非常缓慢的簇作为异常值去除。
⑤由于cure算法采用多个对象来代表一个簇,因此可以采用更合理的非样本对象分配策略,在完成对样本的聚类后,各簇中只包含有样本对象,还需要将非样本对象按一定策略分配到相应的簇中。
13.简述ROCK 算法的聚类过程形式化描述
算法:ROCK
输入:数据集D
输出:簇集合
(1)随机选择一个样本
(2)在样本上用凝聚算法进行聚类,簇的合并是基于簇间的相似度,即基于来自不同而有相同邻居的样本的数目
(3)将其余每个数据根据它与每个簇之间的连接,判断它应归属的簇
相关文章:
《数据挖掘》期末考核重点
1.数据预处理的目的与形式 数据预处理的目的是提供干净,简洁,准确的数据,以达到简化模型和提高算法泛化能力的目的,使挖掘过程更有效,更容易,提高挖掘效率和准确性。 2.数据预处理的形式 数据清理&#…...
Golang | Leetcode Golang题解之第334题递增的三元子序列
题目: 题解: func increasingTriplet(nums []int) bool {n : len(nums)if n < 3 {return false}first, second : nums[0], math.MaxInt32for i : 1; i < n; i {num : nums[i]if num > second {return true} else if num > first {second n…...
HarmonyOs编写一个案例实现一个照片选择(阶段进阶 四种需求 逐一完善)
需求1. .实现照片选择 并将选择好的照片展示出来 import { GoodItem } from ../06/modules;Entry Component struct PhotoPage {State message: string 实现一个相册;State List: GoodItem[] [{goods_name: dsfjlsjkfsf,goods_price: 100,goods_img: https://img1.baidu.com…...
洗衣机洗衣服一些知识
01智能:按衣物多少自动调节合适水位的标准洗涤程序 (需要30分钟时间) 02:大物:较大,较厚的衣服洗涤 03:轻柔:毛织品或内衣洗涤 04:快速:少量清污衣服洗涤 (13分钟) 05:浸泡:先浸泡一段时间再洗涤 06:单洗:只洗衣不脱水 07:单脱:只脱水不洗衣 08:洁桶:清洁洗衣桶 准备工作: (1)…...
探索文件系统:高效、可靠的文件管理与访问机制
文件系统的功能规划 内存就像是一个书包,容量有限,只能带着一部分东西。而图书馆则是一个专门存储和管理文件的地方,拥有更大的容量,并且可以永久保存文件。为了能够快速找到需要的文件,我们需要有一个书单来记录每本…...
启程与远征Ⅸ--优化生成式人工智能以满足业务需求的框架
生成类似人类的文本和语音曾经只存在于科幻小说中。但 GPT-3 和 PaLM 等大型语言模型 (LLM) 的快速发展让这一愿景更接近现实,解锁了从聊天机器人到内容创作等一系列有前景的商业应用。 然而,通用基础模型往往无法满足行业用例的需求。企业对其生成式 A…...
canal数据同步工具介绍与应用
canal服务 canal介绍canal版本与环境canal 服务集canal应用场景: canal常见问题xml配置问题连接认证问题jar版本问题连接问题 canal介绍 1、Canal是阿里巴巴开源的MySQL增量数据订阅和消费工具,通过模拟MySQL的slave与master交互,捕…...
ubuntu18.04 设置静态地址
修改配置文件 sudo vim /etc/netplan/01-network-manager-all.yaml 代码如下: network: version: 2 renderer: NetworkManager ethernets: ens33: # 配置的网卡名称,可以使用ifconfig -a查看本机的网卡 dhcp4: no # 关闭动态IP设置 …...
jira敏捷开发管理工具视频教程Confluence工作流协同开发(2024)
正文: 随着Jira敏捷开发方法论的普及,Jira已经成为全球软件开发团队管理项目、任务和问题的首选工具。为了帮助团队更好地掌握Jira的核心功能,精心准备了一套全面开发技术及案例视频教程——《Jira敏捷开发管理工具视频教程Confluenc…...
【网络】TCP回显服务器和客户端的构造,以及相关bug解决方法
文章目录 ServerSocket构造方法方法 Socket构造方法方法 回显服务器(Echo Server)1. 构造方法2. 建立连接processConnection 方法的创建1. 读取请求并解析2. 根据请求计算响应3. 把响应写回给客户端 3. 完整代码 客户端(Echo Clientÿ…...
Python知识点:如何使用Boto3进行AWS服务管理
使用 boto3 来管理 AWS 服务是一个非常强大的方式,因为 boto3 是 AWS 提供的官方 Python SDK。下面是使用 boto3 管理 AWS 服务的基本步骤,包括设置、操作和常见的 AWS 服务示例。 1. 安装 boto3 首先,确保你已经安装了 boto3。可以使用 pi…...
Java - 正则表达式
Java 提供了 java.util.regex 包,它包含了 Pattern 和 Matcher 类,用于处理正则表达式的匹配操作。 正则表达式的模式 正则表达式的模式可以包括以下内容: 字面值字符:例如字母、数字、空格等,可以直接匹配它们自身。…...
Vue一款流行的JavaScript前端框架
1.Vue简介 Vue是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue 都可以胜任。 Vue所关注的核心是MVC…...
GPT-SoVITS
文章目录 model archS1 ModelS2 model model arch S1 model: AR model–ssl tokensS2 model: VITS,ssl 已经是mel 长度线性相关,MRTE(ssl_codes_embs, text, global_mel_emb)模块,将文本加强相关,学到一个参考结果 S1 Model cla…...
linux高级编程——文件IO(常用函数大全)
1.相关介绍及常用函数 Linux高级编程中的目录IO操作是文件系统编程的一个重要组成部分,主要涉及到目录的打开、读取、遍历和关闭等操作。以下是一些基本的目录IO操作和相关的系统调用函数 1.1 opendir函数 打开目录:使用opendir函数打开一个目录&#…...
matplotlib画图
Matplotlib 先写一个最简单的: import matplotlib.pyplot as plt plt.plot([1,4],[2,8]) #plot画折线图plt.show() 确定两个点画一条线 import matplotlib.pyplot as plt x[1,23,4,56,7,6] #x轴数据 y[22,44,56,67,43,2] #y轴数据 s[22,43,33,44,43,7] plt.p…...
Jetpack 各种框架简介
Jetpack是Google推出的一套为Android开发提供极大便利的组件、工具和指导集,旨在帮助开发者快速构建高质量的应用,并遵循最佳实践。 Jetpack不仅是一个提高开发效率的工具集,还是Android开发的未来方向。它通过整合各种组件和工具࿰…...
海康VisionMaster使用学习笔记5-开机自启动
开机自启动 在实际应用中,用户会希望机台上电开机后,软件能自启动避免现场人员误操作,减少机台重新上电时的操作步骤以提升效率。 设置 打开VM,点击设置,软件设置->开机自启动->勾选开机自启动->确定 默认运行界面 启动时以设定的…...
驾驭数据之序:SQL序列的奥秘与实现
标题:驾驭数据之序:SQL序列的奥秘与实现 摘要 在数据库管理中,保证数据的有序性和唯一性是至关重要的。SQL序列(Sequence)作为一种强大的数据库对象,为我们提供了一种在不同数据库系统中生成连续数字的手…...
【LeetCode】148. 排序链表
排序链表 题目描述: 给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 示例 1: 输入:head [4,2,1,3] 输出:[1,2,3,4]示例 2: 输入:head [-1,5,3,4,0] 输出:…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
AI语音助手的Python实现
引言 语音助手(如小爱同学、Siri)通过语音识别、自然语言处理(NLP)和语音合成技术,为用户提供直观、高效的交互体验。随着人工智能的普及,Python开发者可以利用开源库和AI模型,快速构建自定义语音助手。本文由浅入深,详细介绍如何使用Python开发AI语音助手,涵盖基础功…...
加密通信 + 行为分析:运营商行业安全防御体系重构
在数字经济蓬勃发展的时代,运营商作为信息通信网络的核心枢纽,承载着海量用户数据与关键业务传输,其安全防御体系的可靠性直接关乎国家安全、社会稳定与企业发展。随着网络攻击手段的不断升级,传统安全防护体系逐渐暴露出局限性&a…...
WebRTC调研
WebRTC是什么,为什么,如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...
从零开始了解数据采集(二十八)——制造业数字孪生
近年来,我国的工业领域正经历一场前所未有的数字化变革,从“双碳目标”到工业互联网平台的推广,国家政策和市场需求共同推动了制造业的升级。在这场变革中,数字孪生技术成为备受关注的关键工具,它不仅让企业“看见”设…...
2025.6.9总结(利与弊)
凡事都有两面性。在大厂上班也不例外。今天找开发定位问题,从一个接口人不断溯源到另一个 接口人。有时候,不知道是谁的责任填。将工作内容分的很细,每个人负责其中的一小块。我清楚的意识到,自己就是个可以随时替换的螺丝钉&…...
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用 Linux 内核内存管理是构成整个内核性能和系统稳定性的基础,但这一子系统结构复杂,常常有设置失败、性能展示不良、OOM 杀进程等问题。要分析这些问题,需要一套工具化、…...
python打卡day47
昨天代码中注意力热图的部分顺移至今天 知识点回顾: 热力图 作业:对比不同卷积层热图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import D…...
