讀古今文學網 > 機器學習實戰 > 第9章 樹回歸 >

第9章 樹回歸

本章內容

  • CART算法
  • 回歸與模型樹
  • 樹剪枝算法
  • Python中GUI的使用

第8章介紹的線性回歸包含了一些強大的方法,但這些方法創建的模型需要擬合所有的樣本點(局部加權線性回歸除外)。當數據擁有眾多特徵並且特徵之間關係十分複雜時,構建全局模型的想法就顯得太難了,也很略顯示笨拙。而且,實際生活中很多問題都是非線性的,不可能使用全局線性模型來擬合任何數據。

一種可行的方法是將數據集切分成很多份易建模的數據,然後利用第8章的線性回歸技術來建模。如果首次切分後仍然難以擬合線性模型就繼續切分。在這種切分方式下,樹結構和回歸法就相當有用。

本章首先介紹一個新的叫做CART(Classification And Regression Trees,分類回歸樹)的樹構建算法。該算法既可以用於分類還可以用於回歸,因此非常值得學習。然後利用Python來構建並顯示CART樹。代碼會保持足夠的靈活性以便能用於多個問題當中。接著,利用CART算法構建回歸樹並介紹其中的樹剪枝技術(該技術的主要目的是防止樹的過擬合)。之後引入了一個更高級的模型樹算法。與回歸樹的做法(在每個葉節點上使用各自的均值做預測)不同,該算法需要在每個葉節點上都構建出一個線性模型。在這些樹的構建算法中有一些需要調整的參數,所以還會介紹如何使用Python中的Tkinter模塊建立圖形交互界面。最後,在該界面的輔助下分析參數對回歸效果的影響。