星期四, 8月 29, 2024

高微聽完一輪!

高微聽完一輪,值得留念一下。

研究數學是為了讀 deep learning 的 paper。(在職)碩士畢業,看到連乘符號∏只能「那葛像拱門的符號是什麼」然後關 paper,讓人汗顏。

一開始自學中文書,但發現數學荒廢二十年,加上年齡體力不如以往,高中能熬夜讀書,現在太累就眩暈耳鳴頸椎病皮膚炎一波帶走,看書自學計畫失敗。

後來刷到 B 站播放量一億宋浩教學影片,自學計畫復活,竟然成功把整套初微影片看完,中文影片中文課本把初微過了一遍。Rudin 那種名著就不指望了。靠著宋浩大神還順便聽了線代和基礎機率。

自修初微後,狀態改善但還不夠,所以想自學點更深的數學。

但遇到高微就開始嚴重卡關,宋浩老師的數學分析跟初微重疊太多,感覺不像數學分析,聽了一部分後棄。其他老師有把金剛經和數學合在一起講的,有當成武俠小說講的,「戴德金分割,duang 的一聲在數線上砍出了無理數!」,有的老師講的清晰,但起手就講 metric space,本 Rn 都整不明白的萌新撐沒幾章就棄了。

所幸後來找到師範大學李國瑋老師的課,再度成功復活。李老師的課建構在實數系上,看到「Bolzano-Weierstrass theorem @ Rn」實在淚流滿面,斯是 Rn,惟實數馨,無 metric space 之亂耳,無拓樸之勞形。那些更抽象的東西,實變再還。

如果有面板,現在應該會顯示技能「實變函數」已經可以開始加點。起碼現在看了第一堂影片,透過狄利克雷函數黎曼不可積來論述黎曼積分侷限性,不會馬上大腦過熱掉線。如果能熬完實變,應該能接測度論、高等概率,複習一下線代應該就能再戰 deep learning 的數學。很多好東西因為數學卡住而放棄,例如某門 Probabilistic Machine Learning,上到第三堂老師開始介紹 Sigma algebra 我人就不好了,現在只能一直擺著。

現在最大的問題,就是習題進度嚴重跟不上。目前習題進度還卡在初微如何運用積分表的章節,跳著做搭配例題還是做不完。要把高微這種難課的證明全做一遍鞏固修為遙遙無期。預估真實戰力頂多相當本科生 PR10~PR15。

有趣的是,李老師的課程影片 Homepage 在我聽完課後竟然就 404 ,Internet archive 只有舊版,好在我在 ipad 上翻到還沒關掉的分頁,趕快另存新檔匯出,有種武俠小說洞天福地找到傳人後就自行銷毀的感覺,也算趣事 XD




全文連結

星期日, 8月 25, 2024

Tunnel Escape

 

 
 
紀錄一下讓我荒廢一整個週末的精品小黃油。美術和 XP 都正對我胃口,遊戲為 RNG 迷宮探索,不停前進直到打 BOSS 過關,每前進一步觸發任意隨機事件,如遇敵、開寶箱、被噴不明氣體(類似抽命運卡)、販賣機、偷寶物小老鼠 etc.。機制也有趣,要提昇攻擊力必須和敵人用愛發電來增強攻擊力槽,但發電過度值又會歸零,沒有發電攻擊力十分貧弱。萬一發電不幸中標會疊狀態,狀態可無限增加,直到拿到特殊道具重置。

結果週三要報的 slide 還沒準備好,明天還有顧點 orz

全文連結

星期二, 8月 13, 2024

星期一, 8月 05, 2024

星期六, 8月 03, 2024

COSCUP 2024 第一天、台北旅遊小感

這週末趁 COSCUP 2024 來臺北充電順便旅遊。

本來禮拜五下午想要 PM off 提早過來,但一些零零碎碎的事情還是下午四點左右才完成工作。

到臺北第一站就直奔上村牧場,吃久違的和牛吃到飽燒肉。上村牧場和牛吃起來還是很滿意,感覺比牛角燒肉划算,牛角燒肉 1300+ 價位解鎖牛舌,沒日本和牛吃到飽,甜點份數還有限。

COSCUP 2024 今天收穫不錯,上午 prime session 講 generalist YOLO,一個可泛用各種不同 task 的 YOLO-based 模型,層次比我「標資料->訓練單一用途 CNN」方法高明到不曉得哪裡去,很遺憾深入技術內容一如往常聽不懂。數學的部分還是需要提升,才有資格領悟更深的理論。手刻 neural network 的基本功也該做了。

今日午餐吃墨洋拉麵,干貝柚香拉麵。湯不多但是是非常濃縮的鮮美海鮮高湯。

這次旅館換成城美行旅。三星旅館,條件比之前正旅館好。正旅館所在大樓實在是太老舊了,某次泡澡結果流出來的熱水還有沈澱物就決定放棄了。新旅館新很多,房間設備都不錯,目前唯一小缺點就是隔音有點差,隔壁在叫O的聲音走廊超大聲....

