当前位置: 首页 > 编程日记 > 正文

不写一行代码,也能玩转Kaggle竞赛?

640?wx_fmt=jpeg


整理 | Jane 

出品 | AI科技大本营(ID:rgznai100)

 

【导读】AI科技大本营会给大家分享一些 Kaggle 上的资源,如 Kaggle 开放的数据集,也会分享一些好的竞赛方案或有意义的竞赛经验,帮助大家成长。今天,我们要给大家介绍的这个工具特别推荐给以往只能仰望别人的,缺乏竞赛技能和经验的朋友,你不需要写一行代码就可以参与 Kaggle 竞赛,甚至连安装环境都免了。是不是很神奇?下面我们一起 get 一下这个“真香”的工具!


参赛项目

Freesound Audio Tagging 2019


Kaggel 的竞赛项目 Freesound Audio Tagging 2019,同时也是 DCASE 2019 挑战赛的任务之一(Task 2),今天不对这个竞赛做过多介绍,感兴趣的朋友们可以通过我们下面给出的链接访问。

 

640?wx_fmt=png

 

Freesound Audio Tagging 2019 是由 Freesound(MTG — Universitat Pompeu Fabra)和 Google 机器感知组举办的,数据通过 Freesound Annotator 收集,比赛参考论文:

(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://ismir2017.smcnus.org/wp-content/uploads/2017/10/161_Paper.pdf

 

随着 AI 技术的不断发展与落地,有越来越多的平台和工具可供大家使用,这些平台针对不同领域、不同层次的开发者和学习者,只要你想学就有办法。但问题是,对于刚入门,没有多少经验,对 TensorFlow、PyTorch 等工具和框架也不熟悉的人,能参加这样的竞赛吗?


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


Peltarion 平台 你值得拥有,训练你的模型只需 5 步!

Peltarion 是怎样的一个平台?它部署在云端,在平台上你只需要简单的“拖拉拽”就可以从0到1完成一个 AI 模型的创建到部署。平台给初始者提供了免费使用50 小时、共有 50 GB 的 GPU 存储容量。



640?wx_fmt=png

 


AI科技大本营也注册了一个账号,准备利用一下免费资源把模型跑起来。注册账号很简单,先用一个邮箱在平台上注册账号,然后在邮箱中完成验证,最后设置一个密码——done。接下来就可以开始进入“正餐”环节,为了能让大家使用该平台, 原作者和 Kaggle 竞赛联合起来,让大家可以边学边用。


 

640?wx_fmt=png


具体步骤示例

 

0、获取数据集

 

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

下载地址:

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


640?wx_fmt=png

 

1、Project:一键创建 

 

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

 

640?wx_fmt=png

 

2、数据集:Upload 或者 Import

 

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

 

640?wx_fmt=png

 

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


 

640?wx_fmt=png

 

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

 

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

 

640?wx_fmt=png

 

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

 

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


640?wx_fmt=png

 

(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 就可以让模型跑起来了。

 

640?wx_fmt=png

 

640?wx_fmt=png

 

4、Evaluating

 

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


 

640?wx_fmt=png


5、提交模型

 

640?wx_fmt=png

 

首先,进入竞赛页面。点击 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


精彩推荐


640?wx_fmt=jpeg

推荐阅读

  • 刷新记录,算法开源!字节跳动获人体姿态估计竞赛双冠 | CVPR 2019

  • ACL 2019 | 精选8篇微软ACL论文解读,一览最新研究进展

  • 如何在标准的机器学习流程上玩出新花样?

  • 从0到1 | 手把手教你如何使用哈工大NLP工具——PyLTP!

  • C++、Python、Rust、Scala构建编译器的差异性究竟有多大?

  • 独家 | Vitalik Buterin:以太坊2.0之跨分片交易

  • 华为“舵手”任正非

  • 滴滴章文嵩:不仅软件开源,还向学界开放数据

  • 面试官:你简历中写用过docker,能说说容器和镜像的区别吗?


640?wx_fmt=png你点的每个“在看”,我都认真当成了喜欢

相关文章:

认识flask框架-2

1.json:基于键值对的字符串&#xff0c;轻量级的数据交互格式&#xff0c;用来传输数据 2.json模块 dumps:把字典转化成json字符串。 loads&#xff1a;把json字符串转成字典。 dump、load操作的是文件对象。 jsonify可以返回json字符串&#xff0c;会修改响应的类型为applicat…

Sencha-概念-Layouts(布局)(官网文档翻译8)

Sencha-概念-Layouts(布局)&#xff08;官网文档翻译8&#xff09; 介绍和HBox 布局描述了在您的应用程序的组件的大小和位置。例如&#xff0c;一个电子邮件客户端可能具有固定到左边的消息的列表&#xff0c;以说&#xff0c;可用的宽度的三分之一&#xff0c;和一个消息观看…

Photoshop图像处理操作汇总

1、给图像添加外边框&#xff0c;保持图像原有大小&#xff1a; 点击图层-->新建-->图层&#xff0c;弹出新图层对话框&#xff0c;点击确定&#xff0c;点按"Ctrl A”键将图像全部选中&#xff0c;再点击编辑>描边&#xff0c;弹出描边对话框&#xff0c;在宽…

人工智能进军餐饮:AI调酒,越喝越有

作者 | 神经小姐姐来源 | 转载自HyperAI超神经&#xff08;ID:HyperAI&#xff09;导读&#xff1a;“吃”&#xff0c;现在已经成了一种文化&#xff0c;对食物的不懈追求&#xff0c;可以说是人类历史的一种推动力。从烹饪的进化&#xff0c;到现在花样百出的美食&#xff0c…

LaTeX - 带圈数字

2019独角兽企业重金招聘Python工程师标准>>> 法I. by zepinglee \documentclass[UTF8]{ctexart} \XeTeXcharclass①1 \XeTeXcharclass②1 \XeTeXcharclass③1 \XeTeXcharclass④1 \XeTeXcharclass⑤1 \XeTeXcharclass⑥1 \XeTeXcharclass⑦1 \XeTeXcharclass⑧1 \Xe…

akcms折腾记

这几天闲着无聊&#xff0c;找cms折腾一下&#xff0c;先是搞了大名鼎鼎的dedecms&#xff0c;不过那繁琐真不是盖的&#xff0c;想修改个模板不知从哪里动手。虽然现在工作的后台也是由dedecms改过来的&#xff0c;但平时也就发发文章而已。 然后就找到了这个神器&#xff1a;…

VC++ OCX 控件注册

转自&#xff1a;http://www.cctry.com/thread-5334-1-1.html 方法一&#xff1a;在dos或Windows命令行下运行&#xff1a;regsvr32 ocxname.ocx 注册 示例&#xff1a; regsvr32 netshare.ocx //注册netshare.ocx控件 regsvr32 /u netshare.ocx //解除netshare.ocx控件…

程序猿生存指南-4 借钱风波

借钱风波&#xff08;10&#xff09;临近春节&#xff0c;我的朋友圈被各个公司的年终奖刷屏。土豪互联网公司有送现金的&#xff0c;有送豪车的&#xff0c;还有送别墅的。它们享受着移动互联网的红利&#xff0c;赚得盆满钵满。不过翻看公司请媒体写的那些报道&#xff0c;就…

赛灵思:人工智能芯片发展方向与误区

演讲嘉宾 | 姚颂&#xff0c;赛灵思人工智能业务资深总监整理 | 夕颜人工智能发展过程中&#xff0c;算力是一个重要的因素&#xff0c;算力就像是 AI 的燃油&#xff0c;没有燃油&#xff0c;AI 哪也去不了。而为 AI 应用提供算力的&#xff0c;正是各种各样的芯片。而近几年&…

Python 多线程抓取网页 牛人 use raw socket implement http request great

Python 多线程抓取网页 - 糖拌咸鱼 - 博客园Python 多线程抓取网页最近&#xff0c;一直在做网络爬虫相关的东西。 看了一下开源C写的larbin爬虫&#xff0c;仔细阅读了里面的设计思想和一些关键技术的实现。1、larbin的URL去重用的很高效的bloom filter算法&#xff1b; 2、DN…

从特斯拉到英伟达,那些端到端自动驾驶研发系统有何不同?

作者 | 黄浴&#xff0c;奇点首席科学家兼总裁来源 | 转载自知乎专栏自动驾驶与视觉感知导读&#xff1a;近日&#xff0c;吴恩达的 Drive.ai 被苹果收购的消息给了自动驾驶领域一记警钟&#xff0c;但这个领域的进展和成果犹在。本文将介绍一些端到端的自动驾驶研发系统&#…

vc6中进行多行注释和反注释的方法

1、利用工具中自带的按钮实现&#xff1a; Tools-->Customize-->Add-ins and Macro Files-->将SAMPLE项选中-->Commands-->Category中选择Macros-->在Commands中将CommentOut拖到工具栏&#xff0c;再选中一个Images&#xff0c;点击OK即可。 这种方法是使…

一看就懂!【英雄联盟锐雯】与 Python 详解设计模式之门面模式

【网络配图】设计模式&#xff08;Design Pattern&#xff09;是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。使用设计模式的目的&#xff1a;为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。设计模式使代码编写真正工程化&#xff1b;设计模…

无法挂载 NTFS格式的分区:mount: unknown filesystem type ‘ntfs’

问题&#xff1a; # mount –t ntfs /dev/sdb1 /mnt/usb mount: unknown filesystem type ‘ntfs’ 这是由于CentOS release 5.3(Final)上无法识别NTFS格式的分区。解决办法&#xff1a; 通过使用 ntfs-3g 来解决。 打开ntfs-3g的下载点http://w…

vs2008 ActiveX控件测试容器的生成以及调试ActiveX控件

1、ActiveX控件测试容器的生成&#xff1a;用TSTCON生成测试容器 http://msdn.microsoft.com/zh-cn/library/f9adb5t5(vvs.90).aspx 在搜索里搜索tstcon,双击TstCon文件夹&#xff0c;将此文件夹里的东西全部复制到另外一个新的空文件里&#xff0c;然后打开解决方案 tstcon.…

百度自动驾驶新突破:获首批T4牌照,升级Apollo 5.0,将进行复杂城市场景路测...

作者 | KYLE WIGGERS等编译 | 夕颜出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;最近&#xff0c;百度自动驾驶项目终于有了进展。先是上周悄然发布了 Apollo 的最新版本 Apollo 5.0&#xff0c;引入一些新功能&#xff1b;昨天下午&#xff0c;北京市自动驾驶测试…

折叠屏就要来了,适配逼死 Android 开发?

1. 异型屏还没适配好&#xff0c;折叠屏就要来了&#xff0c;Android 的碎片化&#xff0c;让开发者又多掉了不少头发。 北京时间 11 月 8 日&#xff0c;三星在旧金山向开发者发布了一款可折叠屏幕手机。并表示&#xff0c;新技术需要开发者调整其 App&#xff0c;以确保在手机…

nginx虚拟目录配置

2019独角兽企业重金招聘Python工程师标准>>> 今天搞了N久的虚拟目录配置&#xff0c;在几乎要放弃的时侯偶然看到一篇文章&#xff0c;将我的问题搞定 原贴地址&#xff1a;http://blog.sina.com.cn/s/blog_6c2e6f1f0100l92h.html 我的需求是这样的&#xff0c;系…

阿里达摩院刷新纪录,开放域问答成绩比肩人类水平,超微软、Facebook

出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;近日&#xff0c;由阿里巴巴达摩院语言技术实验室研发的 Multi-Doc Enriched BERT 模型在微软的 MS MARCO 数 据评测任务&#xff0c;Passage Retrieval Task&#xff08;文档检索排序&#xff09;和 Q&A Task&…

解决windows7下vs2008不能正常编译ActiveX控件的问题

在windows7系统中&#xff0c;vs2008环境下用MFC ActiveX Control生成的控件不能正常编译&#xff0c;但是在xp系统中却能正常编译&#xff0c;解决方法&#xff1a; 1、在windows7中编译&#xff0c;提示错误为&#xff1a;fatal error LNK1000: Internal error during IncrB…

什么是shell【TLCL】

常用命令 datecaldf——report file system disk space usagefree——display amount of free and used memory in the systemexit——退出终端Ctrl-Alt-F1 到 Ctrl-Alt-F6 访问后台终端会话&#xff0c;AltF7返回图形桌面转载于:https://www.cnblogs.com/songdechiu/p/9943599…

Linux终端的几个常用快捷方式,记下!

一、初识linux的终端种类&#xff1a;本地、远程    查看本终端命令&#xff1a;     #tty 命令&#xff0c;看到当前所处的终端     #&#xff08;w&#xff09;who 命令&#xff0c;看到系统中所有登录的用户 其中&#xff0c;tty 终端为表示在本地命令行模式下打开…

从0到1 | 文本挖掘的传统与深度学习算法

一、什么是文本挖掘&#xff1f;讨论文本挖掘之前&#xff0c;我们要先说一下数据挖掘的概念&#xff0c;因为文本挖掘是数据挖掘的一个分支。数据挖掘&#xff08;Data Mining&#xff09;指从大量的数据中通过算法搜索隐藏在其中信息的过程。而文本挖掘就是从文本数据中获取有…

window7系统中64位安装matalbR2009b后出现乱码的解决方案

转自&#xff1a;http://blog.csdn.net/shaoguangleo/archive/2010/11/29/6042194.aspx MATLAB 中默认的字体是 Monospaced &#xff08;即等宽字体&#xff09;&#xff0c;这是一种非常适合用于显示程序源代码的字体。但Monospaced 是种逻辑字体&#xff0c;它在不同语言和操…

【电路】pmic芯片设计细节

VIO_IN供电https://e2e.ti.com/support/power-management/f/196/t/712146?tisearche2e-sitesearch&keymatchtps65916 Note that every GPIO will be configured as an input for the first 6ms after VCC is supplied, which is the time it takes for the device to init…

sql server 的一些记录

下面记录一些用到sql server查询时候用到的函数。 charindex,在一个表达式中搜索另一个表达式并返回其起始位置&#xff08;如果找到&#xff09;。http://msdn.microsoft.com/zh-cn/library/ms186323.aspx CHARINDEX ( expressionToFind ,expressionToSearch [ , start_locati…

[WPF] UserControl vs CustomControl

原文:[WPF] UserControl vs CustomControl介绍 WPF中有两种控件&#xff1a;UserControl和CustomControl&#xff0c;但是这两者有什么区别呢&#xff1f;这篇博客中将介绍两者之间的区别&#xff0c;这样可以在项目中合理的使用它们。 UserControl 将多个WPF控件(例如&#xf…

50行Python代码,获取公众号全部文章

作者 | 胖虎转载自Python3X&#xff08;ID: python3xxx &#xff09;爬取公众号的方式常见的有两种&#xff1a;通过搜狗搜索去获取&#xff0c;缺点是只能获取最新的十条推送文章。通过微信公众号的素材管理&#xff0c;获取公众号文章。缺点是需要申请自己的公众号。今天介绍…

解决Windows7下vs2008 Active control test container 不能运行的问题

按照&#xff1a;http://blog.csdn.net/fengbingchun/archive/2011/05/05/6398356.aspx 在windows7系统中&#xff0c;vs2008环境下用MFC ActiveX Control生成的控件不能正常编译&#xff0c;但是在xp系统中却能正常编译&#xff0c;解决方法&#xff1a; 1、在windows7中编译…

入门必备 | 一文读懂神经架构搜索

作者 | Md Ashiqur Rahman编译 | 刘静转载自图灵TOPIA&#xff08;ID: turingtopia&#xff09;近期谷歌大脑团队发布了一项新研究&#xff1a;只靠神经网络架构搜索出的网络&#xff0c;不训练&#xff0c;不调参&#xff0c;就能直接执行任务。这样的网络叫做WANN&#xff0c…