杨毅远作者林亦霖校对王菁 编辑

基于AI的智能急性颅内出血类型检测

本文介绍了通过AI技术检测急性颅内出血类型方面的知识。

颅内出血(颅骨内出血)是医疗领域严重的健康问题,需要快速且经常进行密集的医学治疗。在美国,颅内出血约占中风的10%,其中中风是导致死亡的第五大原因。在医学界,识别任何出血的位置和类型是治疗患者的关键步骤。现在的情况下需要医生或者是训练有素的专家对于病人的颅骨的医学影像进行查看并找出出血的位置从而判断出具体的出血亚型。通常这个过程很复杂、很耗时间而且会浪费很多的人力物力。所以急需一种图像处理的方法来根据医学影像来检测是否有颅内出血的现象以及具体的颅内出血的类型(亚型)。

2019年底,由北美放射学会(RSNA)与美国神经放射学会和MD.ai成员共同组织了基于AI的智能急性颅内出血类型检测的活动,旨在全球范围内寻找最优的自动识别颅内出血类型的算法。其中RSNA是放射医学领域的工人的领头羊,其中有来自全球146个国家的54,000多名成员,其中不乏医学物理学家和其他医学专业人士。这个项目所用的数据集以及标注的工作是由斯坦福大学、托马斯·杰斐逊大学、多伦多团结健康大学和圣保罗联邦大学(UNIFESP)以及美国神经放射学会(ASNR)的60多名志愿者组成的团队完成的。其中的ASNR是神经放射学未来的全球领先组织,代表5300多位放射科医生,研究人员,干预人员和影像学家。基于以上的技术支持以及技术指导,也使得这个项目的意义重大,如果可以准确的确定是否出血进而判断出血的类型,这对于治疗患者、争取宝贵的救援时间等等方面都非常有帮助。

常见的颅内出血按照位置可以分为硬膜外出血(epidural)、硬膜下出血(subdural)、蛛网膜下腔出血(subarachnoid)、实质内出血(intraparenchymal)以及脑室内出血(intraventricular)。其中实质内出血是指完全位于大脑内部的血液。脑室内或蛛网膜下腔出血是指渗入通常含有脑脊液(脑室或蛛网膜下腔池)的大脑空间的血液。轴外出血是指血液聚集在大脑周围的组织覆盖物中(例如,硬膜下或硬膜外亚型)患者可能会出现多种类型的脑出血。下面是总结的5中颅内出血类型以及其基本特征。


1.硬膜外出血(epidural):硬膜外出血是在硬脑膜外发生的,硬膜外出血是指硬脑膜和颅骨之间发生的出血。该膜是最顶层的脑膜,是颅骨内稳态的重要组成部分。由于硬脑膜对维持大脑位置的重要结构作用,硬脑膜损伤可导致许多临床功能障碍。它强大的结构耐久性为其取了名字(拉丁语中的“ dura mater”意为“坚韧的母亲”!)。这种组织屏障对于血液向大脑的运输至关重要。具体的位置见下图:


2.硬膜下出血(subdural):硬膜下出血是在硬脑膜和蛛网膜脑膜之间发生的出血。由于硬脑膜的双重性质,其一侧负责将动脉血液(输送到大脑),而另一侧负责输送静脉血(输送到大脑之外)。与这两种不同类型的血液相互作用的出血可能对患者的健康和成像输出产生许多不同的影响。

3. 实质内出血(intraparenchymal):实质内出血是发生在脑实质内的那些出血。实质包含大脑的功能单元,主要是神经胶质细胞和神经胶质细胞维持/辅助的神经元。因此,我们的大脑区域出现了出血,这意味着“遍及整个区域”。实际上,整个区域通常是指解剖结构内的任何块状物质。因此,我们将大脑描述的大部分是大脑的实质。这意味着实质内出血非常严重!

4. 脑室内出血(intraventricular):脑室内出血是发生在脑室内的出血。我们大多将大脑想象为肉质的肉质球,但是大脑的一个重要的解剖特征是其负空间或心室的存在(拉丁文的venter表示腹部或子宫)。心室在尝试诊断大脑疾病时非常有用,并且在脑部生理中起着至关重要的作用。当查看图像时,知道人在大脑中的什么位置通常很有用,并且心室可用于将自己定向到大脑中的某个区域。

