译文丨为什么做程序员会让我成为一个更好的医生?

  • A+
所属分类:技术资讯

斯坦福医学解开(Stanford Medicine Unplugged)是为记录他们在医学院经历的学生准备的论坛。学生们写的文章在学年期间每周在斯科普里发表一次;完整的产品系列博客可以在Stanford Medicine Unplugged分类中找到。
来源连结:https://scopeblog.stanford.ed.
Tim Keyes published on March 18,2020
作为医学博士课程的学生,我的研究方向比起生物学,花更多的时间在机器学习和算法开发上,我想出了我需要的研究技术和作为未来医生提供好的临床护理所需的技术之间的脱节。
我的研究重点是建立小儿癌症治疗反应和复发的预测模型。所以我大部分都在写r和Python代码来整理、可视化和建模从患者那里收集的数据。但是大部分时间都花在编程上,但在临床环境中,编码是护理患者所需的前20个(……。或前100名的技术。
但是,通过这两个环境的经验,几年来我作为程序员得到的一些教训告诉我,我可以很好地应用于作为医学生的生活。这也是我未来平衡这两个世界的好信号。
以下是我的一些感受。
把问题分解成子问题
在任何数据科学或编程项目中,将整体目标分为一系列更小、更易于管理的目标,这对于每次都能处理好的目标非常重要。例如,如果要实现三个不同阶段的算法,最佳策略通常是先编写单独实现每个阶段的代码,然后编写组合它们的函数。这样可以使代码保持系统、高效、易于理解。
我发现在医学上也应用了同样的原则。例如,在记录兵力的同时,将对话分为几个独立的阶段,如“现在的兵力”、“过去的兵力”、“社会史”,每个阶段都出现符合患者背景和需要的一小部分。结果是,我一个重要的信息也不放过,我可以准确地获得我需要的所有信息。
备忘录内存
在计算机科学中,备忘录化是一种通过重复使用已经解开的问题的答案来提高算法速度的编码技术。也就是说,“非绿色化”算法不只是把时间放在从头再解决问题上,并在——以后每次出现相同的问题时从头再解决,而是简单地寻找旧的解决方案(如备忘)。这意味着算法首次解决问题的速度较慢,但在以后解决同一问题时效率会提高很多。
在很多方面,我认为成为医学生就像是记忆的大师课。很多东西第一次学的时候就压倒了人们,要掌握好小步骤,才能向大方向前进。例如,在医学院第一季度,我努力通过听诊器听心脏的声音,但我和同学们练习了很多次,才成功。他们展示了他们的听诊器放置方法,如果对我也有效,我就把它作为我过程的一部分。
一年后,噪音、摩擦、心跳加速等全面的心脏检查成为我的反射性工作,我几乎不需要思考。开始很慢,但最终我掌握了所有阶段,并结合过去对我(或我的同学)有效的方法,形成了一套完整的“备忘录型记忆”。
经常检查边缘案例
在编程中,“边缘案例”是指一般不思考的情况。例如,如果一个计算机程序比较两个数字,告诉我们哪个大,那么“边缘情况”可能意味着两个数字完全相同时发生的情况(技术上来说,这两个数字都不比其他数字大)。一般来说,思考和测试边缘案例对于防止看到意外的东西时代码发生冲突非常重要。这会导致致命的后果!
医学需要为边缘案例的会计核算边缘案例,因此在编写代码时,必须考虑边缘案例的重要性。
在医学上核算界限事例需要和编程中一样的创造力和前瞻性思维。通常,医生们要“如果”考虑多种诊断可能性,似乎只有一两种可能性。例如,我和我的辅导员在开始化疗前一天,有一个流鼻涕的病人。大部分迹象表明,以患者过去的季节过敏史和当天的高花粉量为标准,没有什么可担心的。但是为了排除患者感染急性病毒的可能性,对于他的免疫系统被化疗抑制会变得严重的“边缘情况”,我的顾问在开始治疗前必须接受一些普通的虫子检查。
计算机科学和医学看起来不同,但我已经开始高度评价他们的许多相似的思维方式。这包括创造性、深思熟虑和对有效解决问题的共同承诺。基于上述原因及以上,我不会直接在病房里使用我的编码技术——,但作为程序员,我希望最终能成为更好的医生。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: