大家‎知道东芝‎的bm-30火箭炮炮吗?音质如‎何‎?

点击关注,桓峰基因前言DCA (Decision Curve Analysis)是一种评估临床预测模型、诊断试验和分子标记物的简单方法。传统的诊断试验指标如:敏感性,特异性和ROC曲线下面积仅测量预测模型的诊断准确性,未能考虑特定模型的临床效用,而DCA的优势在于它将患者或决策者的偏好整合到分析中。这种理念的提出满足了临床决策的实际需要,在临床分析中的应用日益广泛。2006年,MSKCC(纪念斯隆凯特琳癌症研究所)的AndrewVickers博士等人研究出另一种评价方法,叫决策曲线分析法(DecisionCurveAnalysis,DCA)。相对于二战时期诞生的ROC曲线,DCA还很年轻,也一直在完善之中,不过2012-2020年间,AnnInternMed.、JAMA、BMJ、J ClinOncol等杂志都已陆续发文,推荐使用决策曲线分析法。我们在pubmed 中搜索一篇文章,结直肠癌预测临床转移的概率,这篇文章 IF26分,利用Lasso 回归筛选变量,并且构建模型。我们看到其中就是分析了模型的DCA决策曲线,可见,模型评估的一些分析在建模类文章中是必不可少的一部分,所以学会了这类文章不用愁,如下:我们发现临床模型预测之后的评估都需要做决策曲线,基本上临床类分析还是需要做一下,我们看到pubmed上的文章基本上都有,如下:DCA算法原理我们先来理解简单的几个概念,只有理解了这些专有词汇,才能够把大数据分析与临床的实际应用结合起来,毕竟发文章只是一种展示科学的一种方式,更高的目标是实施到临床中,挽救更多人的性命,这是一种使命,也是一种责任吧。看定义,如下:P:给真阳性患者施加干预的受益值(比如用某生化指标预测某患者有癌症,实际也有,予活检,达到了确诊的目的);L:给假阳性患者施加干预的损失值(比如预测有癌症,给做了活检,原来只是个增生,白白受了一刀);Pi:患者i有癌症的概率,当Pi > Pt时为阳性,给予干预。所以较为合理的干预的时机是,当且仅当Pi × P >(1 -- Pi) ×L,即预期的受益高于预期的损失。推导一下可得,Pi > L / ( P + L)即为合理的干预时机,于是把L / ( P + L )定义为Pi的阈值,即Pt。但对二元的预测指标来说,如果结果是阳性,则强制Pi=1,阴性则Pi =0。这样,二元和其他类型的指标就有了可比性。然后我们还可用这些参数来定义真阳性(A)、假阳性(B)、假阴性(C)、真阴性(D),即:A:Pi ≥ Pt,实际患病;B:Pi ≥ Pt,实际不患病;C:Pi < Pt,实际患病;D:Pi < Pt,实际不患病。我们有一个随机抽样的样本,A、B、C、D分别为这四类个体在样本中的比例,则A+B+C+D= 1。那么,患病率(π)就是A + C了。实例解析我们这里使用三种方法实现决策曲线的绘制,无论方法有几种,最终的结果应该是一致的,这里调用rmda 和 ggDCA两个程序包来实现,过程非常详细,仔细运行代码,总会实现的,我发现好多同学都是卡在数据读取,调取,整理数据上,后期也会增加一些此类方法的总结。1. 软件安装主要是讲解rmda 和ggDCA软件包的使用,附加还有rms和caret,程序包安装并加载,这里要注意一下ggDCA安装的时候需要通过git进行安装,否则后面做生存模型时就会不停的报错,如下:Error in findrow(fit, times, extend) : no points selected for one ormore curves, consider using the extend argumentif (!require(rmda)) {
install.packages("rmda")
}
## Warning: 程辑包'rmda'是用R版本4.1.3 来建造的
if (!require(ggDCA)) {
devtools::install_github("yikeshu0611/ggDCA")
}
if (!require(rms)) {
install.packages("rms")
}
if (!require(caret)) {
install.packages("caret")
}
library(rmda)
library(ggDCA)
library(ggplot2)
library(rms)
library(caret)
2. DCA 曲线绘制1. plot_decision_curve {rmda}a.数据读取我们仍然采用软件包自带的肺癌数据库 NCCTG Lung Cancer Data作为输入数据,如下:data(dcaData)
head(dcaData)
## # A tibble: 6 x 6
##
Age Female Smokes Marker1
Marker2 Cancer
##
<int>
<dbl> <lgl>
<dbl>
<dbl>
<int>
## 1
33
1 FALSE
0.245
1.02
0
## 2
29
1 FALSE
0.943 -0.256
0
## 3
28
1 FALSE
0.774
0.332
0
## 4
27
0 FALSE
0.406 -0.00569
0
## 5
23
1 FALSE
0.508
0.208
0
## 6
35
1 FALSE
0.186
1.41
0
b. 模型构建rmda 软件包自带模型构建函数decision_curve ,构建Logistic 回归模型,DescriptionThis function calculates decision curves, which are estimates of thestandardized net benefit by the probability threshold used tocategorize observations as 'high risk.' Curves can be estimated usingdata from an observational cohort (default), or from case-controlstudies when an estimate of the population outcome prevalence isavailable. Confidence intervals calculated using the bootstrap arecalculated as well.我们再看下整个函数合适分析哪种模型,很明显,因变量为二分类的数据,1为case,0为controls的数据才可以使用,自变量属性可以是多样性的。formula
an object of class 'formula' of the form outcome ~
predictors, giving the prediction model to be fitted using glm. The outcome must be a binary variable thatequals '1' for cases and '0' for controls.
我们根据数据情况,构建一个基本的二分类模型,如下:set.seed(123)
baseline.model <- decision_curve(Cancer ~ Age + Female + Smokes, data = dcaData,
thresholds = seq(0, 0.4, by = 0.005), bootstraps = 10)
c.DCA曲线绘制单个模型绘制DCA决策曲线,如下:plot_decision_curve(baseline.model,
curve.names = "Baseline Model",
cost.benefit.axis =FALSE,
#col= c('red','blue'),
confidence.intervals=FALSE,
standardize = FALSE)
Figure 1: Decision Curve Analysis of Baseline Model在构造一个全变量模型,及将其他剩余的变量都加入模型中,构建预测模型并做图,如下:set.seed(123)
full.model <- decision_curve(Cancer~Age + Female + Smokes + Marker1 + Marker2,
data = dcaData,
thresholds = seq(0, .4, by = .005),
bootstraps = 10)
plot_decision_curve(full.model,
curve.names = "Full Model",
cost.benefit.axis =FALSE,
#col= c('red','blue'),
confidence.intervals=FALSE,
standardize = FALSE)
Figure 2: Decision Curve Analysis of Full Modeld.多模型同图那么我们需要将两个构建好的模型放在一张图上,以此来比较两个模型的性能,如下:plot_decision_curve(list(baseline.model, full.model), curve.names = c("Baseline model",
"Full model"), col = c("blue", "red"), lty = c(1, 2), lwd = c(3, 2, 2, 1), legend.position = "bottomright")
Figure 3: Decision Curve Analysis of two Models我们不需要那么复杂,只需要显示两个模型的预测曲线即可,如下:plot_decision_curve( list(baseline.model, full.model),
curve.names = c("Baseline model", "Full model"),
col = c("blue", "red"),
confidence.intervals = FALSE,
#remove confidence intervals
cost.benefit.axis = FALSE, #remove cost benefit axis
legend.position = "topright") #add the legend
Figure 4: Decision Curve Analysis of Two Models2. dca {ggDCA}a.数据读取我们调取ggDCA程序包里面数据,为肝癌数据,并且里面含有四个关键基因(ANLN,CENPA,GPR182,BCO2及生存信息(结局变量(status),生存时间(time)),共232个患者,我们利用这套数据构建Cox 回归模型,并绘制DCA决策曲线。ICGC Liver Data from Japan DescriptionThis data is a liver cancer data from Japan Data released in ICGCdatabase(Link).It cantains time, event and four genes.FormatAn object of class data.frame with 232 rows and 6 columns.将数据切分成测试集和验证集,以方便我们做验证,如下:data(LIRI)
head(LIRI)
##
time status
ANLN
CENPA
GPR182
BCO2
## 1 3.0410959
1
6.821354 3.0366550 0.00000000 0.2248344
## 2 2.5479452
0
1.073527 0.4654169 0.17895040 5.8924860
## 3 4.0273973
0
2.579530 0.7732644 0.06809686 3.5994330
## 4 0.1643836
1 14.183630 7.7239000 0.03749626 1.1194870
## 5 0.8219178
0
3.588320 2.3237710 0.16762610 2.6660850
## 6 2.8767123
0
6.079665 3.6674980 0.21788230 0.7691067
ddist <- datadist(LIRI)
###打包数据
options(datadist = "ddist")
b.模型构建程序包ggDCA 中dca可以单个或多个模型的DCA曲线绘制,模型对象包括四个:coxph (Cox 比例风险回归模型,Fit Proportional Hazards RegressionModel)cph (Cox 比例风险回归模型,Cox Proportional Hazards Model andExtensions)glm (广义线型模型,Fitting Generalized Linear Models)lrm (逻辑回归模型,Logistic Regression Model)同时还可以设置不同时期的预测效果,也可以在验证集里面进行验证。one or more results of logistic or cox regressionc.DCA绘制构建Logistic回归模型根据不同情况,添加变量即为基因的个数,构建四个不同变量的Logistic回归模型。构建4个logstic模型lrm1,lrm2,lrm3,lrm4,模型的变量一次递加基因个数,如下:lrm1 <- lrm(status ~ ANLN, LIRI)
lrm2 <- lrm(status ~ ANLN + CENPA, LIRI)
lrm3 <- lrm(status ~ ANLN + CENPA + GPR182, LIRI)
lrm4 <- lrm(status ~ ANLN + CENPA + GPR182 + BCO2, LIRI)
我们看一下结果,包括阈值,真阳性,假阳性,净收益,模型名称,如下:dca_lrm <- dca(lrm1, lrm2, lrm3, lrm4, model.names = c("ANLN", "ANLN+CENPA", "ANLN+CENPA+GPR182",
"ANLN+CENPA+GPR182+BCO2"))
head(dca_lrm)
##
thresholds
TPR
FPR
NB model
## 1 0.07825978 0.1853448 0.8146552 0.1161770
ANLN
## 2 0.08070249 0.1853448 0.8103448 0.1142070
ANLN
## 3 0.08080998 0.1853448 0.8060345 0.1144828
ANLN
## 4 0.08132494 0.1810345 0.8060345 0.1096810
ANLN
## 5 0.08191934 0.1810345 0.8017241 0.1094975
ANLN
## 6 0.08240994 0.1810345 0.7974138 0.1094177
ANLN
绘制DCA曲线,如下:ggplot(dca_lrm, lwd = 0.5)
Figure 5: Decision Curve Analysis of Multi Logistic Models构建Cox回归模型根据不同情况,添加变量即为基因的个数,构建四个不同变量的Cox回归模型。构建4个Cox回归模型cph1,cph2,cph3,cph4,模型的变量一次递加基因个数,如下:cph1 <- cph(Surv(time, status) ~ ANLN, LIRI)
cph2 <- cph(Surv(time, status) ~ ANLN + CENPA, LIRI)
cph3 <- cph(Surv(time, status) ~ ANLN + CENPA + GPR182, LIRI)
cph4 <- cph(Surv(time, status) ~ ANLN + CENPA + GPR182 + BCO2, LIRI)
我们看一下结果,包括阈值,真阳性,假阳性,净收益,时间,模型名称,如下:dca_cph <- dca(cph1, cph2, cph3, cph4, model.names = c("ANLN", "ANLN+CENPA", "ANLN+CENPA+GPR182",
"ANLN+CENPA+GPR182+BCO2"))
head(dca_cph)
##
thresholds
TPR
FPR
NB
time model
## 1 0.08642800 0.1694905 0.8305095 0.09092056 2.136986
ANLN
## 2 0.08837278 0.1696432 0.8260465 0.08956656 2.136986
ANLN
## 3 0.08845805 0.1697980 0.8215813 0.09006990 2.136986
ANLN
## 4 0.08886622 0.1654711 0.8215979 0.08533766 2.136986
ANLN
## 5 0.08933664 0.1656280 0.8171306 0.08546698 2.136986
ANLN
## 6 0.08972435 0.1657871 0.8126612 0.08568445 2.136986
ANLN
ggplot(dca_cph, lwd = 0.5)
Figure 6: Decision Curve Analysis of Multi Cox Models.除此之外,还有关于生存Cox回归模型,我们还可以选择几种不同时间点以及在验证集中验证等都非常的方便,下面来自公众号:一棵树,于老师的分享,我这里直接借用一下。1.单个模型,不给times赋值,默认验证中位时间dca_cph <- dca(cph1, model.names = "ANLN")
ggplot(dca_cph)Figure 7: Decision Curve Analysis of Single Model in the time point of median.2.单个模型,多个时间点(生存时间的下四分位数、中位数、上四分位数)times = round(quantile(LIRI$time, c(0.25, 0.5, 0.75)), 2)
dca_cph <- dca(cph1, model.names = "ANLN", times = times)
ggplot(dca_cph)
Figure 8: Decision Curve Analysis of Single Cox Models in different time points.3.多个模型,同一个时间点dca_cph <- dca(cph1, cph2, cph3, cph4, model.names = c("ANLN", "ANLN+CENPA", "ANLN+CENPA+GPR182",
"ANLN+CENPA+GPR182+BCO2"), times = 2)
ggplot(dca_cph)Figure 9: Decision Curve Analysis of Multi Cox Models in the same time point.4.多个模型,多个时间点dca_cph <- dca(cph1, cph2, cph3, cph4, model.names = c("ANLN", "ANLN+CENPA", "ANLN+CENPA+GPR182",
"ANLN+CENPA+GPR182+BCO2"), times = c(1.5, 2, 3))
ggplot(dca_cph)Figure 10: Decision Curve Analysis of Multi Cox Models in different times points结果解读DCA曲线图的横坐标为阈概率(ThresholdProbability)。当各种评价方法达到某个值时,患者i的死亡风险概率记为Pi;当Pi达某个阈值(记为Pt),就界定为阳性,采取某种干预措施。纵坐标就是利减去弊之后的净获益率。另外还有一个包 dcurves同样可以绘制DCA曲线图,但是个人感觉有点复杂,所以就没推荐,感觉这些足以满足需求。不知道大家看懂了没,仔细推敲还是很好理解,关注公众号,桓峰基因,每天更新不停歇!References:Vickers AJ, Elkin EB. Decision curve analysis: a novel method forevaluating prediction models. Med Decis Making.2006;26(6):565-574.Vickers AJ, van Calster B, Steyerberg EW. A simple, step-by-stepguide to interpreting decision curve analysis. Diagn Progn Res.2019;3:18. Published 2019 Oct 4.Van Calster B, Wynants L, Verbeek JFM, et al. Reporting andInterpreting Decision Curve Analysis: A Guide for Investigators.Eur Urol. 2018;74(6):796-804.本文使用 文章同步助手 同步
人手一本镇场今天和大家说一下后段工艺中的最后一部分,Passivation的工艺流程Passivation在整个后段工艺中CD要求是最低的,目前Fab内也使用国产刻蚀机台对应此工艺流程,所以网络上宣传的某某公司进入某SMC 5nm生产线,多指此道工艺AMEC D RIE放置两片Wafer的ChamberAMEC这款机台的设计理念也比较特殊,一个Chamber内可以放置两片Wafer,但这放置两片wafer的区域仅有底部的排气共享一台分子泵,这里不做过多的介绍,以后有机会单独写一篇机台介绍Passivation工艺流程看这篇前首先了解3个专有名次RV-Redistribution Via, 形成孔,联通上层的APL层与下层的Top Metal层APL-Aluminum Pad Layer,芯片的金属接点,主要材料为铝,连接外部的电路CB-Chip Barrier,用于保护芯片1.RV1.薄膜沉积在Top Metal上分别是 SiN/OxideSiN层: 刻蚀停止层及保护层 防止铜扩散进入介电质及水&氧气氧化CuOxide层: 介电质层2.曝光显影由于尺寸较大,这里使用I-line光刻机3.RV层刻蚀①刻蚀②原位光阻剥离③LRM,打开底部的SIN停止层Oxide刻蚀光阻剥离LRM,打开底部SIN2.APL1.薄膜沉积从下到上依次是:TaN层:阻挡层,防止铝进入铜Ti/TiN层:胶水层AL层:导体Ti/TiN层:抗反射层2.曝光显影这里使用的也是I-Line光刻机3.APL刻蚀①AL Pad刻蚀+原位光阻剥离,此步骤有少量Oxide损失②聚合物清洗③后处理 O2灰化3.CB1.薄膜沉积从下到上依次是Oxide层Nitride层2.曝光显影使用I-Line光刻机3.CB刻蚀①CB层刻蚀②异位光阻剥离③清洗 去除聚合物④O2灰化处理前几期链接:参考文献:1.一种含有气流控制装置的去耦反应离子刻蚀设备2.AMEC官网发布于 2020-11-14 20:47

我要回帖

更多关于 bm-30火箭炮 的文章

 

随机推荐