统计学是关于如何生成和使用数据来解决科学问题。为此,熟悉科学和科学方法至关重要。在科学和技术研究中,我们经常需要研究众多变量。不妨称那些你可以改变的变量为"输入变量"或"因子",称那些你只能进行观测的变量为"输出变量"或"响应变量"。人们曾一度认为,研究受多个因子影响的系统的正确方法是每次只改变一个因子。但早在八十多年前,R.A.费希尔就向世人揭示了,这种方法效率太低,白白浪费了许多实验努力。事实上,你应该按照所谓"实验设计"的安排同时改变多个因子。然而即便在现在,每次只改变一个因子的方法仍然在课堂上被教授。

《统计学大师之路》

很多人(包括我自己)学习试验设计,大多是直接研究"析因设计"(factorial design),不论是完全析因设计、部分析因设计,还是响应曲面法。

我在阅读和实践中愈发感觉,"析因试验"的基本单元(building block)更简单、更常用,更能体现试验设计的威力和本质。

析因设计的三个基本单元:

  • 完全随机设计(最简单的试验设计)
  • 随机区组设计(最常用的试验设计)
  • 拉丁方设计(多区组的随机区组设计)

这些基本单元,可以扩展出一些特殊情况,比如"平衡不完全区组"(区组内不能完成一次完全重复),超希腊拉丁方(三个区组,比拉丁方设计多一个区组),完全析因设计,部分析因设计等。

George Box 在《统计学大师之路》中分享了很多案例,本文分享前三个案例和我自己的学习体会,都是和"区组 blocking"这一个 DoE 原则有关。

首先用表格简单汇总这些案例:

案例 试验类型 试验设计三大原则
兔子眼睛实验 平衡不完全区组设计 随机化 + 一个区组 + 重复
芥子气生化实验 拉丁方设计 随机化 + 两个区组 + 重复
织物耐磨测试 超希腊拉丁方 随机化 + 三个区组 + 重复
地板蜡试验 3因子2水平完全析因试验 随机化 + 重复
纸飞机实验 3因子2水平完全析因试验 随机化 + 重复

例1:兔子眼睛试验——平衡不完全区组设计

这项研究正是试图通过利用兔子眼睛做实验来找出最佳治疗方法。这里的难点在于,尽管一只兔子的两只眼睛具有可比性,但不同兔子的眼睛之间却没有。我设计出了一个复杂的实验,使得在考察所有重要的治疗方法时,别的变数都已经被消除,只剩下一只兔子的两只眼睛的区别。对此,我感到相当自豪。

备注:
第一次读到这个案例,因为没有更多细节,只感觉"平平无奇",不知道作者为何"感到相当自豪"。后来才明白这是"平衡不完全区组设计",原来是自己 too young too naive。

因为"兔子只有两只眼睛"(一个区组内只有两个试验单元,只能进行两次试验),但治疗方法有三个甚至更多;所以"不完全区组设计"的难点是如何"分离出"不同兔子之间的区别,将试验的随机性波动控制在"一只兔子的两只眼睛的区别"上。

"消除"的具体方法是保持"均衡",也就是每对材料在不同的兔子上各出现相同的次数(比如各出现2次),使得所有处理被"均衡"地比较。

这个案例可以充分体现试验设计三大原则之"区组"的价值:"通过精巧的设计来消除系统误差,提高试验精度"。虽然化学领域的试验资源更多,严格的区组约束并不多见,但这个案例有助于理解试验设计的三大原则。

例2:芥子气生化实验——拉丁方设计

为了说明实验设计的威力,我在这里给大家展示一个简单的实验设计,当时我们用它来在实验室里找出芥子气水泡的最佳治疗方法。在志愿者的胳膊上滴一小滴液态芥子气会引起一个直径约为两厘米的水泡。它与平时烫伤所引起的水泡很相似,但它更难治疗,所需恢复时间也更长。由于身体的恢复能力因人、因部位而异,所以要比较不同治疗方法的效果是很难的。此外,还有一个困难之处在于,我们需要尽快得到有效的实验结果。

我们所用的响应变量是"恢复所需的天数"。对于每个实验,我们有六名志愿者(在实验设计中分别编号为1到6),然后每名志愿者的两只胳膊的六个不同部位会滴上六滴液态芥子气(分别编号为A到F)。我们使用了六种不同的治疗方法(分别编号为a到f)。你可以看到,每种治疗方法被应用到了每名志愿者的胳膊的每个不同部位。所以每种治疗方法在每名志愿者身上测试过一次,在每个部位测试过一次。因此,因人、因部位不同而导致的治疗效果的差异就可以被计算出来,并被消除。这种实验设计(它由费希尔发明)被称为"拉丁方"设计。

