Kaggle PANDA前列腺癌分级评估竞赛冠军解决方案详解

RayRay
PANDA竞赛前列腺癌分级人工智能深度学习图像处理Github开源项目

Kaggle PANDA竞赛简介

PANDA(Prostate cANcer graDe Assessment)是Kaggle平台上的一项重要医学影像竞赛,旨在利用人工智能技术对前列腺癌组织病理切片进行自动分级。该竞赛吸引了来自全球的3,000多支队伍参与,对推动前列腺癌诊断技术的发展具有重要意义。

本文将详细介绍该竞赛的冠军解决方案,这一方案由Team PND的@yukkyo@kentaroy47共同开发。他们的模型和代码以CC-BY-NC 4.0许可开源,为整个医学AI社区提供了宝贵的参考。

环境配置

冠军团队提供了两种环境配置方式:

  1. 不使用Docker(未经测试):

    • Ubuntu 18.04
    • Python 3.7.2
    • CUDA 10.2
    • NVIDIA/apex == 1.0
  2. 使用Docker(推荐):

    # 构建
    $ sh docker/build.sh
    
    # 运行
    $ sh docker/run.sh
    
    # 执行
    $ sh docker/exec.sh
    

使用Docker可以确保环境的一致性,是复现结果的首选方式。

数据准备

数据准备是整个解决方案的基础,主要包括以下步骤:

  1. 获取数据:仅下载train_images和train_masks。

  2. 图像哈希分组:使用图像哈希技术检测重复图像并进行分组。输出文件为input/duplicate_imgids_imghash_thres_090.csv

  3. K折交叉验证划分:

    $ cd src
    $ python data_process/s00_make_k_fold.py
    

    输出文件为input/train-5kfold.csv

  4. 制作训练用的图像块:

    $ cd src
    $ python data_process/s07_simple_tile.py --mode 0
    $ python data_process/s07_simple_tile.py --mode 2
    $ python data_process/a00_save_tiles.py
    

这些步骤为后续的模型训练奠定了坚实的数据基础。

基础模型训练

基础模型的训练是为了去除数据中的噪声,这一步骤至关重要:

$ cd src
$ python train.py --config configs/final_1.yaml --kfold 1
$ python train.py --config configs/final_1.yaml --kfold 2
$ python train.py --config configs/final_1.yaml --kfold 3
$ python train.py --config configs/final_1.yaml --kfold 4
$ python train.py --config configs/final_1.yaml --kfold 5

每个fold大约需要18小时,输出将保存在output/model/final_1目录下。

模型训练流程

本地验证预测

训练完成后,需要对本地验证集进行预测,以便后续的去噪处理:

$ cd src
$ python kernel.py --kfold 1
$ python kernel.py --kfold 2
$ python kernel.py --kfold 3
$ python kernel.py --kfold 4
$ python kernel.py --kfold 5

每个fold大约需要1小时,预测结果将保存为output/model/final_1/local_preds~~~.csv

去除噪声

去噪是提高模型性能的关键步骤:

$ cd src
$ python data_process/s12_remove_noise_by_local_preds.py

这一步骤会生成多个重要的CSV文件:

  • local_preds_final_1_efficientnet-b1.csv: 用于清理标签的预测结果。
  • local_preds_final_1_efficientnet-b1_removed_noise_thresh_16.csv: 用于训练Model 1的基础标签清理结果。
  • local_preds_final_1_efficientnet-b1_removed_noise_thresh_rad_13_08_ka_15_10.csv: 用于训练Model 2的标签,移除了20%的Radboud标签。

重新训练去噪后的模型

在去除噪声后,需要重新训练模型以获得更好的性能:

  1. 训练Model 2(fam_taro模型):

    $ cd src
    $ python train.py --config configs/final_2.yaml --kfold 1
    $ python train.py --config configs/final_2.yaml --kfold 4
    $ python train.py --config configs/final_2.yaml --kfold 5
    
  2. 训练Model 1(arutema模型): 运行train_famdata-kfolds.ipynbtrain_famdata-kfolds.py

每个fold的训练时间约为4-15小时不等。最终的模型将保存在models目录中。

Kaggle提交

最后一步是在Kaggle Notebook上提交结果:

  1. 冠军方案最终提交:

    • 公共得分: 0.904
    • 私有得分: 0.940 (第1名)
    • 提交链接
  2. 可复现的结果(固定随机种子):

    • 公共得分: 0.894
    • 私有得分: 0.939 (第1名)
    • 提交链接
  3. 简单的5折模型(第3名):

总结与展望

Team PND的解决方案不仅在Kaggle竞赛中取得了优异成绩,还被多个知名学术期刊采用,包括:

这些成果充分证明了该解决方案在实际医学应用中的潜力。未来,我们可以期待这一技术在以下方面的进一步发展:

  1. 模型轻量化:优化模型结构,减少计算资源需求,使其更适合临床实时应用。

  2. 多模态融合:结合其他类型的医学影像数据(如MRI、CT等),提高诊断的准确性和全面性。

  3. 可解释性研究:深入探究模型的决策过程,提高医生对AI辅助诊断的信任度。

  4. 泛化能力提升:在更多样化的数据集上进行测试和优化,确保模型在不同医疗机构和人群中的适用性。

  5. 临床试验验证:与医疗机构合作,开展大规模临床试验,进一步验证模型在实际诊断中的效果。

总的来说,Kaggle PANDA竞赛的这个冠军解决方案不仅展示了AI在医学影像分析中的巨大潜力,也为未来的研究指明了方向。随着技术的不断进步和跨学科合作的深入,我们有理由相信,AI辅助诊断将在前列腺癌以及其他疾病的早期发现和精准治疗中发挥越来越重要的作用。

编辑推荐精选

博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

热门AI工具AI办公办公工具智能排版AI生成PPT博思AIPPT海量精品模板AI创作
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

下拉加载更多