91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

電子發(fā)燒友App

硬聲App

掃碼添加小助手

加入工程師交流群

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>PyTorch教程4.4之從頭開始實(shí)現(xiàn)Softmax回歸

PyTorch教程4.4之從頭開始實(shí)現(xiàn)Softmax回歸

2023-06-05 | pdf | 0.36 MB | 次下載 | 免費(fèi)

資料介紹

因?yàn)?softmax 回歸是如此基礎(chǔ),我們相信您應(yīng)該知道如何自己實(shí)現(xiàn)它。在這里,我們限制自己定義模型的 softmax 特定方面,并重用線性回歸部分的其他組件,包括訓(xùn)練循環(huán)。

import torch
from d2l import torch as d2l
from mxnet import autograd, gluon, np, npx
from d2l import mxnet as d2l

npx.set_np()
from functools import partial
import jax
from flax import linen as nn
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 tensorflow as tf
from d2l import tensorflow as d2l

4.4.1. Softmax

讓我們從最重要的部分開始:從標(biāo)量到概率的映射。作為復(fù)習(xí),請回憶一下在張量中沿特定維度的求和運(yùn)算符,如第 2.3.6 節(jié)第 2.3.7 節(jié)中所討論的。給定一個(gè)矩陣,X我們可以對所有元素(默認(rèn)情況下)或僅對同一軸上的元素求和。axis變量讓我們計(jì)算行和列的總和:

