- Hands-On Machine Learning with Microsoft Excel 2019
- Julio Cesar Rodriguez Martino
- 466字
- 2021-06-24 15:11:03
Comparing the entropy differences (information gain)
To know which variable to choose for the first split, we calculate the information gain G when going from the original data to the corresponding subset as the difference between the entropy values:

Here, S(f1) is the entropy of the target variable and S(f1,f2) is the entropy of each feature with respect to the target variable. The entropy values were calculated in the previous subsections, so we use them here:
- If we choose Outlook as the first variable to split the tree, the information gain is as follows:
G(Train outside,Outlook) = S(Train outside) - S(Train outside,Outlook)
= 0.94-0.693=0.247
- If we choose Temperature, the information gain is as follows:
G(Train outside,Temperature) = S(Train outside) - S(Train outside,Temperature)
= 0.94-0.911=0.029
- If we choose Humidity, the information gain is as follows:
G(Train outside,Humidity) = S(Train outside) - S(Train outside,Humidity)
= 0.94-0.788=0.152
- Finally, choosing Windy gives the following information gain:
G(Train outside,Windy) = S(Train outside) - S(Train outside,Windy)
= 0.94-0.892=0.048
The variable to choose for the first splitting of the tree is the one showing the largest information gain, that is, Outlook. If we do this, we will notice that one of the resulting subsets after the splitting has zero entropy, so we don't need to split it further.
To continue building the tree following a similar procedure, the steps to take are as follows:
- Calculate S(Sunny), S(Sunny,Temperature), S(Sunny,Humidity), and S(Sunny,Windy).
- Calculate G(Sunny,Temperature), G(Sunny,Humidity), and G(Sunny,Windy).
- The larger value will tell us what feature to use to split Sunny.
- Calculate other gains, using S(Rainy), S(Rainy,Temperature), S(Rainy,Humidity), and S(Rainy,Windy).
- The larger value will tell us what feature to use to split Rainy.
- Continue iterating until there are no features left to use.
As we will see later in this book, trees are never built by hand. It is important to understand how they work and which calculations are involved. Using Excel, it is easy to follow the full process and each step. Following the same principle, we will work through an unsupervised learning example in the next section.
- Modern Programming: Object Oriented Programming and Best Practices
- 文本數(shù)據(jù)挖掘:基于R語言
- 算法與數(shù)據(jù)中臺:基于Google、Facebook與微博實踐
- 大數(shù)據(jù):從概念到運營
- 數(shù)據(jù)革命:大數(shù)據(jù)價值實現(xiàn)方法、技術(shù)與案例
- 智慧的云計算
- Solaris操作系統(tǒng)原理實驗教程
- 大數(shù)據(jù)分析:R基礎(chǔ)及應(yīng)用
- Oracle 內(nèi)核技術(shù)揭密
- 數(shù)據(jù)迷霧:洞察數(shù)據(jù)的價值與內(nèi)涵
- 數(shù)據(jù)庫基礎(chǔ)與應(yīng)用
- C# 7 and .NET Core 2.0 High Performance
- 高效使用Redis:一書學(xué)透數(shù)據(jù)存儲與高可用集群
- 產(chǎn)品經(jīng)理數(shù)據(jù)修煉30問
- Learning Game AI Programming with Lua