《動手學深度學習》pytorch版筆記一

2021-10-02 20:17:02 字數 1294 閱讀 6996

《動手學深度學習》pytorch版筆記

與其說是筆記,不如說是問題集,有些已經搞清楚了,記錄一下。有些還沒搞清楚,先列在這裡,以後有空再慢慢查文件填坑。

task 1

線性回歸

1.向量化運算以及矩陣的維度表示

2.torch.randn(),np.random.normal()等隨機數組生成函式

3.tensor與list等相互轉化

4.matploblib庫

5.torch.view()

6.tensor.item()

7.dataset, dataloder兩個類的用法

8.nn.linear

softmax與分類模型

1.d2lzh1981庫

2.自定義資料集的讀取

3.d2l.use_svg_display()

4.d2l.load_data_fashion_mnist()

5.print(x.sum(dim=0, keepdim=true)) # dim為0,按照相同的列求和,並在結果中保留列特徵

6.tensor.gather()

7.argmax()

8.nn.flattenlayer

多層感知機

1.plt.plot(x_vals.detach().numpy(), y_vals.detach().numpy())

2.d2l.flattenlayer()

3.torch.optim模組

task 2

文字預處理

1.re lines = [re.sub(』[^a-z]+』, 』 ', line.strip().lower()) for line in f]

2.特殊符號的處理padding, begin of sentence, end of sentence, unknown等

語言模型

1.corpus_chars = corpus_chars.replace(』\n』, 』 『).replace(』\r』, 』 ')

2.乙個batch裡包括bs*num_step個單詞

3.相鄰取樣中的每錯開乙個單詞取num_step個詞而非錯開num_step個詞

迴圈神經網路基礎

1.d2l_jay9460

2.result.scatter_(1, x.long().view(-1, 1), 1)

3.one()

4.s.detach()

5.torch.cat()

6.torch.flatten()

7.torch.stack()

動手學深度學習PyTorch版 筆記彙總

pytorch的tensor,它可以是零維 又稱為標量或乙個數 一維 二維及多維的陣列。tensor自稱為神經網路界的numpy,它與numpy相似,二者可以共享記憶體,且之間的轉換非常方便和高效。不過它們也有不同之處,最大的區別就是numpy會把ndarray放在cpu中進行加速運算,而由torc...

Pytorch 動手學深度學習(二)

學習安排如下 task03 過擬合 欠擬合及其解決方案 梯度消失 梯度 迴圈神經網路高階 1天 task04 機器翻譯及相關技術 注意力機制與seq2seq模型 transformer 1天 task05 卷積神經網路基礎 lenet 卷積神經網路高階 1天 梯度消失部分,主要是協變數偏移 標籤偏移...

RNN 《動手學深度學習pytorch》

rnn存在的問題 梯度較容易出現衰減或 bptt 改進 gru 控迴圈神經 絡 捕捉時間序列中時間步距離較 的依賴關係 長短期記憶long short term memory 遺忘門 控制上一時間步的記憶細胞 輸入門 控制當前時間步的輸入 輸出門 控制從記憶細胞到隱藏狀態 記憶細胞 種特殊的隱藏狀態...