X = torch.tensor([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
X.sum(0, keepdims=True), X.sum(1, keepdims=True)
(tensor([[5., 7., 9.]]),
 tensor([[ 6.],
     [15.]]))
X = np.array([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
X.sum(0, keepdims=True), X.sum(1, keepdims=True)
(array([[5., 7., 9.]]),
 array([[ 6.],
    [15.]]))
X = jnp.array([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
X.sum(0, keepdims=True), X.sum(1, keepdims=True)
(Array([[5., 7., 9.]], dtype=float32),
 Array([[ 6.],
    [15.]], dtype=float32))
X = tf.constant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
tf.reduce_sum(X, 0, keepdims=True), tf.reduce_sum(X, 1, keepdims=True)
(<tf.Tensor: shape=(1, 3), dtype=float32, numpy=array([[5., 7., 9.]], dtype=float32)>,
 <tf.Tensor: shape=(2, 1), dtype=float32, numpy=
 array([[ 6.],
    [15.]], dtype=float32)>)

計(jì)算 softmax 需要三個(gè)步驟:(i)每一項(xiàng)取冪;(ii) 對每一行求和以計(jì)算每個(gè)示例的歸一化常數(shù);(iii) 將每一行除以其歸一化常數(shù),確保結(jié)果之和為 1。

(4.4.1)softmax(X)ij=exp?(Xij)∑kexp?(Xik).

分母的(對數(shù))稱為(對數(shù))配分函數(shù)。它是在統(tǒng)計(jì)物理學(xué)中引入的 ,用于對熱力學(xué)系綜中的所有可能狀態(tài)求和。實(shí)現(xiàn)很簡單:

def softmax(X):
  X_exp = torch.exp(X)
  partition = X_exp.sum(1, keepdims=True)
  return X_exp / partition # The broadcasting mechanism is applied here
def softmax(X):
  X_exp = np.exp(X)
  partition = X_exp.sum(1, keepdims=True)
  return X_exp / partition # The broadcasting mechanism is applied here
def softmax(X):
  X_exp = jnp.exp(X)
  partition = X_exp.sum(1, keepdims=True)
  return X_exp / partition # The broadcasting mechanism is applied here
def softmax(X):
  X_exp = tf.exp(X)
  partition = tf.reduce_sum(X_exp, 1, keepdims=True)
  return X_exp / partition # The broadcasting mechanism is applied here

對于任何輸入X,我們將每個(gè)元素變成一個(gè)非負(fù)數(shù)。每行總和為 1,這是概率所要求的。注意:上面的代碼對于非常大或非常小的參數(shù)并不穩(wěn)健。雖然這足以說明正在發(fā)生的事情,但您不應(yīng) 將此代碼逐字用于任何嚴(yán)肅的目的。深度學(xué)習(xí)框架內(nèi)置了這樣的保護(hù),我們將在未來使用內(nèi)置的 softmax。

X = torch.rand((2, 5))
X_prob = softmax(X)
X_prob, X_prob.sum(1)
(tensor([[0.1560, 0.2128, 0.2260, 0.2372, 0.1680],
     [0.1504, 0.2473, 0.1132, 0.2779, 0.2112]]),
 tensor([1.0000, 1.0000]))
X = np.random.rand(2, 5)
X_prob = softmax(X)
X_prob, X_prob.sum(1)
(array([[0.17777154, 0.1857739 , 0.20995119, 0.23887765, 0.18762572],
    [0.24042214, 0.1757977 , 0.23786479, 0.15572716, 0.19018826]]),
 array([1., 1.]))
X = jax.random.uniform(jax.random.PRNGKey(d2l.get_seed()), (2, 5))
X_prob = softmax(X)
X_prob, X_prob.sum(1)
(Array([[0.17380024, 0.13607854, 0.29826194, 0.18967763, 0.20218161],
    [0.24212085, 0.19360834, 0.21299706, 0.17635451, 0.17491929]],   dtype=float32),
 Array([1., 1.], dtype=float32))
X = tf.random.uniform((2, 5))
X_prob = softmax(X)
X_prob, tf.reduce_sum(X_prob, 1)
(<tf.Tensor: shape=(2, 5), dtype=float32, numpy=
 array([[0.20415688, 0.19163935, 0.25970557, 0.17480859, 0.16968955],
    [0.27490872, 0.21236995, 0.12360045, 0.12381317, 0.2653077 ]],
    dtype=float32)>,
 <tf.Tensor: shape=(2,), dtype=float32, numpy=array([1., 1.], dtype=float32)>)
?

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

掃碼添加小助手

加入工程師交流群

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

評論

查看更多

下載排行

本周

  1. 1耗盡型MOS FET產(chǎn)品目錄選型表
  2. 0.14 MB   |  2次下載  |  免費(fèi)
  3. 2TI系列-米爾TI AM62L核心板開發(fā)板-高能效低功耗嵌入式平臺(tái)
  4. 1.51 MB  |  次下載  |  免費(fèi)
  5. 3WILLSEMI韋爾20年半年度報(bào)告由代理分銷經(jīng)銷一級代理分銷經(jīng)銷
  6. 3.30 MB  |  次下載  |  免費(fèi)
  7. 4LRC 樂山無線電InTWSApplications家電由原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷供應(yīng)
  8. 85.84 KB  |  次下載  |  免費(fèi)
  9. 5LAT1596 一文說明白 STM32G4 雙 Bank 啟動(dòng)與升級
  10. 0.64 MB   |  次下載  |  5 積分
  11. 6LAT1594_基于事件喚醒低功耗之介紹
  12. 0.37 MB   |  次下載  |  5 積分
  13. 7PT8P2309 觸控 A/D 型 8-Bit MCU規(guī)格書
  14. 4.05 MB   |  次下載  |  免費(fèi)
  15. 8PT8P2308 觸控 A/D 型 8-Bit MCU規(guī)格書
  16. 4.13 MB   |  次下載  |  免費(fèi)

本月

  1. 1美的電磁爐電路原理圖資料
  2. 4.39 MB   |  19次下載  |  10 積分
  3. 2反激式開關(guān)電源設(shè)計(jì)解析
  4. 0.89 MB   |  11次下載  |  5 積分
  5. 3耗盡型MOS FET產(chǎn)品目錄選型表
  6. 0.14 MB   |  2次下載  |  免費(fèi)
  7. 4簡易光伏控制器原理圖資料
  8. 0.07 MB   |  1次下載  |  5 積分
  9. 52EDL05x06xx系列 600V半橋門驅(qū)動(dòng)器帶集成自舉二極管(BSD)手冊
  10. 0.69 MB   |  1次下載  |  免費(fèi)
  11. 6國產(chǎn)千兆網(wǎng)口芯片PT153S中文資料
  12. 1.35 MB   |  次下載  |  免費(fèi)
  13. 7斯丹電子 | 用于芯片測試系統(tǒng)的射頻干簧繼電器
  14. 5.11 MB  |  次下載  |  免費(fèi)
  15. 8SFI立昌ESD/TVS管原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷
  16. 294.76 KB  |  次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935137次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233095次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191448次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183360次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81605次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73829次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分