星期三, 7月 31, 2024

影片:不要浪費錢買課了,喂飯式教你訓練大模型llama3

連結

今天無意間逛到的影片,介紹和示範了 finetune LLM 的方法,如 LORA、QLORA 和 quantization,並簡介了多種訓練、佈署、應用本地 LLM 有關的工具。包括 Unsloth、Torchtune、llama.cpp、LM Studio。

中文 llama 用弱智吧訓練效果竟然比正經的百科好也真神奇 XD

全文連結

星期六, 7月 27, 2024

Intel 13、14 代 CPU 災情

連結

故事好像是從 I9 系列開始,部份體質不良的 CPU 在加壓猛操之後出現穩定性問題,甚至波及到商用市場,有商業大戶說 CPU 故障率在 10% 到 50% 之間。並且隨著調查進行,原本以為只是高端 I9 或 K 系列 CPU 有問題,變成 65W 以上 13、14 代 Intel CPU 都可能有問題,包括我新組的兩台 i5-13500 也是 65W CPU。並且,被「電壓問題」弄壞的 CPU 是永久致殘!我最近新筆電也是 13 代 mobile i7 CPU,好在 I 皇堅決否認筆電 CPU 會受影響,再看看。

目前看來 Intel 不打算 callback,只打算用 workaround 拖過三年保固期,令人失望。作為 I 皇的忠實用戶不知道多少年,第一次遇到 I 皇 CPU 集體烙賽還見證官方擺爛。為了保險起見,哪怕我新買兩台電腦沒有任何症狀,我也先更新了 BIOS 降低電壓。等八月中 Intel 測完 microcode update 再更新一次 BIOS,損失效能也沒辦法了,了不起效能倒退回 12 代 QQ

全文連結

星期二, 7月 23, 2024

星期六, 7月 20, 2024

黑毛屋蕃茄鍋

好久沒寫美食紀錄了,週末和父母吃到新菜色來紀錄一下。黑毛屋新的蕃茄鍋,服務生說是蕃茄、雞肉等湯底,口味偏淡,但還是很好吃,不讓人失望。肉照例選了最大份的日本和牛,母親選輕量上選和牛。

蕃茄鍋湯底 
母親的上選和牛 
我的(入門版)日本和牛 
大合照 
副餐蕃茄沾麵,特製湯底加上火鍋本身的蕃茄湯、有彈跳力的麵條,非常清爽ˋ 
加上麵條的蕃茄沾麵 
全文連結

星期日, 7月 14, 2024

天選 5 pro 入手!

換新筆電值得紀錄 XD

之前出去玩,舊筆電 Lenovo T460 (2016)14 吋開 VS Code 寫程式眼睛吃力。決定換大螢幕筆電。

新機為華碩天選 5 pro,螢幕 16 吋、16:10 窄邊框最大亮度 400nit,2.2kg、螢幕大夠亮機器也不會太重,獨顯由 T460 的 940M 飛昇為 RTX 4060(Mobile)性能增加超過 10 倍。今天帶出門標資料感覺眼睛負擔輕多了。小缺憾是續航力比不上 9-cell 電池加持的 T460,約四小時上網、開 VM、標資料就剩 3X% 電,得買行動電源。

最後,台灣筆電價格實在是貴。相近規格 TUF F16 台灣可能要買 46K,螢幕規格還較差。京東買 40K 左右,有國際保,螢幕參數更好,有更多規格、顏色可選。至於簡體中文系統自己重灌就好。

全文連結

星期日, 7月 07, 2024

第一次學 Tampermonkey 腳本成功上手

這次學新東西的動機是為了手上的研究題目。上次成功挑戰一人標 6000 份資料的 NLP 研究題目。這次新題目,研究過 related work 後保險起見,決定用多一點的樣本,以確保可發表性,然後就腦子一抽收了 10000 份了(這還不是同類 study 中第一多的 OwO 當然我們有另外的賣點)。這次資料至少標三個 feature,其中一個 feature 是原始醫囑與放射科報告的分段,是否為 one-to-one 的關係,例如原醫囑是 L spine AP + Lat. 以及 L spine Flex.+Ext. 共兩筆,放射科醫師整合成一份 L spine 報告,就變成 many-to-one。

