《动手做科研》06. 如何产生新的研究想法
地址链接:《动手做科研》06. 如何产生新的研究想法
欢迎加入我的知识星球,定期分享AI论文干货知识!
导读: 提出好的研究想法是相当困难的,特别是当你刚接触一个领域时——这需要对文献中的空白有所了解。然而,产生研究想法的过程可以在阅读一篇研究论文之后就可以开始了。
在这次课程中,我将与你分享一套框架可帮助你生成自己的研究想法。首先,你将学习如何应用一个框架来识别研究论文中的空白(别人没研究过),包括研究问题、实验设计和发现等方面。接着你将学习如何应用一个框架来基于一篇研究论文生成想法,思考感兴趣任务的要素、评估策略以及所提方法。最后,你将学习如何应用一个框架来迭代你的想法,以提高它们的质量。
本次课程的结构是这样的:首先,你需要通过阅读两篇指定的研究论文来做准备,然后我们将运用这些框架到你已阅读的论文上。
本教程目标:
- 能够识别研究论文中的空白,包括研究问题、实验设置和研究发现。
- 能够基于研究论文产生新想法,考虑感兴趣任务的元素、评估策略和提出的方法。
- 能够迭代自己的想法以提高其质量。
准备工作
在开始这次讲座之前,建议阅读CheXzero(“通过自监督学习从未标注的胸部X射线图像中检测病理的专家级方法”)和CLIP(“通过自然语言监督学习可转移视觉模型”),以便能够跟上讲座中引用的示例。
参考我们之前的笔记,了解如何阅读研究论文。
识别论文中的空白,所有研究论文都存在空白——未被问及的问题、实验设置中的不足以及与先前工作的比较上的差距,这些空白往往指明了未来研究的重要方向。
接下来,我将分享一些识别研究论文中空白的方法,并以CheXzero论文为例进行说明。
1.1 识别研究问题中的空白
写下论文的核心研究问题,然后写下支持该核心问题的研究假设。研究假设是对“研究者预测研究结果的精确、可测试陈述”,并非所有假设都会明确陈述,你可能需要从所执行的实验中推断。
现在,你可以观察总体研究问题与研究假设之间的空白——哪些假设尚未得到检验?
示例答案:
研究问题:算法在无明确标注的情况下能多好地检测疾病?
研究假设:
一个基于胸透报告自我监督训练的模型(CheXzero)可以完成病理分类任务,其准确度可与放射科医师媲美。
CheXzero在病灶检测上能超越完全监督模型。
CheXzero在疾病分类上优于先前的自我监督方法(如MoCo-CXR、MedAug和ConVIRT)。
空白:
CheXzero是否能检测从未在报告中隐含出现过的疾病?
即使使用少量的图文报告语料库,CheXzero是否仍能保持高水平性能?
1.2 识别实验设置中的空白
现在我们已经确定了研究假设,可以看看实验设置——在这里我们可以关注空白方法的评估方式是否有不足?比较的选择或实施方式是否有缺陷?
最重要的是,实验设置是否能决定性地测试研究假设?我们不看实验结果,而是看实验本身的设置。
示例答案:
研究假设(实验设置):
- 一个在胸部X射线报告上训练的自监督模型(CheXzero)可以以与放射科医生相当的准确性执行病理分类任务。
- 使用单一机构的500项研究的测试集进行评估,参考标准由多数投票确定——类似于先前的研究。比较是在5种疾病上进行,使用3名持证放射科医生的平均值进行F1和MCC指标的比较。空白:
假设1:放射科医生的数量可能太少,无法决定性地证明与放射科医生完全可比。也许需要了解放射科医生的经验/培训,以更精确地定义什么构成放射科医生级别的表现。
假设2:评估的病理数量受到测试集中样本数量的限制。评估更多的病理类别将更支持这些假设。
假设3:比较的自监督方法数量有限——选择了标签高效的方法ConVIRT、MedAug和MoCo-CXR。可以比较更多的自监督学习算法。
假设3:不清楚比较是单一模型还是集成模型,或者是否使用相同的训练来源。
1.3 通过明确和隐含的限制识别空白
现在我们已经识别了实验设置中的空白,接下来关注结果和讨论。
在这里,我们要寻找明确表达的工作限制。部分工作很容易,因为有时有一个明确的限制部分可以直接使用;或者可以从未来工作的陈述中推断出来。然而,有时方法的限制体现在结果本身,即方法失败的地方。
示例答案
明确列出:
- “自监督方法仍然需要反复查询标记验证集的性能,以进行超参数选择和计算MCC和F1统计数据时确定特定条件的概率阈值。”
- “自监督方法目前仅限于分类图像数据;然而,医学数据集通常结合不同的成像模态,可以从电子健康记录或其他来源整合非成像数据,或者可以是时间序列。例如,磁共振成像和计算机断层扫描生成的三维数据已经被用于训练其他机器学习管道。”
- “同样,有兴趣将该方法应用于其他任务,其中医学数据与某种形式的非结构化文本配对。例如,自监督方法可以利用描述诊断(如癌症)的病理报告,这些报告存在于组织病理学扫描中。”
- “最后,未来的工作应该开发方法,将该方法扩展到更大的图像尺寸,以更好地分类较小的病理。”
通过结果隐含:
- 模型在肺不张和胸腔积液上的MCC表现低于放射科医生。
- 模型在Padchest上的AUC性能在57个放射学发现中的19个发现中< 0.700,其中n>50。
- CheXzero方法在检测Padchest上的“No Finding”方面严重表现不佳,AUC为0.755。
生成研究想法
我们已经使用框架识别了研究论文中的空白,这些空白为改进提供了机会,但不一定总是清楚如何解决这些空白。
以下框架旨在帮助你思考可以在三条轴线上构建研究论文,我们再次应用此框架到CheXzero示例。
2.1 改变感兴趣的任务
- 你能否将主要想法应用到不同的模态?
- 示例:病理幻灯片通常有相关的报告,你能否将病理幻灯片与报告配对并进行疾病检测?
- 你能否将主要想法应用到不同的数据类型?
- 示例:也许报告不一定是文本——也许我们可以将医学图像(例如病理幻灯片)与可用的基因组改变配对,并执行类似的对比学习。
- 你能否将方法或学习模型应用于不同的任务?
- 示例:也许CheXzero模型可以用于对象检测或图像语义分割?或者用于医学图像问答。
- 你能否改变感兴趣的结果?
- 示例:与其关注准确性,我们可以检查CheXzero对比学习方法的鲁棒性特性,或者考虑方法的数据效率或其在不同患者子群上的性能与完全监督的方法相比。
###2.2 改变评估策略
- 你能否在不同的数据集上进行评估?
- 示例:CheXzero仅考虑了CheXpert、MIMIC-CXR和Padchest。然而,还有其他数据集,包括非常不同类型的患者或疾病检测任务,例如深圳数据集(包括结核病检测)或Ranzcr CLIP(包括管道定位任务)。
- 你能否使用不同的指标进行评估?
- 示例:AUC指标用于评估判别性能,但它不能给我们提供模型校准的见解(概率输出是否反映了长期疾病结果的比例),这可以通过校准曲线来衡量。
- 你能否理解为什么某些方法效果好/不好?
- 示例:尚未探讨疾病特定词汇在报告中出现的频率与不同病理上的性能之间是否存在关系。这种关系可以通过实验证实,以解释在某些类别上的高性能和在其他类别上的低性能。
- 你能否进行不同的比较?
- 示例:我们可以解决许多未解决的比较,包括在Padchest上对放射科医生和模型的比较,这需要收集更多的放射科医生注释。
2.3 改变提出的方法
(提示:这组问题可能最适用于深度学习方法论文,然而我在其他研究子领域中也发现了类似的问题集。)
- 你能否改变训练数据集或数据元素?
- 示例:CheXzero在MIMIC-CXR上训练,这是少数几个同时具有图像和报告的数据集之一。然而,可以更改的是训练可以使用IU-Xray数据集(OpenI)进行增强,或者训练可以使用放射报告的另一部分(发现部分)。
- 你能否改变预训练/训练策略?
- 示例:CheXzero利用OpenAI模型的预训练权重,但有更新的检查点可用,这些检查点是在更大的数据集(LAION-5B)上训练的。此外,有修改损失函数的训练策略,包括掩码语言模型结合图像-文本对比损失,这些都是未来工作的探索领域。
- 你能否改变深度学习架构?
- 示例:而不是为图像和文本单独使用一个编码器,可以使用一个多模态编码器;这个编码器可以同时接受图像/图像嵌入和文本/文本嵌入。这个想法来自于视觉语言建模/预训练的进展。
- 你能否改变问题的表述?
- 示例:目前CheXzero问题的表述仅限于接受一个输入,而通常一份报告可以配对多张胸部X射线图像。可以将表述扩展为接受一个或多个可用的图像(视图)作为输入。
练习
使用上述框架识别CLIP(或者你自己领域里的一篇文章)的扩展创意。
迭代你的idea
你想到的idea在迭代中会变得更好,为什么一个想法可能不是一个好主意?原因包括:它们可能没有解决实际问题,它们可能已经发表,或者它们不可行。
那么,如何评估一个想法是否好呢?
3.1 搜索你的idea是否已被尝试
你的新idea可能已经被尝试过,尤其是如果你计划构建的论文不是最新的。我在这里做的一个练习是为你的新论文想法构建标题,看看谷歌是否会显示结果。关键有时是了解多种表达同一概念的方式,这需要理解相关工作。
示例
如果我对将CheXzero类似的方法应用于其他类型的数据感兴趣,我可能会搜索:
- 对比学习组织病理学文本(没有相关结果)
- 对比学习组织病理学基因组改变(返回匹配项)
阅读重要的相关工作和后续工作,通常相关工作或讨论可能明确指出有价值的替代方法:列出这些方法并开始阅读这些方法。你可能会受益于阅读描述你的实验将使用的数据集创建的论文。
如果你构建的论文已经存在很长时间,你可以通过使用**Google Scholar的“被引用”**搜索、在ArXiv
上搜索摘要或明确搜索感兴趣的任务以查看相关基准来找到基于该工作的论文,保持如之前课程中使用的阅读列表。当你在这个阅读列表中论文时,好的idea会开始自我强化。
**示例:**对于CLIP论文
-
Google Scholar 被引用
-
ArXiv 搜索
-
谷歌具体任务
3.2 从前辈那里获得反馈
一旦你以书面形式写下了你的想法,接下来强烈建议从领域专家或者前辈那里获得反馈。你可以给相关领域前辈写邮件,分享你的想法和计划,并询问他们对你的idea的看法.
最好的办法就是问自己的导师,相关领域的师兄师姐,或者互联网上的同学,当然要辩证的看待,因为当你深入调研一个领域之后,你要相信你已经是有一定判断能力的。
练习
现在拿出你为CLIP提出的最佳创意并在谷歌上搜索,并写下你找到的内容。
3.3 具体例子
现在,你已经看到了如何开始识别空白、提出创意并迭代它们,让我们看看人们在过去两年中如何识别CLIP中的空白并发表论文的。
3.3.1 改变感兴趣的任务
CheXZero
VideoCLIP
Florence
练习
阅读你选择的上述论文,分享它如何改变任务。
3.3.2改变评估策略
LIT:Zero-Shot Transfer with Locked-image text Tuning
Evaluating CLIPTowards Characterization of Broader Capabilities and Downstream Implications
练习
阅读你选择的上述论文,并分享它如何改变评估。
3.3.3改变提出的方法
示例:
ALIGN(Scaling Up Visual and Vision-Language Representation Learning With Noisy Text Supervision)
Florence:A New Foundation Model for Computer Vision
相关文章:

