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

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

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

嘗試用QA的形式深入不淺出BERT/Transformer的細(xì)節(jié)知識點(diǎn)

深度學(xué)習(xí)自然語言處理 ? 來源:深度學(xué)習(xí)自然語言處理 ? 作者:深度學(xué)習(xí)自然語言 ? 2020-11-24 10:02 ? 次閱讀

隨著 NLP 的不斷發(fā)展,對 BERT/Transformer 相關(guān)知識的研究應(yīng)用,也越來越細(xì)節(jié),下面嘗試用 QA 的形式深入不淺出 BERT/Transformer 的細(xì)節(jié)知識點(diǎn)。

不考慮多頭的原因,self-attention 中詞向量不乘 QKV 參數(shù)矩陣,會有什么問題?

為什么 BERT 選擇 mask 掉 15% 這個比例的詞,可以是其他的比例嗎?

使用 BERT 預(yù)訓(xùn)練模型為什么最多只能輸入 512 個詞,最多只能兩個句子合成?

為什么 BERT 在第一句前會加一個 [CLS] 標(biāo)志?

Self-Attention 的時間復(fù)雜度是怎么計算的?

Transformer 在哪里做了權(quán)重共享,為什么可以做權(quán)重共享?

BERT 非線性的來源在哪里?

BERT 的三個 Embedding 直接相加會對語義有影響嗎?

Transformer 的點(diǎn)積模型做縮放的原因是什么?

在 BERT 應(yīng)用中,如何解決長文本問題?

1.不考慮多頭的原因,self-attention 中詞向量不乘 QKV 參數(shù)矩陣,會有什么問題?

self-attention 的核心是「用文本中的其它詞來增強(qiáng)目標(biāo)詞的語義表示」,從而更好的利用上下文的信息。

self-attention 中,sequence 中的每個詞都會和 sequence 中的每個詞做點(diǎn)積去計算相似度,也包括這個詞本身。

如果不乘 QKV 參數(shù)矩陣,那這個詞對應(yīng)的 q,k,v 就是完全一樣的。

在相同量級的情況下, 與 點(diǎn)積的值會是最大的(可以從 “兩數(shù)和相同的情況下,兩數(shù)相等對應(yīng)的積最大” 類比過來)。

那在 softmax 后的加權(quán)平均中,該詞本身所占的比重將會是最大的,使得其他詞的比重很少,無法有效利用上下文信息來增強(qiáng)當(dāng)前詞的語義表示。

而乘以 QKV 參數(shù)矩陣,會使得每個詞的 q,k,v 都不一樣,能很大程度上減輕上述的影響。

當(dāng)然,QKV 參數(shù)矩陣也使得多頭,類似于 CNN 中的多核,去捕捉更豐富的特征 / 信息成為可能。

2.為什么 BERT 選擇 mask 掉 15% 這個比例的詞,可以是其他的比例嗎?

BERT 采用的 Masked LM,會選取語料中所有詞的 15% 進(jìn)行隨機(jī) mask,論文中表示是受到完形填空任務(wù)的啟發(fā),但其實(shí)「與 CBOW 也有異曲同工之妙」。

從 CBOW 的角度,這里 有一個比較好的解釋是:在一個大小為 的窗口中隨機(jī)選一個詞,類似 CBOW 中滑動窗口的中心詞,區(qū)別是這里的滑動窗口是非重疊的。

那從 CBOW 的滑動窗口角度,10%~20% 都是還 ok 的比例。

上述非官方解釋,是來自我的一位朋友提供的一個理解切入的角度,供參考。

3.使用 BERT 預(yù)訓(xùn)練模型為什么最多只能輸入 512 個詞,最多只能兩個句子合成一句?

這是 Google BERT 預(yù)訓(xùn)練模型初始設(shè)置的原因,前者對應(yīng) Position Embeddings,后者對應(yīng) Segment Embeddings

在 BERT 中,Token,Position,Segment Embeddings「都是通過學(xué)習(xí)來得到的」,pytorch 代碼中它們是這樣的

self.word_embeddings=Embedding(config.vocab_size,config.hidden_size) self.position_embeddings=Embedding(config.max_position_embeddings,config.hidden_size) self.token_type_embeddings=Embedding(config.type_vocab_size,config.hidden_size)

