[PyTorch] 確認模型的狀態屬於 train() 或是 eval()
今天我在查看 Hugging Face 的 Transformers 套件官方 Document 時,赫然發現一個恐怖的事情 —— 使用 Transformers 時所調用的 from_pretrained(),在讀取預訓練進來的時候,整個模型的狀態是屬於 eval() 、也就是評估模式的。
Read More »[PyTorch] 確認模型的狀態屬於 train() 或是 eval()今天我在查看 Hugging Face 的 Transformers 套件官方 Document 時,赫然發現一個恐怖的事情 —— 使用 Transformers 時所調用的 from_pretrained(),在讀取預訓練進來的時候,整個模型的狀態是屬於 eval() 、也就是評估模式的。
Read More »[PyTorch] 確認模型的狀態屬於 train() 或是 eval()使用 PyTorch 搭建關於自然語言處理相關任務的人,想必都對 PyTorch 當中的 nn.Embedding() 不陌生。nn.Embedding() 是 PyTorch 當中的一個嵌入層,可以讓我們將不同的詞編號之後放入,並產生一組我們可以任意指定的向量回傳。
Read More »[PyTorch] nn.Embedding() 讀取 Gensim 預訓練模型權重方法筆記在我們使用 PyTorch 搭建模型來處理我們深度學習的任務的時候,有時候我們會面臨需要『重複定義不同模型層』的情況,有時候這是很讓人煩躁的,尤其是必須毫無必要地寫一大堆都是複製貼上的程式碼。
Read More »[PyTorch] 使用 ModuleList 減少重複定義模型的程式碼數量2018 年年底,以 BERT 為首等 Transformer 模型席捲了各大 NLP 競賽的排行榜,並幾乎都有著相當優異的表現。一直以來我都對 BERT 等 Transformer 模型充滿了興趣,故今天便開始動手紀錄該如何使用 Hugging Face 所開發的 Transformers 套件。
Read More »[PyTorch] 如何使用 Hugging Face 所提供的 Transformers —— 以 BERT 為例AutoEncoder,中文直譯的話就是『自動編碼器』,也經常被簡稱為 AE,是無監督式學習 (Unsupervised Learning) 的神經網路,基本上不需要有『標記』的資料。
Read More »[Machine Learning] AutoEncoder 基本介紹 (附 PyTorch 程式碼)這是一個比較奇怪的問題:
RuntimeError: Attempting to deserialize object on CUDA
device 3 but torch.cuda.device_count() is 1.
Read More »[已解決][PyTorch] RuntimeError: Attempting to deserialize object on CUDA device 3 but torch.cuda.device_count() is 1.今天我想要紀錄一個常見的問題,但是其解決方法其實非常少見。簡單來講,我的報錯顯示如下:
RuntimeError: CUDA out of memory. Tried to allocate 2.0 GiB.
Read More »[已解決][PyTorch] RuntimeError: CUDA out of memory. Tried to allocate 2.0 GiB在我使用 PyTorch 搭建模型的過程中,經常會在處理資料時,對於如何將資料『串接』感到不知所措。
Read More »[PyTorch] 使用 torch.cat() 在 torch tensor 中實現如 List 資料結構中的 append() 操作使用 PyTorch 框架搭建一個模型是一件十分方便簡易的事情。但是除了單純地搭建模型、訓練模型之外,我們也可以透過 PyTorch 框架,將已經訓練好的模型輸出其神經網路的『權重』、或是只單單擷取出其中一層『模型層』。
Read More »[PyTorch] 提取模型權重或模型層的方法筆記Embedding,在中文中經常被譯作『嵌入』,在 NLP 領域中通常指的是將『文字』轉換成『數值』的這個動作 —— 畢竟文字是所謂不連續的資料,也是電腦所無法處理的資料。
Read More »[PyTorch] 使用 Embedding 層進行文字處理