主頁 > 知識庫 > python 中的@運算符使用

python 中的@運算符使用

熱門標(biāo)簽:地圖標(biāo)注線上如何操作 400電話辦理哪種 開封語音外呼系統(tǒng)代理商 手機網(wǎng)頁嵌入地圖標(biāo)注位置 河北防封卡電銷卡 開封自動外呼系統(tǒng)怎么收費 電銷機器人的風(fēng)險 天津電話機器人公司 應(yīng)電話機器人打電話違法嗎

在看fastai的代碼時,看到這么一段:

n=100
x = torch.ones(n,2) 
x[:,0].uniform_(-1.,1)
x[:5]
a = tensor(3.,2)
y = x@a + torch.rand(n)

這里面有個@符號不知道是啥意思?

于是百度搜了一下,都是說@xxx是注解或者裝飾器,明顯不是這段代碼的場景嘛!

于是又Google了一下,原來這個@是Python 3.5之后加入的矩陣乘法運算符,終于明白了!

補充:python矩陣乘積運算(multiply/maumul/*/@)解析

在訓(xùn)練數(shù)據(jù)時經(jīng)常涉及到矩陣運算,有段時間沒有練習(xí)過了,手便生疏了。

今天重新測了一把,python中各類矩陣運算舉例如下,可以清楚的看到tf.matmul(A,C)=np.dot(A,C)= A@C都屬于叉乘,而tf.multiply(A,C)= A*C=A∙C屬于點乘。

Python測試編碼如下:

import tensorflow as tf
import numpy as np

a = np.array([[1,2],[3,4]])
b = np.array([5,6])
c = np.array([[5,6],[7,8]])
print('a:'+'\n',a)
print('b:'+'\n',b)
print('c:'+'\n',c)
#叉乘
d1=a@c
d2=tf.matmul(a,c)
d3=np.dot(a,c)
#點乘
f1=a*c
f2=tf.multiply(a,c)

with tf.compat.v1.Session() as sess:
    print('d1:叉乘a@c' + '\n', d1)
    print('d2:叉乘matmul(a,c)' + '\n', sess.run(d2))
    print('d3:叉乘dot(a,c)' + '\n', d3)
    print('f1:點乘a*c' + '\n', f1)
    print('f2:點乘multiply(a,c)' + '\n', sess.run(f2))

測試結(jié)果如下:

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 基于Python3中運算符 **和*的區(qū)別說明
  • Python的運算符重載詳解
  • Python函數(shù)參數(shù)中的*與**運算符
  • Python運算符+與+=的方法實例
  • python入門教程之基本算術(shù)運算符

標(biāo)簽:山東 常州 成都 宿遷 江蘇 蘭州 六盤水 駐馬店

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python 中的@運算符使用》,本文關(guān)鍵詞  python,中的,運算符,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python 中的@運算符使用》相關(guān)的同類信息!
  • 本頁收集關(guān)于python 中的@運算符使用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章