這次也是新筆電天選 5 pro 第一次「實戰」,16 吋最大亮度 400 nit 2K 大螢幕用起來就是舒服。紫米 20 這次沒拿來充筆電,只拿來幫手機回血。缺點是機器 + 充電器 + 紫米真的有重量了。也許該換背包背。

明天行程有興趣的議題不多,最晚下午兩三點就可以走,應該能留時間逛宅店和天瓏。禮拜一的工作匯報回台南再想辦法。

全文連結

星期三, 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 安心點。

全文連結

星期日, 6月 30, 2024

星期二, 6月 18, 2024

帶點缺憾的郵輪行程

這次郵輪行程還包括韓國的濟州島和日本的鹿兒島,每個地方我們都上岸玩了一天,體驗當地風土人情。日本鹿兒島跟團行程有點太緊,三個景點,最後一個還是購物中心!感覺就第一個點晃了下建築,吃個點心,就趕去吃飯了。吃飯因為人數太多,每個店都需要排隊,導致寶貴上岸時間就耗費在排隊上。購物中心行程就...。

韓國濟州島因為團沒開成,倒是可以自由行,我們請了導遊小姐,帶我們看三個點。行前功課沒做足,第一個濟州島去的濟州民俗村其實不合胃口,類似特別去看古早農村,還遇到推貨的導遊,車程還要一個小時!之後導遊帶我們去看的商店街和購物中心尚可。但後來想想,應該就直接找碼頭附近景點最密集的地方,一路密集看過去就好。但整體而言,韓國相比日本,應該不會更想再來 XD

船上的收費就是讓人肉痛的事情了。帳單有一半都是網路費!郵輪上只有衛星網路,當我在頁面上選購上網套餐時,看到的價格是每套設備單價 $15 美元(買 3 台)或 $14 美元(買 4 台)。我想說價格看起來不貴,為了玩的盡興,就買了四台設備的額度,其中一個額度算是給家人備用。結果,這個價格竟然是「每24小時」的價格!實際價格是那個數字乘以5!也就是說,4 台網路「整個航程」的價格是 USD$280,相當於 9,000 多台幣!看到帳單的那一刻,我差點吐血。但後來想想,其實在郵輪上不上網路也是不太可能的,至少我和家人還有筆電共三個份額是必須的。但如果只買三個份額,應該可以省下一兩千元。

最慘的是,旅途中我還生病了,可能是飲食沒控制好,皮膚異位性皮膚炎復發,面積不大但直接發在臉上。現在收假上班還是要一兩分鐘毛巾溼敷一下臉,再擦個乳液,不然臉像螞蟻爬似的,沒辦法專心工作。每天晚上十點多就睡覺,吃了好幾天的素菜,乖乖喝中藥調理身體。

排除這些問題,這次旅行還是非常棒。船上的飲食、表演遠超預期。免費的劇院表演我覺得可以直接地面上開團了,呆在船上真的委屈,只有第一天能預約到表演,第一天的演出之後每天的額度一釋放就被秒殺。免費 buffet 幾乎隨時可去吃,免費單點的餐廳也是超過水準,義大利麵、羊排....對標地上的話應該有相當千元一餐或以上的口味,還能無限續盤。剛上班幾天就又開始想放假了 XD

船上的免費食物。很意外的有地面上收費餐廳的水準。 
 
日本鹿兒島的食物,這時皮膚病已經發了只好吃清淡點 QQ
 
日本鹿兒島第一個景點
 
韓國濟州島某個海岸
 
真。韓國烤肉,吃完這肥厚油膩又香辣的一餐後我的皮膚就大發作了 QQ
 
濟州民俗村,說真的電波對不到
 
郵輪上的收費餐點,碗非常大但實際很小一盤,可是非常好吃。台幣兩三百左右的價位,第一次吃到蝦子和干貝都會在嘴巴脆彈然後瞬間在嘴巴釋放美味的 QQ
全文連結

星期日, 6月 16, 2024

Screentogif

官網

找到了一套好用的螢幕錄影軟體,紀錄一下。

我對螢幕錄影的需求主要來自於做報告,有時會需要錄影螢幕上的固定區域,可能搭配麥克風。

這需求之前都是透過 Captura 做的。但 Captura 作者已經宣佈棄坑,我在 Windows 11 上執行 Captura 會遇到錄影時靈時不靈或是斷片的問題。更早之前我會用 Ocam,但 Ocam 被發現會預載挖礦軟體後就被我直接除名。商用付費暫不考慮。我去試驗了幾個 opensource 的替代方案。OBS studio 很好很強大,但對於我的簡單錄影需求操作太複雜,ShareX 同理,綁了自動分享等我根本用不到的功能,操作也複雜。其他的免費或開源軟體則有各式各樣的問題,例如不支援 h264 輸出等。

Screentogif 則達到良好的平衡,界面簡單,可以很容易螢幕區域錄影。而且跟名字不同,這軟體其實不只可以輸出 gif,也可以輸出 h264,只要指定好 ffmpeg 的目錄給它就可以 XD。目前看到的缺點就是不直接支援同時錄螢幕和麥克風,有這需求可能還是得用 OBS studio 應付。

