亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Pytorch深度學(xué)習(xí)之實現(xiàn)病蟲害圖像分類

 更新時間:2021年12月24日 16:33:28   作者:masterHu_  
PyTorch是一個開源的Python機(jī)器學(xué)習(xí)庫,基于Torch,用于自然語言處理等應(yīng)用程序。它具有強(qiáng)大的GPU加速的張量計算和自動求導(dǎo)系統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)。本文將介紹如何通過PyTorch實現(xiàn)病蟲害圖像分類,感興趣的可以學(xué)習(xí)一下

一、pytorch框架

1.1、概念

PyTorch是一個開源的Python機(jī)器學(xué)習(xí)庫,基于Torch,用于自然語言處理等應(yīng)用程序。

2017年1月,由Facebook人工智能研究院(FAIR)基于Torch推出了PyTorch。它是一個基于Python的可續(xù)計算包,提供兩個高級功能:

1、具有強(qiáng)大的GPU加速的張量計算(如NumPy)。

2、包含自動求導(dǎo)系統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)。

1.2、機(jī)器學(xué)習(xí)與深度學(xué)習(xí)的區(qū)別

兩者之間區(qū)別很多,在本篇博客中只簡單描述一部分。以圖片的形式展現(xiàn)。

前者為機(jī)器學(xué)習(xí)的過程。

后者為深度學(xué)習(xí)的過程。

1.3、在python中導(dǎo)入pytorch成功截圖

二、數(shù)據(jù)集

本次實驗使用的是coco數(shù)據(jù)集中的植物病蟲害數(shù)據(jù)集。分為訓(xùn)練文件Traindata和測試文件TestData.,

TrainData有9種分類,每一種分類有100張圖片。

TestData有9中分類,每一種分類有10張圖片。

在我下一篇博客中將數(shù)據(jù)集開源。

下面是我的數(shù)據(jù)集截圖:

三、代碼復(fù)現(xiàn)

3.1、導(dǎo)入第三方庫

import torch
from torch.utils.data import Dataset, DataLoader
import numpy as np
import matplotlib
import os
import cv2
from PIL import Image
import torchvision.transforms as transforms
import torch.optim as optim
from torch.autograd import Variable
import torch.nn as nn
import torch.nn.functional as F
from Test.CNN import Net
import json
from Test.train_data import Mydataset,pad_image

3.2、CNN代碼

# 構(gòu)建神經(jīng)網(wǎng)絡(luò)
class Net(nn.Module):#定義網(wǎng)絡(luò)模塊
    def __init__(self):
        super(Net, self).__init__()
        # 卷積,該圖片有3層,6個特征,長寬均為5*5的像素點,每隔1步跳一下
        self.conv1 = nn.Conv2d(3, 6, 5)
        #//(conv1): Conv2d(3, 6, kernel_size=(5, 5), stride=(1, 1))
        self.pool = nn.MaxPool2d(2, 2)#最大池化
        #//(pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
        self.conv2 = nn.Conv2d(6, 16, 5)#卷積
        #//(conv2): Conv2d(6, 16, kernel_size=(5, 5), stride=(1, 1))
        self.fc1 = nn.Linear(16*77*77, 120)#全連接層,圖片的維度為16,
        #(fc1): Linear(in_features=94864, out_features=120, bias=True)
        self.fc2 = nn.Linear(120, 84)#全連接層,輸入120個特征輸出84個特征
        self.fc3 = nn.Linear(84, 7)#全連接層,輸入84個特征輸出7個特征
 
   def forward(self, x):
        print("x.shape1: ", x.shape)
        x = self.pool(F.relu(self.conv1(x)))
        print("x.shape2: ", x.shape)
        x = self.pool(F.relu(self.conv2(x)))
        print("x.shape3: ", x.shape)
        x = x.view(-1, 16*77*77)
        print("x.shape4: ", x.shape)
        x = F.relu(self.fc1(x))
        print("x.shape5: ", x.shape)
        x = F.relu(self.fc2(x))
        print("x.shape6: ", x.shape)
        x = self.fc3(x)
        print("x.shape7: ", x.shape)
        return x


3.3、測試代碼

