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

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

3天內(nèi)不再提示

PyTorch教程-12.1. 優(yōu)化和深度學(xué)習(xí)

jf_pJlTbmA9 ? 來(lái)源:2098332 ? 作者:2098332 ? 2023-06-05 15:44 ? 次閱讀

在本節(jié)中,我們將討論優(yōu)化與深度學(xué)習(xí)之間的關(guān)系以及在深度學(xué)習(xí)中使用優(yōu)化的挑戰(zhàn)。對(duì)于一個(gè)深度學(xué)習(xí)問題,我們通常會(huì)先定義一個(gè) 損失函數(shù)。一旦我們有了損失函數(shù),我們就可以使用優(yōu)化算法來(lái)嘗試最小化損失。在優(yōu)化中,損失函數(shù)通常被稱為優(yōu)化問題的目標(biāo)函數(shù)。按照傳統(tǒng)和約定,大多數(shù)優(yōu)化算法都與最小化有關(guān)。如果我們需要最大化目標(biāo),有一個(gè)簡(jiǎn)單的解決方案:只需翻轉(zhuǎn)目標(biāo)上的標(biāo)志。

12.1.1。優(yōu)化目標(biāo)

盡管優(yōu)化為深度學(xué)習(xí)提供了一種最小化損失函數(shù)的方法,但從本質(zhì)上講,優(yōu)化和深度學(xué)習(xí)的目標(biāo)是根本不同的。前者主要關(guān)注最小化目標(biāo),而后者關(guān)注在給定有限數(shù)據(jù)量的情況下找到合適的模型。在 第 3.6 節(jié)中,我們?cè)敿?xì)討論了這兩個(gè)目標(biāo)之間的區(qū)別。例如,訓(xùn)練誤差和泛化誤差通常不同:由于優(yōu)化算法的目標(biāo)函數(shù)通常是基于訓(xùn)練數(shù)據(jù)集的損失函數(shù),因此優(yōu)化的目標(biāo)是減少訓(xùn)練誤差。然而,深度學(xué)習(xí)(或更廣泛地說,統(tǒng)計(jì)推斷)的目標(biāo)是減少泛化誤差。為了完成后者,除了使用優(yōu)化算法來(lái)減少訓(xùn)練誤差外,我們還需要注意過度擬合。

%matplotlib inline
import numpy as np
import torch
from mpl_toolkits import mplot3d
from d2l import torch as d2l

%matplotlib inline
from mpl_toolkits import mplot3d
from mxnet import np, npx
from d2l import mxnet as d2l

npx.set_np()

%matplotlib inline
import numpy as np
import tensorflow as tf
from mpl_toolkits import mplot3d
from d2l import tensorflow as d2l

為了說明上述不同的目標(biāo),讓我們考慮經(jīng)驗(yàn)風(fēng)險(xiǎn)和風(fēng)險(xiǎn)。如第 4.7.3.1 節(jié)所述 ,經(jīng)驗(yàn)風(fēng)險(xiǎn)是訓(xùn)練數(shù)據(jù)集的平均損失,而風(fēng)險(xiǎn)是整個(gè)數(shù)據(jù)群的預(yù)期損失。下面我們定義兩個(gè)函數(shù):風(fēng)險(xiǎn)函數(shù)f和經(jīng)驗(yàn)風(fēng)險(xiǎn)函數(shù)g。假設(shè)我們只有有限數(shù)量的訓(xùn)練數(shù)據(jù)。結(jié)果,這里g 不如 平滑f。

def f(x):
  return x * torch.cos(np.pi * x)

def g(x):
  return f(x) + 0.2 * torch.cos(5 * np.pi * x)

def f(x):
  return x * np.cos(np.pi * x)

def g(x):
  return f(x) + 0.2 * np.cos(5 * np.pi * x)

def f(x):
  return x * tf.cos(np.pi * x)

def g(x):
  return f(x) + 0.2 * tf.cos(5 * np.pi * x)

下圖說明了訓(xùn)練數(shù)據(jù)集上經(jīng)驗(yàn)風(fēng)險(xiǎn)的最小值可能與風(fēng)險(xiǎn)的最小值(泛化誤差)位于不同的位置。