《动手做科研》06. 如何产生新的研究想法
地址链接:《动手做科研》06. 如何产生新的研究想法 欢迎加入我的知识星球,定期分享AI论文干货知识! 导读: 提出好的研究想法是相当困难的,特别是当你刚接触一个领域时——这需要对文献中的空白有所了解。然而,产生研究想法的过程可…...

【Kubernetes】Deployment 的状态
Deployment 的状态 Deployment 控制器在整个生命周期中存在 3 3 3 种状态: 已完成(Complete)进行中(Progressing)失败(Failed) 通过观察 Deployment 的当前特征,可以判断 Deploym…...

新手学习Gazebo+ros仿真控制小车-----易错和自己理解
赵虚左老师讲的很详细,这里只是理一下思路,说下突然出现“新”概念之间的关系。 urdf文件:里面是配置模型的,既有模型的位置、尺寸、颜色,也包含复杂的物理模型信息比如:转动惯量,碰撞box大小等等ÿ…...

jdbc(mysql)
1.概述 jdbc:java database connection(java与数据库连接) java可以连接不同数据库,不同数据库连接细节不同,具体细节都由数据库自己实现 由java设计出一系列连接数据库的接口规范,然后由不同的数据库开发…...

【Linux】搜索log在哪个文件中执行的方法
在Linux中,如果你需要找到包含特定文本(比如一段log)的文件,你可以使用grep命令结合一些其他工具来实现这一目的。这里有几个方法可以帮助你找到包含特定log内容的文件。 1. 使用grep直接在特定目录或文件中搜索 如果你知道log大…...

