Machine Learning
[PyTorch] 如何儲存模型、讀取模型
在使用 PyTorch 這個好用的 Python 深度學習框架進行模型的訓練時,常常會有剛學習的人忘記把訓練好的模型『儲存』起來 —— 甚至根本沒意識到這回事,以為每次要使用都必須訓練一次。(其實這是我的黑歷史 XDDD)
Read More »[PyTorch] 如何儲存模型、讀取模型[Pytorch] 搭建 GAN 模型產生虛假的 MNIST 圖片
生成對抗網路 (generative adversarial network, GAN) 是一個相當有名的神經網路模型,其功用為我們輸入一組『噪音』(Noise),然後通過 Generator 產生出一組數字圖片,再經由 Discriminator 分辨是否是真正的圖片。
Read More »[Pytorch] 搭建 GAN 模型產生虛假的 MNIST 圖片[Machine Learning] BinaryCrossEntropy 介紹與程式實作
假設 target 為我們預測標籤的『正確答案』、output 為我們模型預測的『預測標籤』—— 那麼我們便可以透過 BinaryCrossEntropy 計算 target 以及 output 之間的『二元交叉熵』。
Read More »[Machine Learning] BinaryCrossEntropy 介紹與程式實作[PyTorch] 將 Sigmoid 的輸出設定閥值(threshold)並轉成二元值
在使用 PyTorch 當中的 Sigmoid 當我們的激活函數時,比如說接在模型的最後一層當二元分類的輸出,畢竟 Sigmoid 可以將數值壓在 [0-1] 之間,我們只要設定個閥值 (Threshold) ,比如說 0.5,就可以將數值分成倆類。
Read More »[PyTorch] 將 Sigmoid 的輸出設定閥值(threshold)並轉成二元值[PyTorch] 將 Tensor 型態轉換成 One-Hot Encoding 型態
在處理進行 Machine Learning 的資料時,我有著『將 Labels 轉成 One-Hot Encoding 型態』這樣的需求。我本來想得很單純,就將 Tensor 轉成 Numpy,再由 Numpy 轉成 One-Hot —— 就像我在這篇《在 Numpy 中將數值轉成 One-Hot 型態》中講述的一樣。
Read More »[PyTorch] 將 Tensor 型態轉換成 One-Hot Encoding 型態[Machine Learning] NLLLoss 函式介紹與程式實作
NLLLoss 是一個常用於多分類(Multi-classes Classification)任務的 Loss function,其意義為將 『Softmax』 過後的機率值『取 Log』並將正確答案的『機率值』加總取平均。
Read More »[Machine Learning] NLLLoss 函式介紹與程式實作[Scikit-Learn] 使用 train_test_split() 切割資料
如果我們有『切資料』的需求 —— 比如說將資料切成 Training data (訓練資料) 以及 Test data (測試資料) ,我們便可以透過 Scikit-Learn 的 train_test_split() 這個函式來做到簡單的資料分割。
Read More »[Scikit-Learn] 使用 train_test_split() 切割資料[Keras] 如何架構多標籤分類 (Multi-label Classification) 模型
最近遇到了一個要進行『多標籤分類』(Multi-label Classification) 的任務,這才驚覺自己從來沒碰過這方面的模型。
Read More »[Keras] 如何架構多標籤分類 (Multi-label Classification) 模型[已解決] 'Object arrays cannot be loaded when allow_pickle=False'
最近在學習機器學習模型的時候經常會遇到這個報錯:
'Object arrays cannot be loaded when allow_pickle=False'
Read More »[已解決] 'Object arrays cannot be loaded when allow_pickle=False'