def annotate(text, xy, xytext): #@save
  d2l.plt.gca().annotate(text, xy=xy, xytext=xytext,
              arrowprops=dict(arrowstyle='->'))

x = torch.arange(0.5, 1.5, 0.01)
d2l.set_figsize((4.5, 2.5))
d2l.plot(x, [f(x), g(x)], 'x', 'risk')
annotate('min ofnempirical risk', (1.0, -1.2), (0.5, -1.1))
annotate('min of risk', (1.1, -1.05), (0.95, -0.5))

pYYBAGR9OLCARSaKAAEhrWBFT9M534.svg

def annotate(text, xy, xytext): #@save
  d2l.plt.gca().annotate(text, xy=xy, xytext=xytext,
              arrowprops=dict(arrowstyle='->'))

x = np.arange(0.5, 1.5, 0.01)
d2l.set_figsize((4.5, 2.5))
d2l.plot(x, [f(x), g(x)], 'x', 'risk')
annotate('min ofnempirical risk', (1.0, -1.2), (0.5, -1.1))
annotate('min of risk', (1.1, -1.05), (0.95, -0.5))

pYYBAGR9OLCARSaKAAEhrWBFT9M534.svg

def annotate(text, xy, xytext): #@save
  d2l.plt.gca().annotate(text, xy=xy, xytext=xytext,
              arrowprops=dict(arrowstyle='->'))

x = tf.range(0.5, 1.5, 0.01)
d2l.set_figsize((4.5, 2.5))
d2l.plot(x, [f(x), g(x)], 'x', 'risk')
annotate('min ofnempirical risk', (1.0, -1.2), (0.5, -1.1))
annotate('min of risk', (1.1, -1.05), (0.95, -0.5))

poYBAGR9OLWAAe0DAAEhtoAyqDg129.svg

12.1.2。深度學(xué)習(xí)中的優(yōu)化挑戰(zhàn)

在本章中,我們將特別關(guān)注優(yōu)化算法在最小化目標(biāo)函數(shù)方面的性能,而不是模型的泛化誤差。在 3.1 節(jié)中,我們區(qū)分了優(yōu)化問題中的解析解和數(shù)值解。在深度學(xué)習(xí)中,大多數(shù)目標(biāo)函數(shù)都很復(fù)雜,沒有解析解。相反,我們必須使用數(shù)值優(yōu)化算法。本章的優(yōu)化算法都屬于這一類。

深度學(xué)習(xí)優(yōu)化有很多挑戰(zhàn)。一些最令人煩惱的是局部最小值、鞍點(diǎn)和梯度消失。讓我們來(lái)看看它們。

12.1.2.1。局部最小值

對(duì)于任何目標(biāo)函數(shù)f(x), 如果值f(x)在 x小于的值f(x)在附近的任何其他點(diǎn)x, 然后f(x)可能是局部最小值。如果值f(x)在x是整個(gè)域內(nèi)目標(biāo)函數(shù)的最小值,則f(x)是全局最小值。

例如,給定函數(shù)

(12.1.1)f(x)=x?cos(πx)for?1.0≤x≤2.0,

我們可以逼近這個(gè)函數(shù)的局部最小值和全局最小值。

x = torch.arange(-1.0, 2.0, 0.01)
d2l.plot(x, [f(x), ], 'x', 'f(x)')
annotate('local minimum', (-0.3, -0.25), (-0.77, -1.0))
annotate('global minimum', (1.1, -0.95), (0.6, 0.8))

pYYBAGR9OLeAVduAAACoUAH2ZEc074.svg

x = np.arange(-1.0, 2.0, 0.01)
d2l.plot(x, [f(x), ], 'x', 'f(x)')
annotate('local minimum', (-0.3, -0.25), (-0.77, -1.0))
annotate('global minimum', (1.1, -0.95), (0.6, 0.8))

poYBAGR9OLqAEVjhAACoUe_or70496.svg