web小游戏开发:2048(完)移动操作及动画效果
web小游戏开发:2048(完)移动操作及动画效果 添加随机数字游戏开始时的初始化显示分数移动和合并获取行列元素下标记录移动轨迹完整的 js小结添加随机数字 书接前文,我们在前边定义了一个 move 方法,暂时先往后放放。 在我们已经初始化好的界面上,我们需要先制作一个出现…...

Redis学习笔记——第20章 Lua脚本
第20章 Lua脚本 20.1 创建并修改Lua环境 20.1.1 创建Lua环境 服务器创建一个新的基本的Lua环境 20.1.2 载入函数库 修改Lua环境,载入一些库函数 20.1.3 创建redis全局表格 全局变量,支持在Lua脚本中执行redis命令 20.1.4 使用redis自制随机函数来…...

MySQL--日志管理
前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 一、日志简介 MySQL日志主要分为4类,使用这些日志文件,可以查看MySQL内部发生的事情。这4类日志分别是: 错误日志࿱…...

【Nuxt】内置组件和全局样式使用
内置组件 Nuxt3框架也提供一些内置的组件,常用的如下: SEO组件:Html、Body、Head、Title、Meta、Style、Link、NoScript、BaseNuxtWelcome:欢迎页面组件,该组件是nuxt/ui的部分NuxtLayout:是Nuxt自带的页面布局组件NuxtPage:是N…...

