版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
模型定義Pytorch實現(xiàn)深度學習模型步驟01訓練的基本步驟思想分為四大步驟:數(shù)據(jù)處理:包括對訓練數(shù)據(jù)集的預處理,以及讀取數(shù)據(jù)集。模型構(gòu)建:包括網(wǎng)絡(luò)模型以及前向傳播過程的設(shè)計。定義優(yōu)化方法:包括代價函數(shù)和優(yōu)化器。模型訓練:包括定義模型訓練次數(shù),顯示訓練信息等功能。
圖1.深度學習模型訓練流程圖Pytorch實現(xiàn)深度學習模型步驟01深度學習步驟示例:圖片來源:/video/BV1Y7411d7Ys?from=search&seid=3765076366663992699第1步準備數(shù)據(jù)集(包括數(shù)據(jù)集的讀取和數(shù)據(jù)集的預處理),此處定義了兩個張量。第2步設(shè)計網(wǎng)絡(luò)模型并定義網(wǎng)絡(luò)結(jié)構(gòu),此處定義了一個邏輯回歸模型,需要注意的是必須繼承torch.nn.Module父類,這樣才具有必須的變量和方法。第3步定義模型損失函數(shù)與優(yōu)化器。第4步定義訓練循環(huán)過程(包括前向傳播,反向傳播,更新網(wǎng)絡(luò)參數(shù))。每個深度模型都離不開這基本的四步,只有掌控全局,才能更加深入理解每一步具體內(nèi)容。Pytorch實現(xiàn)深度學習模型步驟01
數(shù)據(jù)處理模塊,即數(shù)據(jù)集的準備。這一環(huán)節(jié)在實際情況下要復雜得多,可以想像深度學習處理的數(shù)據(jù)集多種多樣:有文本數(shù)據(jù)集、圖像數(shù)據(jù)集、視頻數(shù)據(jù)集、語音數(shù)據(jù)集等。對于每種數(shù)據(jù)類型,它們處理方式是不同的。常用的數(shù)據(jù)預處理方法包含如下幾種:(1)歸一化數(shù)據(jù)歸一化也即0-1標準化,又稱最大值-最小值標準化,核心要義是將原始指標縮放到0-1之間的區(qū)間內(nèi)。相當于對原變量做了一次線性變化。這對后續(xù)的處理十分重要,因為很多默認參數(shù)(如PCA-白化中的epsilon)都假定數(shù)據(jù)已被縮放到合理區(qū)間。其公式為EX=(x-min)/(max-min)數(shù)據(jù)處理模塊Pytorch實現(xiàn)深度學習模型步驟01(2)逐樣本均值消減如果你的數(shù)據(jù)是平穩(wěn)的(即數(shù)據(jù)每一個維度的統(tǒng)計都服從相同分布),那么你可以考慮在每個樣本上減去數(shù)據(jù)的統(tǒng)計平均值(逐樣本計算)。本質(zhì)上講,均值消減就是去掉信號中的直流分量,從而,相對放大攜帶更大信息量的交流成分。計算公式為對于圖像,這種歸一化可以移除圖像的平均亮度值(intensity)。很多情況下我們對圖像的照度并不感興趣,而更多地關(guān)注其內(nèi)容,這時對每個數(shù)據(jù)點移除像素的均值是有意義的。注意:雖然該方法廣泛地應用于圖像,但在處理彩色圖像時需要格外小心,具體來說,是因為不同色彩通道中的像素并不都存在平穩(wěn)特性。數(shù)據(jù)處理模塊
Pytorch實現(xiàn)深度學習模型步驟01(3)特征標準化特征標準化指使得數(shù)據(jù)具有零均值和單位方差的過程。在深度學習中,特征標準化根據(jù)對象的不同,分為四類:批標準化(BatchNormalization),層標準化(LayerNormalization),實例標準化(InstanceNormalization),組標準化(GroupNormalization)。數(shù)據(jù)處理模塊
圖片來源:/p/69659844Mean(x),Var(x)分別表示數(shù)據(jù)x的均值和標準差。Pytorch實現(xiàn)深度學習模型步驟01模型構(gòu)建模塊不同問題,網(wǎng)絡(luò)模型選擇是不同的,對監(jiān)督學習問題,常見的網(wǎng)絡(luò)模型包括:DNN(深度神經(jīng)網(wǎng)絡(luò));RNN(循環(huán)神經(jīng)網(wǎng)絡(luò));CNN(卷積神經(jīng)網(wǎng)絡(luò));對無監(jiān)督學習,最常見有生成對抗網(wǎng)絡(luò)(GAN);自編碼器(Auto-encoder)。深度神經(jīng)網(wǎng)絡(luò)DNN:
就實質(zhì)上來說,就是全連接的前饋深度神經(jīng)網(wǎng)絡(luò),因此主要的應用場景是分類(Classification)任務(wù),比如數(shù)字識別等,由于是純粹的全連接網(wǎng)絡(luò),因此應用性并不是很強。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN):主要用于處理有序的問題,比如時間序列等,由于RNN有“記憶”能力,可以“模擬”數(shù)據(jù)間的依賴關(guān)系。RNN有很多種變形,其中最著名的是LSTM,總的來說RNN可以解決語音分析,文字分析,時間序列分析。主要的重點就是分析數(shù)據(jù)之間存在的前后依賴關(guān)系。Pytorch實現(xiàn)深度學習模型步驟01模型構(gòu)建模塊自編碼器(Auto-encoder):主要由兩部分組成:1、編碼器(Encoder)2、解碼器(Decoder)。將輸入數(shù)據(jù),通過編碼器與解碼器,我們得到了重構(gòu)的結(jié)果,自編碼器的重點是低維的壓縮表示,主要用于降維和去除噪聲等領(lǐng)域。卷積神經(jīng)網(wǎng)絡(luò)CNN:占據(jù)了深度學習的半壁江山,它在深度學習的地位舉足輕重,CNN的精髓是在多個空間位置上共享參數(shù),模擬人的視覺系統(tǒng)。主要適用于處理圖片,視頻等大部分格狀結(jié)構(gòu)化數(shù)據(jù)。Pytorch實現(xiàn)深度學習模型步驟01模型構(gòu)建模塊生成對抗網(wǎng)絡(luò)(GAN):由兩個網(wǎng)絡(luò)組成,一個是生成網(wǎng)絡(luò)用于生成圖片使其與訓練數(shù)據(jù)相似,另一個是判別式網(wǎng)絡(luò)用于判別圖片是否是訓練數(shù)據(jù)還是偽裝的數(shù)據(jù)。GAN主要在圖像領(lǐng)域流行,并慢慢的推廣到語音,視頻等領(lǐng)域。結(jié)合一個視頻案例:視頻來源:/video/av30222258/Pytorch實現(xiàn)深度學習模型步驟01損失函數(shù),優(yōu)化器和訓練過程在前面我們已經(jīng)詳細學習過了損失函數(shù)和優(yōu)化器的知識,常見損失函數(shù)包括MSELoss(均方差損失)、CrossEntropyLoss(交叉熵損失)、TripletLoss(三元組損失)等。優(yōu)化器包括:SGD(隨機梯度下降算法)、EarlyStopping(早停法)、Adagrad(自適應梯度下降)等。關(guān)于訓練過程,相對比較簡單,這部分內(nèi)容將在后續(xù)章節(jié)介紹。02數(shù)據(jù)集的預處理是深度學習中的重要步驟之一。由于計算機視覺在各領(lǐng)域的廣泛應用,許多時候都要用到圖像的預處理,此處,將介紹利用Torchvision.transforms公共預處理庫,來實現(xiàn)圖像預處理常見的操作,包括:裁剪、翻轉(zhuǎn)、旋轉(zhuǎn)、縮放等。將輸入圖像放大為原來的3倍,包括3步:導入包,定義操作,執(zhí)行操作。代碼如下:fromtorchvisionimporttransformsfromPILimportImagecrop=transforms.Scale(3)img=Image.open('test.jpg')croped_img=crop(img)數(shù)據(jù)集的預處理02在pytorch深度學習框架下,Torchvision.transforms的調(diào)用方法略有不同。我們只需要在定義下載器時,傳入我們定義的數(shù)據(jù)處理方法可以了,pytorch深度學習框架自動執(zhí)行操作,而不需要我們顯式地調(diào)用??梢杂胻ransforms.Compose方法將所有需要的預處理操作建立列表,在實例化Dataset類時加載預處理操作列表,在利用DataLoader加載數(shù)據(jù)Dataset時會自動依次執(zhí)行預處理操作。下面是transforms.Compose的代碼片斷。defdownload_data(data_dir):MyTransform=transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.1307,),(0.3081,))])returnMNIST(data_dir,train=True,download=True,transform=MyTransform)數(shù)據(jù)集的預處理02Torchvision.transforms公共預處理庫常用的方法羅列如下:翻轉(zhuǎn)與旋轉(zhuǎn)——FlipandRotation
以概率P水平翻轉(zhuǎn):transforms.RandomHorizontalFlip(p=0.5)
以概率p垂直翻轉(zhuǎn):transforms.RandomVerticalFlip(p=0.5)
隨機旋轉(zhuǎn):transforms.RandomRotation(degrees,resample=False,expand=False,center=None,fill=None)裁剪——Crop
中心裁剪:transforms.CenterCrop(size)
隨機裁剪:transforms.RandomCrop(size,padding=None,pad_if_needed=False,fill=0,padding_mode='constant')
隨機長寬比裁剪:transforms.RandomResizedCrop(*args,**kwargs)
上下左右中心裁剪:transforms.FiveCrop(size)
上下左右中心裁剪后翻轉(zhuǎn):transforms.TenCrop(size,vertical_flip=False)數(shù)據(jù)集的預處理02數(shù)據(jù)集的預處理隨機擦除——RandomErasing隨機擦除是指:隨機選擇圖像中的矩形區(qū)域并刪除其像素。隨機擦除可用于模擬圖片遮擋情況下的場景,同時能夠降低過擬合的風險,使得模型對遮擋具有更強的魯棒性。Torchvision.transforms.RandomErasing(p=0.5,scale=(0.02,0.33),ratio=(0.3,3.3),value=0,inplace=False)參數(shù):p:是指執(zhí)行隨機擦除操作的概率。scale:刪除區(qū)域相對于輸入圖像的比例范圍。ratio:擦除區(qū)域的縱橫比范圍。value:消除值,默認值為0,如果為單個int,則用于擦除所有像素。如果元組的長度為3,則分別用于擦除R,G,B通道。如果是“random”字符串,則使用隨機值擦除像素。inplace:布爾值,如果為True,則操作就地執(zhí)行,默認設(shè)置為False。標準化——NormalizationTorchvision.transforms.Normalize(mean,std,inplace=False)用均值和標準差對張量進行標準化,此操作將標準化每個通道的輸入張量,需要給定n通道的平均值:(mean[1],…mean[n])和標準差(std[1],….std[n])。mean:(列表)——列表中每個值對應每個通道的平均值。std:(列表)——列表中每個值對應每個通道的標準差。inplace:(布爾值,可選)——如果為True指定就地操作,默認為False。操作計算:Output[channel]=(input[channel]–mean[channel])/std[channel]02數(shù)據(jù)集的預處理標準化——Normalization圖像來源:《數(shù)字圖像處理》這里使用了transforms.Compose(),它可以組合多個transform。如下代碼所示:將原圖先轉(zhuǎn)換為張量,然后使用Normalize標準化數(shù)據(jù),最后利用ToPILmage()轉(zhuǎn)換為PIL圖像數(shù)據(jù)。02數(shù)據(jù)集的預處理數(shù)據(jù)集的讀取03數(shù)據(jù)集的讀取方式一:讀PyTorch自帶數(shù)據(jù)torchvision.datasets中包含了以下數(shù)據(jù)集:MNIST,COCO,Imagenet-12,STL10,CIFAR10和CIFAR100等。下面以MNIST為例介紹自帶數(shù)據(jù)的讀取。MNIST(root,train=True,transform=None,target_transform=None,download=False)參數(shù)說明:root:下載數(shù)據(jù)集所存放的文件夾路徑。train:如果為True則指定為訓練集,如果為False指定為測試集。Transform:指定對輸入數(shù)據(jù)需要執(zhí)行的預處理操作。target_transform:指定對目標對象數(shù)據(jù)需要執(zhí)行的預處理操作,比如對標簽進行數(shù)據(jù)類型變換。download:如果為True,則從互聯(lián)網(wǎng)上下載數(shù)據(jù)集,并把數(shù)據(jù)集放在root目錄下。如果數(shù)據(jù)集之前下載過,則將處理過的數(shù)據(jù)(minist.py中有相關(guān)函數(shù))放在processed文件夾下。數(shù)據(jù)集的讀取03數(shù)據(jù)集的讀取方式二:ImageFolderTorchvision.datasets.ImageFolder是一個通用的圖像數(shù)據(jù)加載器,它要求所有相同類的圖片位于同一個文件夾下,并且不同類的文件夾要在同一根目錄下。例如這里是在train根目錄下的不同類別。數(shù)據(jù)集的讀取03數(shù)據(jù)集的讀取方式二:ImageFolder參數(shù)詳解:root:下載數(shù)據(jù)集所存放的文件夾路徑。Transform:指定對輸入數(shù)據(jù)需要執(zhí)行的預處理操作。target_transform:指定對目標對象數(shù)據(jù)需要執(zhí)行的預處理操作。返回值:self.classes:用一個列表(list)保存類別名稱。self.class_to_idx:保存(索引號,類別)的列表(list)。self.imgs:保存(img-path,類別)的列表(list)。ImageFolder(root="rootfolderpath",[transform,target_transform])數(shù)據(jù)集的讀取03數(shù)據(jù)集的讀取方式三:Dataset
torch.utils.data.Dataset是自定義數(shù)據(jù)集方法的抽象類。通過繼承這個抽象類,來定義自己的數(shù)據(jù)類,非常簡單,只需要定義__len__()和__getitem__()這兩個方法就可以。雖然,通過繼承torch.utils.data.Dataset這個抽象類,可以定義自己的數(shù)據(jù)類,但是很難實現(xiàn)批量多線程讀取數(shù)據(jù),所以pytorch還提供了另一個類torch.utils.data.DataLoader類來定義一個新的迭代器,用來將自定義的數(shù)據(jù)或者PyTorch的數(shù)據(jù)按照每批的數(shù)據(jù)量(batchsize)封裝成Tensor,后續(xù)只需要再包裝成Variable即可作為模型的輸入。讀取數(shù)據(jù)集時,一般會用到python抽象類的3個方法:__len__(self)定義當被len()函數(shù)調(diào)用時的行為(返回容器中元素的個數(shù))。__getitem__(self)定義獲取容器中指定元素的行為,即允許類對象可以有索引操作。__iter__(self)定義當?shù)萜髦械脑氐男袨?。?shù)據(jù)集的讀取03數(shù)據(jù)集加載:DataLoader數(shù)據(jù)加載器。它組合數(shù)據(jù)集和采樣器,并在數(shù)據(jù)集上提供單進程或多進程迭代器。classtorch.utils.data.DataLoader(dataset,batch_size=1,shuffle=False,sampler=None,num_workers=0,collate_fn=<functiondefault_collate>,pin_memory=False,drop_last=False)參數(shù):dataset
(Dataset)–加載數(shù)據(jù)的數(shù)據(jù)集。batch_size
(int,optional)–每個batch加載多少個樣本(默認:1)。shuffle
(bool,optional)–設(shè)置為True時會在每個epoch重新打亂數(shù)據(jù)的順序(默認:False)。sampler
(Sampler,optional)–定義從數(shù)據(jù)集中提取樣本的策略。如果指定,則忽略shuffle參數(shù)。num_workers
(int,optional)–用多少個子進程加載數(shù)據(jù)。0表示數(shù)據(jù)將在主進程中加載(默認:0)。collate_fn
(callable,optional)–回調(diào)函數(shù),允許在加載時對數(shù)據(jù)作變換。pin_memory
(bool,optional)–設(shè)置為True時鎖頁內(nèi)存。drop_last
(bool,optional)–如果數(shù)據(jù)集大小不能被batchsize整除,則設(shè)置為True后可刪除最后一個不完整的batch。如果設(shè)為False,并且數(shù)據(jù)集的大小不能被batchsize整除,則最后一個batch將仍然代入計算(默認:False)。模型的定義04調(diào)用pytorch內(nèi)置的網(wǎng)絡(luò)模型torchvision.models包含以下模型結(jié)構(gòu):AlexNet,VGG,ResNet,SqueezeNet,DenseNet??梢允褂秒S機初始化的權(quán)重來創(chuàng)建這些模型。importtorchvision.modelsasmodelsresnet18=models.resnet18()alexnet=models.alexnet()squeezenet=models.squeezenet1_0()densenet=models.densenet_161()也可以使用預訓練(pre-trained)的模型。importtorchvision.modelsasmodelsresnet18=models.resnet18(pretrained=True)#pretrained=True即可使用預訓練的模型
alexnet=models.alexnet(pretrained=True)模型的定義04繼承nn.Module父類實現(xiàn)自定義網(wǎng)絡(luò)
classConvNet(nn.Module):def__init__(self):super(ConvNet,self).__init__()self.conv1=nn.Conv2d(1,3,kernel_size=3)self.fc=nn.Linear(192,10)defforward(self,x):x=F.relu(F.max_pool2d(self.conv1(x),3))x=x.view(-1,192)x=self.fc(x)returnF.log_softmax(x,dim=1)deftrain_mnist(config):device=torch.device("cuda"iftorch.cuda.is_available()else"cpu")train_loader,test_loader=get_data_loaders()model=ConvNet().to(device)optimizer=optim.SGD(model.parameters(),lr=config["lr"],momentum=config["momentum"])whileTrue:train(model,optimizer,train_loader,device)acc=test(model,test_loader,device)模型評估與保存優(yōu)化算法與損失函數(shù)01優(yōu)化算法與損失函數(shù)在深度學習模型中具有舉足輕重的作用,優(yōu)化算法幫助模型訓練更加穩(wěn)定,更加容易收斂,并且?guī)椭P吞鼍植繕O值或鞍點,尋找全局最小值。損失函數(shù)則是用來計算預測值與真實值之間誤差。Pytorch的torch.optim和torch.nn中提供了常見的優(yōu)化算法與損失函數(shù)。優(yōu)化算法:
損失函數(shù):torch.optim.Optimizertorch.nn.L1Losstorch.optim.Adadelta torch.nn.MSELosstorch.optim.Adagradtorch.nn.NLLLosstorch.optim.Adamax torch.nn.CrossEntropyLoss torch.optim.RMSprop torch.nn.BCELoss torch.optim.Rprop torch.nn.KLDivLosstorch.optim.SGD torch.nn.MarginRankingLosstorch.optim.ASGD torch.nn.HingeEmbeddingLoss torch.nn.SmoothL1Loss01優(yōu)化算法與損失函數(shù)負對數(shù)概率損失函數(shù)NLLLossclasstorch.nn.NLLLoss(weight=None,size_average=True)weight參數(shù)為手動指定的每個類別的權(quán)重,是一個一維張量。如果給定的話,其長度必須為類別數(shù)。當訓練集樣本不均衡的話,使用這個參數(shù)是非常有用的。size_average參數(shù)指定是否取平均。classtorch.nn.NLLLoss2d(weight=None,size_average=True)用于圖片的負對數(shù)概率損失函數(shù)。示例代碼如下:m=nn.Conv2d(16,32,(3,3)).float()loss=nn.NLLLoss2d()input=autograd.Variable(torch.randn(3,16,10,10))target=autograd.Variable(torch.LongTensor(3,8,8).random_(0,4))output=loss(m(input),target)output.backward()01優(yōu)化算法與損失函數(shù)絕對誤差損失函數(shù)L1Lossclasstorch.nn.L1Loss(size_average=True)如果在創(chuàng)建L1Loss實例的時候在構(gòu)造函數(shù)中傳入size_average=False,那么求出來的絕對值的和將不會除以樣本個數(shù)。如果是True,則對絕對值的和求平均。均方誤差損失函數(shù)MSELossclasstorch.nn.MSELoss(size_average=True)如果在創(chuàng)建MSELoss實例的時候在構(gòu)造函數(shù)中傳入size_average=False,那么求出來的平方和將不會除以樣本個數(shù)。如果是True,則對平方和求平均。01優(yōu)化算法與損失函數(shù)交叉熵損失函數(shù)CrossEntropyLossclasstorch.nn.CrossEntropyLoss(weight=None,size_average=True)當訓練一個多類分類器的時候,這個方法是十分有用的。其參數(shù)用法同前。二進制交叉熵損失函數(shù)BCELossclasstorch.nn.BCELoss(weight=None,size_average=True)用于計算auto-encoder重構(gòu)誤差。默認情況下,輸出結(jié)果會基于樣本數(shù)平均,如果size_average=False的話,損失值會被累加。KL散度損失函數(shù)KLDivLossclasstorch.nn.KLDivLoss(weight=None,size_average=True)KL散度常用來描述兩個分布的距離,常用于在輸出分布的空間上執(zhí)行直接回歸任務(wù),其參數(shù)用法同前。01優(yōu)化算法與損失函數(shù)帶容限約束的排序損失函數(shù)MarginRankingLoss
01優(yōu)化算法與損失函數(shù)合頁嵌入損失函數(shù)HingeEmbeddingLoss
平滑絕對誤差損失函數(shù)SmoothL1Lossclasstorch.nn.SmoothL1Loss(size_average=True)此損失函數(shù)對于異常點的敏感性不如MSELoss,而且,在某些情況下防止了梯度爆炸。平滑絕對誤差損失函數(shù)有時也被稱為Huberloss。01優(yōu)化算法與損失函數(shù)優(yōu)化器算法Optimizerclasstorch.optim.Optimizer(params,defaults)優(yōu)化器算法即梯度下降法,是最原始的,也是最基礎(chǔ)的算法。它將所有的數(shù)據(jù)集都載入,計算它們所有的梯度,然后沿著梯度相反的方向更新權(quán)重。自適應學習率算法Adadeltaclasstorch.optim.Adadelta(params,lr=1.0,rho=0.9,eps=1e-06,weight_decay=0)這是一種自適應學習率方法,能夠隨時間跟蹤平方梯度并自動適應每個參數(shù)的學習率,是基于梯度下降的學習算法。自適應梯度算法Adagradclasstorch.optim.Adagrad(params,lr=0.01,lr_decay=0,weight_decay=0)自適應梯度算法會隨著學習的進行,使得學習率逐漸減小。01優(yōu)化算法與損失函數(shù)Adam優(yōu)化器classtorch.optim.Adam(params,lr=0.001,betas=(0.9,0.999),eps=1e-08,weight_decay=0)這是一種隨機梯度下降法的擴展算法,主要用于基于深度學習的計算機視覺和自然語言處理。Adamax優(yōu)化器classtorch.optim.Adamax(params,lr=0.002,betas=(0.9,0.999),eps=1e-08,weight_decay=0)Adamax是Adam的一種變體,此方法對學習率的上限提供了一個更簡單的范圍,在Adam中,單個權(quán)重的更新規(guī)則是將其梯度與當前和過去梯度的L^2范數(shù)(標量)成反比例縮放。RMSprop算法classtorch.optim.RMSprop(params,lr=0.01,alpha=0.99,eps=1e-08,weight_decay=0,momentum=0,centered=False)RMSProp算法不是像AdaGrad算法那樣暴力直接的累加平方梯度,而是加了一個衰減系數(shù)來控制歷史信息的影響。01優(yōu)化算法與損失函數(shù)彈性反向傳播算法Rpropclasstorch.optim.Rprop(params,lr=0.01,etas=(0.5,1.2),step_sizes=(1e-06,50))RPROP算法具有收斂速度快、不容易陷入局部極小點、自適應能力強等優(yōu)點。隨機梯度下降算法SGDclasstorch.optim.SGD(params,lr=,momentum=0,dampening=0,weight_decay=0,nesterov=False)隨機梯度下降算法每次從訓練集中隨機選擇一個樣本來進行學習。平均隨機梯度下降算法ASGD
classtorch.optim.ASGD(params,lr=0.01,lambd=0.0001,alpha=0.75,t0=1000000.0,weight_decay=0)隨機平均梯度算法在內(nèi)存中為每一個樣本都維護一個舊的梯度,隨機選擇第i個樣本來更新此樣本的梯度,其他樣本的梯度保持不變,然后求得所有梯度的平均值,進而更新了參數(shù)。模型的評估與保存02一個判斷患者的深度學習模型,如果判斷結(jié)果為陽性,表示此樣本為患病者,如果結(jié)果為陰性,則為健康者。假定有200個患病者和200個健康者參與測試,測試結(jié)果如下表。TP(Truepositive,真陽性)-190FN(Falsenegative,假陰性)-10TN(Truenegative,真陰性)-170FP(Falsepositive,假陽性)-30準確率(Accuracy):(TP+TN)/(TP+TN+FP+FN)精確率(Precision)
:TP/(TP+FP)召回率(Recall):TP/(TP+FN)F1分數(shù):(2×Precision×Recall)/(Precision+Recall)模型的評估患病者健康者測試總數(shù)測試結(jié)果為陽性19030220測試結(jié)果為陰性10170180真實總數(shù)200200400模型的評估與保存02模型的評估關(guān)于模型的評估,離不開最重要的評估指標的概念,這就好比一場跑步比賽中,每位選手全程的用時,這里用時就是評估指標。不同的問題,評估指標是不同的(跑步比賽評估指標與跳水比賽指標是不同的)。深度學習常用的模型評估指標包括:準確率:預測正確的結(jié)果占總樣本的百分比。精確率:所有被預測為陽性的樣本中實際為陽性的樣本的概率。召回率:實際為陽性的樣本中被預測為陽性的樣本的概率。F1分數(shù):精確度和召回率之間的關(guān)系。模型的評估與保存02模型的評估可視化(1)ROC曲線ROC曲線,即接受者操作特性曲線(receiveroperatingcharacteristiccurve)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 多模態(tài)數(shù)據(jù)融合在數(shù)字孿生中的挑戰(zhàn)
- 基于機器學習的外觀模式檢測方法研究
- 游戲資料:暗黑破壞神2 劇情背景資料
- 儀隴縣司法局公開選聘儀隴縣法律顧問團成員8-120的備考題庫及完整答案詳解一套
- 2025年中國民航科學技術(shù)研究院面向社會公開招聘合同制工作人員29人備考題庫含答案詳解
- 2025年中國社會科學院西亞非洲研究所(中國非洲研究院)公開招聘備考題庫(第一批)帶答案詳解
- 2025年寧夏中科碳基材料產(chǎn)業(yè)技術(shù)研究院招聘備考題庫附答案詳解
- 2025年中國科學院海西研究院泉州裝備制造研究中心所創(chuàng)新平臺業(yè)務(wù)主管招聘備考題庫及答案詳解參考
- 2025年招商銀行無錫分行社會招聘備考題庫參考答案詳解
- 2025年國投生物制造創(chuàng)新研究院有限公司所屬控股投資企業(yè)負責人公開招聘備考題庫完整參考答案詳解
- 工會財務(wù)知識課件
- 裝修工程質(zhì)量保修服務(wù)措施
- 鈑金裝配調(diào)試工藝流程
- 腫瘤病人疼痛護理
- 醫(yī)療應用的輻射安全和防護課件
- 項目經(jīng)理年底匯報
- 新生兒戒斷綜合征評分標準
- 【公開課】絕對值人教版(2024)數(shù)學七年級上冊+
- 藥品檢驗質(zhì)量風險管理
- 中國古橋欣賞課件
- 2025年硅酸乙酯-32#項目可行性研究報告
評論
0/150
提交評論