x = tf.range(-1.0, 2.0, 0.01)
d2l.plot(x, [f(x), ], 'x', 'f(x)')
annotate('local minimum', (-0.3, -0.25), (-0.77, -1.0))
annotate('global minimum', (1.1, -0.95), (0.6, 0.8))

poYBAGR9OLyANIdoAACoRjNm0Lo702.svg

深度學(xué)習(xí)模型的目標(biāo)函數(shù)通常有很多局部最優(yōu)值。當(dāng)優(yōu)化問題的數(shù)值解接近局部最優(yōu)時(shí),隨著目標(biāo)函數(shù)解的梯度趨近或變?yōu)榱?,最終迭代得到的數(shù)值解可能只會(huì)局部最小化目標(biāo)函數(shù),而不是全局最小化。只有某種程度的噪聲可能會(huì)使參數(shù)超出局部最小值。事實(shí)上,這是小批量隨機(jī)梯度下降的有益特性之一,其中小批量梯度的自然變化能夠?qū)?shù)從局部最小值中移除。

12.1.2.2。鞍點(diǎn)

除了局部最小值,鞍點(diǎn)是梯度消失的另一個(gè)原因。鞍點(diǎn)是函數(shù)的所有梯度都消失但既不是全局最小值也不是局部最小值的任何位置??紤]函數(shù)f(x)=x3. 它的一階和二階導(dǎo)數(shù)消失為x=0. 優(yōu)化可能會(huì)在此時(shí)停止,即使它不是最小值。

x = torch.arange(-2.0, 2.0, 0.01)
d2l.plot(x, [x**3], 'x', 'f(x)')
annotate('saddle point', (0, -0.2), (-0.52, -5.0))

pYYBAGR9OL6AVkH4AAB9txeE7BM015.svg

x = np.arange(-2.0, 2.0, 0.01)
d2l.plot(x, [x**3], 'x', 'f(x)')
annotate('saddle point', (0, -0.2), (-0.52, -5.0))

pYYBAGR9OL6AVkH4AAB9txeE7BM015.svg

x = tf.range(-2.0, 2.0, 0.01)
d2l.plot(x, [x**3], 'x', 'f(x)')
annotate('saddle point', (0, -0.2), (-0.52, -5.0))

pYYBAGR9OMKAQRt6AAB9u1lYUbg210.svg

更高維度的鞍點(diǎn)更加隱蔽,如下例所示??紤]函數(shù)f(x,y)=x2?y2. 它的鞍點(diǎn)位于(0,0). 這是相對(duì)于y和最低限度x. 此外,它看起來(lái)像一個(gè)馬鞍,這就是這個(gè)數(shù)學(xué)性質(zhì)得名的地方。

x, y = torch.meshgrid(
  torch.linspace(-1.0, 1.0, 101), torch.linspace(-1.0, 1.0, 101))
z = x**2 - y**2

ax = d2l.plt.figure().add_subplot(111, projection='3d')
ax.plot_wireframe(x, y, z, **{'rstride': 10, 'cstride': 10})
ax.plot([0], [0], [0], 'rx')
ticks = [-1, 0, 1]
d2l.plt.xticks(ticks)
d2l.plt.yticks(ticks)
ax.set_zticks(ticks)
d2l.plt.xlabel('x')
d2l.plt.ylabel('y');

poYBAGR9OMSAJE-HAAEDzmdOJZE022.svg

x, y = np.meshgrid(
  np.linspace(-1.0, 1.0, 101), np.linspace(-1.0, 1.0, 101))
z = x**2 - y**2

ax = d2l.plt.figure().add_subplot(111, projection='3d')
ax.plot_wireframe(x.asnumpy(), y.asnumpy(), z.asnumpy(),
         **{'rstride': 10, 'cstride': 10})
ax.plot([0], [0], [0], 'rx')
ticks = [-1, 0, 1]
d2l.plt.xticks(ticks)
d2l.plt.yticks(ticks)
ax.set_zticks(ticks)
d2l.plt.xlabel('x')
d2l.plt.ylabel('y');

poYBAGR9OMaAeNWkAAEDzhXHnnk558.svg

x, y = tf.meshgrid(
  tf.linspace(-1.0, 1.0, 101), tf.linspace(-1.0, 1.0, 101))