Java中spring boot validation 自定义注解使用
创建一个注解 Target({ElementType.FIELD})//需要写注解的三三个要素 Retention(RUNTIME) Documented Constraint(validatedBy {IsSystemYesNoVaildation.class})//绑定 在这里会报错 你需要去实现 public interface IsSystemYesNo {String message() default "数据字典&…...

Android笔试面试题AI答之广播(1)
文章目录 1.简述广播的分类和使用场景 ?一、广播分类二、使用场景举例总结 2.广播的两种注册方式的区别?1. 注册位置与方式2. 生命周期与持久性3. 接收广播的时机4. 安全性与权限5. 优先级与有序广播总结 3.简述广播发送和接收的原理 ?一、广…...

微软商店无法加载,检查你的连接-解决方案
微软商店默认直连国内的服务器。 如果有代理,关闭代理就可以恢复网络了。 但是我就是想用代理,我感觉代理更快, 搜索了很多办法,都没有生效。 然后我在哔哩哔哩的视频下方,看到大家留言,测试了一下&#x…...

数据结构实验报告-树与二叉树
桂 林 理 工 大 学 实 验 报 告 一、实验名称: 实验6 树和二叉树 二、实验内容: 1.编写二叉树的递归遍历算法,实现:给定一棵二叉树的“扩展先序遍历序列”,创建这棵二叉树。 (1)输出二叉树的先序遍历的结点序列。 (2)输出二…...

基于Django+MySQL球馆场地预约系统的设计与实现(源码+论文+部署讲解等)
博主介绍:✌全网粉丝10W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术栈介绍:我是程序员阿龙ÿ…...

8 MQTT
8 MQTT 1、相关概念2、MQTT的操作过程3、MQTT协议3.1 固定报文3.2 连接报文3.3 确认连接请求3.4 构造订阅报文3.5 订阅确认报文3.6 发布报文3.7 其他报文 1、相关概念 MQTT [1] 全名为Message Queuing Telemetry Transport,是一种基于TCP/IP协议上传输的轻量级通信…...

【文件系统】抽象磁盘的存储结构 CHS寻址法 | sector数组 | LAB数组
目录 1.为什么要抽象 2.逻辑抽象_版本1 2.1sector数组 2.2index转化CHS 3.逻辑抽象_版本2 3.1LBA数组 3.2LAB下标转化sector下标 文件其实就是在磁盘中占有几个扇区的问题❗文件是很多个sector的数组下标❗文件是有很多块构成的❗❗文件由很多扇区构成------>文件…...

基于python旅游推荐系统(源码+论文+部署讲解等)
博主介绍:✌全网粉丝10W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术栈介绍:我是程序员阿龙ÿ…...

