专利名称:变换测量数据以用于分类学习的制作方法
变换测量数据以用于分类学习本发明涉及一种系统、装置和方法,用于变换原始测量数据以便 在不可靠区域中降低总体灵敏度,而在所期望的区域中增强数据的灵 敏度。由于测量数据分布在很大或很小的动态范围内,其分布会不完全 适合于某些模式分类学习方法使用这些测量数据。例如,设想微阵列,其中单链DNA位于玻璃基片上。在这种基片上冲洗样本,使得存在 于该样本中的RNA将优先地与DNA链结合起来。经常相对于结合 到不同类型的荧光分子的对照物来这样做,其中荧光分子用来区别对 照物和目标。然后读出光色和光强以确定目标如何用测量数据表示, 该测量数据是第一颜色的强度与第二颜色的强度之比的对数。在典型的实验中, 一种类型的微阵列数据的读数被编码为测试组 织和对照组织的基因表达水平之比的对数。结果数的数值范围会非常 大,但是典型地将存在于一个非常窄的区间(比如说正2到负2)中。一种常见的模式识别学习方法是多层感知器(MLP),也被称作前 馈神经网络。这些机器要求它们的输入数据是范围[O, l]内的数值。 因此为了向MLP提交这些微阵列数据,必须对原始数据进行变换以 便使其符合该输入数据范围荽求。能够执行所期望的变换的函数是S形函数(sigmoid flinction),例 如反正切函数。这些函数能够保证非常大或非常小的测量值将始终映 射到所要求的范围[O, l],但代价是会大大地縮小这些大值之间的差 分(difference)。把这称作在大值范围内的"降低的灵敏度"。通常能 够为S形函数选择一个合适的参数,使得在典型地期望的范围中的灵 敏度接近线性。如果该接近线性范围上的斜率大于45度,灵敏度将 会增强,如果小于45度,灵敏度将会减低,如果正好是45度,灵敏 度将保持不变。然而,还是会出现困难。在上述的例子中,在零附近,己变换数据的灵敏度将出现最大值(即,该变换s形函数将具有最大导数)。这是被测值之比接近1.0的区域,然而其可靠性却是最低的。可能是希望在这里变换的灵敏度很低,以便学习机在小差分不可靠区域中将不 会采用它们。本发明的系统、装置和方法提供了一种有效并高效的方式对原始 数据进行变换,以便降低在不可靠区域中的总体变换的灵敏度,而在 其它区域中则令其很大程度上不改变甚或进行增强。本发明通过提供一种辅助高斯变换克服了现有技术的问题,该变 换所包括的参数允许把该变换的宽度调整到使用该变换的应用所期 望的宽度。
图1根据本发明把样本数据变换到范围[o, l]内,同时改变该变换的高斯部分的宽度;图2仅仅说明了图1中的变换的中部台阶(plateau)区域; 图3说明了根据本发明改变组合变换的S形变换分量的上限; 图4说明了通过挤压S-曲线的尾部使其靠得更近和分开得更远 来改变该S-曲线的斜率;图5说明了根据本发明修改的分析装置;以及 图6说明了包括根据本发明的装置的神经网络分析系统。 本领域的普通技术人员应该理解,提供以下说明书的目的是为了 进行说明而不是为了进行限制。技术人员可以理解在本发明的精神和 所附权利要求的范围内可以进行许多变更。当前说明书中可以省略已 知函数和运算的不必要的细节以免模糊本发明。在测量数据中,测量结果的分布可以间接地指明变换。例如,如 果一组测量结果偏斜严重,可以使用对数、平方根、或其它次幂(-l 和+1之间)。如果一组测量结果有高峰度但是低斜度,则使用反正切 变换来降低极值的影响。然而,使用反正切函数会在零点产生最大斜 率,这正是本高斯变换要进行修补的。也就是说,本发明的系统、装 置和方法提供一种对数据进行变换的方式,其在不可靠区域中降低变 换的灵敏度而在其它区域中则很大程度上不改变数据。添加第二变 换,该变换使原始数据产生变形,以便在不可靠区域中降低总体变换的灵敏度而在其它区域中则将其增强或很大程度上不改变。在优选实施例中,提供了一种辅助高斯变换,其具有自己的参数 (这里是pl),该参数允许把该高斯变换的宽度调整到应用所期望的宽度。参考图1,说明了改变该宽度参数pl的结果。台阶101 (在图2 中放大示出)大大降低了在中部的输入数据值的灵敏度,并且通过改 变pl (台阶宽度),可以大大降低来自样本数据集的值之间的不需要 的差分。下面的计算机程序示出了用于向神经网络(或其它模式识别方法) 提供数据输入的组合变换的优选实施例。本领域的普通技术人员将会 清楚,如果任务需要一个变换的属性而无需另一个变换的属性,则能 够使用任一变换而不依赖于另 一个变换。/**将强度比数值范围映射到
区间,以用于神经网络的输入 *使用S形函数覆盖可能出现的任何极值,而且在"期望" *的值范围内,其几乎是线性的。*最后,还在零值附近进行基于高斯的变形(Gaussian-based distortion)*这是因为该区域内的强度比不可靠。**//* dsl—transform *输入* x:将要变换的双精度值* pl:高斯宽度参数(Gaussian width parameter)* p2: S形上限参数(sigmoid ceiling parameter)* p3: S形拉伸参数(sigmoid stretch parameter)**输出* x的已变换双精度值承*如果希望范围达到零以下,.则直接添加另一个参数 */double dsl—transform(double x, double pi, double p2, double p3)double gauss; double sigmoid; double distorted—x;/* x的高斯变形*/ gauss = exp(-x*x/pl); distorted—x = x-(x* gauss);严S形函数*/sigmoid = p2/(1.0+exp(-p3* distorted_x》; return(sigmoid);本发明的组合变换能够被并入分析装置,作为用于接受参数 pl-p3的值和原始输入值并返回已变换值的软件和固件模块的至少其 中之一。下面的主程序说明了这种实施例的行为,其中主程序向用户 请求pl-p3的输入,并且打印出在范围[-20, 20]内的输入数据的根据 本发明进行变换后的值,其中所述输入数据在该范围上以0.1为歩长 递增。实践中,实际的样本数据将被该组合进行输入和变换。/**主程序从命令行接受pl-p3的值*并打印出在范围-20至J+20内的400个值及其变换值*/int main(int argc, char *argv[]) inti,j;double x, pi, p2, p3; int n_points; double inc;double transformed x;if(argc<4)fprintf(stderr, "usage: mapping2 pi p2\n"); fprintf(stderr, "where pi is Gaussian width parameterW); fprintf(stderr, "and p2 is sigmoid ceiling parameter\n"); fprintf(stderr, "and p ' is sigmoid stretch parameterVn"); exit(l);elsepi = atof(argv[l]); p2 = atof(argv[2]); p3 = atof(argv[3]);n_points — 400; inc = 0.1;x = (double)-n_points/2.0; x *= inc;for(i=0; i<n_points; i++)x += inc;transformed一x = dsl一transform(x, pl, p2, p3); printf("%lf%/lf\n", x, transformed—x);参考图3,这里使用p2来在0和p2之间改变变换的顶端。参考 图4, p3用于通过挤压S-曲线的尾部,使其到一起或分开,从而改变 S-曲线的斜率,以覆盖期望大多数数据所在的数值范围。通过改变pl 对p3,能够确定捕捉到哪些特异值(outliner)并且其达到多少,以及这 些值之间的差分是被增大了还是减小了 。现在参考图5,示出了已根据本发明修改过的分析装置500的一 个优选实施例。测量数据是输入501 ,并且包括参数pl、 p2和p3 504、 公差以及诸如停止条件这样的判决规则,其控制改变pl-p3的处理过 程以获得具有预定属性的已变换数据。测量数据输入501和参数504、 公差和判决规则505、以及已变换输出数据507—起存储在存储器510 中。在优选的实施例中,通过基于用户对己变换数据输入509的分析 提供输入508,用户和己变换数据分析模块之间进行相互。图6说明了分析系统600,其合并了用图5的装置修改的至少一 个设备500。该分析系统使用测量收集子系统601来收集测量数据, 如参数、公差、判决规则,并且提供其作为测量变换子系统500 (根 据本发明进行修改)的测量数据输入501 ,以计算已变换数据输入509。 该系统可以包括自动公差测试和用户控制子系统中的至少一个,该自 动公差测试用于根据预定的要求来确定pl-p3的任何变化,该用户控 制子系统用于基于对由用户提供的pl-p3的值508产生的已变换数据 输入509的迭代用户估算来控制对pl-p3的确定,该用户提供的pl-p3 的值508是用户控制子系统604提供的用户分析输入508。用户可以基于己变换数据本身做出判决,但是更有可能的是,己变换数据直接进入分析系统603并且使用这些输出来做出判决。初始 分析可能仅仅是计算和显示己变换数据的分布,但是更有可能的是, 它们将涉及应用模式发现方法并且根据一些实用标准或合理性标准 来检查所发现的模式。持久性存储器和数据库500为测量变换子系统500的测量变换的 输入、输出以及中间结果提供短期和长期的存储。分析系统600还包 括连接到持久性存储器和数据库510的测量分析算法603,该持久性 存储器和数据库510保存并提供参数、公差、判决规则、原始测量结 果以及使用本发明的装置和方法对原始测量数据进行变换的结果的 纵向历史。图7是图6的系统的处理流程的优选实施例,其中包括了图5的 装置的流程。在步骤701,表示参数、公差和判决规则的用户输入被 输入并存储到数据库/存储器510中。在步骤702,测量子系统601收 集的测量数据值被输入并存储到数据库/存储器510中。在步骤703, 使用本发明通过测量变换子系统500对测量数据进行变换。能够在完 全手动调节和完全自动调节之间变化的用户控制子系统604在步骤 704检查已变换值,并且在步骤705受用户指示或自动地调节任意参 数、公差和判决规则。如果在步骤704根据用户控制子系统604该已 变换数据是可接受的,那么在步骤707,将该己变换数据输出并存储 到数据库/存储器510中。之后,如上所述,测量分析算法603从数 据库/存储器510取回并分析已变换数据然后把分析结果存储在其中。尽管已经说明和描述了本发明的优选实施例,但本领域的技术人 员可以理解,这里所述的系统和装置架构及方法是说明性的,并且在 不背离本发明的实际范围的情况下,可以对其单元进行各种变化和修 改,并且可以用等价物来代替。此外,可以进行各种修改以使得本发 明的启示适合特定情况,而不背离其中心范围。因而,本发明并不是 要被限制于作为预期执行本发明的最佳模式而被公开的特定实施例, 而是本发明要包括落入所附权利要求范围内的所有实施例。
权利要求
1、一种把测量数据变换到特定分类学习类型的学习机的输入可接受的范围[1,u]内的方法,包括以下步骤利用至少一个预定参数化变换来组成(502)一个参数化变换,以变换到所述可接受的范围[1,u],其降低了不可靠数据灵敏度增加的区域中的灵敏度,使得所述学习机不采用满足关于不可靠性和非期望性的预定标准的差分;使用所组成的变换把一组测量数据(702)变换(703)到所述可接受的范围[1,u];如果已变换数据不满足预定标准,则进行测试,并且在满足停止标准之前,重复执行以下步骤-对所组成的参数化变换的至少一个参数(504)进行调节(705),并且-执行所述变换和测试步骤;如果所述已变换数据满足(704)从一组预定标准和预定停止条件中选择出的一个条件(505),则输出所述已变换测量数据。
2、 根据权利要求1所述的方法,其中,所述至少一个预定参数 化变换(701)是从由恒等变换和具有参数p2和p3的S形变换构成的 组中选择出来的,在所述恒等变换中transformed—x = x, 而在所述S形变换中 p2-S形上限 p3 = S形拉伸transformed一x = p2/(l-exp(-p3*x))。
3、 根据权利要求2所述的方法,其中,所述组成步骤(502)还包 括首先对所述测量数据x执行具有参数pl的参数化高斯变形(703), 其中<formula>formula see original document page 3</formula>
4、 根据权利要求3所述的方法,其中,所述分类学习类型是多 层感知器(MLP),并且所述范围[l,u]是[O,l]。
5、 一种对测量数据进行变换以用于特定分类学习类型的学习机 的输入的装置(500),包括组合变换模块(502),其分析所述测量数据,并基于所述分析使 用至少一个具有至少一个预定参数的预定参数化变换来组成一个参 数化变换,并以此把测量数据变换到所述分类学习类型可接受的范围 [l,u];存储器(510),其连接到所述组合变换模块,用于存储所述预定 参数、要变换的所述测量数据和最终得到的已变换数据输出;以及已变换数据处理模块(503),其确定所述已变换数据是否满足预 定满足标准,调节所述预定参数,并以此对所述测量数据进行重新变 换直到满足由停止条件和所述预定满足标准构成的组中的一个条件 (505),其中,所述已变换数据输入是至少一个输出并且被存储在所 述存储器(510)中。
6、 根据权利要求5所述的装置(500),其中,所述至少一个预定 参数化变换(701)是从由恒等变换和具有参数p2和p3的S形变换构 成的组中选择出来的,在所述恒等变换中x=测量数据 transformed—x画.画x, 而在所述S形变换中 p2-S形上限 p3 = S形拉伸transformed一x = p2/(l-exp(-p3*x))。
7、 根据权利要求6所述的装置(500),其中,所述组合变换模块 (502)还用于首先对所述测量数据x执行具有参数pl的参数化高斯变 形(703),其中pl =高斯宽度参数 x = x-(x*exp(-x*x/pl))。
8、 根据权利要求7所述的装置(500),其中,所述分类学习类型 是多层感知器(MLP),并且所述范围[l,u]是[O, l]。
9、 一种对测量数据进行变换以用于特定分类学习类型的学习机 的输入的系统(600),包括测量收集子系统(601),用于收集和输出测量数据; 测量分析子系统(602),包括测量变换子系统(500)和测量分析算 法子系统(603),用于接收所述测量收集子系统(601)的测量数据输出 (501),把所接收到的数据存储在数据库/存储器(510)中,使用所述测 量变换子系统(500)把所接收到的数据变换到作为所述学习机的输入 可接受的范围[l, u]内,使用所述测量分析算法子系统(603)分析所述 测量数据(706),并且把已变换数据及其分析存储在所述数据库/存储 器(510)中。
10、 根据权利要求9所述的系统(600),其中,所述测量变换子 系统(500)还用于使用至少一个具有至少一个可设置参数的组合参数 化变换,并且包括用户控制子系统(604),以便用户使用所述测量分 析算法子系统(603)来确定所述已变换测量数据的质量,并且通过提 供所述至少一个可设置参数的预定值,来指示所述测量变换子系统 (500)对所述测量数据进行变换/重新变换。
11、 根据权利要求10所述的系统(600),其中,所述至少一个组 合参数化变换(701)是从由恒等变换和具有参数p2和p3的S形变换 构成的组中选择出来的,在所述恒等变换中X =测量数据transformed一x — x, 而在所述S形变换中 p2-S形上限 p3 = S形拉伸transformed_x = p2/(l-exp(-p3*x))。
12、 根据权利要求11所述的系统(600),其中,所述至少一个组 合变换包括首先对所述测量数据x进行的具有参数pl的参数化高斯 变形(703),其中pl=高斯宽度参数 x = x-(x*exp(-x*x/pl))。
13、 根据权利要求12所述的系统(600),其中,所述分类学习类 型是多层感知器(MLP),并且所述范围[l,u]是[O, l]。
全文摘要
提供了一种系统(600)、装置(500)和方法,用于对测量数据进行组合变换,以便变换后的数据适合于模式分类学习方法的输入。降低不可靠区域中的已变换数据的灵敏度,而在其它区域中则很大程度上不改变、甚或增强其灵敏度。使用在装置(500)和系统(600)中的组合变换模块(502),将高斯变换与S形函数相结合以降低灵敏度。用户能够经由系统(600)的用户控制子系统(604)并通过提供输入到装置(500)中的用户分析输入(508),来控制该处理过程。
文档编号G06N3/00GK101278305SQ200680021293
公开日2008年10月1日 申请日期2006年6月14日 优先权日2005年6月16日
发明者D·谢弗 申请人:皇家飞利浦电子股份有限公司