日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

電子發(fā)燒友App

硬聲App

掃碼添加小助手

加入工程師交流群

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>PyTorch教程3.2之面向?qū)ο蟮脑O(shè)計實現(xiàn)

PyTorch教程3.2之面向?qū)ο蟮脑O(shè)計實現(xiàn)

2023-06-05 | pdf | 0.22 MB | 次下載 | 免費

資料介紹

在我們對線性回歸的介紹中,我們介紹了各種組件,包括數(shù)據(jù)、模型、損失函數(shù)和優(yōu)化算法事實上,線性回歸是最簡單的機(jī)器學(xué)習(xí)模型之一。然而,訓(xùn)練它使用許多與本書中其他模型所需的組件相同的組件。因此,在深入了解實現(xiàn)細(xì)節(jié)之前,有必要設(shè)計一些貫穿本書的 API。深度學(xué)習(xí)中的組件視為對象,我們可以從為這些對象及其交互定義類開始。這種面向?qū)ο蟮膶崿F(xiàn)設(shè)計將極大地簡化演示,您甚至可能想在您的項目中使用它。

受PyTorch Lightning等開源庫的啟發(fā),在高層次上我們希望擁有三個類:(i)Module包含模型、損失和優(yōu)化方法;(ii)DataModule提供用于訓(xùn)練和驗證的數(shù)據(jù)加載器;(iii) 兩個類結(jié)合使用該類 Trainer,這使我們能夠在各種硬件平臺上訓(xùn)練模型。本書中的大部分代碼都改編自Moduleand DataModuleTrainer只有在討論 GPU、CPU、并行訓(xùn)練和優(yōu)化算法時,我們才會涉及該類。

import time
import numpy as np
import torch
from torch import nn
from d2l import torch as d2l
import time
import numpy as np
from mxnet.gluon import nn
from d2l import mxnet as d2l
import time
from dataclasses import field
from typing import Any
import jax
import numpy as np
from flax import linen as nn
from flax.training import train_state
from jax import numpy as jnp
from d2l import jax as d2l
No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
import time
import numpy as np
import tensorflow as tf
from d2l import torch as d2l

3.2.1. 公用事業(yè)

我們需要一些實用程序來簡化 Jupyter 筆記本中的面向?qū)ο?a target='_blank' class='arckwlink_none'>編程。挑戰(zhàn)之一是類定義往往是相當(dāng)長的代碼塊。筆記本電腦的可讀性需要簡短的代碼片段,穿插著解釋,這種要求與 Python 庫常見的編程風(fēng)格不相容。第一個實用函數(shù)允許我們在創(chuàng)建類后將函數(shù)注冊為類中的方法。事實上,即使我們已經(jīng)創(chuàng)建了類的實例,我們也可以這樣做!它允許我們將一個類的實現(xiàn)拆分成多個代碼塊。

def add_to_class(Class): #@save
  """Register functions as methods in created class."""
  def wrapper(obj):
    setattr(Class, obj.__name__, obj)
  return wrapper

讓我們快速瀏覽一下如何使用它。我們計劃 A用一個方法來實現(xiàn)一個類do我們可以先聲明類并創(chuàng)建一個實例,而不是在同一個代碼塊中A同時 擁有兩者的代碼。doAa

class A:
  def __init__(self):
    self.b = 1

a = A()

