Skip to content

PyTorch

[已解決] RuntimeError: CUDA error: device kernel image is invalid - CUDA kernel errors might be asynchronously reported at some other API call...

問題描述

最近我的某項工作就是把之前的舊專案使用 PyTorch Lightning 重構成新的訓練環節,並確保分數並沒有太大變化。其中,在我將某項二分類專案重構後,試跑出現了以下錯誤:

Read More »[已解決] RuntimeError: CUDA error: device kernel image is invalid - CUDA kernel errors might be asynchronously reported at some other API call...

[PyTorch] 保存優化器(optimizer)來接續訓練模型

我一直以來都希望能夠保存 PyTorch 訓練模型時所使用的優化器optimizer),以便能夠在模型結束訓練之後,繼續往下訓練;一般來說,如果是要做遷移學習、微調模型(fine-tune),那麼並不需要特別將上一次訓練的優化器保存下來。

Read More »[PyTorch] 保存優化器(optimizer)來接續訓練模型

[PyTorch] 使用 Keras 風格進度條的套件: pkbar

PyTorch is a famous Python deep learning framework

前言

pkbar 是最近在閱讀他人對於 pointer-generator network 實現時意外看到的一種『進度條』實現方法,號稱可以在 PyTorch 上使用 Keras 風格的進度條。 的確,Keras 預設的進度條還滿淺顯易懂,比起需要自己去印出進度條的 PyTorch 來說使用上更加快速。

當然,其實不僅是可以在 PyTorch 框架的程式碼中使用,也可以在任何迴圈中使用。

Read More »[PyTorch] 使用 Keras 風格進度條的套件: pkbar

[PyTorch] 如何使用 squeeze() 和 unsqueeze() 函式去改變張量形狀

在剛開始接觸 PyTorch 這個框架時,為了逐漸掌握 PyTorch 搭建模型的方法,我閱讀、執行過許多官方教學文件上的範例程式。那個時候,經常能在範例程式當中見到 squeeze()unsqueeze() 等函式,卻不太明白這兩個函式究竟有什麼樣的用途。

Read More »[PyTorch] 如何使用 squeeze() 和 unsqueeze() 函式去改變張量形狀