使用python语言以及Scikit-learn库,实验环境使用的是Linux下的iPython。
首先将添加sklearn库中的决策树tree
In [1]: from sklearn import tree
接着引入一些模型特征,我这里使用认的身高和是否有胡子来作为特征(features),而性别来作为标签(labels)。建立如下:

(tips:数据量越大,模型越好,那么结果就会越精确,这里只引入3男3女的特征来做个示范)
代码如下:
In [2]: reature = [[178,1],[155,0],[177,0],[165,0],[169,1],[160,0]] In [3]:label = ['male','female','male','female','male','female']
有了数据模型之后,接下来的活就只需要交给机器去做就行了。
首先创建一个决策树对象clf。
In [4]: clf = tree.DecisionTreeClassifier()
接下来将这一句将数据交给决策去去判断!
In [5]: clf = clf.fit(feature,label)
上面就是所有需要做的准备,接下来就可以使用clf来进行判定啦。
假设此时有一个身高158的没有胡子的人,那么机器会判断TA是男人还是女人呢?
In [6]: clf.predict([[158,0]]) Out[6]: array(['female'], dtype='|S6')
显然,此时机器人判定这是一个女人‘female’。
再试一次,这次是一个172有胡子的人
In [7]:clf.predict([[172,1]]) Out[7]: array(['male'], dtype='|S6')
这一次机器判定为男性~
大家可以尝试着自己写一下其他象征意义的程序,输入的训练数据越大,那么输出正确的可能性就越大~