在这里我们不雅察到,添加变量后模型精确度上升,交叉验证缺点率降低。这是模型数据过拟合的结不雅。我们测验测验一个更复杂的算法,看看是否有赞助。
随机丛林
随机丛林的一个长处是我们可以将所有特点放在一路,并返回一个可用于选择的特点重要性矩阵。
- model = RandomForestClassifier(n_estimators=100)
- predictor_var = ['Gender', 'Married', 'Dependents', 'Education',
- 'Self_Employed', 'Loan_Amount_Term', 'Credit_History', 'Property_Area',
- 'LoanAmount_log','TotalIncome_log']
- classification_model(model, df,predictor_var,outcome_var)
精确度:100.000%交叉验证得分:78.179%
2.调剂模型参数
- df['TotalIncome'] = df['ApplicantIncome'] + df['CoapplicantIncome']
- df['TotalIncome_log'] = np.log(df['TotalIncome'])
- df['LoanAmount_log'].hist(bins=20)
我们来尝尝这两种办法,起首我们看到特点重要性矩阵,我们将大年夜中筛选最重要的特点变量。
- #Create a series with feature importances:
- featimp = pd.Series(model.feature_importances_, index=predictor_var).sort_values(ascending=False)
- print featimp

我们应用前5个变量来创建一个模型。别的,我们将修改一点点随机丛林模型的参数:
- model = RandomForestClassifier(n_estimators=25, min_samples_split=25, max_depth=7, max_features=1)
- predictor_var = ['TotalIncome_log','LoanAmount_log','Credit_History','Dependents','Property_Area']
- classification_model(model, df,predictor_var,outcome_var)
精确度:82.899%,交叉验证得分:81.461%
固然精确度降低,但交叉验证分数在进步,注解该模型的实用性很好。记住,随机丛林模型不是完全可复竽暌姑的。不合的变量运行结不雅会有变更,但输出尽量保持精确。
你会留意到,即使在对随机丛林进行了一些根本的参数调剂之后,我们交叉验证的精度只比原始逻辑回归模型略好一些。这个案例给了我们一些异常有趣、特其余进修体验:
1.应用更复杂的模型不克不及包管更好的猜测结不雅。
2.避免应用复杂的建模技巧作为黑盒子而不懂得根本概念。如许做会增长过拟合趋势,大年夜而降低模型解释力。
3.特点工程是成功的关键。大年夜家可以应用Xgboost模型,但真正的艺术和创造力在于加强特点才能以更好地适应模型。
你预备好迎接挑衅吗?借助贷款猜测问题开端数据科学之旅。
停止教程
我欲望本教程将赞助你在应用Python开展数据科学分析时能最大年夜限度地进步效力。我信赖,这不仅给你供给一个根本的数据分析办法的引导,并且还向你展示了若何实现一些更先辈的编程技巧。
Python真的是一个强大年夜的对象,并且日益成为数据科学家中风行的编程说话。原因在于Python很轻易进修,与其他数据库和对象(如Spark和Hadoop)集成很好。最重要照样因为Python具有很强的计算才能和强大年夜的数据分析库。
推荐阅读
scrollTop为滚动条向下移动的距离,所有浏览器都支撑document.documentElement。 【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路! js在操作DOM中存在着很多>>>详细阅读
本文标题:技术 | 使用Python来学习数据科学的完整教程
地址:http://www.17bianji.com/lsqh/36300.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示