IMED成员聂秋实完成为期2个月实习工作并发表实习报告及心得

发布日期:2021-11-02 11:20
1635823185527
借刘江老师的推荐,我有幸来到了华大集团旗下的华大智造云影医疗有限公司进行工业实习。公司的一般经营项目是:医疗器械(一类、二类、三类)、医疗器械软件、信息化系统、人工智能算法、医疗机器人及相关配附件的研发、生产、批发、零售、进出口、售后服务、代理、经销及相关配套业务,医疗设备租赁服务等。而我则进入了算法组,成为了一名算法实习生。
 
我不愿开头便是大段技术细节以及与工作相关的事情,因为这段时间过来,让我感触最深的其实是生活上的变化。
 
比起平时在学校里睡到九十点钟才起床,上班的日子总算是让我恢复了健康作息。每天十二点疲惫地躺下,立刻入睡,到第二天早上七点多起床,还能过上早。为了每天轻便上下班,我平常都选择把电脑放在公司。以前也宅在学校懒得出来,最近常常走在通勤路上,看到路上的风景,突然很想出来走走。说来惭愧,在深圳已经呆了三年,居然都还没有四处踩踩点。
 
这是我第一次有机会能接触到真正在社会上打拼的“打工人”们,不仅仅是在公司的同事,还有每一位出现在我上下班路上的小哥哥小姐姐们。年轻些时候的我曾乘着早高峰的地铁,暗自决心不要成为一上地铁就开始玩着手机或者靠着栏杆就能睡着的“平庸者”,但是真正成为了一个“上班族”之后,发现在地铁上连发呆都是奢侈的。之前一直奇怪一个二三十来岁的年轻人为什么要抢着挤上地铁只为了一个坐的位置,也一直不明白为什么有年轻人会宁可装睡也不愿意给老人让座。现在,学校与公司之间通勤单程需要一小时的我,强撑着困意被别人挤上地铁的我一瞬间就理解了。上班的路上,我遇到过把我戳醒示意让我给老人让座的人;遇到过阅读全英文小说的人;遇到过在地铁上提前打卡签到的人;遇到过看上去温文尔雅,但是为了上车把我挤得半条命都没了的小姐姐……
 
虽然上班很累,但是我从没觉得厌烦,因为我有一群特别热情的同事。萱姐,我的直接老板,非常快就让我融入了华大智造的大家庭,从没让我觉得我只是一个实习生;翌哥,拥有着抗击癌症的经历所以变得异常“柔弱”的小哥,每次吃饭都会叫我一起,跟我有不少共同语言,让我非常适应在公司的生活;剑姐和熊总,虽然交流不多,但是也偶尔会对我有一些关心。有时候下雨或者活动办到很晚,贴心的同事们都会开车捎上我一段。要知道,放松的工作氛围才能让工作事半功倍,这里的工作氛围就是这样,我很喜欢。
 
咱们部门内部也有不少活动,生日会、漂流团建以及最盛大的九九健康节活动目不暇接,在工作之余也给了我不少放松。在活动中,我与更多的员工有了更深入的交流,了解到了更多之前在学校里所不能获取到的信息:工作、生活甚至是婚恋方面。他们能够以更成熟的角度去审视这些东西,让我收益颇丰。
 
生活上感触很深,技术上当然也颇有进步。因为是在算法组,所以主要的工作内容自然就是设计AI算法。
 
这两个月主要在做的项目是鼻内镜图像的腺样体肥大分级。腺样体位于鼻咽部的顶部,属于淋巴组织。在2-6岁增殖旺盛,10岁后会逐渐萎缩。而由于近些年的空气污染加剧,儿童腺样体肥大因炎症出现生理性增生,堵塞鼻腔呼吸道,从而引起鼻堵的症状,尤其在夜间加重,出现睡眠打鼾的症状,严重时会出现呼吸暂停等。为了检查患者腺样体肥大的情况,一般会给患者做鼻内窥镜检查。我们会按腺样体肥大情况将其分为四个等级,而我的任务就是通过医生收集的儿童鼻内窥镜图像,设计并训练一种人工智能算法模型,用于预测腺样体肥大的分级。
 
而鼻内窥镜图像生理区域极其相似,我们并不能直接对其分级进行预测。我们应当能够先定位出哪一块是腺样体以及周围的一些其他生理结构,如圆枕区、后鼻孔区、前鼻甲等。于是我们分出了一个子任务:鼻内镜生理区域分割。我们需要将鼻内镜图像的每一个像素归类到每一类区域之中。总共从中山医院的胡医生那里收集到有效图像209张,由于医生不太熟悉分割打标签的工作,打标签的工作主要由我一人完成。虽然有点枯燥,但是在打标签的过程中我也对鼻内镜图像各区域的特征有了一些初步的认识,对网络也有了一些想法。
 
