人生中第一次中勒索病毒成就達成!
不過是在 VirtualBox VM ,不是實體機器 QQ。
故事是:我和某年輕學弟一起做研究,我開發了一款傻瓜式資料標註軟體,專門用於本研究特有的資料標註問題,讓不擅長電腦的標註者也方便使用。結果傻瓜軟體完成了,但學弟只有 Mac,沒有好用的,全能的,穩定的 Windows PC,臨時也生不出來。想來想去,最後決定用自家 PC 架 VirtualBox VM,這樣比買 Windows VPS 便宜很多,設備和網路可靠性問題遇到再想辦法 XD。
為了方便學弟連,VM 網路設 Bridge 模式,開 RDP。額外裝了 AnyDesk,總有款有緣的方式可以連進來,最後學弟不會 RDP,都用 Anydesk。VM 除了系統只額外裝了傻瓜標註軟體、Dropbox 自動備份標註成果和 Anydesk。Windows 更新我為了方便暴力關了(!)
今晚,學弟用 LINE 聯繫,說 Anydesk 連不上,回家一看 VM 桌面寫著「Lockbit Black」搭配經典黑色桌面。不過 Dropbox 標註成果和我傻瓜軟體每次開啟的自動備份(.json)都沒事,有事應該也能透過歷史還原救一下 QQ
經過稍微分(問)析(AI),可能攻擊向量懷疑 AnyDesk 還有沒打更新的系統存在高危漏洞,而 VM 又用 bridge networking 裸奔。
查了一下 Anydesk 最近的 log,幾個成功登入 IP 都是來自南台灣,猜測為學弟正常登入。更進一步的 Log 分析我就沒有力氣做了。直接盲猜是中了高危漏洞,開大絕直接回滾正常快照,網路改 NAT,再將登入和 Anydesk 套上強密碼,一系列治療兼診斷,先看看會不會繼續中招在說。
星期四, 2月 26, 2026
星期日, 2月 22, 2026
「公投法複決憲法裁判」之我見
在野黨最近推動「公投法複決憲法裁判」,本座作為一般百姓是支持的,這是整理後的個人想法(AI 有幫億點忙XD)
太長不看白話版:
小弟認為「公投複決憲法裁判」應有合憲空間,理由如下:
1. 我國憲法第1條明定以三民主義為我國民主國原則之成立前提及構成要素。
2. 三民主義下,憲法 136 條人民參政權之存在並非僅為參與制定重大公共政策及法律,更具備監督政府五權之功能,司法權並非例外。如何用參政權監督政府屬國會立法形成空間,非修憲專屬。已預先取得憲法授權,並非用法律對抗憲法。
3. 對於人民監督司法可能引發之「多數暴政」、「政治情緒干預專業」之疑慮,三民主義已有「權能區分」理論預先解答(人民可管理,但不可自為裁判),無須機械移植與憲法民權主義不相容之歐美司法抗多數學說。
4. 綜上,倘若「公投複決憲法裁判」僅設計為「人民暫緩憲法裁判一般規範效力生效,退回交由專業司法機構進行重審」且具備防濫用設計,在我國憲法以三民主義為民主國原則之前提及構成要素之特殊背景下,應視為民權主義權能區分之具體實現,未入侵司法權、未破壞權力分立,且屬國立法形成空間,非修憲專屬,有合憲空間。
---------
一、我國司法最後性之理解,依憲法應尊重三民主義
二、我國憲法允許法律補充參政權射程範圍
本文認為,基於憲法第1條所揭示之民權主義原則,以及第136條對創制、複決權所採開放式授權結構,釋憲效力之終局性不應僅限於司法機關之自我修正。除司法院重新釋憲外,人民亦應得於憲法第136條所保障之制度框架內,對憲法裁判之一般規範效力為一定程度之程序性調整。
憲法第78條與第136條同屬憲法明文制度設計,同受憲法承認,應為體系上之調和解釋,而非以司法終局性絕對排除人民之制度性參與。倘若全然排除立法者依制度化參政權所建構之人民對司法之監督機制,可能牴觸第136條開放式參政權「人民四權監督政府五權」之立憲意旨,並使司法權逸離第1條所揭示之民權主義原則。
三、三民主義並非否定司法專業性及統一解釋憲法職權,仍兼顧保障少數人權及法安定性
四、結論
對於將公民投票機制適用於憲法裁判之合憲性評價,應置於中華民國憲法以三民主義為根本國策之體系脈絡下審視。三民主義不僅為立國精神之宣示,亦構成我國民主國原則之價值前提與內在要素,故相關制度設計之合憲性判斷,不得脫離此一規範背景。依憲法第1條所揭示之民權主義原理,政府權力原則上應受人民主權之監督,司法權亦不當然例外。
我國憲法 136 條創制、複決權採開放式設計之制憲本意,除令人民得參與重大公共政策外,尚包含對五權體系之制度性監督。而本條採開放式授權結構,賦予立法者形成空間,為前述「人民監督權」之具體化制度安排。國會立法若符合「監督政府」本意且未違背其他憲法規定,例如將釋憲主體由司法院改為總統或人民,則應然有效。
因此,人民依憲法 136 條,並由立法具體化之參政權機制,如及於司法權之運作,原則上仍屬憲法 136 條「人民四權監督政府五權」預設與授權範圍,尚難逕認為「以法律對抗憲法」。憲法第78條所體現之違憲審查功能及「司法抗違憲多數」以及憲法第136條所保障之參政權及「人民四權監督政府五權」,同屬憲法明文制度設計,均為我國憲法體系所承認。不應僅以釋憲效力之最終性,即排除任何人民回應憲法裁判之制度可能。
誠然,人民複決憲法裁判可能引發多數干預司法專業之疑慮。然而,三民主義之「權能區分」理論已區辨人民之管理權與政府之專業執行權,以維持民主正當性與專業治理之平衡。人民得行使監督與管理,但不直接取代專業裁判活動。此一制度理念為我國制憲者於「民權主義」中對抗「多數暴力」之明確制度構想,歷史脈絡可稽,屬立憲原意,無須援引與民權主義核心精神不相容之外國「司法抗多數」理論以為依據。
準此,倘若制度設計僅賦予公民投票暫緩憲法裁判之一般規範效力,而不變更裁判內容,並將爭點交由司法機關重行審理,且設有嚴謹門檻與程序保障以防濫用,則尚難謂已變動權力分立之基本架構:此種安排毋寧係對憲法既有人民監督理念之具體化,而非創設新的國家權力;其影響亦未必等同於侵害司法獨立,而是在我國三民主義民主國原則下司法權及其他四權本就不得完全排除人民主權回應機制。
至於現行釋憲實務及學說所吸納之「司法終局性」與「抗多數」理論,其是否已超越憲法變遷之邊界,已實質改變憲法意旨:「五權都受到人民監督,但司法權例外」,其是否違背我國三民主義民主國原則,其正當性實有深入討論之必要。
Update:
2026/03/08:整個重寫,果然外行人做功課是做不完的
2026/03/09:繼續改
全文連結星期五, 1月 16, 2026
佐賀偶像是傳奇夢幻銀河樂園(雷)
看到 C_Chat 版,才發現這部劇場版終於上映了。幸好台灣還沒有下檔,趕忙去威秀看。
整體作畫符合預期水準,歌好聽,劇情簡單粗暴爽。小遺憾是沒有訂到 4DX 的票,只能看普通版。
劇情緊接第二季結尾,真的在演殭屍大戰外星人。中間當然夾雜佐賀元素。某團員終於成功恢復了記憶,整個劇情中英姿颯爽,很遺憾恢復只是臨時的。期待這一部是否會有第三季!
星期二, 12月 16, 2025
財劃法行政院不副署之我見
個人認為不副署違憲,以下內容請 deep research 幫了億點忙後手動整理:
一、拒絕副署構成對總統憲法職權之實質妨礙
首先,依憲法第 72 條明文:立法院通過法律案後,總統「應」於收到後十日內公布。副署乃法律公布的必要程序環節,行政院長拒絕副署將導致總統無法履行公布法律之憲法義務。
憲法學者許宗力教授曾闡述「憲法機關忠誠」原則,強調「憲法機關忠誠指的是憲法機關彼此間所負之相互扶持、尊重與體諒的義務,不得阻撓其他憲法機關行使職權,也不得使其他憲法機關陷於癱瘓,其具有限制憲法機關權力濫用之功能。」。司法院大法官釋字第613號解釋理由書也明確指出:「惟權力之相互制衡仍有其界限,除不能牴觸憲法明文規定外,亦不能侵犯各該憲法機關之權力核心領域,或對其他憲法機關權力之行使造成實質妨礙」。
以上原理均旨在維護憲政體制中各機關職權行使之順暢與核心功能不受侵害。行政院聲「不副署是制衡立院的手段」,已逾越正當權力制衡之界限:任何制衡措施都不能以癱瘓他機關的憲法職權為代價。依憲法規定,總統應於立法院通過法律案後十日期限內公布,此為總統不可推卸之憲法義務;倘總統怠於公布即構成違憲。行政院長拒絕副署,將直接導致總統無從依法定程序行使職權公布該法律,使總統陷於違憲失職的困境。換言之,行政院長以消極不作為手段阻斷總統行使公布法律之職權,已對總統憲法職責造成實質妨礙,依上述原理應屬違憲的權力濫用。
二、拒絕副署違背憲法覆議機制、架空立法權
按照增修條文第三條第二項但書規定,在法律案覆議程序完成(立法院維持原案)後,行政院長「應即接受該決議」並執行之。然而拒絕副署意味著行政院長並未真誠履行「接受」立法決議的義務,而是透過程序瓶頸讓法案無法生效。這種作法形同由行政機關自行宣告法律無效,不但違反憲法權力分立原則架空立法權,更違反憲法覆議程序規定。
三、「副署」意義在於承擔責任,非賦與「額外實質審查權」
從比較憲法觀察,「副署」制度的設計旨在強調行政團隊願意承擔執行責任,而非賦予副署者對該決定內容的最終否決權或實質審查權,「副署是一項憲法規定,要求總理或部長簽署已由國家元首簽署的官方文件,國家元首簽署後即對該文件承擔政治和法律責任。」(A countersignature is a constitutional requirement requesting the Prime Minister or a Minister to sign an official act already signed by a head of state, who by signing it assumes political and legal responsibility for this act)
上述意涵可從日常組織運作類比理解:公司内部請假,需行政人員簽核,行政人員不簽即無效,董事長請假亦需行政人員副署,以確認請假流程完備,並進行後續作業。然而,行政人員副署意義僅在於「請假流程由本人負責」,若事後流程發生問題由其承擔責任;並不代表行政人員可以實質審查、否決董事長的請假。在請假要件符合規定的前提下,行政人員無權不簽,不簽即屬於逾越職權。
同理,在民主憲政運作中,立法院依法通過且程序完備的法律案移交總統公布時,行政院長的副署旨在責成「行政院長必須執行該法,並對執行負政治責任」,而不是給予行政院長二次否決機會。
四、其他論點反駁
有論者主張:行政院與立法院在憲法位階上「平級」,主張行政院無須配合立法院所通過之法律。然憲法機關間之平等,非否定憲法所明定之職權分工,此一關係可由組織運作之類比理解:在公司內部,業務部門與財務部門位階相同,然涉及財務申報事項時,業務主管仍須依財務承辦人意見辦理,並非因財務承辦人官位較高,而係因該事項屬於財務職權範圍。憲法機關間之互動,亦同此理。
另有論者主張,於憲政機制失靈(憲法法庭停擺)情形下,行政院得援引「抵抗權」拒絕副署法律。然依比較憲法通說 (連結),抵抗權僅於顯然、重大且立即不可回復之違憲侵害,且在所有制度內救濟途徑均已失效之極端嚴格情況下,始得成立,且其行使主體原則上限於人民,而不及於國家機關或公務員。歷史上抵抗權之適用,多涉及極權政體下對人民生命或基本人權之即時侵害,與一般政策性或預算性立法爭議存有本質差異。若承認行政機關得在非最嚴重、明顯情形得以抵抗權拒絕依法行事,將使公務員是否守法取決於恣意判斷,與法治國原則顯然不符。
TL;DR
1. 拒絕副署將導致總統無法公布法律(憲72),屬妨礙總統行使憲法職權及義務。
2. 覆議失敗後行政院應即接受該決議(憲法增修條文3-2),覆議失敗後拒絕副署,讓法案無法生效,顯非「接受該決議」。
3. 「副署」本意在於「宣告對此負責」(請假須行政人員副署,只代表行政人員負責跑流程,不是有權審查)。將副署作為二次審查權濫用,違背副署制度本意。
4. 用「行政院與立法院平級,沒必要絕對服從」及「行政院有抵抗惡法的權力」均不成立。
- 「平級」不代表「不需尊重對方職權」。業務與財務平級,但牽涉財務,業務主管仍需服從財務承辦人意見,規定如此,與官位大小無關
- 抵抗權僅限極為嚴重、明顯無爭議、有立即無法恢復違憲侵害之特殊情形(例如極權政體即時侵害人民生命權),且屬人民對國家機器的防衛權,並非國家機關對守法的豁免權。
以上
星期四, 11月 27, 2025
Autohotkey 自動監測啟動 VirtualBox VM
用 GPT 產生的腳本,蠻好用的 XD。作用是在每次 Windows 開機時,自動監測某個 VirtualBox VM 是否已經自動運行。如果沒有運行,就自動啟動它。
需求背景是研究計畫中請了一位學弟妹幫忙,而標註程式需要用到 Windows,結果學弟家裡只能使用 Mac 囧,只好自己在 VirtualBox 上架設一個 VM。如果不這樣做,線上的 VPS 提供者所給的套餐都很貴資源又少。用 1GB 或 2GB 的 RAM 搭一個 shared vCPU core 跑 Windows,性能實在不敢想像。
自己電腦建 VM,然後把 RAM 和 Disk 切多一些,使用FRP Tunnel出去,體驗實在好太多。唯一問題就是 ADSL 有時不穩定,這點還要設法剋服。
; --- settings ---
VBoxManage := "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
VMName := "win10"
CheckIntervalMs := 1000 ; how often to check when running
BackoffAfterStartMs := 5000 ; wait a bit after starting to avoid rapid retries
; -----------------
#NoEnv
#SingleInstance, Force
SetBatchLines, -1
Loop
{
; Build: "C:...\VBoxManage.exe" list runningvms | findstr /I /C:""Win10""
Cmd := """" VBoxManage """" "list runningvms | findstr /I /C:" """""" VMName """"""
RunWait, % ComSpec " /C " Cmd, , Hide
if (ErrorLevel != 0) {
; Not found -> start headless
Run, % """" VBoxManage """ startvm """ VMName """ --type headless", , Hide
Sleep, %BackoffAfterStartMs%
} else
{
Sleep, %CheckIntervalMs%
}
}
全文連結
星期二, 11月 18, 2025
影片:這才是審稿人眼中漂亮的 discussion!
好影片,紀錄一下影片重點:
好的 Discussion 分成五步驟。所有討論都有一個目的:to tell people what they can know from your research!
一、概括當前研究
進行具體討論前,先對 current study 做一個回顧,因為讀者讀到 discussion 這里有可能已經忘記你研在幹麻,所以要提醒一下讀者。一段話就夠了!
* 再次指出你的研究問題(research question)
* 回顧你的研究方法(methodology)
* 強調重要研究成果(key findings)——注意是最核心的研究結果,而不是所有在 results 部分呈現的結果
* 告知讀者 discussion 的結構(the structure of discussion):這部份 ChatGPT 給了一個示範,放在 Discussion 第一段最後一兩句:The discussion is organized into three parts. The first part interprets the key findings of this study. The second part compares these findings with previous literature. The final part addresses the limitations and provides directions for future research...
二、討論本研究與已有文獻的關系
discussion應該要和文獻對話里找到的文獻相呼應起來。
這一部分,核心問題:
* 你的研究結果是否與現有文獻「一致」?哪些一致?怎麼一致?
* 更重要:你的研究結果是否與現有文獻「不一致」?哪些不一致?
* 為什麼不一致?如何解釋它們的不一致?
要提出三點左右的發現和能解釋它們不一致的原因(這里需要大量的 critical thinking!)這里也需要盡量找到有參考文獻的支持!
同時可以討論,為什麼一些理由不適用於解釋當前的不一致?這樣會讓 discussion 部分顯得更加的 critical!
* The findings match those observed in earlier studies
* Our findings are in accord with recent studies indicating that…
* There are similarities between the current study and …
「與現有文獻不一致」萬能句型
* In contrast to/Contrary to earlier findings, however, …
* The results provide evidence against the widely held assumption in …
* The results/findings go exactly counter to the idea that …
「對結果進行解釋」萬能句型
* A possible explanation for this might be that…
* We speculate that this might be due to …
* Two types of accounts could be proposed for the …. The first account assumes that… The second account assumes that…
* The difference between … and … could be attributable to…
三、討論意外,或預料之外的發現(unexpected or surprising findings)
是否有一些結果是和預想的不符,意想不到的?可以從中進行討論,並給出解釋理由,比如是否有一些結果並不顯著(statistical significance)
其他次要的結果,也可以簡單的進行討論+解釋
更重要的是這些意外發現的價值在哪裡?對這個研究領域能有什麼樣的implication? Any new insights that emerged as a result of your research?
* Surprisingly, ...
* What is surprising is that...
* One unanticipated finding was that...
* Contrary to expectations, this study did not find...
* It is somewhat surprising that...
描述意外結果的 implication 萬能句型
* The experiment provides a new insight into the relationship between...
* These results should be taken into account when considering how to...
* The data contributes a clearer understanding of...
* While previous research has focused on X, these results demonstrate that Y.
* The findings have extended our knowledge of...
四、闡明本研究結果與相關理論模型的關系
說完和之前具體的 study 的關系,要開始討論理論部分了!這邊要把眼光放長遠,要想到整個bigger picture!這部分也是想要拿到高分的重點,因為這都是研究contribution!
* 基於你的研究結果,可以對現有的理論作出任何貢獻嗎?
* 你的結果是否與某理論觀點不符?
* 是否可以改變某個理論觀點?
* 或者可以補充一些什麼觀點?
* 是否可以基於你的研究,提出一個更新版的模型呢?
五、本次研究的不足之處(limitation)
任何一個研究都會有局限性,不可能有一個研究是完美的!所以只需要承認這些局限性就可以了,這里也是你critical thinking的展現之處。
* 有哪些局限性?(如樣本量小,研究結果普適性(generalisability)較低,實驗器材有局限性)
* 為什麼會有這些局限性?
* 這些局限性會帶來什麼影響?
星期一, 11月 10, 2025
論文閱讀:Free Transformer
來記錄一下最近在 GPT 幫助下讀過的最難的 paper:Free Transformer。這篇的數學難到撞牆。
這篇核心概念,就是在 Transformer 裡面明確在模型裡顯式引入潛變量 Z。(論文 Z 不是單一全局變數而是序列 Z1...ZT)
在原本 Transformer 結構,潛變量 Z (例如影片是正評、負評)是通過學習序列預測來進行隱式學習。這種方法存在幾個缺點。首先,要計算我們感興趣的變量 Z,會涉及很複雜的計算,並且這類計算容易出錯。只要序列生成中出現錯誤,整個序列以及根據該序列推導出的 Z 都會是錯誤的。此外,沒有顯式表達 Z,把產生 Z 建立在序列預測,也可能在新資料因為序列預測表現不同而影響泛化,這也是論文 (1)(2) 式舉例想表達的。
另一個難點是論文中 (3)。這個(3)邊際似然(marginal likelyhood)P(S)和論文中 loss function 有關,loss function 其中一部分近似 logP(S) 的證據下界(ELBO),因此當 loss 降低時,意謂 ELBO 提高,從而提高對 logP(S) 的下界。而 P(S) 基本上可以看作在先驗 P(Z) 下對 P(S|Z) 的期望。如果P(S)夠高,那麼在模型生成的過程中,只要採樣Z,就會有足夠的機會讓模型產生的 S' 能夠對應到真實的序列 S。而 Z1...ZT 並非參數,是隨機採樣出來的,編碼器參數(確定 Q)與解碼器參數(確定 P(S|Z))才是需要學的。
接下來難點是所謂 free bit 設計。Free bit 目的在於避免 KL collapse ,也就是,VAE decoder 以及後面的模型直接將採樣的 Z 丟棄不用,然後 VAE 訓練出的分佈 Q(Z|S) 直接套先驗分佈,然後 KL Loss 歸零成功最小化,但 VAE 就整個沒用。為了避免這種情況,模型引入了 free bit,使得 Q 分佈與先驗分佈之間可以允許一定程度差異,不會計入 Loss。
接下是所謂的 Binary Mapping。它的模組有一層,不是直接輸出 2^H 次方個 output,而是將輸出 H 個互相獨立的 Binary Bit,具體輸出 class number 則是這 H 個 bit 對應的 binary number。學習 H 個(例如 16 個)互相獨立的 binary classification 會比直接學 2^H 個 class(如 65536 個)訓練更好,降低參數量、避免大多數輸出都是在 0 附近微調,訓練速度慢並且容易被 noise 干擾,也避免資料不夠長尾類別學不到。
剩下的部分是實際測試。首先是 free bit 的設定。Kappa 太低,模型表現與正常 Transformer 相同,實際上就是 KL collapse,導致 VAE 沒有作用。然後,當 Kappa 的值過大,模型會在 Z 藏太多資訊,實際上是 overfitting,測試中連雜訊都學進去了。然後後面 benchmark 的部份就沒有細讀。更多的細節我看不懂 XD
全文連結