5. 蛛网膜下腔出血(subarachnoid):蛛网膜下腔出血是血液进入蛛网膜下层的蛛网膜下腔时发生的出血。蛛网膜下腔出血与我们已经讨论过的其他类型的出血具有许多相同的危险。

目前已经有了该领域的数据集,该数据集提供了包含这五种出血类型的CT图像,所有图像采用Dicom格式,这在CT图中是一个非常常见的图片格式,其除了我们认为的“图片”像素信息(其本质是X射线在人体组织中的吸收率,再经过CT图像重建得到的像素)之外,还有其他的特征,例如病人的ID,具体窗的位置等等,下图是数据集中某Dicom图的内部信息:

另外,考虑CT的工作原理,我们可以得到更加原始颅内出血的特征。所以我们也考虑到了CT的原理和其图像的特征。其中,CT的工作程序是这样的:它根据人体不同组织对X线的吸收与透过率的不同,应用灵敏度极高的仪器对人体进行测量,然后将测量所获取的数据输入电子计算机,电子计算机对数据进行处理后,就可摄下人体被检查部位的断面或立体的图像,发现体内任何部位的细小病变。

其中CT的“窗宽与窗位”这个两个特征,对于我们提取不同的颅内不同部分的特征非常重要。这是由于正常或异常的组织具有不同的CT值,范围波动在-1000~+1000 Hu范围内,而人类眼睛的分辨能力相对有限,因此欲显示某一组织结构的细节时,应选择适合观察该组织或病变的窗宽以及窗位,以获得最佳的显示。


在该领域中,使用窗函数对于CT不同位置的切片进行分析是极为重要的一点,其中HU(Hounsfield单位)用于测量X射线在人体组织中的吸收率,还可以反映人体组织的密度。人体CT图像的一般取值范围是-1000HU〜1000HU。

如果将整个范围映射到灰度(8bit,0〜255),则会丢失大量信息,并且不同HU组织之间的灰度值差异会很小,并且对比度会降低。因此,只有在一定范围内的HU值需要映射范围以保留不同组织之间的差异信息。由于各种组织具有不同的CT值,因此当您要显示特定组织的详细信息时,应选择适合查看组织或病变的“窗口”以获得最佳显示 。

在颅内出血的数据集中,我们主要可以考虑三种“窗”,脑窗( W:80 L:40)、硬膜下(血)窗(W:130-300 L:50-100)以及骨窗(W:2800 L:600),当然也有专家说可以进一步考虑软组织窗(W:350–400 L:20–60)等等信息。下面我们对于同一幅图进行了不同的窗函数的操作,其结果依次为不加窗的结果、加脑窗的结果、加硬膜下窗的结果以及加骨窗的结果。

于该数据集的颅内CT,选择脑窗进行举例,脑窗的窗宽为80。 此时“窗口”映射的CT值范围为0〜80HU。当CT值大于该范围时,显示为白色阴影; 当CT值低于此范围时,将显示为黑色阴影。

当然所有的窗的信息都可以从对应的Dicom文件中读出。再使用下图的公式,就可以得到经过窗运算后的“图像”。

下面对于整个的数据集进行分析:

具体来说,仅仅有6.1%的图片有至少一种类型的颅内出血症状。在具体的颅内出血症状中,样本的分布也不是十分均衡,尤其是硬膜外出血类型(epidural)仅仅是第二少的颅内出血类型的10%。所以必须要对于不均衡样本(imbalanced data)进行针对性的操作。进行高亮后的结果图如下。

数据集样本的具体统计结果如图所示:

为了说明窗函数的作用,下面我也测试了如果不使用“窗函数”的话,不同的子类下的区别效果其中“+”为label是这个亚型,“-”为不是这个亚型:

硬膜外出血(epidural):

实质内出血(intraparenchymal):

脑室内出血(intraventricular):

