![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
4_数据挖掘与机器学习
一页孤沙
教育博主
展开
-
神经网络模型优化方法(缓解过拟合)
一、背景简介 在深度学习和机器学习的各种模型训练过程中,在训练数据不够多时,自己常常会遇到的问题就是过拟合(overfitting),过拟合的意思就是模型过度接近训练的数据,使得模型的泛化能力降低,泛化能力降低表现为模型在训练集上测试的误差很低,但是真正在验证集上测试时却发现error很大,如下图所示。所以此时得到的过拟合的模型不是我们想要的模型,我们需要对模型进行优化,从而提高其泛化性能,...转载 2019-04-18 10:02:39 · 1753 阅读 · 0 评论 -
《机器学习》赵卫东学习笔记 第3章 决策树与分类算法(课后习题及答案)
1.分类解决什么问题?分类算法是利用训练样本集获得分类函数即分类模型(分类器),从而实现将数据集中的样本划分到各个类中。分类模型通过学习训练样本中属性集与类别之间的潜在关系,并以此为依据对新样本属于哪一类进行预测2.常用的分类算法有哪些?举例说明其应用。常用的分类算法包括决策树、支持向量机、最近邻、贝叶斯网络和神经网络等3.简述决策树的生成过程。决策树的构建过程是按照属...翻译 2019-05-31 23:31:54 · 8040 阅读 · 0 评论 -
《机器学习》赵卫东学习笔记 第4章 聚类分析(课后习题及答案)
1.聚类分析的目的是什么?聚类分析用于对未知类别的样本进行划分,将它们按照一定的规则划分成若干个类族,把相似(距高相近)的样本聚在同一个类簇中, 把不相似的样本分为不同类簇,从而揭示样本之间内在的性质以及相互之间的联系规律2.讨论聚类与分析的关系聚类算法将未标记的样本自动划分为多个类簇,但不会提供对每个类簇的语义解释,这部分解释就需要数据分析人员对聚类结果进行归纳总结,阐...翻译 2019-05-31 23:36:16 · 12631 阅读 · 2 评论 -
《机器学习》赵卫东学习笔记 第5章文本分析(课后习题及答案)
1.讨论常见的文本数据有哪些来源。可以从公开数据源下载,或者利用自有数据集,或者按照分析需求从网络抓取2.文本挖掘的过程由那几个环节组成?这些环节分别负责哪些工作?一般经过分词、文本特征提取与表示、特征选择、知识或信息挖掘和具体应用等步骤。分词包括了对文本分词、去除停用词、词形归一化等;文本特征提取与表示包括了词性标注、句法分析、语义分析、特征提取与表示等;在特征选择后,通过知...翻译 2019-05-31 23:38:53 · 8681 阅读 · 0 评论 -
《机器学习》赵卫东学习笔记 第6章 神经网络(课后习题及答案)
1 简述感知机的基本原理一个感知器可以接收n个输入x=(x1,x2,…,xn),对应n个权值w=(w1,w2,…,wn),此外还有一个偏置项阈值,就是图中的b,神经元将所有输入参数与对应权值进行加权求和,得到的结果经过激活函数变换后输出,计算公式如下: ...翻译 2019-06-07 22:45:24 · 12755 阅读 · 0 评论 -
《机器学习》赵卫东学习笔记 第8章支持向量机(课后习题及答案)
1 作为一种分类算法,支持向量机的基本原理是什么?支持向量机是一种二类分类模型。它的基本模型是定义在特征空间上的间隔最大的线性分类器,支持向量机还包括核技巧,这使它成为实质上的非线性分类器。支持向量机的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题,也等价于正则化的合页损失函数的最小化问题。支持向量机的学习算法是求解凸二次规划的最优化算法。2 支持向量机适合解决什么问题?支...翻译 2019-06-07 23:05:58 · 5184 阅读 · 1 评论 -
PCA(主成分分析)方法的应用场景
PCA(Principal Component Analysis , PCA )是主成分分析方法,是一种较为粗糙的降维方法,对于小样本量的数据来说,它不如因子分析方法实用。但是当数据量较大时,主成分分析方法就有了用武之地了。PCA方法常用于人脸识别。 当样本数据成千上万时,维数上千时,PCA是非常有效的一种降维方法,它能起到的作用有两个:一个是节约存储空间,当数据量过多时,通过减少减少几个维...转载 2019-07-27 11:35:41 · 8246 阅读 · 0 评论 -
提示"ModuleNotFoundError: No module named 'sklearn.grid_search' "错误的解决
问题描述python运行代码时,到from sklearn.grid_search import GridSearchCV时报错:ModuleNotFoundError: No module named 'sklearn.grid_search'原因DeprecationWarning: This module was deprecated in version 0.18 ...转载 2019-08-05 11:44:10 · 817 阅读 · 0 评论 -
No module named 'sklearn.cross_validation'解决方法
在python 机器学习及实践这本书中,交叉验证从cross_validation中引用from sklearn.cross_validation import train_test_split然后报错:No module named 'sklearn.cross_validation'原因:这个cross_validatio这个包早就不在使用了,划分到了model_sele...转载 2019-08-05 11:53:09 · 394 阅读 · 0 评论 -
安装慢,可以把anaconda conda 切换为国内源
windows下在清华源和中科大源之间自行选择1 添加清华源命令行中直接使用以下命令conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn...转载 2019-08-09 08:41:14 · 1514 阅读 · 0 评论 -
使用sklearn训练xgboost模型
xgboost是提升树方法的一种,算法由GBDT改进而来,在计算时也采用并行计算,速度更快。sklearn中提供分类和回归的xgboost模型,本文对二分类问题采用xgboost进行训练。一、数据准备1、样本正样本:1.5W 负样本:10W 5个特征2、分训练集和测试集import pandas as pdfrom sklearn.model_selecti...转载 2019-08-09 22:30:18 · 1815 阅读 · 0 评论 -
sklearn数据预处理:归一化、标准化
归一化:1、把数变为(0,1)之间的小数主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速。2、把有量纲表达式变为无量纲表达式归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。归一化算法有:1.线性转换 y=(x-MinValue)/(MaxValue-MinValue)2.对数函数转换:y...原创 2019-08-10 15:03:58 · 1070 阅读 · 0 评论 -
scikit-learn数据预处理,对特征进行归一化和标准化
一、为什么需要进行特征缩放?因为对于大多数的机器学习算法和优化算法来说,将特征值缩放到相同区间可以使得获取性能更好的模型。就梯度下降算法而言,例如有两个不同的特征,第一个特征的取值范围为1~10,第二个特征的取值范围为1~10000。在梯度下降算法中,代价函数为最小平方误差函数,所以在使用梯度下降算法的时候,算法会明显的偏向于第二个特征,因为它的取值范围更大。在比如,k近邻算法,它使用的是欧...转载 2019-08-10 15:09:17 · 1434 阅读 · 0 评论 -
【机器学习笔记】:一文让你彻底理解准确率,精准率,召回率,真正率,假正率,ROC/AUC
ROC/AUC作为机器学习的评估指标非常重要,也是面试中经常出现的问题(80%都会问到)。其实,理解它并不是非常难,但是好多朋友都遇到了一个相同的问题,那就是:每次看书的时候都很明白,但回过头就忘了,经常容易将概念弄混。还有的朋友面试之前背下来了,但是一紧张大脑一片空白全忘了,导致回答的很差。我在之前的面试过程中也遇到过类似的问题,我的面试经验是:一般笔试题遇到选择题基本都会考这个率,那个率,...转载 2019-05-28 22:05:09 · 1768 阅读 · 0 评论 -
数据数值转换factorize和dummy
数据的数值转换有两种方式:1. factorizeAPI:pandas.factorize(values, sort=False, order=None, na_sentinel=-1, size_hint=None)将对象编码为枚举类型或分类变量。输入参数:values: 一维数据序列sort: 为数据加标签的时候需不需要保持原有数据的大小关系,默认False...转载 2019-05-28 21:13:06 · 705 阅读 · 0 评论 -
Python数据挖掘进阶--泰坦尼克号案例分析
一.概念介绍:1.机器学习:机器学习算法来建立模型,当有新的数据过来,通过模型能够进行预测。2.特征(features)和标签(labels):特征:数据的属性,通过这些特征可以代表数据的特点,例如Excel的字段列名,也叫做解释变量或自变量。标签:对数据的预测结果,也叫做因变量。3.训练数据(train)和测试数据(tset):训练数据:用于机器学习算法,之后形成我们的机器学...转载 2019-04-18 11:10:44 · 12887 阅读 · 7 评论 -
pydotplus安装和Graphviz基本入门
Graphviz是AT&T Labs Research开发的结构化图形绘制工具,支持多种格式输出。它的输入是一个用dot语言编写的绘图脚本,通过对输入脚本的解析,分析出其中的点,边以及子图,然后根据属性进行绘制。因此可利用Graphviz可以将Sklearn生成dot格式的决策树可视化。一定要注意安装顺序第一步、安装pydotplus可以在 cmd 窗口中,直接使用下面pip或...转载 2019-05-04 18:56:37 · 3237 阅读 · 0 评论 -
机器学习模型评估指标之分类模型ROC与AUC的定义与使用详解
1-回归模型评估:指标 描述 Scikit-learn函数 Mean Square Error (MSE, RMSE) 平均方差 from sklearn.metrics import mean_squared_error Absolute Error (MAE, RAE) 绝对误差 from sklearn.metrics import mean_...转载 2019-05-05 15:54:26 · 531 阅读 · 0 评论 -
机器学习模型评估之作ROC曲线时遇上的问题
使用ROC曲线评估分类模型是非常通用的手段,但是,使用它的时候要注意两点:1、分类的类型,必须为数值型。2、只针对二分类问题。ROC曲线是根据一系列不同的二分类方式(分界值或决定阈),以真阳性率(灵敏度)为纵坐标,假阳性率(1-特异度)为横坐标绘制的曲线。传统的诊断试验评价方法有一个共同的特点,必须将试验结果分为两类,再进行统计分析。下面有个例子:import numpy...转载 2019-05-05 19:10:59 · 1754 阅读 · 0 评论 -
机器学习二分类模型评估,用matplotlib绘制precision-recall曲线、ROC曲线
1.基础知识TP(True Positive):指正确分类的正样本数,即预测为正样本,实际也是正样本。FP(False Positive):指被错误的标记为正样本的负样本数,即实际为负样本而被预测为正样本,所以是False。TN(True Negative):指正确分类的负样本数,即预测为负样本,实际也是负样本。FN(False Negative):指被错误的标记为负样本的正样本数,即实...转载 2019-05-05 20:51:40 · 1574 阅读 · 0 评论 -
机器学习指标评估:P-R曲线与ROC曲线,python sklearn实现
最近做实验要用到性能度量的东西,之前学习过现在重新学习并且实现一下。衡量模型泛化能力的评价标准,这就是性能度量。性能度量反应了任务需求,在对比不同模型的能力时,使用不同的性能度量往往会导致不同的评判结果;什么样的模型是好的,不仅取决于算法和数据,还决定于任务需求。一、性能度量方法1.1错误率与精度错误率是分类错误的样本数占样本总数的比例,精度是分类正确的样本数占样本总数的比例。...转载 2019-05-05 21:10:47 · 4988 阅读 · 0 评论 -
《机器学习》赵卫东学习笔记 第1章 机器学习概述(课后习题及答案)
1. 机器学习的发展历史上有哪些主要事件?机器学习发展分为知识推理期、知识工程期、浅层知识期和深度学习几个阶段,可从几个阶段选择主要历史事件作答。2. 机器学习有哪些主要的流派?它们分别有什么贡献?符号主义:专家系统、知识工程贝叶斯派:情感分类、自动驾驶、垃圾邮件过滤联结主义:神经网络进化主义:遗传算法行为类推主义3....翻译 2019-05-05 21:37:12 · 8781 阅读 · 2 评论 -
sklearn中predict_proba用法(注意和predict的区别)
predict_proba返回的是一个n 行 k 列的数组,第 i 行 第 j 列上的数值是模型预测 第 i 个预测样本为某个标签的概率,并且每一行的概率和为1。# conding :utf-8from sklearn.linear_model import LogisticRegressionimport numpy as npx_train = np.array([[...转载 2019-05-08 21:23:37 · 1130 阅读 · 0 评论 -
模型发生过拟合现象时,通常可以采取哪些方法避免或者缓解该问题?
过拟合 在进行数据挖掘或者机器学习模型建立的时候,因为在统计学习中,假设数据满足独立同分布,即当前已产生的数据可以对未来的数据进行推测与模拟,因此都是使用历史数据建立模型,即使用已经产生的数据去训练,然后使用该模型去拟合未来的数据。但是一般独立同分布的假设往往不成立,即数据的分布可能会发生变化(distribution drift),并且可能当前的数据量过少,不足以对整个数据集进行分布估计,...转载 2019-04-18 10:09:39 · 3921 阅读 · 0 评论 -
安装TensorFlow的gpu版本,出现numpy.core.umath failed to import 如何解决?
在安装TensorFlow的gpu版本遇到了这个问题。解决方法就是:在命令行下输入: pip install -U numpy -i https://pypi.tuna.tsinghua.edu.cn/simple/原创 2019-04-14 14:27:25 · 836 阅读 · 0 评论 -
《机器学习》赵卫东学习笔记 第2章(课后习题及答案)
1.什么是标准差、方差和协方差?它们反映了数据的什么内容?标准差描述是样本集合的各个样本点到均值的距离分布,描述的是样本集的分散程度在机器学习中的方差就是估计值与其期望值的统计方差。如果进行多次重复验证的过程,就会发现模型在训练集上的表现并不固定,会出现波动,这些波动越大,它的方差就越大协方差主要用来度量两个随机变量关系,如果结果为正值,则说明两者是正相关的;结果为负值,说明两者是负...翻译 2019-05-07 08:18:47 · 8814 阅读 · 1 评论 -
AdaBoost和Gradient Boosting算法实现
在介绍两种算法前,先介绍一下关于Boosting的两个核心问题:1)在每一轮如何改变训练数据的权值或概率分布?通过提高那些在前一轮被弱分类器分错样例的权值,减小前一轮分对样例的权值,来使得分类器对误分的数据有较好的效果。这样分错的样本就被突显出来,从而得到一个新的样本分布。2)通过什么方式来组合弱分类器?通过加法模型将弱分类器进行线性组合,比如AdaBoost通过加权多数表决的方式...转载 2019-05-11 16:34:12 · 788 阅读 · 0 评论 -
快速搞定Jupyter Notebook添加代码自动补全功能
本次要介绍的两个功能是:(1)针对 jupyter notebook 中的 Markdown 文件自动生成目录(2)自动补全代码上述两个功能,都是有 python的一个 jupyter 扩展插件Nbextensions库来实现。安装该库的命令如下:python -m pip install jupyter_contrib_nbextensions然后执行:jup...原创 2019-08-11 10:03:34 · 10356 阅读 · 1 评论