- 博客(73)
- 收藏
- 关注
原创 机器学习-深度学习的库环境配置
Anaconda是一个轻量级的包管理器和环境管理工具,能够简化Python环境的管理,避免依赖冲突,且支持跨平台操作。实验目的:本次实验旨在完成深度学习的库环境配置,特别是建立Python开发环境,安装必要的工具和框架,确保开发过程中能顺利进行深度学习模型的开发、训练和测试。成功运行了Jupyter Notebook,并完成了PyTorch的基础示例代码,实现了对深度学习框架的基本操作和理解。通过本次实验,完成了深度学习开发环境的搭建,确保了基础工具和库的安装与使用,为后续的深度学习项目开发奠定了基础。
2025-04-11 15:07:10
858
原创 机器学习--集成学习算法实验
随机森林通过投票或平均等方式整合每棵决策树的预测结果,从而得到最终的预测结果。决策树的构建过程包括选择最优特征进行节点划分,直到满足停止条件(如节点中的样本数达到预设的阈值,或所有样本都属于同一类别等)。设置参数:例如,决策树的数量(nTrees)、每个节点分裂时考虑的特征数(trySubset)、最小叶节点大小(minLeafSize)等。对于分类问题,采用投票的方式确定最终的预测结果,即多数决策树预测的类别作为最终类别。对于回归问题,采用平均的方式得到最终的预测结果,即对所有决策树的预测结果取平均值。
2025-04-08 10:32:24
826
原创 机器学习—BP神经网络
在正向传播过程中,数据从输入端输入后,沿着网络的指向,乘以对应的权重后再加和,再将结果作为输入在激活函数中计算,将计算的结果作为输入传递给下一个节点,依次计算,直到得到最终结果。反向传播则将输出的结果与期望的输出结果进行比较,将比较产生的误差利用网络进行反向传播,通过多次迭代,不断地对网络上的各个节点间的权重进行调整,直到得到满意的结果为止。在训练BP神经网络的过程中,我们记录了损失值,从损失曲线中可以看出,随着训练轮次的增加,损失值呈现逐渐下降的趋势。在本实验中,我们划分了20%的训练数据作为验证集。
2025-04-08 10:28:55
888
原创 机器学习—集成学习算法实验
这些学习器可以是同质的,即所有基学习器都使用相同的算法,也可以是异质的,即基学习器使用不同的算法。参数调优:对 n_estimators 参数进行调整,尝试不同的值(如 20、50、100、200 等),观察模型在训练集和测试集上的准确率、损失值等指标的变化,以找到最优的参数设置。(提升法):通过迭代地训练基学习器,并逐步调整每个学习器的权重,使得后续学习器能够专注于前面学习器错误分类的样本,从而提高整体模型的预测性能。最后,通过投票或平均的方式将多个基学习器的预测结果结合起来,以降低方差。
2025-04-08 10:25:06
896
原创 机器学习--无监督学习实验
k-means聚类算法是一种基于划分的聚类算法,旨在将数据集划分为k个簇,使得每个簇内的数据点尽可能相似,而簇间的数据点尽可能不同。通过不断地迭代更新质心,k-means算法使得簇内的数据点之间的相似度最大化,簇与簇之间的相似度最小化,从而实现对数据集的聚类分析。(2)分配:计算每个数据点到所有质心的距离,并将每个数据点分配给距离其最近的质心所属的簇。(2)计算协方差矩阵:标准化后的数据集的协方差矩阵反映了各个特征之间的相关性。(3)更新:重新计算每个簇的质心,即计算簇内所有数据点的均值作为新的质心。
2025-04-08 10:20:32
641
原创 机器学习--分类算法实验
而贝叶斯分类算法,特别是朴素贝叶斯分类器,其分类准确率高且计算效率显著,对缺失数据不敏感,这些特点使其在大规模数据集上表现出色。(3)降低独立性假设:为了降低朴素贝叶斯算法中属性独立性假设的影响,可以使用一些改进的贝叶斯分类算法,如TAN(tree augmented Bayes network)算法等。在实际应用中,我们应结合问题的实际需求和数据特点,灵活选择并调优算法,以期达到最佳的分类效果。(2)忽略属性间的相关性:决策树假设属性之间相互独立,这在现实中往往不成立,可能影响模型的准确性。
2025-04-08 10:15:14
622
原创 数字图像处理——手机号码识别提取
然后再通过一系列形态学变化、图像增强的方式,减少噪声,增强目标信息,使得目标能在图片中很好的展示而不受其他信息的影响,便于后续目标检测的任务。在这个过程中也遇到了一些麻烦,比如在中值滤波去噪时,也会导致数字边缘信息的丢失,所以在执行图像增强的这一个过程中,顺序也很关键,不同的执行顺序能显示出不同的效果。此外,在编写目标检测这一算法的过程中,有时因为噪声不完全滤掉,导致噪声信号也被框出。总的来说,通过本次实验,让我对图像处理的许多方式有了更深刻的认识,相信这些知识技能将在未来的学习中发挥重要作用。
2025-03-20 15:36:52
354
原创 数字图像处理——取阈值的领域平均法
实现原理实现代码实验结果图 1 阈值=20,窗口大小=3*3 原图(左)效果图(右)图 2 阈值=20,窗口大小=5*5 原图(左)效果图(右)图 3 阈值=20,窗口大小=7*7 原图(左)效果图(右)固定阈值不变,通过改变窗口的大小,对比以上图可以发现,窗口越大,平滑效果越好。图 4 窗口大小=7*7,阈值=7 原图(左)效果图(右)图 5 窗口大小=7*7,阈值=15 原图(左)效果图(右)
2025-03-20 15:33:01
229
原创 数字图像处理——纱效果
实验步骤创建纱布效果事件函数设计不同纱布效果的函数点击执行不同效果的函数实验过程1.创建纱布效果事件函数图 1 创建纱布点击事件设计不同纱布效果的函数其他⑤块覆盖⑥阈值覆盖⑦随机覆盖⑧椒盐覆盖⑨波形覆盖sin波形覆盖tan波形覆盖⑩光圈效果圆形菱形(11)鱼鳞效果3.点击执行不同纱布效果的函数①点阵效果图 2 上下左右隔1个像素点②斜线效果图 3 上下左右隔n个像素点③横线效果图 4 横线效果④竖线效果图 5 竖线效果⑤块效果图 6 块效果⑥阈值覆盖。
2025-03-20 15:31:28
326
原创 图像的几何变换
实验原理(1)最邻近插值放大图像放大后,新图像的每个像素的灰度值通过最邻近插值法求出。用原图像的宽度和高度分别与放大倍数的乘积求出新的图像的宽度和高度, 在新图像中每个点的灰度值是该点对应于原图像上离它最近的整数点的灰度值,即现在点的坐标/放大倍数后再取整,就得到对应原图的那个点,其间必须要判断这样计算出的点是否落在原图的范围中,若不是就把该点置为255或0。(2)最邻近插值旋转图像旋转后,新图像的每个像素的灰度值通过最邻近插值法求出。
2025-03-20 15:27:42
568
原创 图像增强实验
实现代码图像平滑中值滤波① 3-3.bmp 田字模板② 3-4.bmp 十字型模板③ 3-5.bmp ×型模板图像锐化实验结果图像平滑①非加权平滑图 1 平滑前(左) 平滑后(右)左侧的图像是原始图像,右侧的图像是经过中值滤波平滑处理后的图像。从图中可以看出,平滑后的图像在视觉上更加柔和,但它导致了图像边缘的轻微模糊。②加权平均,中央贡献稍大图 2 平滑前(左) 平滑后(右)③中央权重最大,最近邻域次之图 3 平滑前(左) 平滑后(右)中值滤波① 3-3.bmp。
2025-03-20 15:23:50
578
原创 图像的数学形态学实验
实验原理实现步骤关键代码(1)1.bmp(2)2.bmp(3)3.bmp实验结果图 1.1 原图(1.bmp)图 1.2 开操作——腐蚀(左),膨胀(右)图 1.3 闭操作——膨胀(左),腐蚀(右)图 2.1 原图(2.bmp)图 2.2 开操作——腐蚀(左),膨胀(右)图 2.3 闭操作——膨胀(左),腐蚀(右)图 3.1 原图(3.bmp)图 3.2 开操作——腐蚀(左),膨胀(右)图 3.3 闭操作——膨胀(左),腐蚀(右)
2025-03-20 15:18:53
413
原创 点运算实验
实验目标通过构造曲线将原始图像变换为目标图像,要求变换后的原始图像的视觉效果和直方图与目标图像一致,要求给出每个实验的效果图对比、直方图对比、构造的曲线和分析。实验原理点运算曲线变换是一种图像处理技术,它通过改变图像的灰度值来调整图像的对比度、亮度和颜色等属性。这种变换可以通过对图像的直方图进行操作来实现,从而影响图像的视觉效果。曲线调整:在图像处理中,曲线调整是一种强大的工具,它允许对图像的色调范围进行细致的调整。曲线的横轴代表原图的亮度,纵轴代表目标图的亮度。
2025-03-20 15:15:33
558
原创 Spark Streaming编程初级实践
1.以随机时间间隔在一个目录下生成大量文件,文件名随机命名,文件中包含随机生成的一些英文语句,每个英语语句内部的单词之间用空格隔开。val ssc = new StreamingContext(sc, Seconds(10)) // 时间间隔为10秒。//设定滑动窗口长度为1分钟,统计间隔为10秒,对新进入滑动窗口的数据设定为相加函数,对离开滑动窗口的数据进行相减操作。//设置为本地运行模式,两个线程,一个监听,另一个处理数据。//这里采用本地文件,当然也可以采用HDFS文件。
2025-03-19 14:44:39
1055
原创 Spark SQL编程初级实践
假设当前目录为/home/hadoop/sparksql/mycode/rddtodf,在当前目录下新建一个目录mkdir -p src/main/scala,然后在目录/home/hadoop/sparksql/mycode/rddtodf/src/main/scala下新建一个rddtodf.scala,复制下面代码;目录/home/hadoop/sparksql/mycode/testmysql下执行下面命令打包程序。(2)熟悉RDD到DataFrame的转化方法;(任选一种方法即可)
2025-03-19 14:38:52
578
原创 Spark和Hadoop的安装
(1)掌握在Linux虚拟机中安装Hadoop和Spark的方法;(2)熟悉HDFS的基本使用方法;(3)掌握使用Spark访问本地文件和HDFS文件的方法。1。
2025-03-19 14:17:28
839
原创 Scala编程初级实践
1.掌握Scala语言的基本语法、数据结构和控制结构;2.掌握面向对象编程的基础知识,能够编写自定义类和特质;3.掌握函数式编程的基础知识,能够熟练定义匿名函数。熟悉Scala的容器类库的基本层次结构,熟练使用常用的容器类进行数据;4.熟练掌握Scala的REPL运行模式和编译运行方法。
2025-03-19 14:06:25
846
原创 Linux系统的安装和常用命令
Spark和Hadoop等大数据软件在Linux操作系统上运行可以发挥最佳性能,因此,本课程中,Spark都是在Linux系统中进行相关操作,同时,下一章的Scala语言也会在Linux系统中安装和操作。鉴于目前很多同学正在使用Windows操作系统,因此,为了顺利完成本课程的后续实验,这里有必要通过本实验,让同学掌握在Windows操作系统上搭建Linux虚拟机的方法。当然,安装Linux虚拟机只是安装Linux系统的其中一种方式,实际上,也可以不用虚拟机,而是采用双系统的方式安装Linux系统。
2025-03-19 13:58:39
331
原创 神经网络算法实现
影响模型训练的速度和稳定性。较大学习率可能导致训练不稳定,较小则会收敛慢。动态调整学习率或使用优化器如Adam可以帮助平衡这一点。决定每次训练使用的数据量。小批次增加噪声,有助于逃避局部最优,但训练波动较大;大批次计算精度高,但训练可能更慢,且容易过拟合。SGD适合大规模数据集,但可能较慢;而Adam则更适合大多数任务,能够自动调整学习率,提高训练效率。训练轮数不足会导致欠拟合,过多则可能导致过拟合。通过交叉验证和早停策略,可以选择合适的轮数。防止过拟合,常用方法有L2正则化和Dropout。
2025-03-19 13:41:39
559
原创 KNN算法的实现
模型效果:KNN算法能够在鸢尾花数据集上有效地进行分类。通过合适的K值,模型可以达到较高的准确率。在本次实验中,选择的K值为3,通常K值较小会增加模型的灵活性,但也容易过拟合,较大的K值则可能导致欠拟合。计算开销:KNN是一个懒惰学习算法,即没有明确的训练过程,所有的计算都发生在预测阶段。在处理大数据集时,KNN可能会非常慢,因为每个预测都需要计算与所有训练样本的距离。其中 xix_ixi 和 yiy_iyi 是样本的第i个特征值,n是特征的维度。
2025-03-19 13:41:16
530
原创 朴素贝叶斯算法的实现
从实验结果来看,模型能够较好地拟合数据并进行预测。准确度指标显示模型能够正确分类大部分测试样本。然而,朴素贝叶斯算法的性能受到特征独立性假设的影响,如果特征之间存在较强的相关性,模型的效果可能会下降。模型的核心思想是基于贝叶斯定理,通过计算每个类别的先验概率和每个特征在各类别下的条件概率来做出预测。通过拉普拉斯修正,避免了计算过程中出现零概率的情况。通过仔细检查代码后,发现是因为模型参数选择不当,通过改正后解决了此问题。最初的程序运行不了。
2025-03-19 13:40:54
226
原创 ID3算法的实现
实验过程中,数据的预处理和决策树的构建是关键步骤,填补缺失值和选择合适的特征对模型性能有显著影响。最终,模型的准确率能够有效评估决策树的分类能力。(2)需要处理缺失值的属性列:“Age”可使用均值填充,“Embarked”可使用众数填充等处理,按照要求进行处理以及代码进行相应的修改后能够成功运行了。(1)删去无用特征属性列:“PassengerId”“Name”“Ticket”“Cabin”;通过仔细检查代码以及问题要求后,发现需要对文件中的商品数据进行。
2025-03-18 17:17:07
406
原创 FP-Growth算法的实现
实验过程中,成功构建了FP树并有效地挖掘出频繁项集。FP-Growth比Apriori算法更为高效,尤其适用于大数据集。通过简化输出结果,我们能清楚地看到每个频繁项集及其对应的支持度。总体来看,FP-Growth算法具备了很好的实用性,特别是在频繁项集挖掘中具有明显的优势。通过查阅资料,在电脑上搜寻资料,发现是因为自己数据格式转化错误以及findFrequentItems中的代码逻辑有问题,改正错误后,代码可以运行了。在最开始运行代码程序后不管怎样设置支持度的大小生成的都是空集。
2025-03-18 17:15:53
402
原创 主成分分析算法的实现
通过特征脸提取训练集的主要特征,并使用欧几里得距离匹配测试图片。结果验证了PCA的有效性,但因数据量少及对光照等变化敏感,识别效果有限。未来可通过数据扩展和算法优化提升性能。解决方案(列出遇到的问题和解决办法,列出没有解决的问题):调整了图片大小。照片大小不合适报错。
2025-03-18 17:12:00
753
原创 数据结构
然后选择一个起点,将其加入已访问的集合,更新与其相邻的节点的距离数组和标记数组。现有大型搜索引擎(如百度、谷歌)所使用的排序算法:对于现有大型搜索引擎(例如百度和Google),它们在进行搜索时,会先将用户的查询解析为一个查询语句,然后根据一系列排序算法来对匹配的网页进行排序,并将排名靠前的结果呈现给用户。二.某公司计划要在北京、上海、广州、深圳、成都、昆明、西安这5个城市之间设计旅游路线,出发地和返回地均为北京,查询城市之间的里程,绘制里程图,试为他们设计一条行走路线,使得行走路线尽可能短。
2025-03-18 17:07:07
264
原创 查找与排序实验
一、实验目的查找和排序都是数据结构中非常重要的操作。查找分为静态查找、动态查找及哈希表查找等。排序的方法多种多样,并没有绝对的优劣,在具体的应用中应合理取舍。可以按照不同的标准进行分类对比学习,更为深刻全面的理解各种排序算法。本实验内容旨在培养在实际问题中应用各种查找算法进行查找的能力及应用各种排序算法对记录集合进行排序的能力。(1)掌握静态表的查找(如有序表的折半查找)。(2)掌握动态查找表(如二叉排序树)。(3)掌握哈希表的建立、查找、删除和插入算法。
2025-03-18 17:02:51
592
原创 图结构实验
一、实验目的(1)掌握图的逻辑结构。(2)掌握图的邻接矩阵存储结构。(3)掌握图在邻接矩阵存储结构上遍历算法的实现。(4)掌握图的邻接表存储结构。(5)掌握图的邻接表存储结构上遍历算法的实现。(6)理解图的最小生成树求解算法。(7)理解拓扑排序算法。(8)理解关键路径问题算法。(9)理解图的最短路径求解算法。二、实验环境(实验设备)硬件: 微型计算机P4软件:三、实验内容(包括题目和要求、源码、运行结果截图等)
2025-03-18 16:59:58
792
原创 树型结构实验
一、实验目的(1)掌握树的逻辑结构(2)理解树的孩子兄弟存储结构(3)掌握二叉树的逻辑结构(4)掌握二叉树的二叉链表存储结构(5)掌握基于二叉链表存储的二叉树的遍历操作的实现(6)掌握二叉树遍历的应用二、实验环境(实验设备)硬件: 微型计算机P4软件:三、实验内容(包括题目和要求、源码、运行结果截图等)
2025-03-18 16:57:11
865
原创 软件工程-平时作业4测试用例设计
某保险公司承担人寿保险,该公司保费计算方式为:保费=投保额*保险率,保险率依点数不同而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%假设商店商品价格[X]皆不大于100元(整数),若顾客买一件商品,付款[Y]在100元内,求找给顾客的最少货币张数?1. 使用逻辑覆盖法为下列的算法设计测试用例。
2025-03-18 16:51:08
223
原创 软件工程-平时作业3面向对象建模
当病人打电话预约时,接待员将查阅预约登记表,如果病人申请的就诊时间与已定下的预约时间冲突,则接待员建议一个就诊时间以安排病人尽早得到诊治。当太阳出来时,进人白天状态,由于温度升高,要调用调节温度过程,以保持要求的温度。系统首先会验证客户身份,根据客户的账户、密码,对客户身份进行验证。如果客户身份验证通过,则系统将根据存款记录累计利息,然后注销该笔存款,并在存折上打印该笔存款的注销与利息累计。接待员可以取消预约,也可以打印出前两天预约但尚未接诊的病人清单,还可以打印出关于所有病人的每天或每周的预约安排。
2025-03-18 16:50:21
379
原创 软件工程实验-实验4 面向对象分析-动态模型
2. 分析图书管理系统的用户登录模块,且绘制活动图 活动图描述用例的活动以及活动间的约束关系,用于识别并行活动和工作流 程情况,使用框图的方式显示动作及其结果。任务一: 构思网上书店的各个时序图,且绘制时序图 网上书店的业务功能描述请参见实验4的任务二。分析过程: (1)查询与浏览图书信息的时序图 (2)用户登录时序图 (3)客户订购图书时序图 (4)图书管理时序图 (5)订单处理时序图。时序图也叫顺序图,用来描述对象之间动态的交互关系,着重反映对象间消 息传递的时间顺序,说明对象之间的交互过程。
2025-03-18 16:47:05
828
原创 软件工程实验-实验3 面向对象分析-静态模型
系统根据用户角色的不同,提供不同的操作权限。在用例图中,参与者与系统之间的关系是通过直线连接的,代表了用户与系统的交互,系统中的功能则通过椭圆表示,并与参与者通过线条连接,表示用户对这些功能的使用权限。用户类、用户权限类和数据库操作类的设计,为系统提供了清晰的结构,确保各个功能模块的独立性和灵活性,同时也保证了系统的可维护性和可扩展性。在本次实验中,我深入分析了图书管理系统以及网上书店的相关模块,探讨了系统的登录模块、业务需求和用户管理模块的设计,并通过用例图和类图的形式展示了系统功能和模块结构。
2025-03-18 16:42:52
461
原创 软件工程实验-实验2 结构化分析与设计-总体设计和数据库设计
同时把模块组织成良好的层次系统:顶层模块通过调用它的下层模块来实现程序的完整功能,顶层模块下面的每个模块再调用更下层的模块从而完成程序的一个子功能,最下层的模块完成最具体的功能。而实体之间的关系,表示了不同实体之间的联系。同时把模块组织成良好的层次系统:顶层模块通过调用它的下层模块来实现程序的完整功能,顶层模块下面的每个模块再调用更下层的模块从而完成程序的一个子功能,最下层的模块完成最具体的功能。它的作用是帮助开发人员理解系统的功能需求和模块间的交互,帮助系统分层,确保开发中的各个部分是清晰分工的。
2025-01-04 21:01:09
922
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人