蛛网膜下腔出血(subarachnoid):

硬膜下出血(subdural):


从结果可以看出,如果不使用窗函数的话,不同的亚型间的区别肉眼还是很难分清楚的。

接下来是对于具体识别网络的尝试:在这里,我们将这个颅内出血亚型识别问题视为图像的分类问题,而图像的分类问题中的基本思路就是,使用深度学习网络作为特征工程进行特征提取,并在使用分类器对于这些特征分类,从而分类出不同的图像。基本流程如下:

从2010年开始,基于ImageNet项目提出的图像分类特征工程深度学习网络已经非常多了,所有的这些网络都可以进行初步的特征提取工作。这里我们也使用了在ImageNet中大放异彩的网络作为我们自己的特征工程。其中我们收集到的基于ImageNet的深度学习网络预训练模型的性能天梯图如下表:

根据上面天梯图给出的性能指标以及模型的复杂程度,我们分别使用了4个模型(InceptionV3、Keras EfficientNet B3、ResNeXt-101 32x8d、se_resnext50_32x4d)进行特征提取,并使用一层全连接网络进行最后的模型分类工作,得到了以下的4个baseline。

ResNext101来自Facebook何恺明团队,其有8亿个参数,用Instagram上面的9.4亿张图做了弱监督预训练,用ImageNet做了微调。我们可以直接从网上下载其.h5的权重以及.pth的model。

ResNext101的基本结构为叠构建块,其构建块内部采用分支结构。并将分支的数目称为 “基数”,而且增加分支的数量比增加深度、宽度更高效。ResNext采用 VGG / ResNet 类似的堆叠方式,同时以一种简单,可扩展的方式实现了 Inception(Inception 就是精心设计的多分支结构)中的 split-transform-merge 策略。在ImageNet数据集中也表现了较好的性能。其模型的示意图如下:

在模型中,我们设置学习率为,优化器为Adam,loss函数使用BCEWithLogitsLoss,在epoch=6的参属下,得到了score=0.084的结果。跑模型的截图如下图:

Inception模型是一个有很多版本的模型,现在已经有V1-V4等模型。Inception的主要创新点在于同时扩展网络的宽度和深度,网络的结构中采用了辅助分类器。我们这里使用的Inception V3网络是与Inception V2网络同时提出的,其中Inception-v3比Inception-v2增加了几种处理:(1)RMSProp优化器;(2)使用了LabelSmoothing;(3)7*7卷积变成了1*7和7*1的卷积核叠加;(4)辅助分类器使用了 BatchNorm。同时输入图像大小变成299*299。下面为Inception模型的具体结构:

我们可以直接从网上下载其.h5的权重以及.pth的model。在模型中,学习率优化器为Adam,loss函数也是使用了binary crossentropy,在epoch为5的时候得到了0.078的分数。具体的loss下降曲线和代码训练过程如下图:

Efficient Net是谷歌的研究人员在ICML2019中提出的模型,在这个文章中提出了一种新型模型缩放方法,该方法使用一种简单但高效的复合系数(compound coefficient)以更加结构化的方式扩展 CNN。与任意扩展网络维度(如宽度、深度、分辨率)的传统方法不同,该新方法使用固定的一组缩放系数扩展每个维度。该模型的准确率超越了当时的最优模型,且效率是后者的 10 倍(模型更小,速度更快)。例如,EfficientNet-B1的参数量远远小于ResNet-152,但是其速度为后者的5.7倍。其baseline模型的结构图如下:

使用EfficientNet-B3在学习率优化器为Adam,loss函数为binary crossentropy,我们的评判矩阵为AUC,在6次迭代的情况下最终的score为0.076。具体的模型训练过程如下图:

Se_ResNext就是把SeNet中bottleneck换成ResNext的bottleneck。具体代码就是在ResNeXt代码的residual layer中transition后加入squeeze_excitation_layer。下图是ResNext的group=32的bottleneck结构,第二幅图是SE block的示意图以及其bottleneck结构。