z = x**2 - y**2

ax = d2l.plt.figure().add_subplot(111, projection='3d')
ax.plot_wireframe(x, y, z, **{'rstride': 10, 'cstride': 10})
ax.plot([0], [0], [0], 'rx')
ticks = [-1, 0, 1]
d2l.plt.xticks(ticks)
d2l.plt.yticks(ticks)
ax.set_zticks(ticks)
d2l.plt.xlabel('x')
d2l.plt.ylabel('y');

poYBAGR9OMyAPBHMAAED0pssMW0836.svg

我們假設(shè)函數(shù)的輸入是k維向量,它的輸出是一個(gè)標(biāo)量,所以它的 Hessian 矩陣有k 特征值。函數(shù)的解可以是局部最小值、局部最大值或函數(shù)梯度為零的位置處的鞍點(diǎn):

當(dāng)函數(shù)的 Hessian 矩陣在零梯度位置的特征值都為正時(shí),函數(shù)有一個(gè)局部最小值。

當(dāng)函數(shù)的 Hessian 矩陣在零梯度位置的特征值全部為負(fù)時(shí),我們有函數(shù)的局部最大值。

當(dāng)函數(shù)的 Hessian 矩陣在零梯度位置的特征值分別為負(fù)和正時(shí),我們就有了函數(shù)的鞍點(diǎn)。

對(duì)于高維問題,至少某些特征值為負(fù)的可能性非常高。這使得鞍點(diǎn)比局部最小值更有可能。我們將在下一節(jié)介紹凸性時(shí)討論這種情況的一些例外情況。簡(jiǎn)而言之,凸函數(shù)是那些 Hessian 矩陣的特征值從不為負(fù)的函數(shù)。但遺憾的是,大多數(shù)深度學(xué)習(xí)問題并不屬于這一類。盡管如此,它還是研究?jī)?yōu)化算法的好工具。

12.1.2.3。消失的漸變

可能遇到的最隱蔽的問題是梯度消失?;貞浺幌挛覀?cè)?.1.2 節(jié)中常用的激活函數(shù)及其派生函數(shù)。例如,假設(shè)我們要最小化函數(shù)f(x)=tanh?(x)我們碰巧開始于x=4. 正如我們所見,梯度f(wàn)接近于零。進(jìn)一步來(lái)說, f′(x)=1?tanh2?(x)因此f′(4)=0.0013. 因此,在我們?nèi)〉眠M(jìn)展之前,優(yōu)化將停滯很長(zhǎng)時(shí)間。事實(shí)證明,這是在引入 ReLU 激活函數(shù)之前訓(xùn)練深度學(xué)習(xí)模型非常棘手的原因之一。

x = torch.arange(-2.0, 5.0, 0.01)
d2l.plot(x, [torch.tanh(x)], 'x', 'f(x)')
annotate('vanishing gradient', (4, 1), (2, 0.0))

pYYBAGR9OM6AU799AACtyyM6dcY975.svg

x = np.arange(-2.0, 5.0, 0.01)
d2l.plot(x, [np.tanh(x)], 'x', 'f(x)')
annotate('vanishing gradient', (4, 1), (2, 0.0))

pYYBAGR9OM6AU799AACtyyM6dcY975.svg

x = tf.range(-2.0, 5.0, 0.01)
d2l.plot(x, [tf.tanh(x)], 'x', 'f(x)')
annotate('vanishing gradient', (4, 1), (2, 0.0))

poYBAGR9ONKAMIrMAACtur1e8Hc499.svg

正如我們所見,深度學(xué)習(xí)的優(yōu)化充滿挑戰(zhàn)。幸運(yùn)的是,存在一系列強(qiáng)大的算法,它們性能良好并且即使對(duì)于初學(xué)者也易于使用。此外,并不是真的有必要找到最佳解決方案。其局部最優(yōu)甚至近似解仍然非常有用。

12.1.3。概括

最小化訓(xùn)練誤差并不能保證我們找到最佳參數(shù)集來(lái)最小化泛化誤差。

優(yōu)化問題可能有很多局部極小值。

