2022年4月2日 星期六

In-context learning 初探:以高血鉀症 hyperkalemia 為例

 之前新聞常提到的 talktotransformer.com 似乎下架了,網域被 inferkit 買下。以 the steps to treat hyperkalemia are listed below. 為提示,出現了以下的文字接龍:

例1

例2 
文字是流暢的,但邏輯仍然不正確。

2022年3月27日 星期日

cifar-10圖片分類任務初體驗--使用 pytorch lightning

CIFAR-10(https://www.cs.toronto.edu/~kriz/ cifar.html) 是由 60000 個屬於 10 個分類的 RGB 影像(32×32)組成的(飛機、汽車、鳥、貓、鹿、 ...)。使用pytorch lightning 的 官網教學,可以輕易在一個筆記本中試玩 三個模型: GoogleNet/Inception (winner of ILSVRC 2014), ResNet (winner of ILSVRC 2015), and DenseNet (best paper award CVPR 2017)。

有趣的是,我在測試其它的資料時,也發現了 SGD 優於 ADAM 的情況。遇到時反正就兩個都試試吧~~



2022年3月21日 星期一

PyTorch Lightning 初探--高度抽象化的機器學習架構

pytorch  的程式碼已經相當簡潔了,但是面對海量的架構,還有沒有更更更更簡化的可能呢? 有的, PyTorch Lightning 就是你要的。 假日硬啃了一遍,真是被網路上一些過時的教程害死。接下來就是浪費了一個週末得到的血淚心得XD

  1. 你的聖經就是 HOW TO ORGANIZE PYTORCH INTO LIGHTNING ,因為版本迭代實在太快,大概半年就翻了一翻,千萬不要,再次強調,千萬不要看半年之前其它神人的神文。神人再神,也沒時間去更新這些教程:)
  2. 安裝套件的最新穩定版本。 anaconda  的管理程式不知為何建議了一個非常舊的版本,加倍了我除錯的工作,令人印象深刻。
  3. 你會想用  tensorboard 的
    from pytorch_lightning.loggers import TensorBoardLogger
    logger = TensorBoardLogger("tb_logs", name="my_model")
    trainer = Trainer(logger=logger)
  4. 你會想限制 epoch 次數/時間的
    trainer = Trainer(max_time="00:12:00:00", max_epochs=10)
  5. 請在 LightningModule 乖乖的實作 train_dataloader 等函式,那是讓程式決定 batch size 等參數的途徑。不要沿用原來的載入方式
  6. training, validation, predict 是主要的需實作函式, test 不是;不少 pytorch 的 test 其實指涉到 lightning 的 predict ,請格外注意;會實作 training, validation, test 的可能偏向 nlp 的 transformer based language model
  7. lightning 本身沒有辦法推進準確率或降低 loss,有時間我會建議試試 Optuna 

2022年3月17日 星期四

語音辨識初探

俗話說,好的 notebook 帶你上天堂 (誤) 。 一個可以快速上手、執行、修改、測試的原型是學習的捷徑,而 github 上大量的 ipynb 檔剛好符合這些要求。

Automatic Speech Recognition (ASR) 使用 keras 套件,整個文件充滿大量圖解,是非常非常好的學習起點。

speech_end_to_end.ipynb 與上一支程式一樣使用 LibriSpeech 來做為訓練素材,使用 pytorch 套件

PyTorch 模型建構與訓練基礎介紹 如其名

dla-2/reproduce.ipynb 較複雜的架構,使用 command speech 做為訓練素材




2022年3月15日 星期二

windows 10 下執行 tensorboard 時的錯誤(重開機後無法連線、換專案後仍顯示原專案資訊,…)

由於作者沒預期到會有 windows 使用者,依慣例將執行行程資訊寫到 C:\Users\XXXX\AppData\Local\Temp\.tensorboard-info ,而沒有清除。 解決方式目前看來是將   .tensorboard-info 下的檔案們刪掉,並且查看工作管理員是否有未結束的 tensorboard 程式,若有也請一併關閉它。



2022年3月14日 星期一

vFlat Scan - 你的移動圖書掃描器

 偶爾有需要把數十年前的紙本書電子化,之前都要跑圖書館借掃瞄器,但是今天一時興起想買一台之前看過的輕便型,卻發現這個神器 vFlat 。這個 app 是利用手機的相機逐頁照相後,修正形變並進行 ocr ,可以做後續的處理或直出 pdf 檔。我用完之後下巴快掉下來了,真是太 好 用 啦~~



2022年3月12日 星期六

ckip-transformers 初探(一) 自然語言處理工具(包含斷詞、詞性標記、實體辨識)

主頁在 https://github.com/ckiplab/ckip-transformers

繁體中文的 transformers 模型(包含 ALBERT、BERT、GPT2)這次先跳過,有空再來玩玩

安裝

pip install -U ckip-transformers

測試

git clone https://github.com/ckiplab/ckip-transformers.git

cd ckip-transformers

python example\example.py