工程信箱
第六集:小心曲線!
簡而言之:如何在實驗設計中放置中心點時進行簡單的曲率測試?觀看影片即可了解!此外,現在還有一個插件可以進行這項分析——連結和詳細資訊在文章底部。
作為一項新功能——我將在這些文章中提供簡短的影片講解,重點介紹文章中的關鍵點。以防您需要快速找到答案。
介紹
我們系統工程師偶爾會遇到一些有趣的問題,這些問題超出了JMP的典型使用範圍。有時,這些問題本身就很有意思,讓我有機會深入探討我們在 JMP 中採用特定方法的原因。
今天這個問題需要特別解答。我經常在和接受過傳統實驗設計(DOE)方法訓練的人交流時被問到這個問題。所以,這是一個幫助歐洲同事的機會,同時也能向大家展示一些你們可能不知道如何在JMP中實現的有趣功能。
這個問題
嗨,麥克,
我還有一個問題……如果我進行中心點運行,是為了檢查是否存在二次項,但我可能不確定哪個項是二次項。我應該能夠在不將其與任何特定因子關聯的情況下檢查是否存在顯著曲率,我的理解是否正確?
凱文
我的回覆
嗨,凱文!
……我對這個曲率檢定做了很多研究。結果發現它其實就是個t檢定!我在蒙哥馬利的書裡找到了相關的公式。更重要的是,它真的很容易操作。雖然不是一鍵就能完成的,但我反而更喜歡這種方法,因為它能讓你真正理解假設。我附上了一個數據表。
- 在資料表中建立一個列,用於指示某行的角點或中心點。如果您已有包含設計程式碼的資料列,則可以使用 recode 來實現此目的。
- 轉到“擬合 Y 對 X”選項。將您的回應值放入 Y 列的「回應」欄位中,並將您建立的指示角點或中心點的列放入 X 列的「因子」欄位中。
- 點選確定。
- 在紅色三角形下方,執行 t 檢定(除非有重複樣本,否則不要使用合併 t 檢定)。你需要的是 Prob > |t| 的 p 值。本例的零假設是平均數之差(中心點和角點之間的平均數之差)為零。蒙哥馬利的解釋是,如果 t 檢定顯示平均值存在差異,則中心點位於與模型線性元素不同的平面上(存在曲率)。

如果你想把所有資訊都放在一個報告裡(就像[某個不願透露名稱但名字聽起來像「really drab」的軟體]那樣),你只需要把標記模型中心點的列作為主效應包含在內(見截圖)。點擊「運行」後,頂部的「效應總結」會得出類似的結論(區分中心點和角點並不顯著)。你可以查看一下,看看能否在你的資料集上驗證這一點。


最好的,
M
我剛才到底提了什麼鬼建議?
在深入探討這個主題之前,我想先簡單介紹一下這個問題——因為我和我的同事經常被問到。基本上,這個問題源自於經典的篩選設計(例如部分因子設計、Plackett-Burman 設計等)。這些設計通常採用兩層次多中心點策略。這樣做的好處是,在經典設計的框架內(稍後會詳細介紹),資源利用效率非常高。缺點是,它只能讓你尋找主效果和一些交互作用(如果運氣好的話)。中心點的加入是為了對沖風險,以便實驗者在後續實驗中是否需要考慮二次項。這就是為什麼在進行曲率分析時需要進行這種檢驗的原因。
好了,回到我的建議。我提出的建議可能看起來有點奇怪。我建議,在設計好的實驗中,只要使用看似普通的t檢驗,就能找到曲線行為(這詞兒聽起來就挺有趣的!)。我的意思是,當我們尋找像曲線行為這樣名字聽起來就很吸引人的現象時,似乎應該用一些更專業的工具。但事實並非如此。而且,這其實不是我原創的想法。正如我之前提到的,我最早找到的這種技術實例出自道格拉斯·蒙哥馬利(Douglas Montgomery)的著作《實驗設計與分析》(Design and Analysis of Experiments)。這本書是我研究生第一門統計學課的必讀書目。課很棒,書也很棒。總之,回到我們討論的議題。
我不會詳細解釋其中的數學原理,但基本思路是這樣的:如果從研究系統中收集的數據具有嚴格的線性關係(例如,可以用直線連接數據集中的所有點),那麼數據集均值(不包括中心點)的置信區間應該包含中心點均值的置信區間。因此,如果我們對邊緣點和角點的平均值與全局中心點的平均值進行t檢驗,低p值表示系統中存在曲率,而高p值則表示系統曲率的證據不足。這並不意味著曲率不存在,只是雜訊太大,難以判斷。現在,由於資訊量較大,我們來看一些例子,以便您更好地理解。
一個簡單的例子
用兩個連續因子的簡單例子來形象化理解可能最容易。請注意,這裡我模擬了數據,並且使用了比通常雙因子設計中多得多的數據。這只是為了說明問題,請繼續往下看。另外,請注意,本文中的所有範例都發佈在JMP 公共上,如果您想嘗試使用它們,可以從那裡取得資料集。
好的,這是一個包含兩個因素和三個中心點的設計實驗。
中心點以紅色標出,以便後續定位。現在,讓我們模擬一些資料到設計中,不考慮二次效應。在 JMP 中,我們可以使用 DOE 平台中的模擬響應功能來實現這一點。現在,在進行t檢定之前,我們先來看看資料本身的情況。我們來看一個三維散點圖。我已經添加了擬合模型及其95%置信區間,以顯示蒙哥馬利提到的平面。