該問題可能有更多的鞍點(diǎn),因?yàn)橥ǔ栴}不是凸的。

消失的梯度會(huì)導(dǎo)致優(yōu)化停止。問題的重新參數(shù)化通常會(huì)有所幫助。參數(shù)的良好初始化也可能是有益的。

12.1.4。練習(xí)

考慮一個(gè)簡(jiǎn)單的 MLP,它有一個(gè)隱藏層,比方說,d 隱藏層中的維度和單個(gè)輸出。表明對(duì)于任何局部最小值,至少有d!行為相同的等效解決方案。

假設(shè)我們有一個(gè)對(duì)稱隨機(jī)矩陣M 條目在哪里Mij=Mji每個(gè)都是從一些概率分布中得出的pij. 此外假設(shè) pij(x)=pij(?x),即分布是對(duì)稱的(有關(guān)詳細(xì)信息,請(qǐng)參見例如Wigner ( 1958 ))。

證明特征值的分布也是對(duì)稱的。也就是說,對(duì)于任何特征向量v相關(guān)特征值的概率λ滿足 P(λ>0)=P(λ<0).

為什么上面沒有暗示P(λ>0)=0.5?

您還能想到深度學(xué)習(xí)優(yōu)化中涉及的其他哪些挑戰(zhàn)?

假設(shè)您想要在(真實(shí)的)鞍座上平衡一個(gè)(真實(shí)的)球。

為什么這很難?