上述 BERT pytorch 代碼來自//github.com/xieyufei1993/Bert-Pytorch-Chinese-TextClassification,結(jié)構(gòu)層次非常清晰。

而在 BERT config 中

"max_position_embeddings":512 "type_vocab_size":2

因此,在直接使用 Google 的 BERT 預(yù)訓(xùn)練模型時,輸入最多 512 個詞(還要除掉 [CLS] 和 [SEP]),最多兩個句子合成一句。這之外的詞和句子會沒有對應(yīng)的 embedding。

當(dāng)然,如果有足夠的硬件資源自己重新訓(xùn)練 BERT,可以更改 BERT config,設(shè)置更大 max_position_embeddings 和 type_vocab_size 值去滿足自己的需求。

?

總結(jié)下博主的話:就是 Google 規(guī)定的,想換大的可以自行嘗試!

但這樣的解釋感覺有些欠妥,可能是 Google 嘗試增大 Transorfmer 的最大長度時發(fā)現(xiàn)不太適合處理超長句子,所以才有了后面的 Transformer-XL。

?

4.為什么 BERT 在第一句前會加一個 [CLS] 標(biāo)志?

BERT 在第一句前會加一個 [CLS] 標(biāo)志,最后一層該位對應(yīng)向量可以作為整句話的語義表示,從而用于下游的分類任務(wù)等。

為什么選它呢,因為與文本中已有的其它詞相比,這個無明顯語義信息的符號會「更 “公平” 地融合文本中各個詞的語義信息」,從而更好的表示整句話的語義。

這里補(bǔ)充一下 bert 的輸出,有兩種:

一種是 get_pooled_out (),就是上述 [CLS] 的表示,輸出 shape 是 [batch size,hidden size]。

一種是 get_sequence_out (),獲取的是整個句子每一個 token 的向量表示,輸出 shape 是 [batch_size, seq_length, hidden_size],這里也包括 [CLS],因此在做 token 級別的任務(wù)時要注意它。

self-attention 是用文本中的其它詞來增強(qiáng)目標(biāo)詞的語義表示,但是目標(biāo)詞本身的語義還是會占主導(dǎo)的,因此,經(jīng)過BERT的12層,每次詞的embedding融合了所有詞的信息去更好的表示自己。而[CLS]位本身沒有語義,經(jīng)過12層,得到的是所有詞的加權(quán)平均,相比其他正常詞,可以更好的表征句子語義。當(dāng)然,也可以通過對最后一層所有詞的embedding做pooling去表征句子語義。另外,[CLS]也指示了句子的開始,[SEP]則指示了句子的分割/結(jié)尾,BERT應(yīng)該可以學(xué)到這個信息

?

總結(jié):就是 CLS 是整個句子語義的載體,如果不用 CLS,而是放在第一位進(jìn)行輸出可能會影響到第一個 token 本身的詞意表達(dá)。如果用全連接層進(jìn)行分類等,會增加參數(shù)。

?

5.Self-Attention 的時間復(fù)雜度是怎么計算的?

Self-Attention 時間復(fù)雜度: ,這里 n 是序列的長度,d 是 embedding 的維度。

Self-Attention 包括 **三個步驟:相似度計算,softmax 和加權(quán)平均 **,它們分別的時間復(fù)雜度是:

相似度計算可以看作大小為 (n,d) 和 (d,n) 的兩個矩陣相乘: ,得到一個 (n,n) 的矩陣

softmax 就是直接計算了,時間復(fù)雜度為

加權(quán)平均可以看作大小為 (n,n) 和 (n,d) 的兩個矩陣相乘: ,得到一個 (n,d) 的矩陣

因此,Self-Attention 的時間復(fù)雜度是 。

這里再分析一下 Multi-Head Attention,它的作用類似于 CNN 中的多核。

多頭的實(shí)現(xiàn)不是循環(huán)的計算每個頭,而是通過 transposes and reshapes,用矩陣乘法來完成的。

?

In practice, the multi-headed attention are done with transposes and reshapes rather than actual separate tensors. —— 來自 google BERT 源碼

?

