算法--随便写写
结巴分词:jieba.cut()
决策树
集成学习
无监督学习
tf-idf文本特征提取
tf 词频
idf 逆向文档频率
tf-idf 思想:一篇文章中出现多次,其他文章很少出现
TF-IDF作用:用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。
词频(term frequency,tf)指的是某一个给定的词语在该文件中出现的频率
逆向文档频率(inverse document frequency,idf)是一个词语普遍重要性的度量。某一特定词语的idf,可以由总文件数目除以包含该词语之文件的数目,再将得到的商取以10为底的对数得到
Tf-idf的重要性:分类机器学习算法进行文章分类中前期数据处理方式
决策树
机器学习基本步骤
数据获取
数据基本处理
缺失值处理
补空
确定特征值,目标值
切割数据
特征工程
特征提取
需要转数据字典,才能转换one hot 编码
建立模型
模型评估
决策树的可视化
保存树的结构到dot文件
- sklearn.tree.export_graphviz() 该函数能够导出DOT格式
- tree.export_graphviz(estimator,out_file='tree.dot’,feature_names=[‘’,’’])
- tree.export_graphviz(estimator,out_file='tree.dot’,feature_names=[‘’,’’])
export_graphviz(estimator, out_file="./data/tree.dot", feature_names=['age', 'pclass=1st', 'pclass=2nd', 'pclass=3rd', '女性', '男性'])
集成学习
bagging 过拟合问题 N个模型 投票 同一个问题,互相遏制变壮
boosting 欠拟合,分段拟合
最终结果
只要单分类器的效果表现不太差,集成学习的结果总要优于单分类器的
所以说 集成学习好
bagging
解决 过拟合问题
集成原理:
采集不同子样本
n个子样本分别构建模型
n个模型对一个问题平权投票
随机森林构造过程
bagging + 决策树
随机森林是一个包含多个决策树的分类器
1.选取m个样本数据(m<<M)
2.随机选取k个特征(k<K)
3.
随机森林api
bagging优点
在原算法的基础上提高2%泛化正确率
简单 方便 实用
boosting 集成学习
通过学习从弱到强的过程,分段拟合
1.Adaboost
2.GBDT
3.XGBoots
实现Adaboost
注意力放到错误的数据上
- 放大错误数据的权重
- 缩小预测正确数据的权重
1.雪莲一个模型
2.更具模型结果放大错误数据,缩小正确数据
3.在训练一个模型
4.然后是迭代很多次
5.加却投票
如何确认投票权重
如何调整数据分布
通过投票权重调整数据分布
预测正确缩小
预测错误 放大
bossting和bagging 的区别
数据方面
bagging 有放回随机采样
boosting 根据前一轮结果调整数据重要性
投票方面
bagging 平权投票
boosting 加权投票
学习顺序
bogging 并行的 独立训练互相没任何关系
bossting 串行 学习有先后顺序
主要作用
bogging 过拟合问题
bossting 欠拟合问题
原文地址:https://www.cnblogs.com/mujun95/p/11882396.html
- FFLIB C++ 异步&类型安全&printf风格的日志库
- OpenCV人脸识别之一:数据收集和预处理
- FFRPC应用之Client/Server
- Java8新特性——StreamAPI(二)
- 从WordPress SQLi谈PHP格式化字符串问题
- 自己实现PC端jQuery版轮播图
- Tips for thrift
- Java8新特性——StreamAPI(一)
- springcloud学习手册-Hystrix(仪表盘说明)
- RedRabbit——基于BrokerPattern服务器框架
- C++任务队列与多线程
- 游戏服务器ID生成器组件
- Java8新特性——Lambda表达式(一)
- C++ FFLIB之FFRPC:多线程&多进程的scalability探索
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flutter下Android Studio配置gradle的方法
- Flutter 实现整个App变为灰色的方法示例
- Android studio开发小型对话机器人app(实例代码)
- php中的钩子理解及应用实例分析
- AndroidX下使用Activity和Fragment的变化详解
- PHP Primary script unknown 解决方法总结
- PHP如何将图片文件上传到另外一台服务器上
- android实现滑动解锁
- laravel框架模板之公共模板、继承、包含实现方法分析
- Android项目实战之百度地图地点签到功能
- PHP Redis扩展无法加载的问题解决方法
- PHP 文件上传限制问题
- Flutter permission_handler 权限插件的使用详解
- Flutter使用JsBridge方式处理Webview与H5通信的方法
- flutter 怎么实现app整体灰色效果