还有多种不同方式去排列上表中的这些字母,并仍然得到一个拉丁方,所以费希尔枚举出了所有可能排列,并建议实验员从中随机选取一个。他还指出,这样不需要对概率分布做出任何假设,你就可以做出一个显著性检验以揭示出哪种治疗方法是效果最好的——通过比较实际发生的与在相同数据的所有其他可能排列下的原本可能发生的。后来,这种检验被数理统计学家重新发现,并被称为"非参数"检验。

备注:
第一个案例中只有一个区组(不同的兔子),而本案例的拉丁方设计同时控制了两个区组,即两个干扰因素:6个志愿者(列区组)和6个部位(行区组)。

要在这36个试验单元(不同试验者的不同部位)研究六个治疗方法的效果好坏,关键是"分离"出不同区组之间的差异——志愿者之间的个体差异,部位之间的差异。解决办法就是"每种治疗方法在每名志愿者身上测试过一次,在每个部位测试过一次"。

实验设计(DoE)中的拉丁方设计,源自一个简单的数学概念——拉丁方。其定义是:一个 n×n 的方阵,用 n 个不同符号填充,使得每行每列每个符号恰好出现一次。

当你有两个干扰因素或区组(比如不同批次和不同设备),拉丁方设计让你用仅仅 n² 次实验就能在两个干扰因素都均衡的条件下比较 n 个处理水平,而不需要做完整的 n×n×n=n³ 次全因子实验。

费希尔首先是一位杰出的数学家,然后是一位应用统计学家,进而提出了试验设计这一科研工具。

例3:织物耐磨测试——超希腊拉丁方设计

在ICI,除了帮助改进化工生产过程,另一项需要做的重要工作是全面测试各种产品:染料、洗涤剂、防水剂、人造革,等等。我们的染料有多接近标准色?织物涂了我们的产品后防水性能如何?我们的人造革耐磨能力如何?为了回答这样一些问题,我们需要将要测试材料的一份试样,与一份标准样进行比较,看它是否匹配,或者在某些情况下,是否超过。我们拥有许多精妙的设备和机器来执行这些测试。再一次地,这提供了大好机会来应用费希尔的实验设计。

比如,在马丁代尔耐磨测试仪上,四块织物(其中一块是标准织物)被固定在四个测试夹具上,然后它们各自被一块砂纸以固定的压力反复进行摩擦。织物在一千次摩擦后的重量损失是其耐磨程度的一个量化指标。因此,三份相同的试样得以能与第四份标准样进行比较。但这存在一些显而易见的困难之处。比如,我们用到了四个测试夹具,那么是否存在由夹具的不同而引起的差异?夹具处在测试仪的不同位置,那么是否存在由夹具位置的不同而引起的差异?每次测试后都需要更换砂纸,那么是否存在由砂纸的不同而引起的差异?我们又如何能允许这样的差异存在?下图展示的是超希腊拉丁方设计的一部分,其中的数目是经过四轮的一千次摩擦后织物的重量损失。这类设计的源头是费希尔,它是对前文提到过的拉丁方设计的深化。

通过这类设计,我们就有可能消除位置、轮次、夹具和砂纸等因素的干扰,从而得到与标准的非常精确的比较。我非常享受解决这类与实验设计相关的复杂问题的过程。

备注:
从两个区组的拉丁方设计,再增加一个干扰因素或区组,就变成了本案例使用的超希腊拉丁方设计。

很重要的一点是,虽然增加了一个区组,但试验次数依然是 n² 次实验(和拉丁方设计的试验次数一样),关键条件是保持干扰因素都是均衡的。

该试验同时存在四个干扰因素或区组:位置、轮次、夹具、砂纸,使用超希腊拉丁方设计,只进行 4×4=16 次试验;如果使用传统的设计方法,达到相同的试验精度(对主效应而言),就需要进行 256 次试验。

就像部分析因试验放弃高阶交互作用的估计来换取试验次数的大幅减少,超希腊拉丁方放弃的是干扰因素之间交互作用的估计。

小结

三个案例分别对应一个、两个和三个区组,非常好地体现了试验设计三大原则之区组的理念,同时体现了试验设计的优势之一:大幅减少试验次数。

相关文章:
统计经典图书推荐:《实验员的统计学》
试验设计DoE的三大原则:随机化、区组化、重复
试验设计DoE的三大原则:随机化、区组化、重复(下)