按正常路子,讲泛化应该先说传统机器学习中泛化是什么,神经网络泛化有什么不一样,但是……。难道除了传统机器学习其他语境中没有泛化吗?我觉得其他地方肯定有泛化的近义词。都说学英语最好的方法是在环境中学习,多接触近义词,我认为学深度学习也一样。
在做深度学习实验的时候我们认识的泛化是这样的:泛化是指从训练集中学习得到的模型参数在测试集中是不是也好用,好用则泛化好,不好用则泛化不好。
当年我学习深度学习最喜欢思考的一个例子分男女问题。当一个人还没有对象时候,会想找对象,通过认识地理位置接近或者网络位置接近的人扩展生活圈。为了确定是不是我们的潜在对象,第一步要确认对方的性别,会想知道他是男是女。先确定是异性,再调动自己的勾搭程序。
当年还没结婚的时候,这个判别过程在大脑中启动的很频繁。
我觉得大家应该都有自己的套路,我比较常用的是看头发,男的通常短,女的通常长。然后通过其他位置(如身高,服饰,胸部,胯下,胡子,面部皮肤,肩膀整体感)信息确认,如果符合就在心中下个定论,男的或者女的。然后思维进入选候选对象的下一个过程。
举一个比较容易迷惑的例子。有一类,短发,胸部不是很大,不高,短发,男性服装(运动衣或衬衫毛衣,宽松牛仔裤),皮肤光滑,。这类人成都重庆比较普遍,在沿海不多。头一次见到的时候觉得颠覆世界观(短头发,男性服饰,女的??),很疑惑,就偷偷盯着别人胸部仔细寻找起伏。
现在来理一下这个识别的整个过程。首先先看,一般先注意到头发、身高、服饰信息等很容易注意到的信息。因为容易注意,且区分度还可以,效率也高,但也容易存在一些反例,比如例子中的:头发-男,身高-女,服饰-男。如果判断都一样也ok啦,但是如果出现矛盾,就倾向于找更靠谱的信息,第二性征,或第一性征——偷看胸部。
所有特征按靠谱程度可以排个顺序:
第一类,最靠谱,第一性征,和第二性征
第二类,次靠谱:皮肤,女性服饰,长头发,腿型
第三类,次次靠谱:身高,男性服饰
说起来,结婚后看过中医,又继续研究脊柱弯曲,套路又多了一些。所以,每个人有一套自己的识别方法,细节上不同。而且所处地域风俗的不同,平时接触样本不同,也会有很大差异。但是最靠谱的方式应该是没有意义的。
在识别没有见过的人的性别的时候,第一类方法最靠谱,第二类方法次靠谱。
这句话的机器学习版本:在测试集(没见过的人)上测试分类(识别性别),第一性征方法识别率最高。即第一类方法泛化性能最好。
某天去苏格兰,用国内习得的根据服饰判别男女方法看到苏格兰裙,肯定又要被刷新世界观。(在一个同属于一类问题——人类男女问题——的测试集合(苏格兰)中,裙子方法不那么泛化,第二性征方法比较泛化。)
所以在我浅薄的认识里面,泛化就是普遍性靠谱的意思。一个模型就是一组串联或并联的“如果……则……”句式,一个模型的泛化就是一组“如果……则……”句式的的普遍性和靠谱程度。
英文泛化:generalization 有道德翻译是:
原来英文本意就有普遍性的意思,泛化听着好听,在用的时候有点绕。
写完普遍性还很想写,为什么一个模型是一组如果则句式,还有我对泛化比较数学化一点的理解。