SE block 由两个非常关键的操作,Squeeze 和 Excitation 构成, 其核心思想是:显式地建模特征通道之间的相互依赖关系,通过自适应学习的方式来获取每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征(有用 feature map 权重增大 )并抑制对当前任务用处不大的特征(无效或效果小的 feature map 权重减小),达到更好的模型效果。

在这里我们的模型中,设置初始学习率为并进行指数衰减,选择优化器为Adam,loss函数为BCEWithLogitsLoss,在三个epoch下,最终得分为0.071。实验过程如下图:


通过以上四种网络结构,我们分别得到了四个不同的baseline。其中ResNeXt-101 32x8d模型最终得分0.084、InceptionV3模型的最终得分为0.078、Efficient Net B3模型的最终得分为0.076、Se_resnext50_32x4d的最终得分为0.071。所以接下来考虑进行模型融合。

我们的模型融合方法就是直接将四个baseline的结果进行加权平均。计算公式如下:

数据集中,硬膜下出血的数量比其他颅内出血的症状要少很多,甚至只有数量为倒数第二的出血类型的10%,所以需要采取必要的对于不平衡问题的处理方法。在这里我们主要使用了两种方法,首先是数据增广方法。由于数据总量很庞大,所以我们无需再对于整个大数据集进行数据的增广操作。而且我们最好也不应采取数据删减的方法,因为这样极有可能会造成特征的缺失。所以最终我们选择仅仅将硬膜下出血进行数据增广,具体的话采用旋转、翻转、平移等操作进行扩容。

另一方面,我们在loss函数计算时,考虑到即使数量较小的硬膜下出血大部分分错,也不会对于最终得模型识别准确率有极高的影响。所以这里我们采用将硬膜下出血的loss权重增大的操作,即增加硬膜下出血这一类别分错的惩罚程度。

在最终的模型中为了测试对于不平衡数据的处理效果,我们使用了AUC(Area under Curve)作为评判标准。AUC的值代表Roc曲线下的面积,其可以作为分类器好坏的评价指标。AUC值是一个概率值,当随机挑选一个正样本以及负样本,当前的分类算法根据计算得到的Score值将这个正样本排在负样本前面的概率就是AUC值,AUC值越大,当前分类算法越有可能将正样本排在负样本前面,从而能够更好地分类。下面是最终每一个类别的分类AUC的数值,可以看到我们比较好的将数据量较少的硬膜下出血类型识别了出来。


上图中对于验证集的loss值分别为[0.115454 0.019861 0.0951 0.07395 0.03101 0.052185],可以看出loss值没有特别大的区别。

在以上的所有模型中,都使用了交叉验证的方法,都是设置fold=5,最后再将交叉验证的结果进行融合;在Se_resnext50 32×4d模型中,我们也设置了梯度截断,来进一步保证不出现“梯度爆炸”;在模型训练过程中也使用了TTA的方法(即test time augmentation测试时增强),其可将准确率提高若干个百分点,它的原理是为原始图像造出多个不同版本,包括不同区域裁剪和更改缩放程度等,并将它们输入到模型中,然后对多个版本进行计算得到平均输出,作为图像的最终输出分数。这种技术很有效,因为原始图像显示的区域可能会缺少一些重要特征,在模型中输入图像的多个版本并取平均值,就或许能解决上述的问题,选择三种不同类型的“窗”的识别效果是最好的,但是如果选择一个窗函数的话,“脑窗”是最好的选择。

以上是一个比较简单的解决方案,不过其实我们最终得到的训练集中每一名病人都会有很多张CT图片,其对应不同切片位置的CT图,它们都代表着同一种病况,所以将其在特征提取完后使用类似于时间序列的方法继续进行,同一病人不同位置的图片的特增提取,这样可以更加准确的预测类别。业界人士称其为2.5D的方法,最终的算法流程图如下图所示:

