声呐数据集---处理

参考文章 https://blog.csdn.net/weixin_41819299/article/details/81008181

一、相关数据

1 数据集下载地址:https://archive.ics.uci.edu/ml/datasets/Connectionist+Bench+(Sonar,+Mines+vs.+Rocks)

2 打开方式:下载 sonar.all-data并重命名为sonar.all-data.csv    增加后缀改变文件格式,放到project

excel打开数据集,有208行60列特征(值域为0到1),标签为R/M。
表示208个观察对象60个不同角度返回的力度值,二分类结果是岩石/金属

3  参考程序:https://blog.csdn.net/QcloudCommunity/article/details/79363040

        注:from csv import reader    连接中少了个r

参考程序2 :https://www.kesci.com/home/project/5a5e0af01badff1e49557e47

参考程序2:http://www.yw1515.com/news/2018-04-06/118700.html

 

二、RF的来源

决策树方差高——引入bagging降低方差——bagging下的树相似,预测相似——引入列采样(本例中采用特征数的平方根)

bagging低方差——使用的决策树需低偏差,要深

三、各函数功能

load_csv:读取csv文件,按行保存到数组dataset中。

str_column_to_float:将某列字符去掉前后空格,并转换为浮点数格式

str_column_to_int:根据分类种类建立字典,标号0,1,2...将字符列转化为整数

cross_validation_split:使用randrange函数将数据集划分为n个无重复元素的子集

accuracy_metric:计算准确率

evaluate_algorithm:使用交叉验证,建立n个训练集和测试集,返回各模型误差数组

test_split:根据特征及特征阈值分割左右子树集合

gini_index:在某个点分成了几个子节点放在groups中,这些样本的类有多种,类集合为classes,计算该点基尼指数:

                    gini=∑按group(1-∑按同一group中的类p^1)*N1/N。

get_split:限定列采样特征个数n_features,基尼指数代表的是不纯度,gini指数越小越好,对列采样特征中的每个特征的每个                   值计算分割下的最小gini值,作为分割依据

 

to_terminal:输出Group中出现次数最多的标签,实质上就是多数表决法

split:根据树的最大深度、叶子节点最少样本数、列采样特征个数,迭代创作子分类器直到分类结束

build_tree:建立一棵树

predict:用一棵树预测类

subsample:按照一定比例bangging采样

bagging_predict:用多棵树模型的预测结果做多数表决

random_forest :随机森林算法,返回测试集各个样本做多数表决后的预测值

 

四、程序运行思路

下载csv类型的数据集,将特征转换为浮点型,标签转换为整型,交叉验证集数为5,最深10层,叶子节点最少一个样本,sample_size=1即不做数据集采样,以(特征数-1)开根号作为列采样数的限制。分别建立1,5,10棵树,评估算法。

即:对每种树规模(1,5,10)运行5次,取均值作为最后模型效果。

 

五、运行结果及分析
 

 

运行结果:

Trees: 1

Scores: [56.09756097560976, 63.41463414634146, 60.97560975609756, 58.536585365853654, 73.17073170731707]
Mean Accuracy: 62.439%
Trees: 5
Scores: [70.73170731707317, 58.536585365853654, 85.36585365853658, 75.60975609756098, 63.41463414634146]
Mean Accuracy: 70.732%
Trees: 10
Scores: [75.60975609756098, 80.48780487804879, 92.6829268292683, 73.17073170731707, 70.73170731707317]

Mean Accuracy: 78.537%

结果分析:

Scores内部差异不大,毕竟只是搞了下交叉验证。但可以看出随着trees数目的增加,准确率上升了
 

  • 6
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
动力声呐探测设备采集到的数据需要进行处理和分析,以确定管道的状态和问题。一般来说,动力声呐探测设备的数据处理方法如下: 1. 数据预处理:对采集到的原始数据进行预处理,包括滤波、去噪、校准等,以保证数据的准确性和可靠性。 2. 数据分析:对预处理后的数据进行分析,包括时域分析、频域分析、小波变换等,以确定管道内部的问题和状态。 3. 问题诊断:对检测到的问题进行进一步诊断和分析,包括确定问题的位置、大小、程度等,以便采取相应的修复措施。 4. 结果报告:将检测结果以报告的形式呈现,并向相关部门或人员提供建议和处理方案。 数据预处理是动力声呐探测设备数据处理的重要步骤,可以通过数字滤波、小波变换、去噪等方法对数据进行预处理,以降低噪声和干扰对数据分析的影响,提高数据的准确性和可靠性。 数据分析是动力声呐探测设备数据处理的核心,可以通过时域分析、频域分析、小波变换等方法对数据进行分析,以确定管道内部的问题和状态。时域分析是指对数据进行时间分析,以确定管道内部的问题和状态;频域分析是指对数据进行频率分析,以确定管道内部的问题和状态;小波变换是一种多尺度分析方法,可以对数据进行不同尺度的分析,以确定管道内部的问题和状态。 问题诊断是动力声呐探测设备数据处理的最终目的,可以通过对分析结果进行进一步诊断和分析,确定管道内部的问题的位置、大小、程度等,并提出相应的修复措施和处理方案。 结果报告是将检测结果以报告的形式呈现,并向相关部门或人员提供建议和处理方案。报告内容应包括检测区域、检测时间、检测方法、检测结果、问题诊断和处理建议等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机视觉-Archer

图像分割没有团队的同学可加群

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值