那天 CPK 報告出來,全場沉默了三秒,只聽到我心裡罵了句OOXX
還記得有一次,我們機台換了一個新的製程參數,想看看效果。跑完第一批貨,設備工程師小陳眼睛發亮地拿著 SPC 報告跑過來,說:「學長,你看!這 CPK 1.08,是不是快到 1.33 了?搞不好有機會!」我瞄了一眼,嗯,看起來還行。結果,隔天生產線出了一批貨,客戶那邊直接抱怨說不良率高到爆表,DPMO 竟然飆到 6210。我跟小陳兩個面面相覷,前一天還說 CPK 1.08,怎麼今天就 GG 了?後來我們才發現,原來是 SPC 資料清理沒做好,把一些明顯的異常值也算進去了,結果把整個數據都拉歪了。
問題出在哪?
說穿了就是「垃圾進,垃圾出」(Garbage In, Garbage Out)。你拿了一堆沒處理好的原始數據去跑 CPK 或其他統計分析,跑出來的結果當然就是狗屁不通。很多時候,我們看到 SPC 圖上那個點突然爆高或爆低,直覺反應可能是機台異常,趕快去查機台紀錄。但坦白講,有時候這些異常值根本不是機台或製程真的出問題,而是「量測錯誤」或「資料輸入錯誤」。
舉個例子,你的製程目標是 100nm,結果某個點量出來是 1000nm。你覺得這會是你的機台突然這麼猛,瞬間把膜厚做到 1微米嗎?當然不是啊!八成是量測儀器探頭沒碰到、或者工程師手滑多打了一個零。如果你不把這些明顯的「錯」從資料裡面剔除,它們就會把你的平均值、標準差全部拉偏,最後算出來的 CPK 或其他指標,根本無法反映真實的製程能力。
所以重點是,在開始任何 SPC 分析之前,你得先幫資料「洗個澡」,把那些明顯的髒東西清掉。
實際上怎麼做?
我們在處理 SPC 資料異常值的時候,通常會遵循幾個原則:
* 3倍標準差法則: 如果一個數據點跟平均值的距離超過三倍標準差,那它被視為異常值的機率就很高。
* IQR 法則: 先算出 Q1(25百分位數)和 Q3(75百分位數),IQR = Q3 - Q1。任何數據點如果小於 Q1 - 1.5 * IQR 或大於 Q3 + 1.5 * IQR,就可以考慮為異常值。
但要記住,這不是鐵律,只是參考。你不能看到一個點超過 3 倍標準差就直接刪掉,還是要回頭確認原因。
最常見的坑
我踩過最大的坑,就是「為了讓數字好看而剔除」。有時候製程能力真的差,CPK 怎麼算都過不了 1.0。這時候有些工程師會想說:「哎呀,是不是這些異常值拉低了?我把它們清掉,CPK 搞不好就上去了!」然後就開始「選擇性」地剔除數據。
我記得有個新手工程師,為了讓 CPK 從 0.8 衝到 1.0 以上,把所有超過 2 倍標準差的點都刪光了。結果就是,他交出來的報告 CPK 漂亮到不行,老闆看了也開心。但實際生產出來的產品,良率還是爛到爆炸。因為他刪掉的,其實是「製程真的有問題」的數據,而不是量測錯誤。他只是把問題「遮」起來,而不是「解決」。這真的會害死人,也害死產品良率。
所以,剔除異常值是為了讓數據更「真實」,而不是為了讓數據更「好看」。這兩者有天壤之別。
今天能做的一件事
回去看看你最近的 SPC 報告,找一個看起來很怪的數據點,追查它背後的原因。