读入原始的Dicom文件后使用三个“窗函数”进行处理(Brain windows、Bone windows、Subdural windows);接着使用图像处理的方法对于CT图像的机器伪影进行消除(CT图像的机器伪影是机器本身的问题造成的,伪影一般会对于图像的分辨有比较大的影响);接着使用水平翻转、垂直翻转、提升亮度、resize等等操作进行数据的扩充,并将数据分为5折,但仅对其中3进行训练;进行完以上的操作后,使用resnext101_32×8d的深度神经网络进行特征的提取(一个图像提取出2048维特征,仅仅输出GAP层),不过没有在最后使用全连接层进行分类,而是将所有的特征矩阵进行了序列的处理,通过读取Dicom文件中病人ID信息,可以将同一个病人的CT切片视为一个序列,并放入Bi-BLSTM结构中进行双向的训练,将最后提取得到的特征再使用全连接层进行分类,最终得到的是整个10个切片的所有预测信息。由于同一序列中的颅内出血类型必定相同,所以我们可以从这输出的10组预测值中,选择出现概率最大的作为我们的预测结果。从上图的结果可以看出,这样做的话,最终的10个预测结果中,有5组的预测值为[0,0,0,0,0,0],有三组的预测值为[0,0,0,0,1,1],有两组的预测值为[0,0,1,0,1,1]。所以先考虑any的情况下,有5组是认为有出血情况的,有5组是认为没有出血情况的。所以认为是有颅内出血的情况。在有颅内出血的5类中,其中判断为[0,0,0,0,1,1]结果的概率最大,所以这里最终这一个序列的10组预测值均为[0,0,0,0,1,1]。这就是这个整个算法的流程。不过这个整个流程如果完整训练的话需要在4个NVIDIA Tesla V100下连续训练10天。算力以及时间的花销还是比较大的。

参考文献

[1] Chang P D, Kuoy E, Grinband J, et al. Hybrid 3D/2D convolutional neural network for hemorrhage evaluation on head CT[J]. American Journal of Neuroradiology, 2018, 39(9): 1609-1616.

[2] Arbabshirani M R, Fornwalt B K, Mongelluzzo G J, et al. Advanced machine learning in action: identification of intracranial hemorrhage on computed tomography scans of the head with clinical workflow integration[J]. NPJ digital medicine, 2018, 1(1): 1-7.

[3] Lee H, Kim M, Do S. Practical window setting optimization for medical image deep learning[J]. arXiv preprint arXiv:1812.00572, 2018.

[4] Ren S, He K, Girshick R, et al. Faster r-cnn: Towards real-time object detection with region proposal networks[C]//Advances in neural information processing systems. 2015: 91-99.

[5] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 770-778.

THU数据派
THU数据派

THU数据派"基于清华,放眼世界",以扎实的理工功底闯荡“数据江湖”。发布全球大数据资讯,定期组织线下活动,分享前沿产业动态。了解清华大数据,敬请关注姐妹号“数据派THU”。

产业深度学习图像处理医学影像
相关数据
何恺明人物

Facebook AI Research研究科学家。Residual Net提出者。

深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

VGG技术

2014年,牛津大学提出了另一种深度卷积网络VGG-Net,它相比于AlexNet有更小的卷积核和更深的层级。AlexNet前面几层用了11×11和5×5的卷积核以在图像上获取更大的感受野,而VGG采用更小的卷积核与更深的网络提升参数效率。VGG-Net 的泛化性能较好,常用于图像特征的抽取目标检测候选框生成等。VGG最大的问题就在于参数数量,VGG-19基本上是参数量最多的卷积网络架构。VGG-Net的参数主要出现在后面两个全连接层,每一层都有4096个神经元,可想而至这之间的参数会有多么庞大。

图像重建技术

通过物体外部测量的数据,经数字处理获得三维物体的形状信息的技术。图像重建技术开始是在放射医疗设备中应用,显示人体各部分的图像,即计算机断层摄影技术,简称CT技术,后逐渐在许多领域获得应用。主要有投影重建、明暗恢复形状、立体视觉重建和激光测距重建。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

学习率技术

在使用不同优化器(例如随机梯度下降,Adam)神经网络相关训练中,学习速率作为一个超参数控制了权重更新的幅度,以及训练的速度和精度。学习速率太大容易导致目标(代价)函数波动较大从而难以找到最优,而弱学习速率设置太小,则会导致收敛过慢耗时太长