全文連結

星期六, 6月 08, 2024

地中海郵輪上船第一天

久違的放假,陪家人一起搭船旅遊。第一天就在交通中度過,老家出發、高鐵、找船、登船。中間順便搞定手機投保等瑣事很快就下午了。中間手機訊號不好,整網路投保不停失敗整個人焦慮好久,還不小心弄壞氣氛 >"< 後來躲到窗戶旁邊訊號恢復才搞定。這之後趕快買了船上 wifi,雖然訊號還是很爛但總算是有網路了 Q<>Q

第一天行程以船上閒逛為主,看了不少店,但沒買什麼東西,物品普遍都價格偏貴 QQ 晚餐的歐美台混合風格 buffet 水準在預期之上,如果再額外考量這不用額外付費其實是佳作,而且這裡開很晚,其實完全可以別的店晚餐沒吃飽,再到這裡補點東西 XD。

如果晚餐是超出預期,那之後十點十五分看的 show 就是驚喜,各種百老匯式名曲歌舞接連登場,根本沒感覺時間流逝就已經十一點表演結束。據說每天會有不一樣的節目,打算問問能不能錄影,如果能的話要用手機留念了。

全文連結

星期一, 6月 03, 2024

跟 1fichier 再見

延續這篇。母校要限縮 Google 教育版無限空間, 2T 左右資料要想辦法找地方放。原本對 1fichier 非常期待。但這個月使用狀況不理想。

我有兩個大資料夾,一份以投影片和文件、大檔為主,另外一個有大量圖片小檔。前者在 1fichier 使用很順利。但後者傳了一個月還沒辦法傳完!看 rclone logs 一直傳 403 Flood detected: IP Locked。爬了文章才知道 1fichier 對於 API call 非常吝嗇。大量複製小檔免不了頻繁 call API 然後就被後端反覆限流。試著調了 --transfers、--tpslimit、--checkers 等參數都沒有用。有考慮過 iDrive Personal,也很便宜,很遺憾不支援 rclone,只有 iDrive e2 object storage 才支援,但它沒給 5TB 的選項。決定先試用 jottacloud 這家,有無限空間,只是超過 5TB 後逐步限速,看來夠用了。
 

目前先買一個月,landing page 用歐元計價是 €9.92/month,但實際刷卡的時候變成美元計價 11.9/month 但年繳會送兩個月,這樣就沒比 Onedrive 6TB 貴太多,先試用看看。若一個月沒出問題就轉年繳。

全文連結

星期日, 5月 26, 2024

Side project 更新小記

 

完成兼職工程師的第一單任務,心驚膽跳,值得紀念 XD

任務是讓土炮搜尋引擎能讓其他單位用。為了後續開發、維護和資安稽核,不得不把 project 套件全都更新一輪,從 Laravel 8 一口氣升到 11 開始。
 
因為版本差太多,連 DB schema 都不完全相容,且老系統基本只有我在用,除了需要被 search 的資料外,沒什麼值得備份的。這次「升級」乾脆直接重建,用乾淨 Laravel 11 環境,再把原本的 App 逐步移植過來。線上部分環境也推倒重來。
 
升級過程根本是災難片。Laravel 包含前後端全家桶還有大量 dependency,牽一髮動全身。例如 Laravel 11 改用 Vite 取代 Laravel Mix,所以 view template 語法得改,JS 也要 require 改用 import,導致 variable scope 和載入順序都不一樣等。Dependency 大改也引發一堆問題,例如部分自動化測試更新後,莫名其妙的 InnoDB deadlock,原來是測試 case 沒有正確解構,舊版本剛好沒觸發 bug。前端套件升級也讓頁面毀容,需要細微但繁複的修改,開著 CSS 原始碼、套件官方 demo、自己網頁的 Firefox console 來回比對好久才清理掉發現的問題。
 
升級還是有愉快的部分。因為直接打掉重練,所以可以下 drop database production_db 這種快樂指令。只可惜 dev team 只有我一人,無法找其他 member 分享刪庫的喜悅。等搜尋引擎未來逐漸成為公司資產後,應該就不能享受一言不合就 drop database 的快樂 QQ。
 
這次升級,慶幸當初有認真做自動化測試。雖然沒完整自動化 CI/CD,但至少我寫的後端 code 有 100% test coverage。後端真的 test 全過,線上就過。趁周末值班空檔備份、下線、刪庫、更新、部分重新初始化,解掉個佈署腳本的小 bug,docker 一啟動看到的就是正常的服務,非常舒心。
 
過程中 GPT-4 老師也很幫忙。像我 jQuery 老人根本不懂什麼 import、require、CommonJS、AMD 啊,現在問題和 code、錯誤訊息全問 GPT。GPT 如果不能直接給 sample code 也能給 hint,幫我這一人萌新團隊快速過掉問題。
 
之後還有很多問題要處理,特別是安全方面沒碰過頭有點大,只能走一步看一步。現在還已經正式兼職,不能再說我只是個發燒友來推託了 orz
全文連結