因為樣本量大的關係,一開始先用 regular expression 以及一些簡單邏輯去做 prelabeling ,再根據 prelabeling 先自動排序一輪方便後續檢視,這些自動化標注是一定有的,但標完還是得檢查自動標的對不對,然後痛苦就開始了。

原本使用的 doccano 標注軟體,就只是個標注軟體,沒辦法自動 highlight 報告中的 subsection 讓人一眼看出報告分成幾段,也不能將醫囑中同一部位有多個 view 的醫囑(例如 Chest PA 及 Chest Rt Lat,這種醫囑容易在報告中被「合併報告」)自動標出,人工 check label 真是十分痛苦。

剛看了兩三千份就決的有點難做了,覺的要嘛少收點(但又怕未來投稿失敗)要嘛得整一套更方便檢視的工具才有辦法做。第一時間想到用惠我良多的 Bootstrap Datatable 做個簡易編輯器,但研究後發現,要加入 CRUD edit 功能就得付費,還得自己鎚後端出來。在不知道怎麼辦的時候,注意到在 Firefox console 下可以很方便的去修改、Highlight doccano DOM 中的文字和排版,就想到也許可以用 patch UI 的方式來做。

於是在 console 弄懂幾個操作 doccano DOM 的關鍵點後,在 ChatGPT 的輔助下,成功在一兩小時內鎚出「真.強化版.doccano」。原始 UI 被我加了幾個 control,可以用 regular expression 去自動 highlight 報告疑似 subsection head 的部份,另外加個 panel,把同一個部位有好幾個不同 view 的部位特別提醒。做完這些後標資料的速度就爆增,至少在這個 feature 努力點可以一天 review 一千份 label。

未來第二、第三個 feature 預期可以用 AI 標再人為抓錯,但一樣需要輔助工具,預期拿這套腳本改一下再弄個不同的「強化 UI」出來。腳本基本沒有通用性,一個任務要改 N 次。不過樣本量大,也值得特事特辦了。


如圖,畫面左下角紅字 Skull 表示照 Skull 的醫囑有兩筆或以上(本例為 Mandible 以及 Nasal bone),多了個 form 可以打 regular expression,作到把「分段」標出來(圖中綠色文字)


 

 

全文連結

星期五, 7月 05, 2024

Rclone copy 中槍

第一次踩到 rclone 的雷。

事情根本原因是母校要限縮無限空間,需要趕緊備份。原本我用現成的 docker image但是從 Google Drive -> Onedrive  會出現小 bug,需要更新版本解決。所以我自己 rebuild 了 docker image 把 rclone 升級到 1.67 然後繼續拷。

更新後同步開始出現類似 "The resource has changed since the caller last read it; usually an eTag mismatch" 的 log,Linode 開始跳流量警告。不過檔案還是正常完成拷貝我就沒太留意。

然後昨天就收到帳單,Linode 裡面的額度一口氣用光還出現負債,最新月份帳單一看 $120 鎂,找原因發現六月份 outbound traffic 26.4T,我原始資料也不過 2T。趕快試著改了參數,確認重要資料有備份完後就砍原始資料、終止備份了。

事實證明該會的基本管理還是要會,一知半解的使用工具很危險 QQ


全文連結

星期三, 7月 03, 2024

Doccano docker-compose 檔

Doccano 是我標注 NLP 訓練資料經常用的軟體(咦你不是只有一篇嗎?)。官網教學詳細,但沒有 docker-compose.yml。其實照著官網教學,加上自己補細節就很容易生出來

version: '3'

services:
  doccano:
    image: doccano/doccano
    container_name: doccano
    ports:
      - "8000:8000"
    environment:
      - ADMIN_USERNAME=xxx
      - ADMIN_EMAIL=xxx
      - ADMIN_PASSWORD=xxx
    volumes:
      - ${PWD}/data:/data


指定 container_name 是為了方便下指令,ADMIN_USERNAME、ADMIN_EMAIL、ADMIN_PASSWORD 作用明顯。指定 volumes 是讓 container 關掉後標注的資不會不見(!),不過我個人還是每一段進度就全部匯出存 git 安心點。

全文連結