您能否將這種效應(yīng)也用于優(yōu)化算法?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5434

    瀏覽量

    120790
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    795

    瀏覽量

    13079
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Facebook宣布發(fā)布深度學(xué)習(xí)框架 PyTorch 1.0開發(fā)者預(yù)覽版

    用戶共同制作張量處理單元(TPU)。用于預(yù)配置 AI 的 Google Cloud Platform 深度學(xué)習(xí) VM,還將包含 PyTorch 1.0 的 VM 映像。亞馬遜的 SageMaker 將為
    的頭像 發(fā)表于 10-08 14:36 ?3149次閱讀

    PyTorch官網(wǎng)教程PyTorch深度學(xué)習(xí):60分鐘快速入門中文翻譯版

    PyTorch 深度學(xué)習(xí):60分鐘快速入門”為 PyTorch 官網(wǎng)教程,網(wǎng)上已經(jīng)有部分翻譯作品,隨著PyTorch1.0 版本的公布,這
    的頭像 發(fā)表于 01-13 11:53 ?1w次閱讀

    蘋果向開發(fā)者用戶推送了iOS 12.1. 3 開發(fā)者預(yù)覽版beta4

    今天凌晨,蘋果向開發(fā)者用戶推送了iOS 12.1. 3 開發(fā)者預(yù)覽版beta4,距離上個(gè)版本更新僅 3 天時(shí)間,更新后的版本號(hào)為16D5039a。和以往一樣,蘋果給出的更新說明依舊是修復(fù)bug、提升系統(tǒng)流暢度。
    的頭像 發(fā)表于 01-14 10:01 ?3939次閱讀
    蘋果向開發(fā)者用戶推送了iOS <b class='flag-5'>12.1.</b> 3 開發(fā)者預(yù)覽版beta4

    為什么學(xué)習(xí)深度學(xué)習(xí)需要使用PyTorch和TensorFlow框架

    如果你需要深度學(xué)習(xí)模型,那么 PyTorch 和 TensorFlow 都是不錯(cuò)的選擇。 并非每個(gè)回歸或分類問題都需要通過深度學(xué)習(xí)來(lái)解決。
    的頭像 發(fā)表于 09-14 10:57 ?3381次閱讀

    基于PyTorch深度學(xué)習(xí)入門教程之PyTorch的安裝和配置

    神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),并且運(yùn)用各種深度學(xué)習(xí)算法訓(xùn)練網(wǎng)絡(luò)參數(shù),進(jìn)而解決各種任務(wù)。 本文從PyTorch環(huán)境配置開始。PyTorch是一種Python接口的深度
    的頭像 發(fā)表于 02-16 15:15 ?2522次閱讀

    基于PyTorch深度學(xué)習(xí)入門教程之PyTorch簡(jiǎn)單知識(shí)

    基于Python的科學(xué)計(jì)算框架,用于進(jìn)行深度學(xué)習(xí)相關(guān)研究。對(duì)于Python語(yǔ)言的入門,可以參考之前的兩篇介紹PythonNumpy的博客。分別是Python Numpy 教程(
    的頭像 發(fā)表于 02-16 15:20 ?2187次閱讀

    PyTorch開源深度學(xué)習(xí)框架簡(jiǎn)介

    PyTorch 是一種開源深度學(xué)習(xí)框架,以出色的靈活性和易用性著稱。這在一定程度上是因?yàn)榕c機(jī)器學(xué)習(xí)開發(fā)者和數(shù)據(jù)科學(xué)家所青睞的熱門 Python 高級(jí)編程語(yǔ)言兼容。
    的頭像 發(fā)表于 07-29 10:26 ?4306次閱讀

    深度學(xué)習(xí)框架PyTorch和TensorFlow如何選擇

    在 AI 技術(shù)興起后,深度學(xué)習(xí)框架 PyTorch 和 TensorFlow 兩大陣營(yíng)似乎也爆發(fā)了類似的「戰(zhàn)爭(zhēng)」。這兩個(gè)陣營(yíng)背后都有大量的支持者,并且他們都有充足的理由來(lái)說明為什么他們所喜歡的框架是最好的。
    發(fā)表于 02-02 10:28 ?994次閱讀

    PyTorch教程5.5之深度學(xué)習(xí)中的泛化

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程5.5之深度學(xué)習(xí)中的泛化.pdf》資料免費(fèi)下載
    發(fā)表于 06-05 15:31 ?1次下載
    <b class='flag-5'>PyTorch</b>教程5.5之<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>中的泛化

    PyTorch教程12.1優(yōu)化深度學(xué)習(xí)

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程12.1優(yōu)化深度學(xué)習(xí).pdf》資料免費(fèi)下載
    發(fā)表于 06-05 15:08 ?0次下載
    <b class='flag-5'>PyTorch</b>教程<b class='flag-5'>12.1</b>之<b class='flag-5'>優(yōu)化</b>和<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>

    深度學(xué)習(xí)框架pytorch入門與實(shí)踐

    深度學(xué)習(xí)框架pytorch入門與實(shí)踐 深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一個(gè)分支,它使用多層神經(jīng)網(wǎng)絡(luò)對(duì)大量數(shù)
    的頭像 發(fā)表于 08-17 16:03 ?1508次閱讀

    深度學(xué)習(xí)框架pytorch介紹

    深度學(xué)習(xí)框架pytorch介紹 PyTorch是由Facebook創(chuàng)建的開源機(jī)器學(xué)習(xí)框架,其中TensorFlow是完全基于數(shù)據(jù)流圖的。它是
    的頭像 發(fā)表于 08-17 16:10 ?1634次閱讀

    TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇

    深度學(xué)習(xí)作為人工智能領(lǐng)域的一個(gè)重要分支,在過去十年中取得了顯著的進(jìn)展。在構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型的過程中,深度
    的頭像 發(fā)表于 07-02 14:04 ?735次閱讀

    如何使用PyTorch建立網(wǎng)絡(luò)模型

    PyTorch是一個(gè)基于Python的開源機(jī)器學(xué)習(xí)庫(kù),因其易用性、靈活性和強(qiáng)大的動(dòng)態(tài)圖特性,在深度學(xué)習(xí)領(lǐng)域得到了廣泛應(yīng)用。本文將從PyTorch
    的頭像 發(fā)表于 07-02 14:08 ?305次閱讀

    PyTorch深度學(xué)習(xí)開發(fā)環(huán)境搭建指南

    PyTorch作為一種流行的深度學(xué)習(xí)框架,其開發(fā)環(huán)境的搭建對(duì)于深度學(xué)習(xí)研究者和開發(fā)者來(lái)說至關(guān)重要。在Windows操作系統(tǒng)上搭建
    的頭像 發(fā)表于 07-16 18:29 ?612次閱讀