do接下來我們像往常一樣 定義方法,但不在 classA的范圍內(nèi)。相反,我們add_to_class用類A作為參數(shù)來裝飾這個方法。這樣做時,該方法能夠訪問 的成員變量,A正如我們所期望的那樣,如果它已被定義為 的A定義的一部分。讓我們看看當(dāng)我們?yōu)閷嵗{(diào)用它時會發(fā)生什么a。

@add_to_class(A)
def do(self):
  print('Class attribute "b" is', self.b)

a.do()
Class attribute "b" is 1
@add_to_class(A)
def do(self):
  print('Class attribute "b" is', self.b)

a.do()
Class attribute "b" is 1
@add_to_class(A)
def do(self):
  print('Class attribute "b" is', self.b)

a.do()
Class attribute "b" is 1
@add_to_class(A)
def do(self):
  print('Class attribute "b" is', self.b)

a.do()
Class attribute "b" is 1

第二個是實用程序類,它將類 __init__方法中的所有參數(shù)保存為類屬性。這使我們無需額外代碼即可隱式擴(kuò)展構(gòu)造函數(shù)調(diào)用簽名。

class HyperParameters: #@save
  """The base class of hyperparameters."""
  def save_hyperparameters(self, ignore=[]):
    raise NotImplemented

我們將其實施推遲到第 23.7 節(jié)。HyperParameters要使用它,我們定義繼承自該方法并調(diào)用 save_hyperparameters該方法的類__init__

# Call the fully implemented HyperParameters class saved in d2l
class B(d2l.HyperParameters):
  def __init__(self, a, b, c):
    self.save_hyperparameters(ignore=['c'])
    print('self.a =', self.a, 'self.b =', self.b)
    print('There is no self.c =', not hasattr(self, 'c'))

b = B(a=1, b=2, c=3)
self.a = 1 self.b = 2
There is no self.c = True
# Call the fully implemented HyperParameters class saved in d2l
class B(d2l.HyperParameters):
  def __init__(self, a, b, c):
    self.save_hyperparameters(ignore=['c'])
    print('self.a =', self.a, 'self.b =', self.b)
    print('There is no self.c =', not hasattr(self, 'c'))

b = B(a=1, b=2, c=3)
self.a = 1 self.b = 2
There is no self.c = True
# Call the fully implemented HyperParameters class saved in d2l
class B(d2l.HyperParameters):
  def __init__(self, a, b, c):
    self.save_hyperparameters(ignore=['c'])
    print('self.a =', self.a, 'self.b =', self.b)
    print('There is no self.c =', not hasattr(self, 'c'))

b = B(a=1, b=2, c=3)
self.a = 1 self.b = 2
There is no self.c = True
# Call the fully implemented HyperParameters class saved in d2l
class B(d2l.HyperParameters):
  def __init__(self, a, b, c):
    self.save_hyperparameters(ignore=['c'])
    print('self.a =', self.a, 'self.b =', self.b)
    print('There is no self.c =', not hasattr(self, 'c'))

b = B(a=1, b=2, c=3)
self.a = 1 self.b = 2
There is no self.c = True

最后一個實用程序允許我們在實驗進(jìn)行時以交互方式繪制實驗進(jìn)度。為了尊重更強(qiáng)大(和復(fù)雜)的TensorBoard,我們將其命名為ProgressBoard。實現(xiàn)推遲到 第 23.7 節(jié)。現(xiàn)在,讓我們簡單地看看它的實際效果。

該方法在圖中 draw繪制一個點,并在圖例中指定。可選的僅通過顯示來平滑線條(x, y)labelevery_n1/n圖中的點。他們的價值是從平均n原始圖中的鄰居點。

class ProgressBoard(d2l.HyperParameters): #@save
  """The board that plots data points in animation."""
  def __init__(self, xlabel=None, ylabel=None, xlim=None,
         ylim=None, xscale='linear', yscale='linear',
         ls=['-', '--', '-.', ':'], colors=['C0', 'C1', 'C2', 'C3'],
         fig=None, axes=None, figsize=(3.5, 2.5), display=True):
    self.save_hyperparameters()

  def draw(self, x, y, label, every_n=1):
    raise NotImpleme

cpu gpu pytorch
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1矽力杰 Silergy SY7215A 同步升壓調(diào)節(jié)器 規(guī)格書 Datasheet 佰祥電子
  2. 1.12 MB  |  5次下載  |  免費
  3. 2HT81696H 內(nèi)置升壓的30W立體聲D類音頻功放數(shù)據(jù)手冊
  4. 1.21 MB   |  1次下載  |  免費
  5. 3HTA6863 3W超低噪聲超低功耗單聲道D類音頻功率放大器數(shù)據(jù)手冊
  6. 0.87 MB   |  次下載  |  免費
  7. 4南芯 Southchip SC8802C 充電控制器 規(guī)格書 Datasheet 佰祥電子
  8. 88.16 KB  |  次下載  |  免費
  9. 5矽力杰 Silergy SY7065 同步升壓轉(zhuǎn)換器 規(guī)格書 Datasheet 佰祥電子
  10. 910.67 KB  |  次下載  |  免費
  11. 6矽力杰 Silergy SY7066 同步升壓轉(zhuǎn)換器 規(guī)格書 Datasheet 佰祥電子
  12. 989.14 KB  |  次下載  |  免費
  13. 7WD6208A產(chǎn)品規(guī)格書
  14. 631.24 KB  |  次下載  |  免費
  15. 8NB685 26 V,12 A,低靜態(tài)電流,大電流 同步降壓變換器數(shù)據(jù)手冊
  16. 1.64 MB   |  次下載  |  2 積分

本月

  1. 1EMC PCB設(shè)計總結(jié)
  2. 0.33 MB   |  12次下載  |  免費
  3. 2PD取電芯片 ECP5702規(guī)格書
  4. 0.88 MB   |  5次下載  |  免費
  5. 3矽力杰 Silergy SY7215A 同步升壓調(diào)節(jié)器 規(guī)格書 Datasheet 佰祥電子
  6. 1.12 MB  |  5次下載  |  免費
  7. 4氮化鎵GaN FET/GaN HEMT 功率驅(qū)動電路選型表
  8. 0.10 MB   |  3次下載  |  免費
  9. 5PD取電芯片,可取5/9/12/15/20V電壓ECP5702數(shù)據(jù)手冊
  10. 0.88 MB   |  3次下載  |  免費
  11. 6SY50655 用于高輸入電壓應(yīng)用的偽固定頻率SSR反激式穩(wěn)壓器英文資料
  12. 1.01 MB   |  3次下載  |  免費
  13. 7怎么為半導(dǎo)體測試儀選擇精密放大器
  14. 0.65 MB   |  2次下載  |  免費
  15. 8SY52341 次級側(cè)同步整流英文手冊
  16. 0.94 MB   |  2次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935137次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233095次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191469次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183360次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81606次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費下載
  14. 0.02 MB  |  73832次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分
绵阳市| 杭锦后旗| 南开区| 神木县| 宁武县| 通道| 广东省| 开江县| 郑州市| 梅河口市| 辽中县| 中江县| 五寨县| 东安县| 温泉县| 绍兴市| 胶南市| 竹溪县| 仲巴县| 婺源县| 神农架林区| 正定县| 太和县| 天津市| 恭城| 富民县| 喀什市| 出国| 易门县| 呼玛县| 太仆寺旗| 海淀区| 鄂托克前旗| 阳信县| 怀远县| 奇台县| 龙江县| 丹巴县| 平阴县| 信阳市| 南部县|