Transformer/BERT 中把 d,也就是 hidden_size/embedding_size 這個維度做了 reshape 拆分,可以去看 Google 的 TF 源碼 或者上面的 pytorch 源碼:

?

hidden_size (d) = num_attention_heads (m) * attention_head_size (a),也即 d=m*a

?

并將 num_attention_heads 維度 transpose 到前面,使得 Q 和 K 的維度都是 (m,n,a),這里不考慮 batch 維度。

這樣點(diǎn)積可以看作大小為 (m,n,a) 和 (m,a,n) 的兩個張量相乘,得到一個 (m,n,n) 的矩陣,其實(shí)就相當(dāng)于 m 個頭,時間復(fù)雜度是 。

張量乘法時間復(fù)雜度分析參見:矩陣、張量乘法的時間復(fù)雜度分析

因此 Multi-Head Attention 時間復(fù)雜度就是 ,而實(shí)際上,張量乘法可以加速,因此實(shí)際復(fù)雜度會更低一些。

不過,對于做 transposes and reshapes 的邏輯,個人沒有理的很明白,希望大佬看到能留言解答一下,感謝。

6.Transformer 在哪里做了權(quán)重共享,為什么可以做權(quán)重共享?

Transformer 在兩個地方進(jìn)行了權(quán)重共享:

(1)Encoder 和 Decoder 間的 Embedding 層權(quán)重共享;

(2)Decoder 中 Embedding 層和 FC 層權(quán)重共享。