自适应学习技术

自适应学习也称为适应性教学(Adaptive Learning),是一种以计算机作为交互式教学手段的教学方法,根据每个学习者的特别需求,以协调人力资源和调解资源的分配。计算机根据学生的学习需求(如根据学生对问题、任务和经验的反馈)调整教育材料的表达方式。自适应学习技术已经涵盖了来自各个研究领域,包括计算机科学,教育,心理学和脑科学等等。

验证集技术

验证数据集是用于调整分类器超参数(即模型结构)的一组数据集,它有时也被称为开发集(dev set)。

图像提取技术

图像提取包括图像的特征检测和特征提取过程。 特征检测是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征检测的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。 特征被检测后它可以从图像中被提取出来。这个过程可能需要许多图像处理的计算机。其结果被称为特征描述或者特征向量。 低层次的特征提取方法包括:边缘检测、角检测、区域检测、脊检测等,还有曲度检测以及运动检测。 高层次的特征提取方法包括:1.固定形状匹配方法如阈值、模板匹配和霍夫变换等;2.灵活变形分析方法。 进一步特征提取与降维有关,常用的降维技术有主成分分析法、独立成分分析法、等距特征映射等。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

分类问题技术

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

神经元技术

(人工)神经元是一个类比于生物神经元的数学计算模型,是神经网络的基本组成单元。 对于生物神经网络,每个神经元与其他神经元相连,当它“兴奋”时会向相连的神经元发送化学物质,从而改变这些神经元的电位;神经元的“兴奋”由其电位决定,当它的电位超过一个“阈值”(threshold)便会被激活,亦即“兴奋”。 目前最常见的神经元模型是基于1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神经元模型”。 在这个模型中,神经元通过带权重的连接接处理来自n个其他神经元的输入信号,其总输入值将与神经元的阈值进行比较,最后通过“激活函数”(activation function)产生神经元的输出。

图像处理技术

图像处理是指对图像进行分析、加工和处理,使其满足视觉、心理或其他要求的技术。 图像处理是信号处理在图像领域上的一个应用。 目前大多数的图像均是以数字形式存储,因而图像处理很多情况下指数字图像处理。

交叉验证技术

交叉验证,有时亦称循环估计, 是一种统计学上将数据样本切割成较小子集的实用方法。于是可以先在一个子集上做分析, 而其它子集则用来做后续对此分析的确认及验证。 一开始的子集被称为训练集。而其它的子集则被称为验证集或测试集。交叉验证的目标是定义一个数据集到“测试”的模型在训练阶段,以便减少像过拟合的问题,得到该模型将如何衍生到一个独立的数据集的提示。

图像分类技术

图像分类,根据各自在图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。

堆叠技术

堆叠泛化是一种用于最小化一个或多个泛化器的泛化误差率的方法。它通过推导泛化器相对于所提供的学习集的偏差来发挥其作用。这个推导的过程包括:在第二层中将第一层的原始泛化器对部分学习集的猜测进行泛化,以及尝试对学习集的剩余部分进行猜测,并且输出正确的结果。当与多个泛化器一起使用时,堆叠泛化可以被看作是一个交叉验证的复杂版本,利用比交叉验证更为复杂的策略来组合各个泛化器。当与单个泛化器一起使用时,堆叠泛化是一种用于估计(然后纠正)泛化器的错误的方法,该泛化器已经在特定学习集上进行了训练并被询问了特定问题。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

优化器技术

优化器基类提供了计算梯度loss的方法,并可以将梯度应用于变量。优化器里包含了实现了经典的优化算法,如梯度下降和Adagrad。 优化器是提供了一个可以使用各种优化算法的接口,可以让用户直接调用一些经典的优化算法,如梯度下降法等等。优化器(optimizers)类的基类。这个类定义了在训练模型的时候添加一个操作的API。用户基本上不会直接使用这个类,但是你会用到他的子类比如GradientDescentOptimizer, AdagradOptimizer, MomentumOptimizer(tensorflow下的优化器包)等等这些算法。

暂无评论
暂无评论~