Skip to content

7 月 2020

[Python] argparse 如何傳遞列表 (List) 當作程式參數

Last Updated on 2021-07-26 by Clay

在使用 Python 進行後端程式開發時,我們經常會使用 argparse 來準備 Python 程式的輸入參數,再使用終端機執行一個 Shell Script 將各個程式串接起來,就好像 Pipeline 一樣。就在今天我在準備做這件事情的時候,突然間發現:

Read More »[Python] argparse 如何傳遞列表 (List) 當作程式參數

[Linux] 下載、安裝、切換系統中 Python 的版本

Last Updated on 2021-07-26 by Clay

Python 存在著各式各樣的版本,在不同的版本當中,許多函式的功能也不太一樣 —— 最重要的是,許多重要的套件更是只在特定的版本上可以成功運行。

本篇文章便專門如何在 Linux 中下載不同的 Python 版本,並讓我們在系統中切換 Python 版本。

Read More »[Linux] 下載、安裝、切換系統中 Python 的版本

[PyTorch] 使用 view() 和 permute() 轉換維度

Last Updated on 2021-07-25 by Clay

PyTorch 是一個基於 Python 的深度學習框架,我們可以藉由 PyTorch 所包裝好的模組、函式,輕易地實作我們想要實現的模型架構。而說到深度學習,就不得不提到使用 GPU 的平行化運算,提到 GPU 的平行化運算,就一定得說到我們得將輸入神經元的『維度』固定,好實現平行化運算。

Read More »[PyTorch] 使用 view() 和 permute() 轉換維度

[Python] 使用 ShuffleSplit() 進行 cross-validation

Last Updated on 2021-07-24 by Clay

Cross-validation (交叉驗證) 是機器學習中『切割資料』的一個重要的觀念。簡單來說,當我們訓練一個模型時,我們通常會將資料分成『訓練資料』(Training data) 和『測試資料』(Test data),然後我們使用訓練資料訓練模型、並使用模型從來沒見過的測試資料評估模型的好壞。

Read More »[Python] 使用 ShuffleSplit() 進行 cross-validation

[PyTorch] 如何使用 pad_packed_sequence 和 pack_padded_sequence 調整可變長度序列批次

Last Updated on 2021-07-24 by Clay

在我們使用 PyTorch 搭建 RNN 與其各種變體 (比如 LSTM、GRU) 的模型時,若搭配 PyTorch 所提供的 Embedding 層當作模型第一層的嵌入層,那麼,我們經常會碰到不同長度序列的文章。

Read More »[PyTorch] 如何使用 pad_packed_sequence 和 pack_padded_sequence 調整可變長度序列批次

[NLP][Python] 表示文件向量: Doc2Vec

Last Updated on 2021-07-24 by Clay

之前我曾經紀錄過,如何使用 Python 的 Gensim 套件訓練一個 Word2Vec 模型,讓我們將『詞彙』轉成『向量』,而這些轉成的『向量』也並不是毫無道理,直觀理解上,是每一維度中包含著文本中的一個隱含主題 —— 至少人們是這樣希望模型學習到東西的。

Read More »[NLP][Python] 表示文件向量: Doc2Vec