1.2西瓜問題的版本空間
通過學習得到的模型對應了假設空間中的一個假設.于是,圖1.2的西瓜版本空間給我們帶來一個麻煩:現在有三個與訓練集一致的假設,但與它們對應的模型在面臨新樣本的時候,卻會產生不同的輸出.例如,對(色澤:青綠;根蒂=蜷縮;敲聲=沉悶)這個新收來的瓜,如果我們采用的是“好瓜Hf色澤:術)八(根蒂=蜷縮)八(敲聲=木)”,那么將會把新瓜判斷為好瓜,而如果采用了另外兩個假設,則判斷的結果將不是好瓜.那么,應該采用哪一個模型(或假設)呢?
若僅有表1.1中的訓練樣本,則無法斷定上述三個假設中哪一個“更好”.然而,對于一個具體的學習算法而言,它必須要產生一個模型.這時,學習算法本身的“偏好”就會起到關鍵的作用.例如,若我們的算法喜歡“盡可能特殊”的模型,則它會選擇“好瓜÷÷(色澤=術)八(根蒂=蜷縮)八(敲聲:濁響)”;但若我們的算法喜歡“盡可能一般”的模型,并且由于某種原因它更“相信”根蒂,則它會選擇“好瓜÷÷(色澤= *)八(根蒂=蜷縮)八(敲聲:水)”.機器學習算法在學習過程中對某種類型假設的偏好,稱為“歸納偏好”(inductive bias),或簡稱為,“偏好”.任何一個有效的機器學習算法必有其歸納偏好,否則它將被假設空間中看似在訓練集上“等效”的假設所迷惑,而無法產生確定的學習結果,可以想象,如果沒有偏好,我們的西瓜學習算法產生的模型每次在進行預測時隨機抽選訓練集上的等效假設,那么對這個新瓜“(色澤=青綠;根蒂:蜷縮;敲聲:沉悶)”,學得模型時而告訴我們它是好的、時而告訴我們它是不好的,這樣的學習結果顯然沒有意義.歸納偏好的作用在圖1.3這個回歸學習圖示中可能更直觀.這里的每個訓練樣本是圖中的一個點(。,可),要學得一個與訓練集一致的模型,相當于找到一條穿過所有訓練樣本點的曲線.