SKlearn | 学习总结】的更多相关文章

简单线性回归 线性回归是数据挖掘中的基础算法之一,从某种意义上来说,在学习函数的时候已经开始接触线性回归了,只不过那时候并没有涉及到误差项.线性回归的思想其实就是解一组方程,得到回归函数,不过在出现误差项之后,方程的解法就存在了改变,一般使用最小二乘法进行计算. 使用sklearn.linear_model.LinearRegression进行线性回归 sklearn对Data Mining的各类算法已经有了较好的封装,基本可以使用fit.predict.score来训练.评价模型,并使用模型进…
https://blog.csdn.net/fuqiuai/article/details/79495865 前言sklearn想必不用我多介绍了,一句话,她是机器学习领域中最知名的python模块之一,若想要在机器学习领域有一番建树,必绕不开sklearn sklearn的官网链接http://scikit-learn.org/stable/index.html# 首先,放上一张官网上的sklearn的结构图: 目录1. 分类.回归2. 降维3. 模型评估与选择4. 数据预处理大类 小类 适用…
K临近分类是一种监督式的分类方法,首先根据已标记的数据对模型进行训练,然后根据模型对新的数据点进行预测,预测新数据点的标签(label),也就是该数据所属的分类. 一,kNN算法的逻辑 kNN算法的核心思想是:如果一个数据在特征空间中最相邻的k个数据中的大多数属于某一个类别,则该样本也属于这个类别(类似投票),并具有这个类别上样本的特性.通俗地说,对于给定的测试样本和基于某种度量距离的方式,通过最靠近的k个训练样本来预测当前样本的分类结果. 例如,借用百度的一张图来说明kNN算法过程,要预测图中…
分类属于监督学习算法,是指根据已有的数据和标签(分类)进行学习,预测未知数据的标签.分类问题的目标是预测数据的类别标签(class label),可以把分类问题划分为二分类和多分类问题.二分类是指在两个类别中选择一个类别,在二分类问题中,其中一个类别称作正类(positive class),另一个类别称作反类(negative class),比如判断垃圾邮件.多分类问题是指从多个分类中选择一个类别. 一,分类的一般方法 数据分类是一个两阶段的过程,包括学习阶段(构建分类模型)和分类阶段(使用模型…
1 简介 scikit-learn,又写作sklearn,是一个开源的基于python语言的机器学习工具包.它通过NumPy, SciPy和Matplotlib等python数值计算的库实现高效的算法应用,并且涵盖了几乎所有主流机器学习算法.   SKlearn官网:http://scikit-learn.org/stable/index.html   2 SKlearn 常用模块 sklearn中常用的模块有预处理.分类.回归.聚类.降维.模型选择. 预处理(Preprocessing):特征…
Explaining Titanic hypothesis with decision trees decision trees are very simple yet powerful supervised learning methods, which constructs a decision tree model, which will be used to make predictions. The main advantage of this model is that a huma…
Text classifcation with Naïve Bayes In this section we will try to classify newsgroup messages using a dataset that can be retrieved from within scikit-learn. This dataset consists of around 19,000 newsgroup messages from 20 different topics ranging…
Image recognition with Support Vector Machines #our dataset is provided within scikit-learn #let's start by importing and printing its description import sklearn as sk import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import fe…
1. 过拟合问题可以通过调整机器学习的参数来完成,比如sklearn中通过调节gamma参数,将训练损失和测试损失降到最低 2. 代码实现(显示gamma参数对训练损失和测试损失的影响) from __future__ import print_function from sklearn.learning_curve import validation_curve from sklearn.datasets import load_digits from sklearn.svm import S…
1. 什么是过拟合问题 所谓过拟合问题指的是使用训练样本进行训练时100%正确分类或规划,当使用测试样本时则不能正确分类和规划 2. 代码实战(模拟过拟合问题) from __future__ import print_function from sklearn.learning_curve import learning_curve from sklearn.datasets import load_digits from sklearn.svm import SVC import matpl…
1. 什么是交叉验证 所谓交叉验证指的是将样本分为两组,一组为训练样本,一组为测试样本:对于哪些数据分为训练样本,哪些数据分为测试样本,进行多次拆分,每次将整个样本进行不同的拆分,对这些不同的拆分每个拆分都有一个打分或者损失,将这些打分或者损失进行平均形成一个平均打分或者平均损失. 2. 不使用交叉验证(即没有对样本进行多次不同的分组) 例如: X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=4) kn…
用Bagging优化模型的过程:1.对于要使用的弱模型(比如线性分类器.岭回归),通过交叉验证的方式找到弱模型本身的最好超参数:2.然后用这个带着最好超参数的弱模型去构建强模型:3.对强模型也是通过交叉验证的方式找到强模型的最好超参数(比如弱模型的数量) 对于Bagging.RandomForest.Boosting这些组合算法,默认是用的弱模型是决策树,但是可以通过base_estimator参数调整. np.linspace() 创建等比数列,生成(start,stop)区间指定元素个数nu…
# -*- coding: utf-8 -*- """ Created on Fri Sep 29 11:05:52 2017 机器学习之sklearn @author: den """ # 导入数据集 from sklearn import datasets # 进行交叉验证 from sklearn.cross_validation import train_test_split # 导入标准化尺度 from sklearn.preproce…
https://blog.csdn.net/zhangyang10d/article/details/53418227 数据预处理 sklearn.preprocessing 标准化 (Standardization) 规范化(Normalization) 二值化 分类特征编码 推定缺失数据 生成多项式特征 定制转换器 1. 标准化Standardization(这里指移除均值和方差标准化) 标准化是很多数据分析问题的一个重要步骤,也是很多利用机器学习算法进行数据处理的必要步骤. 1.1 z-s…
岭回归 岭回归是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息.降低精度为代价获得回归系数更为符合实际.更可靠的回归方法,对病态数据的拟合要强于最小二乘法. 使用sklearn.linear_model.Ridge进行岭回归 一个简单的例子 from sklearn.linear_model import Ridge clf = Ridge(alpha=.5) X = [[0,0],[0,0],[1,1]] y = [0,…
简介   自2007年发布以来,scikit-learn已经成为Python重要的机器学习库了.scikit-learn简称sklearn,支持包括分类.回归.降维和聚类四大机器学习算法.还包含了特征提取.数据处理和模型评估三大模块.  sklearn是Scipy的扩展,建立在NumPy和matplotlib库的基础上.利用这几大模块的优势,可以大大提高机器学习的效率.  sklearn拥有着完善的文档,上手容易,具有着丰富的API,在学术界颇受欢迎.sklearn已经封装了大量的机器学习算法,…
概要 基于 sklearn 包自带的 iris 数据集,了解一下分类树的各种参数设置以及代表的意义.   iris 数据集介绍 iris 数据集包含 150 个样本,对应数据集的每行数据,每行数据包含每个样本的四个特征(花萼长度.花萼宽度.花瓣长度.花瓣宽度)和样本的类别信息,所以 iris 数据集是一个 150 行 5 列的二维表. iris 数据集总共有三类:Iris Setosa(山鸢尾).Iris Versicolour(杂色鸢尾),以及 Iris Virginica(维吉尼亚鸢尾),每…
1.官网地址: http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html 2.class sklearn.linear_model.LogisticRegression (penalty=’l2’, dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scaling=1, class_weight=…
该博主总结的很好,https://www.cnblogs.com/hellcat/p/7531789.html 1.kaggle给出的导图 2.转化成树图: 3.sklearn工具导图…
一.GridSearchCV介绍: 自动调参,适合小数据集.相当于写一堆循环,自己设定参数列表,一个一个试,找到最合适的参数.数据量大可以使用快速调优的方法-----坐标下降[贪心,拿当前对模型影响最大的参数调优,直到最优,但可能获得的是全局最优]. 二.参数使用 class sklearn.model_selection.GridSearchCV(estimator, param_grid, scoring=None, fit_params=None, n_jobs=1, iid=True,…
1.kfold:自己分样本来交叉验证迭代 导入模块:from sklearn.model_selection import KFold 参数: KFold(n_splits=3, shuffle=False, random_state=None) ''' n_splits : int, default=3 Number of folds. Must be at least 2. shuffle : boolean, optional Whether to shuffle the data bef…
一.[标准化]scale: 1.导入模块  from sklearn.preprocessing import scaler 2.作用:直接将给定数据进行标准化 3.使用代码 X_scaled=scaler(X_data)X_scaled.mean(axis=0) #自己计算标准化之后的均值X_scalerd.std(axis=0) #自己计算标准化后的方差 二.[标准化]StandardScaler 1.导入模块  from sklearn.preprocessing import Stand…
来自链接:https://blog.csdn.net/zahuopuboss/article/details/54948181 1.sklearn.model_selection.train_test_split随机划分训练集和测试集 官网文档:http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html#sklearn.model_selection.train_te…
1.导入模块 http://scikit-learn.org/stable/modules/generated/sklearn.discriminant_analysis.LinearDiscriminantAnalysis.html#sklearn.discriminant_analysis.LinearDiscriminantAnalysis from sklearn.discriminant_analysis import LinearDiscriminantAnalysis da = L…
机器学习的一般流程: 1.获取数据 2.数据预处理 3.数据集分拆 4.搭建模型 5.模型评估 6.模型保存 7.模型优化 接下来,以Sklearn为例,一一介绍. 1.获取数据 1.1.导入数据集: 要想使用sklearn中数据集,必须导入datasets模块: from sklearn import datasets iris = datasets.load_iris() x=iris.data y=iris.target 1.2.创建数据集: 相关接口如:make_blobs,make_c…
转发说明:by majunman    from HIT    email:2192483210@qq.com 简介:scikit-learn是数据挖掘和数据分析的有效工具,它建立在 NumPy, SciPy, and matplotlib基础上.开源的但商业不允许 1. Supervised learning 1.1. Generalized Linear Models 1.1.1. Ordinary Least Squares最小二乘法 >>> from sklearn import…
make_blobs方法: sklearn.datasets.make_blobs(n_samples=100,n_features=2,centers=3, cluster_std=1.0,center_box=(-10.0,10.0),shuffle=True,random_state=None) make_blobs函数是为聚类产生数据集,产生一个数据集和相应的标签n_samples:表示数据样本点个数,默认值100n_features:是每个样本的特征(或属性)数,也表示数据的维度,默认…
为什么roc_auc_score()和auc()有不同的结果? auc():计算ROC曲线下的面积.即图中的area roc_auc_score():计算AUC的值,即输出的AUC 最佳答案 AUC并不总是ROC曲线下的面积.曲线下面积是某个曲线下的(抽象)区域,因此它比AUROC更通用.对于不平衡类,最好找到精确回忆曲线的AUC. 请参阅sklearn source for roc_auc_score: def roc_auc_score(y_true, y_score, average="m…
1.SVM有两种作用:分类和回归,分类是用SVC,回归用SVR. 2.SVC:(中文官网) 重点在svm.SVC(),fit(X,Y),以及SVC中的参数. 3.SVC参数: ①C,C是控制软间隔中的松弛变量是否起作用,C越大表明越宽松,对松弛变量更容忍,C越小越严格,等于0时表示不允许有数据在支持向量之间. ②kernel,核函数,kernel='rbf'表示高斯核函数(也就是径向基),kernel=‘linear'表示线性. ③gamma,只有kernel='rbf’时才有这个,gamma控…
1.使用示例 2.树模型参数:[很多参数都是用来限制树过于庞大,即担心其过拟合] #  1.criterion  gini  or  entropy:用什么作为衡量标准 ( 熵值或者Gini系数 ). #  2.splitter  best or random 前者是在所有特征中找最好的切分点 后者是在部分特征中(数据量大的时候)[当特征过大时,从头开始遍历会过慢,一般选默认值best)] #  3.max_features  int or  None(所有),optional(default=…