Mysql大单表JSON优化
优化方案 MySQL 8.0.32 中,有几种方法可以优化存储 JSON 字符串的数据表。以下是一些建议,可以帮助您减少存储空间: 使用压缩: MySQL 8.0 支持表级压缩,可以通过修改表来启用压缩。 ALTER TABLE your_table ROW_FORMATCOMPRESS…...

电脑开机启动项管理小工具,绿色免安装
HiBit Startup Manager 是一款功能强大的启动项管理工具,旨在帮助用户管理和优化计算机的自动启动程序。该软件通过添加或删除应用程序、编辑它们的属性以及管理流程、服务、任务调度程序和上下文菜单来实现这一目标。 HiBit Startup Manager 提供了以下主要功能&a…...

一例AutoHotkey语言生成的文件夹病毒分析
概述 这是一个使用AutoHotkey语言编写的文件夹病毒,使用ftp服务器来当作C2,通过U盘传播,样本很古老,原理也很简单,这种语言的样本还是第一次见到,记录一下。 样本的基本信息 PE32库: AutoIt(3.XX)[-]编译…...

【机器学习第7章——贝叶斯分类器】
机器学习第7章——贝叶斯分类器 7.贝叶斯分类器7.1贝叶斯决策论7.2 朴素贝叶斯分类器条件概率的m估计 7.3 极大似然估计优点基本原理 7.4 贝叶斯网络7.5 半朴素贝叶斯分类器7.6 EM算法7.7 EM算法实现 7.贝叶斯分类器 7.1贝叶斯决策论 一个医疗判断问题 有两个可选的假设&#…...

C++ QT开发 学习笔记(3)
C QT开发 学习笔记(3) - WPS项目 标准对话框 对话框类说明静态函数函数说明QFileDialog文件对话框getOpenFileName()选择打开一个文件getOpenFileNames()选择打开多个文件getSaveFileName()选择保存一个文件getExistingDirectory()选择一个己有的目录getOpenFileUrl()选择打幵…...

【Python实战】如何优雅地实现文字 二维码检测?
前几篇,和大家分享了如何通过 Python 和相关库,自动化处理 PDF 文档,提高办公效率。 【Python实战】自动化处理 PDF 文档,完美实现 WPS 会员功能【Python实战】如何优雅地实现 PDF 去水印?【Python实战】一键生成 PDF…...

行为型设计模式3:模板方法/备忘录/解释器/迭代器
设计模式:模板方法/备忘录/解释器/迭代器 (qq.com)...

思源笔记软件的优缺点分析
在过去一年里,我用了很多款笔记,从word文档到onenote到语雀再到思源,最后坚定的选择了思源笔记 使用感受 首先是用word文档来记笔记,主要是开始时不知道笔记软件怎么好用,等到笔记越来越膨胀的时候我发现,…...

追问试面试系列:Dubbo
欢迎来到Dubbo系列,在面试中被问到Dubbo相关的问题时,大部分都是简历上写了Dubbo,或者面试官想尝试问问你对Dubbo是否了解。 本系列主要是针对面试官通过一个点就使劲儿往下问的情况。 面试官:说说你们项目亮点 好的面试官 我们这个项目的技术亮点在于采用了Spring Cloud…...

动手学深度学习V2每日笔记(卷积层)
本文主要参考沐神的视频教程 https://www.bilibili.com/video/BV1L64y1m7Nh/p2&spm_id_from333.1007.top_right_bar_window_history.content.click&vd_sourcec7bfc6ce0ea0cbe43aa288ba2713e56d 文档教程 https://zh-v2.d2l.ai/ 本文的主要内容对沐神提供的代码中个人不…...

qcom ucsi probe
ucsi glink 注册一个ucsi 设备,和pmic glink进行通信,ucsi作为pmic glink的一个client。 lkml的patch https://lkml.org/lkml/2023/1/30/233 dtsi中一般会定义 qcom,ucsi-glink 信息,用于和驱动进行匹配 static const struct of_device_id …...

flask和redis配合
对于涉及数据提交的场景,比如更新用户信息,你可能会使用POST或PUT请求。但是,这些操作通常与直接从Redis缓存中检索数据不同,因为它们可能涉及到对后端数据库或其他存储系统的修改。并且可能需要将更新后的数据同步回Redis缓存&am…...

深度学习中的早停法
早停法(Early Stopping)是一种用于防止模型过拟合的技术,在训练过程中监视验证集(或者测试集)上的损失值。具体设立早停的限制包括两个主要参数: Patience(耐心):这是指验…...