1. [AI學習筆記] ML Lecture 3-1: Gradient Descent

    回顧 Gradient Descent 在機器學習第三個步驟,我們要找一個最好的 function,是要解一個 optimization 的問題。也就是我們在第二步我們先定義 loss function。目的是要找一組參數讓這個 loss function 越小越好。我們可以採用 Gradient Descent,假設現在 θ 是一個參數的集合。做法是隨機選一組起始的參數值,減去 learning rate 乘上 loss function 對 θ 的偏微分,就可以得到下一組 θ。

    2021/08/28 AI

  2. [AI學習筆記] ML Lecture 1: Regression - Case Study

    Regression 機器學習要做的事情就是找出一個函數,而迴歸模型顧名思義就是要預測一個連續性的數值。或者說我們找到的函數,它的輸出是一個數值,這類型的任務就稱為迴歸。

    2021/08/24 AI

  3. Flask 接收圖片與影像檔案不儲存直接讀取

    前言 在實作 Flask 專案時,若需要從前端傳送圖片有兩種方法。其中一種方式是前端將圖片編碼成 base64 並以文字方式除送到後端 API 中,並將 base64 字串轉成 cv2 影像格式。另一種方式前端透過 form-data 格式傳給後端 API。此時後端 Flask 會遇到問題。該如何處理前端所傳送過來的檔案?最簡單方式是先將它存起來,之後再透過 OpenCV 讀取指定位置的圖片。如果你認為儲存動作是多餘的,不想佔用儲存的資源可以參考以下做法。此外本篇文章也提供影像讀取的方法,也不用需要儲存到伺服器中。

    2021/08/22 Python

  4. VSCode Prettier 自動排版設定

    前言 在程式開發的時候往往希望有良好的排版,開發者也看得舒服。慶幸的是 VSCode 編輯器有提供不錯的一鍵排版功能就是 Prettier - Code formatter。由於筆者是撰寫 Node.js 以 JavaScript 為基底的後端語言,通常搭配 ESLint 來檢視程式風格。最近發現一鍵調整排版後出現一些破壞原先設定風格的內容,例如原本的單引號(‘)自動變成雙引號(“)、或是物件型態的變數內容尾段都會自動補上逗號(,)。以下文章就教導各位如何關閉這些設定吧。

    2021/08/20 Tool

  5. 如何在 Tensorflow 中自動選擇空閒 GPU 進行模型訓練?

    前言 當你的 TensorFlow 程式使用 GPU 訓練模型。程式執行期間若開啟其他含有 GPU 存取的程式將會發生下面錯誤訊息:

    2021/08/18 Python

  6. 在 Jupyter Notebook 中播放影片

    前言 如果在雲端伺服器開發的時候,並無提供 GUI 介面來播放各種類型影片。僅有一個 Jupyter Lab 的視窗。如果要查看影片的時候通常都要將影片下載下來至本機中播放實在是非常的麻煩。因此本文將介紹幾個方法,使用者可以直接使用 Ipython notebook 當作播放影片的媒介。

    2021/08/17 Python

  7. [Git 疑難排解] GitHub 啟用二階段密碼驗證 Token authentication 設定

    前言 GitHub 官方在 2020 年 7 月宣布從 2021 年 8 月 13 起必須透過 token 機制進行 Git 的相關操作。這意味著從即刻起使用者使用終端機進行 Git 操作無法再透過帳號密碼的方式進行存取。基於資安考量此種方式的確可以見少帳密被竊取問題,相對的使用者必須花些時間進行設定。

    2021/08/14 Git

  8. [AI學習筆記] 李宏毅課程 Transformer 機制解說 (下)

    Decoder Decoder 最常見有兩種,首先我們先來看 Autoregressive 的 Decoder。以下以語音辨識做範例,所謂的語音辨識就是輸入一段聲音輸出一串文字。首先輸入語音訊號進入 Encoder 後,輸出是一排向量。接下來就進入 Decoder 運作,Decoder 的任務就是產生輸出。Decoder 該如何產生文字呢?首先給予一個開始的符號(Begin, BOS) 並用 one-hot 來表示起始字元。接著 Decoder 吃到起始符號後會吐出一個向量,他的長度跟你的詞彙長度是一樣的,也就是所謂字典數量。然後每一個中文字會對應到一個數值,因為有通過 softmax 因此輸出的向量加總等於一,同時代表每個字詞的機率。因此分數最高的那個字就是最終的輸出,以下範例第一個輸出為機。接下來再把機當作是 Decoder 新的輸入,此時將會有兩個輸入一個是起始符號以及機。再來就會根據這兩個輸入,得到一個輸出向量以此類推。

    2021/07/31 AI