1.本发明涉及生物计算机领域,尤其涉及一种用于测试甲状腺乳头状癌的工具及系统。
背景技术:
2.甲状腺癌(thyroid cancer,tc)是内分泌系统最常见的恶性肿瘤,随着诊断技术的进步,其发病率迅速增加,据2020年全球癌症统计报告显示,甲状腺癌以超过58万的新发病例排在前十名癌症发病率第九位。乳头状癌(papillary thyroid cancer,ptc)是最常见的亚型,80%的新发病例都是乳头状癌,总体预后最好,转移最常见于颈部淋巴结,较少涉及远端。通过对有风险的患者进行早期监测仍然是防治甲状腺癌最好的方式,并且目前的治疗手段可以有效地治疗甲状腺癌。
3.目前临床用来诊断甲状腺癌的金标准为超声引导下的细针穿刺细胞学检查(fna),有文章指出其诊断准确率高达70%-97%,绝大多数甲状腺癌患者表现为颈部影像学检查发现的甲状腺结节。超声引导下的细针穿刺细胞学检查,即通过超声检查可确定是否存在甲状腺结节,随后利用穿刺针在甲状腺结节内来回抽吸以获得小部分病变组织,随即涂片获得良好的细胞学涂片,以此判断结节的良恶性。fna活检结果不确定的患者需要进行甲状腺切除手术,以排除患有甲状腺癌的可能性,但只有20%的肿瘤是恶性的,意味着大约80%的患者需要进行不必要的手术,同时此种方法具有取样难、创伤大等特点。因此,需要一种快速、准确且无损伤的检测手段来区分良恶性结节以提高诊断准确率。
4.已有的唾液癌症筛查主要通过凝集素芯片进行,凝集素(lectin)是非免疫来源的、不具有酶活性的一类糖结合蛋白,能专一地识别某一特殊结构的单糖或聚糖中特定的糖链序列并与之结合,而凝集素芯片是一种将各种不同来源的凝集素固定于环氧化修饰的芯片片基上制成的生物芯片。
5.现有的凝集素芯片鉴别癌症的方法主要是:选定对照组,将待检测临床样本的凝集素芯片结果同健康对照组的凝集素芯片结果进行对比,得到每种凝集素的fold-change值,以fold-change》1.5和fold-change《0.67作为选择标准,fold-change》1.5为上调糖链,fold-change《0.67为下调糖链,筛选出表达上调和下调的糖链组合,利用这些糖链的组合来判断某种癌症。这种方法应用的凝集素数据不全面,仅应用了显示糖链结构上调或下调的凝集素数据,复杂情景下缺乏实际应用价值。因此,一种准确性高的甲状腺乳头状癌识别系统亟待研发。
技术实现要素:
6.为了克服现有技术的不足,本发明提供了一种用于测试甲状腺乳头状癌的工具及系统,用于解决前述技术问题中的至少一个。
7.具体地,其技术方案如下:
8.一种用于测试甲状腺乳头状癌的工具,包括:
9.处理器;
10.存储介质,与所述处理器进行数据交互,用于在所述存储介质内存储的程序被所述处理器加载时执行以下步骤:
11.通过甲状腺乳头状癌鉴别模型对待诊断患者的唾液的凝集素芯片数据进行鉴别,确定所述待诊断患者是否为甲状腺乳头状癌患者。
12.所述的一种用于测试甲状腺乳头状癌的工具,还包括:
13.采集模块采集外界样本,用于获取预处理后的唾液样本:
14.预处理模块,与所述采集模块连接,用于接收经过所述采集模块预处理后的唾液样本获得所述凝集素芯片数据;
15.所述预处理模块与所述存储介质进行数据交互,将所述凝集素芯片数据存储在所述存储介质内。
16.一种用于测试甲状腺乳头状癌的系统,包括:
17.数据采集模块,用于根据唾液样本获取凝集素芯片数据;
18.模型构建模块,与所述数据采集模块进行数据交互,用于利用所述凝集素芯片数据形成分类标签和特征,从而构建和训练甲状腺乳头状癌鉴别模型;
19.如权利要求1或2所述的用于测试甲状腺乳头状癌的工具,与所述数据采集模块进行数据交互,用于利用已训练的甲状腺乳头状癌鉴别模型对待诊断患者的唾液进行鉴别,确定所述待诊断患者是否为甲状腺乳头状癌患者。
20.所述模型构建模块,包括:
21.数据预处理单元,与所述数据采集模块进行数据交互,用于将所述凝集素芯片数据进行归一化处理,得到归一化后的凝集素芯片数据;
22.数据分类单元,与所述数据预处理单元进行数据交互,用于将所述归一化后的凝集素芯片数据随机排序,获取所述归一化后的凝集素芯片数据的特征和标签,并按照所述标签随机选取一部分所述归一化后的凝集素芯片数据作为所述甲状腺乳头状癌鉴别模型的训练集,另一部分所述归一化后的凝集素芯片数据作为所述甲状腺乳头状癌鉴别模型的测试集;
23.构建单元,与所述甲状腺乳头状癌测试工具连接,用于得到所述训练后的甲状腺乳头状癌鉴别模型并存储在所述甲状腺乳头状癌测试工具内。
24.所述数据预处理单元,采集所述数据采集模块的数据,用于进行如下步骤,从而得到所述归一化后的凝集素芯片数据:
25.收集凝集素与唾液样本结合点的荧光信号中值、背景值的中值,以及背景值的标准偏差;
26.通过所述荧光信号中值、背景值的中值,以及所述背景值的标准偏差进行有效数据的筛选预处理;
27.每种凝集素对应的三个点求中值,剔除阴性质控与阳性质控,进行归一化处理,获得所述凝集素芯片数据。
28.所述“通过所述荧光信号中值、背景值的中值,以及所述背景值的标准偏差进行有效数据的筛选预处理”,包括:
29.所述荧光信号中值减去背景值的中值,并且与2倍的所述背景值的标准偏差继续
比对,大于两倍背景值标准偏差的数据为有效数据,否则记为0。
30.所述构建单元与所述数据分类单元连接,用于利用所述特征和标签通过k最近邻算法、支撑向量机、多层感知器、逻辑回归以及随机森林中的任一种算法依据所述凝集素芯片数据构建所述甲状腺乳头状癌鉴别模型。
31.所述构建单元接收所述标签和所述特征,用于通过以下步骤依据所述凝集素芯片数据构建所述甲状腺乳头状癌鉴别模型:
32.根据需要构造n个svm支持向量机,n为正整数且n≥1;
33.将所述数据分类单元中的特征输入所述svm支持向量机中,通过投票得到所述样本的类别。
34.所述模型构建模块,还包括:超参数选择与优化单元;
35.所述参数选择与优化单元与所述构建单元进行数据交互,用于通过以下步骤对所述甲状腺乳头状癌鉴别模型进行调整:
36.设置所述svm支持向量机惩罚系数;
37.在进行核函数选取时,采用径向基核(rbf)作为所述svm支持向量机的核函数,设置所述核函数下的最优参数gamma。
38.所述数据采集模块,包括:
39.采集单元,用于收集唾液样本;
40.标记单元,与所述采集单元连接,用于对所述唾液样本进行荧光标记;
41.凝集素芯片单元,与所述标记单元连接,用于放置荧光标记后的唾液样本;
42.孵育单元,与所述凝集素芯片单元连接,用于孵育放置有荧光标记唾液样本的凝集素芯片单元;
43.数据获取单元,与所述孵育单元连接,用于扫描孵育后的凝集素芯片单元后,进行图像分析获取所述凝集素芯片数据;
44.所述数据获取单元与所述数据预处理单元连接,用于获取所述归一化后的凝集素芯片数据。
45.本发明至少具有以下有益效果:
46.本发明所述的用于测试甲状腺乳头状癌的工具,能够对待诊断患者的唾液进行鉴别,通过甲状腺乳头状癌诊断模块确定所述待诊断患者是否为甲状腺乳头状癌患者;本发明所述的用于测试甲状腺乳头状癌的工具,采样方便、灵敏度高,适合对病人进行早、中期甲状腺乳头状癌的筛查,能够快速鉴别受试者是否患病。
47.本发明所述的系统,通过数据采集模块对唾液样本进行预处理和荧光标记后,利用点制好的凝集素芯片,进行凝集素芯片检测,以获取凝集素芯片数据;通过已训练的甲状腺乳头状癌鉴别模型对待诊断患者的唾液进行鉴别,确定所述待诊断患者是否为甲状腺乳头状癌患者;本发明所述的系统全面应用凝集素数据,结合机器算法,具有检测客观、准确的优点。
附图说明
48.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对
范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
49.图1为本发明所述系统的系统框图;
50.图2为凝集素芯片示意图;
51.图3为样本与凝结素检测点结合的示意图;
52.图4为凝集素芯片结果的数据分析流程图;
53.图5为knn模型的混淆矩阵图;
54.图6为knn模型的roc曲线图;
55.图7为svm模型的混淆矩阵图;
56.图8为svm模型的roc曲线图;
57.图9为mlp模型的混淆矩阵图;
58.图10为mlp模型的roc曲线图;
59.图11为lr模型的混淆矩阵图;
60.图12为lr模型的roc曲线图;
61.图13为rf模型的混淆矩阵图;
62.图14为rf模型的roc曲线图;
63.其中,100.数据采集模块;200.模型构建模块;300.甲状腺乳头状癌测试工具;
64.101.采集单元;102.标记单元;103.凝集素芯片单元;104.孵育单元;105.数据获取单元;
65.201.数据预处理单元;202.数据分类单元;203.构建单元;204.参数选择与优化单元;
66.其中,图3中的a处代表荧光信号f532;b处代表背景值b532。
具体实施方式
67.本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
68.为了解决现有技术中的缺点,本实施例引入机器学习进行甲状腺乳头状癌识别,能够完美解决凝集素芯片数据的实际应用问题。
69.具体实施例:
70.本发明提供一种实施例:
71.如图1,一种用于测试甲状腺乳头状癌的系统,包括:用于根据唾液样本获取凝集素芯片数据的数据采集模块100、模型构建模块200以及如上所述的甲状腺乳头状癌测试工具300;其中,模型构建模块200与所述数据采集模块100进行数据交互,用于利用所述凝集素芯片数据形成分类标签和特征,从而构建和训练甲状腺乳头状癌鉴别模型;如上所述的甲状腺乳头状癌测试工具300,与所述数据采集模块100进行数据交互,用于利用已训练的甲状腺乳头状癌鉴别模型对待诊断患者的唾液进行鉴别,确定所述待诊断患者是否为甲状腺乳头状癌患者;具体的,所述数据采集模块100用于采集样本,模型构建模块200用于通过数据采集模块100采集的样本进行数据处理,获取甲状腺乳头状癌鉴别模型。
72.具体的,所述模型构建模块200,包括:数据预处理单元201、数据分类单元202、构建单元203以及参数选择与优化单元204;其中,数据预处理单元201与所述数据采集模块进行数据交互,用于将所述凝集素芯片数据进行归一化处理,得到归一化后的凝集素芯片数据;数据分类单元202与所述数据预处理单元201进行数据交互,用于将所述归一化后的凝集素芯片数据随机排序,获取所述归一化后的凝集素芯片数据的特征和标签,并按照标签随机选取一部分所述归一化后的凝集素芯片数据作为训练集,另一部分所述归一化后的凝集素芯片数据作为测试集;构建单元203与所述数据分类单元202连接,用于根据所述特征和所述标签构建所述甲状腺乳头状癌鉴别模型,并利用所述训练集训练所述甲状腺乳头状癌鉴别模型,得到所述训练后的甲状腺乳头状癌鉴别模型;所述参数选择与优化单元204与所述构建单元203进行数据交互,用于先后调整所述甲状腺乳头状癌鉴别模型中影响最大的参数和最大特征数,对所述甲状腺乳头状癌鉴别模型进行调整。
73.所述数据采集模块100,包括:采集单元101、标记单元102、凝集素芯片单元103、孵育单元104以及数据获取单元105;其中,采集单元101用于收集唾液样本;标记单元102与所述采集单元101连接,用于对所述唾液样本进行荧光标记;凝集素芯片单元103与所述标记单元102连接,用于放置荧光标记后的唾液样本;孵育单元104与所述凝集素芯片单元103连接,用于孵育放置有荧光标记唾液样本的凝集素芯片单元103;数据获取单元105与所述孵育单元104连接,用于扫描孵育后的凝集素芯片单元103后,进行图像分析获取所述凝集素芯片数据。
74.如图2所示的凝集素芯片单元103的制备过程如下:
75.凝集素芯片选用:环氧基硅烷试剂(gpts),bradford试剂,蛋白酶抑制剂,dmso,tween-20,盐酸羟胺均购自美国sigma公司,cy3、cy5荧光染料构自美国amerhsam公司,sephadex g-25柱购自美国ge healthcare公司,384孔板构自英国genetix公司,牛血清白蛋白(bsa)购自德国calbiochem公司,玻璃片基购自gold seal公司,0.2μm滤膜,0.45μm滤膜购自日本sartorius公司,其他常用试剂购自国产分析纯。37种凝集素,见表1,分别购自vector公司和sigma公司。
76.表1 凝集素对照表
[0077][0078][0079]
使用的设备,包括:电热鼓风干燥箱:天津泰斯特公司;高压灭菌锅:日本tomy公司;超速冷冻离心机5804r:德国eppendorf公司;微量核酸蛋白测定仪:德国implen公司;生物芯片扫描仪4000b:美国axon公司;芯片点样仪:博奥晶芯smartarrayer48点样仪;芯片杂交箱hl-2000:美国uvp公司。
[0080]
凝集素芯片的制备过程,包括:
[0081]
将未处理的玻片用无水乙醇清洗三次,每次10min。离心甩干后,将玻片浸泡入250ml 10%naoh溶液中,摇床上轻摇反应,避光过夜。反应后,超声15min,再用超纯水清洗
四次,每次2min,无水乙醇清洗两次,每次2min。离心甩干后,再将玻片浸泡到200ml 10%gpts溶液中,摇床上轻摇,避光反应3h。反应后,超声清洗15min,无水乙醇清洗三次,每次10min。离心甩干后,芯片的环氧化修饰完成,并将修饰好的玻片放置于4℃干燥器中保存备用。制备好的凝集素芯片的点样设计如图1,每张芯片共分为4个矩阵,每个矩阵规格为12*10,每个样品点重复三次。
[0082]
在采集单元101进行唾液样品采集时,包括:
[0083]
健康志愿者(healthy volunteers,hv),无其它基础疾病,一周之内没有服用任何药物;已确诊的良性甲状腺结节(benign thyroid nodule,btn)患者,甲状腺乳头状癌(papillary thyroid cancer,ptc)患者。饭后两小时,约9点到10点之间,生理盐水漱口三次后迅速采集自然分泌的全唾液。唾液采集至少1ml并立即置于冰上,加入蛋白酶抑制剂,每毫升唾液加入1μl,防止蛋白降解。
[0084]
表2 临床样本信息表
[0085][0086][0087]
标记单元102的工作过程是:将收集到的全唾液经12,000rpm 4℃离心10min后吸取上清弃去沉淀。上清再经0.22μm孔径的滤膜过滤掉细菌和其他微生物。样本经cy3荧光染料标记后用sephadex g-25除盐柱去掉游离荧光。标记好的蛋白准备用于凝集素芯片孵育。
[0088]
孵育单元104的工作过程是:将上文所述点制好的凝集素芯片从4℃干燥器中取出,回温;首先用pbst、pbs各清洗芯片一次,每次3min,离心甩干。将凝集素芯片与600μl封闭缓冲液在芯片杂交盒中孵育,25℃旋转反应1h。封闭结束后用pbst、pbs各清洗芯片两次,每次3min,甩干。用genepix4000b芯片扫描仪扫描封闭后芯片,检查封闭效果。
[0089]
将荧光标记的唾液蛋白3μg与孵育缓冲液混匀,配置成600μl上样体系。并均匀加载在盖玻片上,盖上封闭后的凝集素芯片,于芯片杂交仪中25℃避光旋转孵育3h。孵育结束后用pbst、pbs各清洗玻片两次,每次5min,离心甩干;在数据获取单元105的工作过程中,使用genepix4000b芯片扫描仪扫描芯片,genepix3.0软件从芯片扫描结果图进行圈点导出gpr文件,根据其中的数据信息进行分析。
[0090]
通过数据预处理单元201将数据信息进行预处理:
[0091]
如图3,首先是收集凝集素与样本结合点(圆圈)的荧光信号中值(f532 median),背景值(正方形内除去圆圈的部分)的中值(b532 median),以及背景值的标准偏差(b532 sd);
[0092]
其次是有效数据的筛选与处理,荧光信号中值减去背景值的中值,并且与2倍的背景值的标准偏差继续比对,大于两倍背景值标准偏差的数据则认为是有效数据,否则记为0;
[0093]
接着,每三个凝集点(每种凝集素存在三个点)求中值,剔除阴性质控与阳性质控,进行归一化处理,获得凝集素芯片数据,用作后续分析;如图4为凝集素芯片结果的数据分析流程图;
[0094]
通过数据分类单元202对所有病例进行随机排序,为尽可能保证每一类别在训练集与测试集中的比例一致,本发明分别随机选取每一标签(类别)中的70%的数据(健康志愿者21例,良性甲状腺结节患者15例,甲状腺乳头状癌患者19例),总计55例拼接后作为机器学习的训练集,其余30%数据拼接后(24例,包括健康志愿者9例,良性甲状腺结节患者7例,甲状腺乳头状癌患者8例)作为机器学习的测试集;所述的三个类别可以是:健康、良性甲状腺结节患者以及甲状腺乳头状癌患者。具体流程如下:
[0095]
a.类别名称映射为数字:
[0096]
data["class"]=data["class"].map({"hv":0,"btn":1,"ptc":2,});
[0097]
b.提取每个类别的数据:
[0098]
t0=data[data['class']==0]
[0099]
t1=data[data['class']==1]
[0100]
t2=data[data['class']==2]
[0101]
c.随机打乱数据:
[0102]
r=1(r可为任意自然数)
[0103]
t0=t0.sample(len(t0),random_state=r)
[0104]
t1=t1.sample(len(t1),random_state=r)
[0105]
t2=t2.sample(len(t2),random_state=r)
[0106]
d.数据分组与拼接:
[0107]
p=0.70
[0108]
train_x=pd.concat
([t0.iloc[:int(len(t0)*p),2:39],t1.iloc[:int(len(t1)*p),2:39],t2.iloc[:int(len(t2)*p),2:39]],axis=0)
[0109]
train_y=pd.concat
([t0.iloc[:int(len(t0)*p),1],t1.iloc[:int(len(t1)*p),1],t2.iloc[:int(len(t2)*p),1]],axis=0)
[0110]
test_x=pd.concat
([t0.iloc[int(len(t0)*p):len(t0),2:39],t1.iloc[int(len(t1)*p):len(t1),2:39],t2.iloc[int(len(t2)*p):len(t2),2:39]],axis=0)
[0111]
test_y=pd.concat
([t0.iloc[int(len(t0)*p):len(t0),1],t1.iloc[int(len(t1)*p):len(t1),1],t2.iloc[int(len(t2)*p):len(t2),1]],axis=0)
[0112]
优选的,构建单元203利用支持向量机(svm)构建乳腺癌鉴别模型;svm的算法思路是:本质上是一种实现二分类的模型,也是在特征空间上,寻找一个能够使两个类别产生最大分类间隔的线性分类器,还可通过核技巧将其拓展到非线性情形。
[0113]
本优选方案的实现步骤:输入训练集中病例特征,由于svm本质是实现二分类,所以需要在任意两类样本之间设计一个svm。为实现3个类别的分类就需要构造3*(3-1)/2=3个svm,输入测试集中病例特征到已训练好的svm中,最后得票最多的类别即为该未知样本的类别,测试集数据的标签预测与比对。
[0114]
超参数选择与优化:
[0115]
c:惩罚系数,即对误差的宽容度。c过大或过小,泛化能力变差。
[0116]
核函数(kernel)的选择:常用核函数包括,线性核函数,多项式核,径向基核(rbf),傅里叶核等,采用cross-validation方法,即在进行核函数选取时,分别试用不同的核函数,归纳误差最小的核函数就是最好的核函数。本研究最好的核函数为rbf。选择rbf函数作为kernel后,该函数自带的一个参数gamma。决定了数据映射到新的特征空间后的分布,gamma越大,支持向量越少,gamma值越小,支持向量越多,rbf宽度越大。支持向量的个数影响训练与预测的速度。进行rbf最优参数的选择:最优参数为kernel=rbf,gamma=1,c=11。
[0117]
本发明公开一种实施例:
[0118]
一种用于测试甲状腺乳头状癌的工具,包括:处理器、存储介质以及采集模块、预处理模块;存储介质,用于在存储的程序被所述处理器加载时执行以下步骤:利用甲状腺乳头状癌鉴别模型对待诊断患者的唾液的凝集素芯片数据进行鉴别,确定所述待诊断患者是否为甲状腺乳头状癌患者;为了使用方便所述采集模块采集外界样本,用于得到荧光标记的预处理后的唾液样本,具体参照“用于测试甲状腺乳头状癌的系统”的实施例中记述的“标记单元102的工作过程”和“凝集素芯片单元103的制备”过程。
[0119]
所述预处理模块与所述采集单元和所述存储介质进行数据交互,用于获取凝集素芯片数据,具体步骤参照“用于测试甲状腺乳头状癌的系统”的实施例中记述的“孵育单元104”和“数据预处理单元201”的工作过程。通过该凝集素芯片数据,可以利用已训练好的甲状腺乳头状癌鉴别模型对待诊断患者进行鉴别,确定所述待诊断患者是否为甲状腺乳头状癌患者。
[0120]
准确度验证:
[0121]
机器学习包括多种方法,现通过:构建单元203采用k最近邻算法、支撑向量机、多层感知器、逻辑回归分别建模与本实施例的逻辑森林的建模结果进行比较,对本实施例的准确性进行检验。
[0122]
k最近邻算法(k-nearest neighbor,knn)是一种简单、直观、实用的及其算法,广泛应用于分类问题,主要思路:计算已知类别数据集中的点与当前点之间的距离;按照距离递增排序;选取与当前点距离最近的k个点;确定前k个点所在类别出现的频率;返回前k个点所出现频率最高的类别作为当前点的预测分类。
[0123]
k最近邻算法的实现步骤:
[0124]
通过输入训练集中病例的所有特征以及标签,构建knn分类器;通过测试集中病例的特征,将输出的预测结果与测试集的标签进行比对,衡量算法表现;其中,knn中最为重要的几个参数包括k值,权重以及距离的计算方式:
[0125]
k:为选取与当前点距离最近的k个点,如k太小,不具有抗干扰性,这时模型的偏差bias减小,方差variance增大,模型容易过拟合;k太大,相当于用较大邻域中的训练实例进行预测,学习的近似误差会增大,因此不具有代表性。
[0126]
weights:不考虑距离权重和考虑距离权两种形式;
[0127]
距离度量方式p:包括闵可夫斯基距离、欧氏距离、曼哈顿距离等等;
[0128]
利用gridsearch对weights,p,k值进行遍历,结果表明最佳参数为weights="
distance",p=1,k=4。
[0129]
如图5-6和表3,knn模型的表现如下:准确性为:84.0%;查准率为:82.01%;查全率为:84.24%;roc线下面积:0.88;敏感度0.84,特异性:0.92。
[0130]
表3 knn模型数据汇总
[0131][0132]
如图7-8和表4,svm模型的表现如下:准确性为:92.00%;查准率为:90.48%;查全率为:93.94%;roc线下面积:0.94;敏感度:0.92,特异性:0.96。
[0133]
表4 svm模型数据汇总
[0134][0135]
多层感知器(multilayer perceptron,mlp)算法思路:是一种浅层神经网络算法,由输入层(input layer)、隐藏层(hidden layer)、输出层(output layer)组成,每层由单元组成,输入层是由训练集的实例特征向量传入,经过连接节点的权重(weight)传入下一层,上一层的输出是下一层的输入,隐藏层的个数是任意的,输出层和输入层只有一个。
[0136]
实现步骤:通过输入训练集中病例的所有特征以及标签,构建mlp模型;通过测试集中病例的特征,将输出的预测结果与测试集的标签进行比对,衡量算法表现。
[0137]
超参数选择与优化:mlp有超过20余个超参数,但是最重要的参数为隐藏层的层数和每一个隐藏层中的神经元数量。因此在参数选择上主要考虑了权重优化的求解器(slover),hidden_layer_sizes(隐藏层的层数和神经元数量)。slover包括了'lbfgs’,'sgd’和'adam’。'lbfgs’是准牛顿方法族的优化器,对于小型数据集,可以更快地收敛并且表现更好。'sgd’指的是随机梯度下降。'adam’是基于随机梯度的优化器,在相对较大的数据集方面在训练时间和验证分数方面都能很好地工作。
[0138]
利用gridsearch进行最优参数的选择包括优化器的选择,隐藏层的数量和神经元个数:得到的最佳参数为slover='adam’,hidden_layer_sizes(7,5,),包含两层隐藏层,第一层7个神经元,第二层5个神经元。
[0139]
如图9-10和表5,准确性为:84.00%;查准率为:82.01%;查全率为:83.33%;roc线下面积:0.88,敏感度:0.84,特异性:0.92。
[0140]
表5 mlp模型数据汇总
[0141][0142][0143]
逻辑回归(logistic regression,lr)算法思路:lr属于监督学习,是一种“分类”算法,lr的回归实质是发生概率除以没有发生概率再取对数。
[0144]
实现步骤:通过输入训练集中病例的所有特征以及标签,构建lr模型;通过测试集中病例的特征,将输出的预测结果与测试集的标签进行比对,衡量算法表现。
[0145]
超参数选择与优化:
[0146]
正则化选择参数penalty:penalty参数可选择的值为"l1"和"l2",分别对应l1的正则化和l2的正则化。优化算法选择参数solver:当penalty选择l1时候solver只能选择
‘
liblinear’,当penalty选择l2时,solve可选择liblinear,lbfgs,newton-cg,sag;分类方式选择参数multi_class:有ovr和multinomial两个值可以选择。在python的sklearn中,lrlogisticregressioncv使用了交叉验证来选择正则化系数c,因此正则化系数c的的系数不需要再进行优化;最优参数为penalty="l2",solver="lbfgs",class_weight=none,multi_class="multinomial"。
[0147]
如图11-12和表6,lr模型的表现如下:准确性为:76.00%;查准率为:73.54%;查全率为:73.20%;roc线下面积:0.82,敏感度:0.76,特异性:0.88。
[0148]
表6 lr模型数据汇总
[0149][0150]
随机森林(random forest,rf)算法思路:指的是利用多棵决策树对样本进行训练并预测的一种分类器。
[0151]
实施过程:从原始训练集中使用bootstraping方法随机有放回采样取出m个样本,共进行n_tree次采样。生成n_tree个训练集;对n_tree个训练集,我们分别训练n_tree个决策树模型;对于单个决策树模型,假设训练样本特征的个数为n,那么每次分裂时根据信息增益/信息增益比/基尼指数,选择最好的特征进行分裂;每棵树都已知这样分裂下去,知道该节点的所有训练样例都属于同一类;将生成的多颗决策树组成随机森林,按照多棵树分类器投票决定最终分类结果;通过测试集中病例的特征,将输出的预测结果与测试集的标签进行比对,衡量算法表现。
[0152]
超参数选择与优化:先调对模型影响最大的参数n_estimators,用gridsearch探索n_estimators得出最佳值;再对树的最大深度进行调节,在不改变模型效果的前提下搜索更小的max_depth有利于模型的简化,进行网格搜索,得出max_depth最优参数;再对内部节点再划分所需最小样本数min_samples_split和叶子节点最少样本数min_samples_leaf
一起调参,得出的最佳参数min_samples_split的值和min_samples_leaf的值;最后再对最大特征数max_features做调参,得出的最佳参数max_features的值。
[0153]
本实施例中最优参数n_estimators=34,max_depth=3,min_samples_split=2,min_samples_leaf=1,max_features=6。
[0154]
如图13-14和表7,本实施例中利用随机森林构建甲状腺乳头状癌鉴别模型,rf模型的表现如下:准确性为:84.00%;查准率为:82.01%;查全率为:84.24%;roc线下面积:0.88,敏感度:0.84,特异性:0.92。
[0155]
表7 rf模型数据汇总
[0156][0157][0158]
将上述各种算法的结果进行统计,如表8:
[0159]
表8 不同模型效果的比较
[0160][0161]
由表8可见,基于凝集素芯片数据的甲状腺乳头状癌患者识别,svm支持向量机的表现更为优异,在测试集中的准确率达到了92.00%,能够正确区分9例hv中的9例,7例btn中的5例,9例ptc中的9例。此外rf,mlp和knn在测试集中的准确率达到了84.00%,而lr模型的表现则较差,在测试集中的准确率为76.00%。
[0162]
由此可知,本发明提供的系统能够提升甲状腺乳头状癌检测的准确度,而且由于采用了唾液进行检测,具有取样方便的优点。
[0163]
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。上述本发明序号仅仅为了描述,不代表实施场景的优劣。
转载请注明原文地址:https://tc.8miu.com/read-177.html