「對于(1」《Attention is all you need》中 Transformer 被應(yīng)用在機(jī)器翻譯任務(wù)中,源語言和目標(biāo)語言是不一樣的,但它們可以共用一張大詞表,對于兩種語言中共同出現(xiàn)的詞(比如:數(shù)字,標(biāo)點(diǎn)等等)可以得到更好的表示,而且對于 Encoder 和 Decoder,「嵌入時都只有對應(yīng)語言的 embedding 會被激活」,因此是可以共用一張詞表做權(quán)重共享的。

論文中,Transformer 詞表用了 bpe(Byte Pair Encoding) 來處理,所以最小的單元是 subword。英語和德語同屬日耳曼語族,有很多相同的 subword,可以共享類似的語義。而像中英這樣相差較大的語系,語義共享作用可能不會很大。

但是,共用詞表會使得詞表數(shù)量增大,增加 softmax 的計算時間,因此實(shí)際使用中是否共享可能要根據(jù)情況權(quán)衡。

該點(diǎn)參考:https://www.zhihu.com/question/333419099/answer/743341017

「對于(2」,Embedding 層可以說是通過 onehot 去取到對應(yīng)的 embedding 向量,F(xiàn)C 層可以說是相反的,通過向量(定義為 x)去得到它可能是某個詞的 softmax 概率,取概率最大(貪婪情況下)的作為預(yù)測值。

那哪一個會是概率最大的呢?在 FC 層的每一行量級相同的前提下,理論上和 x 相同的那一行對應(yīng)的點(diǎn)積和 softmax 概率會是最大的(可類比本文問題 1)。

因此,Embedding 層和 FC 層權(quán)重共享,Embedding 層中和向量 x 最接近的那一行對應(yīng)的詞,會獲得更大的預(yù)測概率。實(shí)際上,Decoder 中的「Embedding 層和 FC 層有點(diǎn)像互為逆過程」。

通過這樣的權(quán)重共享可以減少參數(shù)的數(shù)量,加快收斂。

但開始我有一個困惑是:Embedding 層參數(shù)維度是:(v,d),F(xiàn)C 層參數(shù)維度是:(d,v),可以直接共享嘛,還是要轉(zhuǎn)置?其中 v 是詞表大小,d 是 embedding 維度。

查看 pytorch 源碼發(fā)現(xiàn)真的可以直接共享:

fc=nn.Linear(d,v,bias=False)#DecoderFC層定義 weight=Parameter(torch.Tensor(out_features,in_features))#Linear層權(quán)重定義

Linear 層的權(quán)重定義中,是按照 (out_features, in_features) 順序來的,實(shí)際計算會先將 weight 轉(zhuǎn)置在乘以輸入矩陣。所以 FC 層 對應(yīng)的 Linear 權(quán)重維度也是 (v,d),可以直接共享。

7.BERT 非線性的來源在哪里?

前饋層的 Gelu 激活函數(shù)和 self-attention,self-attention 是非線性的。

8.BERT 的三個 Embedding 為什么可以直接相加會對語義有影響嗎?

引用蘇劍林老師的回答:

那只能說明你還不了解 Embedding 的意義。

Embedding 的數(shù)學(xué)本質(zhì),就是以 one hot 為輸入的單層全連接。請參考: https://kexue.fm/archives/4122

也就是說,世界上本沒什么 Embedding,有的只是 one hot。

現(xiàn)在我們將 token,position,segment 三者都用 one hot 表示,然后 concat 起來,然后才去過一個單層全連接,等價的效果就是三個 Embedding 相加。

引用博主的回答:

這是一個很有意思的問題,蘇劍林老師給出的回答,真的很妙:

?

「Embedding 的數(shù)學(xué)本質(zhì),就是以 one hot 為輸入的單層全連接。也就是說,世界上本沒什么 Embedding,有的只是 one hot。」

?

「在這里想用一個簡單的例子再嘗試?yán)斫庖幌隆梗杭僭O(shè) token Embedding 矩陣維度是 [4,768];position Embedding 矩陣維度是 [3,768];segment Embedding 矩陣維度是 [2,768]。

對于一個字,假設(shè)它的 token one-hot 是[1,0,0,0];它的 position one-hot 是[1,0,0];它的segment one-hot 是[1,0]。那這個字最后的 word Embedding,就是上面三種 Embedding 的加和。

如此得到的 word Embedding,和concat后的特征:[1,0,0,0,1,0,0,1,0],再過維度為[4+3+2,768] = [9, 768] 的全連接層,得到的向量其實(shí)就是一樣的。

「再換一個角度理解」:

直接將三個one-hot 特征 concat 起來得到的 [1,0,0,0,1,0,0,1,0] 不再是one-hot了,但可以把它映射到三個one-hot 組成的特征空間,空間維度是 4*3*2=24 ,那在新的特征空間,這個字的one-hot就是[1,0,0,0,0...] (23個0)。

此時,Embedding 矩陣維度就是 [24,768],最后得到的 word Embedding 依然是和上面的等效,「但是三個小 Embedding 矩陣的大小會遠(yuǎn)小于新特征空間對應(yīng)的 Embedding 矩陣大小」。

當(dāng)然,在相同初始化方法前提下,兩種方式得到的 word Embedding 可能方差會有差別,但是,BERT還有Layer Norm,會把 Embedding 結(jié)果統(tǒng)一到相同的分布。

BERT的三個Embedding相加,本質(zhì)可以看作一個「特征的融合」,強(qiáng)大如 BERT 應(yīng)該可以學(xué)到融合后特征的語義信息的。

引用邱錫鵬老師的回答:

這是個好問題。雖然在深度神經(jīng)網(wǎng)絡(luò)里變得非常復(fù)雜,本質(zhì)上神經(jīng)網(wǎng)絡(luò)中每個神經(jīng)元收到的信號也是“權(quán)重”相加得來。具體細(xì)節(jié)的分析這里就不提了,有興趣的同學(xué)可以自己推一推。

這里想說一下寬泛一點(diǎn)的分析(瞎扯)。

在實(shí)際場景中,疊加是一個更為常態(tài)的操作。比如聲音、圖像等信號。一個時序的波可以用多個不同頻率的正弦波疊加來表示。只要疊加的波的頻率不同,我們就可以通過傅里葉變換進(jìn)行逆向轉(zhuǎn)換。

一串文本也可以看作是一些時序信號,也可以有很多信號進(jìn)行疊加,只要頻率不同,都可以在后面的復(fù)雜神經(jīng)網(wǎng)絡(luò)中得到解耦(但也不一定真的要得到解耦)。在 BERT 這個設(shè)定中,token,segment,position 明顯可以對應(yīng)三種非常不同的頻率。

由此可以再深入想一想,在一串文本中,如果每個詞的特征都可以用疊加波來表示,整個序列又可以進(jìn)一步疊加。哪些是低頻信號(比如詞性?),哪些是高頻信號(比如語義?),這些都隱藏在 Embedding 中,也可能已經(jīng)解耦在不同維度中了。說不定可以是一種新的表示理論:)