对于这个图像分割任务,首先我就想到了在医学图像分割领域比较常用的U-Net,因网络结构类似U形而得名。这种左右对称的网络,实际上是一种Encoder-Decoder模型。U的左半边是encoder,逐层进行卷积和下采样操作,负责提取特征;而右半边是decoder,逐层进行卷积和上采样,负责恢复原始的分辨率。而最巧妙的一点就在于,U-Net在上采样的同时将左边的对应层的feature map使用skip connection直接连接过来,并进行拼接,这一步融合了底层信息的位置信息与深层特征的语义信息。另外,由于我们的样本量较少,而U-Net却正巧比较适合在样本量少的情况下进行训练得到比较好的效果。
 
这是我第一次真正单人负责一个深度学习项目,这次才终于发现看过多少paper都没用,把算法或者思想落实到代码才是最重要的。一般会使用TensorFlow或Pytorch作为深度学习的代码框架,它们提供了强大的GPU加速运算以及自动求导功能。由于是第一次写神经网络的代码,我借鉴了GitHub上一个比较优秀的开源项目“Pytorch-UNet”,经过对Pytorch的学习,我慢慢看懂了代码并将网络进行了更改以适应鼻内镜图像分割所需要的输入和输出。初次训练,效果并不好,Dice值仅达到了0.5几。Dice值是评价分割效果的一种参数,取值在0到1之间,越接近1说明效果越好。寻求组长的建议后,我为图片添加了数据增强并为网络添加了多图训练功能,但是效果没有明显提升。
 
要知道,人体生理结构基本稳定不变,鼻腔内的生理结构也是没有什么差别的,于是我决定为网络添加像素位置信息作为输入。我将图片中每一个像素的横坐标和纵坐标提取出来,作为两个新的维度,和图片一起输入网络。想法挺不错,但是也只改进了0.1的Dice值。既然多分割暂时无法提升,我便更改网络去单独预测每一块区域,看看究竟是哪里出了问题。经过实验,多分割的四个区域后鼻孔、腺样体、圆枕和下鼻甲中,单独分割Dice值分别为0.88,0.64,无法收敛和无法收敛。问题显而易见,而导致这个的原因可能主要是因为部分图像并没有圆枕和下鼻甲的出现,下鼻甲尤其严重,因为仅不到三分之一的图像含有这一块区域。
 
由于我们的主要研究对象还是腺样体区,那么我们先着手提升单腺样体区分割任务的Dice值。一天下午,组长的话点醒了我。我们的图像里既有左鼻孔的图像也有右鼻孔的图像,这两者不是刚好对称的吗?只有当我们翻转一边鼻孔的图像,这样得到的图像才是真正生理结构相同的。我恍然大悟,同时也关闭了数据增强功能,在数据预处理时提前将右鼻孔区的原图和标签进行翻转。最终得到了0.825的较好Dice值。之后为了能让医生直观地看到效果,我做了一个可视化的功能。在这个阶段结束后,我们与医生及时进行了一次对接。对于这样的分割结果,医生也还比较满意。同时,她也讲述了一下腺样体分级的标准,这将作为我们下一个阶段的重要依据。
 
在我的整个实习过程中,萱姐一直在督促我与医生的有效沟通。通过与医生的交流,我也切身体会到了刘老师所说的:“我们的研究离不开医生的指导和背书。”我们的研究方向应当源于医生,我们应当多与医生交流,了解他们的需求与经验。
 
在和医生对接后,我们立刻想到可以通过腺样体与后鼻孔的像素面积比作为分级的标准。在进行面积数据可视化之后,发现平均值差距较大,但有大量数据有重叠现象,没有明显的分隔阈值。另外一边,为了能够一次性进行多区域分割,我们得改变标签的形式,再次进行分割。
 
我本以为两个月的时间很长,但是没想到竟过去的这么快。剩下的任务还没有做完,但也只能到此结束,之后的任务我交接给了刚刚来华大实习的同样是咱们课题组的同学汪炜。我很荣幸能在人生第一次实习时直接接手一个实际的项目,能和项目组的小伙伴一起奋战两个月;我很感谢能参与公司的每一个活动,每一次团建,能够非常简单愉快地和其他同事打成一片;我也很幸运能在这样的年纪就能体会到进入社会的不易。
 
不得不说,在全新的环境里学到的东西一定是最多的,告别这样的环境也令我十分不舍,颇有“今当远离,临表涕零,不知所言”的落寞感。在回到校园后,我要利用实习期间学习到的技术知识,铭记这段时间的所见所闻所感。体验到了社会上的生活,会更加清晰以后的自己想要什么,也就告诉了现在的自己应该做什么。
分享到: