首页 > 编程知识 正文

kaggle教程(kaggle比赛题目)

时间:2023-05-06 12:28:55 阅读:85827 作者:4869

整理|简

展出| AI技术基地营(ID:rgznai100 ) () ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )至) ) )。

【领先】AI科技大本营分享Kaggle上的资源,如Kaggle的开放数据集,分享好的竞赛计划和有意义的竞赛经验,帮助成长。 今天,我们要介绍的这个工具特别推荐给那些以前只能仰视别人,但缺乏竞赛技能和经验的朋友。 无需写一行代码就可以参加Kaggle比赛,甚至可以免除安装环境。 厉害吗? 一起get一下这个“真香”的道具吧!

作为

参赛项目

Freesound Audio Tagging 2019

Kaggel大赛项目的自由之声音频标记2019,也是DCASE 2019挑战赛的任务之一(任务2 )。 因为今天不怎么介绍这个比赛,所以有兴趣的人请通过以下链接进行访问。

自由声音音频标记2019由自由声音(MTG -通用多功能一体机)和谷歌设备感知组举办,数据通过自由声音注释器收集。 竞赛参考论文: (1) 《Audio tagging with noisy labels and minimal supervision》https://Arxiv.org/PDF/1906.02975.PDF )2) 《FREESOUND DATASETS: A PLATFORM FOR THE CREATION OF OPEN AUDIO DATASETS》https://ISMIR 2017.SMC Nus.org/WP-content /

随着AI技术的发展和落地,越来越多的平台和工具可以使用。 这些平台面向不同领域、不同层次的开发人员和学员,您想学习就有方法。 但问题是,刚入门、没有太多经验、也不熟悉TensorFlow、PyTorch等工具和框架的人,是否可以参加这样的竞赛?

不会写代码,也不会 TensorFlow、PyTorch,怎么训练模型?

Peltarion平台值得拥有。 训练模型只有五个步骤。

Peltarion是什么样的平台? 部署在云中,平台上简单的“拖动和amp”; 只需放置”,即可完成从0到1的AI模型的创建到部署。 平台为初学者提供总共50 GB的GPU存储容量,可免费使用50小时。

AI科技大本营也计划注册账户,利用免费资源跑模特。 注册账户很容易。 首先用一个邮箱地址在平台上注册账户,然后用邮箱地址完成认证,最后设置密码——done。 接下来进入“米饭”环节,为了让大家都能使用这个平台,原作者和Kaggle比赛将合作,让大家可以一边学习一边使用。

具体步骤示例

ign-justify">0、获取数据集

模型预训练中要使用的数据集是 FSDKaggle 2019,已经在 Peltarion 平台经过预处理,所以音频文件经过转化,与 index.csv 一起保存为 Numpy 文件格式,所以,大家直接下载 dataset.zip 即可。

下载地址:https://www.kaggle.com/carlthome/preprocess-freesound-data-to-train-with-peltarion/output

1、Project:一键创建

直接 New 一键即可建立一个新 project,可以保存为“project v1”。

2、数据集:Upload 或者 Import

新建的 project v1 在左侧就可以看到,点击 Datasets → New dataset 就可以上传数据集。然后选择刚刚下载的数据集,等待上传,最后命名保存为“Audio”。

默认 80% 的数据集作为训练集,其余 20% 用于测试集。在顶部的 New feature set 进行捆绑,除 fname 外所有的功能,保存为“Lable”。右上角保存 version 后,就可以进一步建模了。

3、Modeling:一键创建深度学习项目

New Experiment 后进入 Modeling 界面,你可以在右侧看到“Build”和“Settings”两个工具选项帮助进行编译模型。在这个示例中,训练的是如下图所示的声谱图,以完成图片分类任务。

在该任务中,我们可以选择 CNN 网络模型,比如 ResNetv2 large 50。(右侧 Build-Snippets 中,有一些不同任务的模型可供选择。)

接下来几个步骤中,我们就在右侧栏中设定模型的关键配置:

(1)在 Blocks 中添加 Input,Feature 选择为 fname;

(2)添加 Batch normalization,勾选 Trainable;

(3)添加 Reshape,设置 Target Shape 为(256,256,1);

(4)在 Snippets 中添加 ResNetv2 large 50;

(5)单击并删除 ResNetv2 large 50 顶部“Input” 模块;

(6)将 BN 块连接到 ResNetv2 large 50 上

(7)更改 Dense 块 中 Activation 为 ReLU,ReLU 经常在模型中被选为激活函数;

(8)在 Target 块 之前再添加一个 Dense 块,节点设置为 80,激活 sigmoid;

(9)将 Target块 的 Feature 改为 Lable,Loss 为 Binary crossentropy;

(10)跳转到 Settings 选项卡,配置模型的步长、epoch、优化器等;Batch 设为 28,适合 GPU 内存、epoch 设为 30,模型足以收敛、Optimizer 选为 Adam,这是一个很常用的标准优化器;

(11)上面的配置都完成后,点击 RUN 就可以让模型跑起来了。

4、Evaluating

模型训练后,我们还需要对模型进行评估,在 Evaluating 界面,可以看到模型训练的实时数据,我们关注的指标是 Precision 和 Recall。模型训练完成后,可以直接下载,如果训练了多个模型,记得下载模型精度最高的。

5、提交模型

首先,进入竞赛页面。点击 New Kernel 连接到 Notebook,将下载的模型 H5 文件作为数据集添加。温馨提示:要使用正确的 H5 文件路径,添加下面这行代码到 Kaggle notebook 中运行,此处注意保存路径,后面会用到。

!find ../input-name '*.h5'

下面这段代码可以直接复制-粘贴到 Kaggle notebook 中;将模型变量路径更改为前面保存的路径,最后点击 Commit,完成。

import numpy as np import pandas as pd import librosa as lr import tensorflow as tf from tqdm import tqdm model = tf.keras.models.load_model('../input/freesound-audio-tagging-2019-model/resnet50.h5', compile=False) ##Change df = pd.read_csv('../input/freesound-audio-tagging-2019/sample_submission.csv', index_col='fname') ##Change def preprocess(wavfile): # Load roughly 8 seconds of audio. samples = 512*256 - 1 samplerate = 16000 waveform = lr.load(wavfile, samplerate, duration=samples/samplerate)[0] # Loop too short audio clips. if len(waveform) < samples: waveform = np.pad(waveform, (0, samples - len(waveform)), mode='wrap') # Convert audio to log-mel spectrogram. spectrogram = lr.feature.melspectrogram(waveform, samplerate, n_mels=256) spectrogram = lr.power_to_db(spectrogram) spectrogram = spectrogram.astype(np.float32) return spectrogram for fname, scores in tqdm(df.iterrows(), total=len(df), desc='Predicting'): spectrogram = preprocess('../input/freesound-audio-tagging-2019/test/' + fname) scores = model.predict_on_batch(spectrogram[None, ...])[0] df.loc[fname] = scores df.to_csv('submission.csv') 竞赛地址:https://www.kaggle.com/c/freesound-audio-tagging-2019

通过上面的示例,大家也发现了,训练模型的每一个步骤都在平台上内置好了,大家只需要托拉拽,勾勾选选的操作就可以训练你的模型了,另外还有一些免费的 GPU 资源、内存使用。对于代码不会写,框架不会写的你们来说简直不要太好用!营长的模型要准备跑起来了,你们的呢?

原文参考:https://towardsdatascience.com/how-to-participate-in-a-kaggle-competition-with-zero-code-f017918d2f08

(*本文为 AI科技大本营整理文章,转载请微信联系 1092722531)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。