參考:https://www.zhihu.com/question/374835153

9.Transformer 的點(diǎn)積模型做縮放的原因是什么?

論文中解釋是:向量的點(diǎn)積結(jié)果會很大,將 softmax 函數(shù) push 到梯度很小的區(qū)域,scaled 會緩解這種現(xiàn)象。怎么理解將 sotfmax 函數(shù) push 到梯度很小區(qū)域?還有為什么 scaled 是維度的根號,不是其他的數(shù)?

LinT 的回答

為什么比較大的輸入會使得softmax的梯度變得很???

對于一個輸入向量 ,softmax函數(shù)將其映射/歸一化到一個分布 。在這個過程中,softmax先用一個自然底數(shù) 將輸入中的「元素間差距先“拉大”」,然后歸一化為一個分布。假設(shè)某個輸入 中最大的的元素下標(biāo)是 k,「如果輸入的數(shù)量級變大(每個元素都很大),那么 會非常接近1」。

我們可以用一個小例子來看看 的數(shù)量級對輸入最大元素對應(yīng)的預(yù)測概率 的影響。假定輸入 ,我們來看不同量級的 a 產(chǎn)生的 有什么區(qū)別。

a = 1 時,;

a = 10 時,;

a = 100 時, (計算機(jī)精度限制)。

我們不妨把 a 在不同取值下,對應(yīng)的的 全部繪制出來。代碼如下:

frommathimportexp frommatplotlibimportpyplotasplt importnumpyasnp f=lambdax:exp(x*2)/(exp(x)+exp(x)+exp(x*2)) x=np.linspace(0,100,100) y_3=[f(x_i)forx_iinx] plt.plot(x,y_3) plt.show()

得到的圖如下所示:

可以看到,數(shù)量級對 softmax 得到的分布影響非常大?!冈跀?shù)量級較大時,softmax 將幾乎全部的概率分布都分配給了最大值對應(yīng)的標(biāo)簽」。

然后我們來看 softmax 的梯度。不妨簡記 softmax 函數(shù)為 , softmax 得到的分布向量 對輸入 梯度為:

把這個矩陣展開:

根據(jù)前面的討論,當(dāng)輸入 的元素均較大時,softmax會把大部分概率分布分配給最大的元素,假設(shè)我們的輸入數(shù)量級很大,最大的元素是 ,那么就將產(chǎn)生一個接近one-hot的向量 , 此時上面的矩陣變?yōu)槿缦滦问剑?/p>

也就是說,在輸入的數(shù)量級很大時,「梯度消失為0,造成參數(shù)更新困難」。

維度與點(diǎn)積大小的關(guān)系是怎么樣的,為什么使用維度的根號來放縮?

針對為什么維度會影響點(diǎn)積的大小,在論文的腳注中其實(shí)給出了一點(diǎn)解釋:

假設(shè)向量 q 和 k 的各個分量是互相獨(dú)立的隨機(jī)變量,均值是0,方差是1,那么點(diǎn)積 的均值是 0,方差是 。這里我給出一點(diǎn)更詳細(xì)的推導(dǎo):

對 , 和 都是隨機(jī)變量,為了方便書寫,不妨記 。這樣有

則:

這樣 , 和 的均值是 0,方差為 1,又由期望和方差的性質(zhì), 對相互獨(dú)立的分量 ,有 以及 。

所以有 的均值 ,方差 。「方差越大也就說明,點(diǎn)積的數(shù)量級越大(以越大的概率取大值)」。那么一個自然的做法就是把方差穩(wěn)定到1,做法是將點(diǎn)積除以 ,這樣有:

「將方差控制為1,也就有效地控制了前面提到的梯度消失的問題」。

可以參考一下。水平有限,如果有誤請指出。

參考:https://www.zhihu.com/question/339723385

10.在 BERT 應(yīng)用中,如何解決長文本問題?

舉例:在閱讀理解問題中,article 常常長達(dá) 1000+, 而 Bert 對于這個量級的表示并不支持。