你可以看到,當不存在曲率時,資料點位於由置信區間的上下限(藍色和紫色網格)定義的區域內。
現在,我們來看一個我在模擬模型中加入一些曲率的例子。我使用了相同的線性和雙因素交互作用係數,只是在數據中添加了一些二次效應。首先,我們來看看三維圖:

注意看,紅色中心點不再位於由藍色邊緣/角點定義的平面內了嗎?你是否也注意到中心點是如何…外部表面的置信區間是多少?
現在,如果我們查看這些資料集的t檢定結果(我使用了JMP Public中的列切換器來顯示兩者),我們可以看到,在沒有曲率的情況下,中心點和邊緣位置的置信區間重疊得很好。此t檢定的p值相當高,正如我們預期的那樣。然後,您可以切換到存在曲率的情況,並查看置信區間和p值的差異。
t檢定結果表明,有強有力的證據表明中心點與邊緣/角點不屬於同一總體。然而,我們知道這些數據來自同一系統,因此必然存在另一種解釋——即該系統比我們想像的更為複雜,並且具有曲線行為。
更複雜的東西
接下來,我們稍微增加一下問題的難度:五個因素。這裡的問題是,同樣的邏輯是否適用於兩個因素的情況?我們無法直觀地描述這種情況,所以只能依賴 t 檢定的 p 值。但我們提出的問題是一樣的:中心點的平均值信賴區間是否與邊緣/角點的平均值信賴區間重疊?就是這樣。而且,同樣的邏輯仍然適用。
在這個例子中,我基本上做了和第一個例子相同的事情。下圖是設計空間的散佈圖矩陣。紅色標記是中心點,藍色標記是邊緣或角落。還要注意的是,經典的全因子設計中缺少一些數據點。我這樣做是為了說明即使使用 JMP 自訂設計方法,這種方法也有效。
如果我們看一下這兩個模擬的 t 檢驗,我們可以看到 p 值非常清楚地表明資料集中何時存在曲率。
看來事情就是這樣了,對吧?
其實不然。關於實驗設計還有另一種思路,我認為它比簡單地在篩選設計中隨意添加一些全局中心點就完事,更能有效地解決這個問題。
現代能源部關於曲率的建議
DOE中曲率問題的根源在於經典設計中的兩個難題。首先,過去人們必須用紙筆進行DOE計算,可能還要用到RPN計算機(為了顯得自己很懂技術)。因此,設計方案的選擇旨在盡可能簡化計算。這就將正交性的概念引入了實驗設計領域。正交性使得數學計算更容易理解。第二個難題在於設計本身的創建。正交設計的概念相對容易理解,並且與傳統的科學方法非常契合。它們很容易被編入實驗人員的參考手冊中。
這兩個問題現在都解決了。你很可能不會用計算機(無論是RPN計算器還是其他計算機)進行數據分析。而且,你可能也不會翻閱塵封已久的古籍來確定實驗方案,儘管你可能正在使用數位化的替代方案卻渾然不知。事實上,除非你選修了一門統計學課程,而且教授非常嚴格,否則你肯定會使用軟體來分析你的實驗設計,甚至可能還會用它來產生設計圖。這意味著你無需再用紙筆進行DOE分析——你可以讓計算機來完成這項工作。這也意味著你可以讓電腦演算法來確定實驗在設計空間中的位置,從而創造出完全符合你需求的客製化設計。拋棄舊有的限制,你就能使用極為強大的工具-現代實驗設計。
我不會深入探討現代實驗設計(DOE)(這方面有很多優秀的書籍: 例如這本和這本都是不錯的入門讀物),而且相關文獻也層出不窮。我將重點放在現代實驗設計的一個面向:最優設計。最優設計的簡化版讓你從一開始就定義你認為的曲率位置。然後,演算法會設定合適的實驗條件來驗證曲率是否存在,而不會造成任何浪費。這一點至關重要。你幾乎不可能完全不知道研究系統中是否有曲率。如果你在設計生成過程中與領域專家合作,他們應該要了解這類資訊。以下是 JMP 中相關功能的截圖:

在模型部分,我已指出我認為主效果和交互作用都很重要。兩個平方項周圍的綠色方框表示我認為這兩個因素的系統存在曲率。最優設計會將中心點放置在正確的位置以檢驗此曲率。現在,如果我有五個因素,我可以只在模型項目中包含我想要探索曲率的因素,如下所示:

請注意我未在此列出的所有組合(互動和能力);這些都是我不需要使用的素材。在分析此設計時,我們仍然可以在模型生成過程中檢查曲率:
現在,如果您想在篩選設計中檢驗曲線曲率,您也可以使用現代方法:確定性篩選設計。這種設計內建了中心點,並且比部分因子設計和其他設計類型更有效率。 JMP 社區的 Brad Jones 提供了一些很棒的資源。以下是我最喜歡的一些:
最後想說的
好了,就這些。在設計實驗時注意曲線非常重要。你可以用 JMP 中的 t 檢定輕鬆地透過中心點來偵測曲率。分析本身並不神秘,但結果可能比較難解讀。我的同事@Ross_Metusalem開發了一個插件,可以出色地完成這項分析並呈現結果。點這裡查看: 純二次曲率測試。下次見,TTFN!
很棒的博客文章!
把我算在用鉛筆(我從來沒有用過鋼筆……無法擦除我的錯誤)、紙和計算器創建和分析我們的實驗設計的小組中……我從來不喜歡逆波蘭表示法風格……總是更喜歡我所說的“執行順序”式計算器。
然後我被介紹給 SAS,稍後又接觸到 JMP...並且再也沒有回頭!