img_path = "TestData/test_data/1/Apple2 (1).jpg" #使用相對路徑
image = Image.open(img_path).convert('RGB')
image_pad = pad_image(image, (320, 320))
input = transform(image_pad).to(device).unsqueeze(0)
output = F.softmax(net(input), 1)
_, predicted = torch.max(output, 1)
score = float(output[0][predicted]*100)
print(class_map[predicted], " ", str(score)+" %")
plt.imshow(image_pad) # 顯示圖片

四、訓(xùn)練結(jié)果

4.1、LOSS損失函數(shù)

4.2、 ACC

4.3、單張圖片識別準(zhǔn)確率

四、小結(jié)

這次搭建的網(wǎng)絡(luò)是基于深度學(xué)習(xí)框架Lenet,并自己做了一些修改完成。最終的訓(xùn)練的結(jié)果LOSS接近0,ACC接近100%。但是一般的識別率不會達(dá)到這么高,該模型可能會過擬合??刹扇〖糁Φ炔僮鳒p小過擬合。

到此這篇關(guān)于Pytorch深度學(xué)習(xí)之實現(xiàn)病蟲害圖像分類的文章就介紹到這了,更多相關(guān)Pytorch圖像分類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解解決jupyter不能使用pytorch的問題

    詳解解決jupyter不能使用pytorch的問題

    這篇文章主要介紹了詳解解決jupyter不能使用pytorch的問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 深入理解Python變量的數(shù)據(jù)類型和存儲

    深入理解Python變量的數(shù)據(jù)類型和存儲

    這篇文章主要介紹了Python變量的數(shù)據(jù)類型和存儲,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • python flask框架實現(xiàn)傳數(shù)據(jù)到j(luò)s的方法分析

    python flask框架實現(xiàn)傳數(shù)據(jù)到j(luò)s的方法分析

    這篇文章主要介紹了python flask框架實現(xiàn)傳數(shù)據(jù)到j(luò)s的方法,結(jié)合實例形式分析了前端數(shù)據(jù)序列化及后臺Flask交互數(shù)據(jù)返回相關(guān)操作技巧,需要的朋友可以參考下
    2019-06-06
  • Python基于DES算法加密解密實例

    Python基于DES算法加密解密實例

    這篇文章主要介紹了Python基于DES算法加密解密實現(xiàn)方法,以實例形式分析了DES算法實現(xiàn)加密解密的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • 探索Python內(nèi)置數(shù)據(jù)類型的精髓與應(yīng)用

    探索Python內(nèi)置數(shù)據(jù)類型的精髓與應(yīng)用

    本文探索Python內(nèi)置數(shù)據(jù)類型的精髓與應(yīng)用,包括字符串、列表、元組、字典和集合。通過深入了解它們的特性、操作和常見用法,讀者將能夠更好地利用這些數(shù)據(jù)類型解決實際問題。
    2023-09-09
  • 基于OpenCV和Gradio實現(xiàn)簡單的人臉識別詳解

    基于OpenCV和Gradio實現(xiàn)簡單的人臉識別詳解

    這篇文章主要為大家詳細(xì)介紹了如何基于OpenCV和Gradio實現(xiàn)簡單的人臉識別功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-04-04
  • python實現(xiàn)圖片九宮格分割

    python實現(xiàn)圖片九宮格分割

    一張圖片分成的九宮圖,大家知道是怎么做到嗎?這篇文章就為大家詳細(xì)介紹了python實現(xiàn)圖片九宮格分割功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • python雙端隊列原理、實現(xiàn)與使用方法分析

    python雙端隊列原理、實現(xiàn)與使用方法分析

    這篇文章主要介紹了python雙端隊列原理、實現(xiàn)與使用方法,結(jié)合實例形式分析了Python雙端隊列的概念、原理、定義及使用方法,需要的朋友可以參考下
    2019-11-11
  • Django admin美化插件suit使用示例

    Django admin美化插件suit使用示例

    這篇文章主要介紹了Django admin美化插件suit使用示例,簡單介紹了suit的使用界面示例,官方文檔,安裝語句等相關(guān)內(nèi)容,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • 2018年P(guān)ython值得關(guān)注的開源庫、工具和開發(fā)者(總結(jié)篇)

    2018年P(guān)ython值得關(guān)注的開源庫、工具和開發(fā)者(總結(jié)篇)

    本文給大家總結(jié)了2018年P(guān)ython值得關(guān)注的開源庫、工具和開發(fā)者,需要的朋友可以參考下
    2018-01-01

最新評論