用 Sliding Window(劃窗),主要見于諸閱讀理解任務(wù)(如 Stanford 的 SQuAD)。Sliding Window 即把文檔分成有重疊的若干段,然后每一段都當(dāng)作獨(dú)立的文檔送入BERT進(jìn)行處理。最后再對于這些獨(dú)立文檔得到的結(jié)果進(jìn)行整合。(Transformer-XL)

還可以分段來執(zhí)行,各段可以求平均、求 max、或者加個 attention 融合。

斤木的回答:

可以看下 Amazon 今年 EMNLP 的這篇文章:Multi-passage BERT

主要思路是 global norm + passage rank + sliding window

實(shí)驗做的很扎實(shí),從 ablation study 看這幾個 trick 都很有用。

如果不想切 passages 就上 XLNet 吧。

責(zé)任編輯:lq

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

    關(guān)注

    1

    文章

    3123

    瀏覽量

    48664
  • nlp
    nlp
    +關(guān)注

    關(guān)注

    1

    文章

    486

    瀏覽量

    21993

原文標(biāo)題:【Pre-Training】超細(xì)節(jié)的 BERT/Transformer 知識點(diǎn)

文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    深入解析Zephyr RTOS的技術(shù)細(xì)節(jié)

    ,Zephyr OS在嵌入式開發(fā)中的知名度逐漸增加,新的微控制器和開發(fā)板都支持Zephyr。本文將深入討論Zephyr RTOS的技術(shù)細(xì)節(jié)
    的頭像 發(fā)表于 10-22 16:47 ?237次閱讀
    <b class='flag-5'>深入</b>解析Zephyr RTOS的技術(shù)<b class='flag-5'>細(xì)節(jié)</b>

    Transformer能代替圖神經(jīng)網(wǎng)絡(luò)嗎

    Transformer作為一種在處理序列數(shù)據(jù)方面表現(xiàn)出色的深度學(xué)習(xí)模型,自其提出以來,已經(jīng)在自然語言處理(NLP)、時間序列分析等領(lǐng)域取得了顯著的成果。然而,關(guān)于Transformer是否能完全代替圖神經(jīng)網(wǎng)絡(luò)(GNN)的問題,需要從多個維度進(jìn)行
    的頭像 發(fā)表于 07-12 14:07 ?365次閱讀

    使用PyTorch搭建Transformer模型

    Transformer模型自其問世以來,在自然語言處理(NLP)領(lǐng)域取得了巨大的成功,并成為了許多先進(jìn)模型(如BERT、GPT等)的基礎(chǔ)。本文將深入解讀如何使用PyTorch框架搭建Trans
    的頭像 發(fā)表于 07-02 11:41 ?1434次閱讀

    模擬電子技術(shù)知識點(diǎn)問題總結(jié)概覽

    給大家分享模擬電子技術(shù)知識點(diǎn)問題總結(jié)。
    的頭像 發(fā)表于 05-08 15:16 ?1081次閱讀
    模擬電子技術(shù)<b class='flag-5'>知識點(diǎn)</b>問題總結(jié)概覽

    一篇搞定DCS系統(tǒng)相關(guān)知識點(diǎn)

    目標(biāo)。DCS系統(tǒng)廣泛應(yīng)用于各個行業(yè),如化工、電力、制藥等。在這些行業(yè)中,DCS系統(tǒng)可以實(shí)現(xiàn)對生產(chǎn)過程的集中監(jiān)控和分散控制,提高生產(chǎn)效率和產(chǎn)品質(zhì)量,降低能耗和減少環(huán)境污染,從而保證產(chǎn)品質(zhì)量,并確保生產(chǎn)過程的安全可靠。 二.DCS系統(tǒng)知識點(diǎn)
    的頭像 發(fā)表于 03-26 18:40 ?787次閱讀
    一篇搞定DCS系統(tǒng)相關(guān)<b class='flag-5'>知識點(diǎn)</b>

    【量子計算機(jī)重構(gòu)未來 | 閱讀體驗】第二章關(guān)鍵知識點(diǎn)

    本帖最后由 oxlm_1 于 2024-3-6 23:20 編輯 之所以將第二章單獨(dú)拿出來,是因為在閱讀過程中,發(fā)現(xiàn)第二章知識點(diǎn)較多,理解起來比較耗時間。 第二章的主要知識點(diǎn): 量子
    發(fā)表于 03-06 23:17

    淺談初級電工必備知識點(diǎn)

    對于初學(xué)電工的朋友來說,掌握一些基礎(chǔ)且實(shí)用的知識點(diǎn)是非常重要的。本文旨在分享初級電工應(yīng)該掌握的核心知識,幫助新手電工更好地入門和提升技能。
    的頭像 發(fā)表于 12-26 10:44 ?1010次閱讀

    大語言模型背后的Transformer,與CNN和RNN有何不同

    for Language Understanding》,BERT模型橫空出世,并橫掃NLP領(lǐng)域11項任務(wù)的最佳成績。而在BERT中發(fā)揮重要作用的結(jié)構(gòu)就是Transformer,之后又相繼出現(xiàn)XLNET、roBERT等模型擊
    的頭像 發(fā)表于 12-25 08:36 ?3692次閱讀
    大語言模型背后的<b class='flag-5'>Transformer</b>,與CNN和RNN有何不同

    TCP協(xié)議面試常問知識點(diǎn)總結(jié)

    TCP 作為傳輸層的協(xié)議,是一個IT工程師素養(yǎng)的體現(xiàn),也是面試中經(jīng)常被問到的知識點(diǎn)。在此,我將 TCP 核心的一些問題梳理了一下,希望能幫到各位。
    的頭像 發(fā)表于 12-15 10:38 ?755次閱讀
    TCP協(xié)議面試常問<b class='flag-5'>知識點(diǎn)</b>總結(jié)

    開關(guān)模式下的電源電流如何檢測?這12個電路&amp;10個知識點(diǎn)講明白了

    開關(guān)模式下的電源電流如何檢測?這12個電路&10個知識點(diǎn)講明白了
    的頭像 發(fā)表于 12-06 16:04 ?749次閱讀
    開關(guān)模式下的電源電流如何檢測?這12個電路&amp;10個<b class='flag-5'>知識點(diǎn)</b>講明白了

    c語言程序設(shè)計基礎(chǔ)知識點(diǎn)

    程序設(shè)計的基礎(chǔ)知識點(diǎn)。 首先,我們將從C語言的數(shù)據(jù)類型和變量開始。C語言提供了多種數(shù)據(jù)類型,包括整數(shù)、浮點(diǎn)數(shù)、字符和指針等。整數(shù)類型包括int、long和short等,浮點(diǎn)數(shù)類型包括float和double等,字符類型用于存儲ASCII字符,指針類型用
    的頭像 發(fā)表于 11-27 15:25 ?1578次閱讀

    數(shù)字電位計知識點(diǎn)

    電子發(fā)燒友網(wǎng)站提供《數(shù)字電位計知識點(diǎn).pdf》資料免費(fèi)下載
    發(fā)表于 11-24 16:08 ?7次下載
    數(shù)字電位計<b class='flag-5'>知識點(diǎn)</b>

    【ELF 1開發(fā)板試用】+ 2.教程體驗

    的輸出,而ELFBOARD提供完整的硬件教程,從電路基礎(chǔ)開始,再通過自身板子開發(fā)設(shè)計映射知識點(diǎn),這種形式非常符合此版用于學(xué)習(xí)的基礎(chǔ)定位; 同時作為一個在linux視頻教程縱橫多年的老鳥,非常符合我學(xué)生
    發(fā)表于 11-21 21:08

    三菱和西門子PLC輸入接線知識點(diǎn)

    三菱和西門子PLC輸入接線知識點(diǎn)
    的頭像 發(fā)表于 11-21 10:01 ?698次閱讀
    三菱和西門子PLC輸入接線<b class='flag-5'>知識點(diǎn)</b>

    OFDM技術(shù)知識點(diǎn)

    電子發(fā)燒友網(wǎng)站提供《OFDM技術(shù)知識點(diǎn).rar》資料免費(fèi)下載
    發(fā)表于 11-18 14:25 ?1次下載
    OFDM技術(shù)<b class='flag-5'>知識點(diǎn)</b>