在CodaLab上提交MURA竞赛的结果
What is MURA?
MURA (musculoskeletal radiographs) is a large dataset of bone X-rays. Algorithms are tasked with determining whether an X-ray study is normal or abnormal.
这是斯坦福大学机器学习组的骨骼X光深度学习比赛(Bone X-Ray Deep Learning Competition),这是它的官网。
数据集是七类人体部位的X光,分为normal和abnormal两种,需要训练一个模型,能够完成这样一个二分类的诊断任务。
Baseline是一个169层的DenseNet,我们用PyTorch实现了它。
答案的提交是通过CodaLab这个网站,官方给出了这样一个提交教程:
Step 1:
创建一个新的WorkSheet。
Step 2:
复制一份虚拟的数据:
1 |
cl add bundle mura-utils//valid . |
Step 3:
将你的代码和模型打包后上传,压缩成zip后上传,系统会自动解压。
这份伪造数据的路径保存在valid_image_paths.csv中,格式为:
1 |
MURA-v1.1/{valid,test}/<STUDYTYPE>/<PATIENT>/<STUDY>/<IMAGE>
|
你的程序需要能够输出一份对于每一个study的预测结果,形如:
1 |
MURA-v1.1/{valid,test}/<STUDYTYPE>/<PATIENT>/<STUDY>/,{0,1}
|
Step 4:
在伪造数据集上运行你预训练好的模型。这是他们 大专栏 在CodaLab上提交MURA竞赛的结果给出的运行命令:
1 |
cl run valid_image_paths.csv:valid_image_paths.csv MURA-v1.1:valid src:src "python src/<path-to-prediction-program> valid_image_paths.csv predictions.csv" -n run-predictions |
这里需要用到docker,我在docker hub准备了一个docker镜像,sqpeng1996/mura2:v5,里面有python 3.6,pytorch, torchnet, sklearn等代码需要的库。
使用命令为:
1 |
cl run valid_image_paths.csv:valid_image_paths.csv MURA-v1.1:valid MURA:MURA "python3 MURA/main.py valid_images_paths.csv predictions.csv" -n run-predictions --request-docker-image sqpeng1996/mura2:v5 --request-cpus 4 --request-memory 32g |
这里特别要注意的是需要多请求一些memory,(或者把batch size改为1),不然无法跑通。
如果这一步的state变成了ready,那就说明没问题了。然后执行:
1 |
cl make run-predictions/predictions.csv -n predictions-{MODELNAME}
|
MODELNAME不能包含空格,最好也避免特殊字符。
最后执行:
1 |
cl macro mura-utils/valid-eval-v1.1 predictions-{MODELNAME}
|
就能看到结果了(因为这里是伪造的数据,所以结果不重要)。
Step 5:
提交:
1 |
cl edit predictions-{MODELNAME} --tags mura-submit
|
把 predictions-{MODELNAME} bundle的 URL发邮件给 jirvin16@stanford.edu 就可以了。
在CodaLab上提交MURA竞赛的结果的更多相关文章
- 在Activiti官方源码上提交的两个bugfix
前段时间在Activiti官方源码上提交了两个bugfix,截图为证. 第1个是BPMN model输出的bug:
- 在eclipse上提交任务到集群执行
win7下eclipse远程开发hadoop程序,分为两种: (1)运行[Run As] Java Application, 打包程序为jar,上传集群执行(这里不做解释) (2)运行[Run As] ...
- 上传及更新代码到github(以及如何在vscode上提交自己的代码)
上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo "# Test" >> ...
- git向码云上提交项目
git向码云上提交项目 设置账号名字和邮箱 $ git config --global user.name "注册时账号的名字" $ git config --global use ...
- 如何在github上提交pr
如何在github上提交pr 1.fork开源的代码到自己的远程仓库 2.clone自己的仓库到本地电脑 3.与源代码的github仓库建立新的连接 git remote add upstream h ...
- from表单上提交的数据都去了哪里呢?
from表单上提交的数据都去了哪里呢? 一个简单的from案例如下: <form> 姓名:<br> <input type="text" name=& ...
- 向github上提交自己的project
参考博客:https://blog.csdn.net/m0_37725003/article/details/80904824 step I: 创建自己的github账户(username:fourm ...
- 修改Github上提交日志
bash: git rebase -i HEAD~5:假定你要修改的日志位于当前版本(HEAD)的前4次提交中. vi: pick -> reword:在自动打开的vi编辑器中,上下选择你要修改 ...
- 【IntelliJ IDEA】idea上提交代码到GitHub,已经提交了 但是GitHub上却没有的解决办法
摘要: 今天提交idea上的代码到GitHub,提交过程已经完成, 在版本控制的Log中可以看到,已经将这一部分都提交更新了 在版本控制的Local Changes中已经看不到提交过的代码了 ...
随机推荐
- 5.docker image (镜像)
1.image 是什么 是文件和 meta data 的集合 (root filesystem) 是分层的,并且每一层都可以添加改变删除文件,成为一个新的image 不同的image可以共享相同的la ...
- Hard Disk Drive(MBR)
这里讲的主要是网上所谓的老式磁盘,它是由一个个盘片组成的,我们先从个盘片结构讲起.如图1所示,图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之 ...
- PyTorch基础——迁移学习
一.介绍 内容 使机器能够"举一反三"的能力 知识点 使用 PyTorch 的数据集套件从本地加载数据的方法 迁移训练好的大型神经网络模型到自己模型中的方法 迁移学习与普通深度学习 ...
- 讯飞语音的中的bug用户校验失败
用户校验失败:原因是目录没有复制粘贴正确. 下面是刚刚下载的SDK目录: 下面的是自己Android工程中的目录:注意复制粘贴的文件路径要正确
- set theory
set theory Apart from classical logic, we assume the usual informal concept of sets. The reader (onl ...
- Redis哨兵、复制、集群的设计原理,以及区别
广西SEO:谈到Redis服务器的高可用,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. **哨兵(Sentinel):**可以管理多个Redis服务器,它提供了监控,提醒以及自 ...
- TPO3-2Depletion of Ogallala Aquifer
The vast grasslands of the High Plains in the central United States were settled by farmers and ranc ...
- Q_Go2
一.变量 1.1 变量的概念 变量是计算机语言中存储数据的抽象概念.变量的功能是存储数据.变量通过变量名访问. 变量的本质是计算机分配的一小块内存,专门用于存放指定数据,在程序运行过程中该数值可以发生 ...
- spark-shell使用指南. - 韩禹的博客
在2.0版本之前,Spark的主要编程接口是RDD(弹性分布式数据集),在2.0之后,则主推Dataset,他与RDD一样是强类型,但更加优化.RDD接口仍然支持,但为了更优性能考虑还是用Datase ...
- Image.FromStream(ms) 提示参数无效
说明ms有问题,首先确保有读到数据,这种情况是保存到库的时候出错的. 原来你可能是这样写的: MemoryStream stream = new MemoryStream();PictureBox1. ...