![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
zcc_TPJH
I can fly high, I can go low!
展开
-
机器学习学习笔记----LinearRegression,RidgeCV,LassoCV,ElasticNetCV
import numpy as npfrom sklearn.linear_model import LinearRegression, RidgeCV, LassoCV, ElasticNetCVfrom sklearn.preprocessing import PolynomialFeaturesfrom sklearn.pipeline import Pipelinefrom skl...原创 2018-03-12 21:51:23 · 2864 阅读 · 0 评论 -
正则化项L1和L2
转载:https://blog.csdn.net/jinping_shi/article/details/52433975正则化(Regularization)机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作ℓ1ℓ1-norm和ℓ2ℓ2-norm,中文称作L1正则化和L2正则化,或者L1范数和L2范数。L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓...转载 2018-05-14 15:44:02 · 267 阅读 · 0 评论 -
线性回归---sklearn+python实现
简单线性回归问题思想回到正题,对于简单线性回归有如下问题:下面通过程序来实现简单的线性回归:import numpy as npimport matplotlib.pyplot as pltx=np.array([1,2,3,4,5])y=np.array([1,3,2,3,5])plt.scatter(x,y)x_mean=np.mean(x)y_mean=np.mean(y)up...原创 2018-05-25 11:53:46 · 1992 阅读 · 0 评论 -
支持向量机(SVM)-----学习笔记一(原理详解与公式推导)
支持向量机(SVM)什么是支持向量机?支持向量机,因其英文名为support vector machine,故一般简称SVM,通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。SVM思想(线性可分支持向量机)图一给定一些数据点,它们分别属于两个不同的类,现在要找到一个线性分类器把这些数据分成两类。在决策...原创 2018-05-08 19:43:05 · 1824 阅读 · 0 评论 -
K最近邻算法(KNN)---sklearn+python实现
k-近邻算法概述简单地说,k近邻算法采用测量不同特征值之间的距离方法进行分类。k-近邻算法优点:精度高、对异常值不敏感、无数据输入假定。缺点:计算复杂度高、空间复杂度高。 适用数据范围:数值型和标称型。 k-近邻算法(kNN),它的工作原理是:存在一个样本数据集合,也称作训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系。输入没有标签的新数据后,将...原创 2018-05-23 16:50:10 · 43977 阅读 · 1 评论 -
K-均值聚类算法(K-Means)
简单介绍:k-means聚类属于无监督学习的一种,在没有给与labels的情况下,将数据分成指定的K类sixiang 对于第一张图一样的散乱的数据样本的聚类,首先,假设要聚成两大团,那么,随机给两个点的坐标,如同第二张图的两个十字mark,然后第一步就是帮所有点认领归属的团,站第一次队。认领方法是,每个点都算一算自己到这两个十字mark的距离,认领距离小的那个mark,作为自己的归...原创 2018-06-13 12:57:08 · 5844 阅读 · 1 评论 -
matplotlib无法显示中文和负号解决办法
import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei'] #显示中文plt.rcParams['axes.unicode_minus']=False #用来正常显示负号原创 2018-06-13 17:06:49 · 3311 阅读 · 1 评论 -
梯度下降法与python模拟实现
梯度下降的几何形式下图为梯度下降的目的,找到J(θ)的最小值。其实,J(θ)的真正图形是类似下面这样的,因为其是一个凸函数,只有一个全局最优解,所以不必担心像上图一样找到局部最优解直到了要找到图形中的最小值之后,下面介绍自动求解最小值的办法,这就是梯度下降法对参数向量θ中的每个分量θj,迭代减去速率因子a* (dJ(θ)/dθj)即可,后边一项为J(θ)关于θj的偏导数3 梯度下降的原理导数的概念...原创 2018-06-01 17:36:14 · 3704 阅读 · 0 评论 -
主成分分析PCA+编程实现
主成分分析一个非监督的机器学习算法主要用于数据的降维通过降维,可以发现更便于人类理解的特征其他应用:可视化,去噪PCA优缺点优点:降低数据的复杂性,识别最重要的多个特征缺点:不一定需要,且可能损失有用信息使用数据类型:数值型数据举个例子理解一下,二维空间上有一些样本点如下,将二维降维至一维:原始样本点(二维)映射到特征1上映射到特征2上从图中可以看到,将样本点映射到特征1这种方案感觉会好一些,因为...原创 2018-06-25 17:16:47 · 1328 阅读 · 1 评论 -
感受野计算
感受野:在卷积神经网络CNN中,决定某一层输出结果中一个元素所对应的输入层的区域大小,被称作感受野receptive field。再通俗点的解释是,feature map上的一个点对应输入图上的区域。 感受野大小的计算 感受野计算时有下面的几个情况需要说明: (1)第一层卷积层的输出特征图像素的感受野的大小等于滤波器的大小 (2)深层卷积层的感受野大小和它之前...原创 2018-07-16 16:44:02 · 880 阅读 · 0 评论 -
为什么逻辑回归 模型要使用 sigmoid 函数
为什么逻辑回归模型要使用 sigmoid 函数?1.广义模型推导所得2.满足统计的最大熵模型3.性质优秀,方便使用(Sigmoid函数是平滑的,而且任意阶可导,一阶二阶导数可以直接由函数值得到不用进行求导,这在实现中很实用)...原创 2018-05-18 16:31:45 · 4160 阅读 · 0 评论 -
线性回归公式推导(二)
原创 2018-05-05 22:34:02 · 427 阅读 · 0 评论 -
逻辑回归---Logisitic Regression公式推导
原创 2018-05-05 21:55:39 · 585 阅读 · 0 评论 -
矩阵求导学习笔记(一)
总的来说,涉及矩阵和向量的求导不外乎五大类别,- 向量对标量- 标量对向量- 向量对向量- 矩阵对标量- 标量对矩阵向量对标量求导分子布局向量y--->标量x求导,我们假定所有的向量都是列向量,在分子布局下表示为,而在分母布局下表示为,2.标量对向量求导3.向量对向量求导4.标量对矩阵求导5.矩阵对标量求导总结,凡是对标量求导,结果的形式都要转置,而标量对向量和矩阵求导则位置保持不动。这样总...原创 2018-04-16 19:44:16 · 467 阅读 · 0 评论 -
向量、矩阵求导(二)
自己总结的,如有错误,欢迎留言指正原创 2018-04-17 19:18:13 · 486 阅读 · 0 评论 -
线性回归推导+编程实践+可视化
回归是解决连续数据的预测问题,而分类是为了解决离散数据的预测问题。线性回归是机器学习算法中最简单的算法之一,它是监督学习的一种算法,主要思想是在给定训练集上学习得到一个线性函数,在损失函数的约束下,求解相关系数,最终在测试集上测试模型的回归效果。线性模型的形式如下:写成向量形式就是其中x可以看成特征,看成是权重。我们的目标就是找出所有的值,进而出现新的x值时,可以对函数的输出进行估计。那我们如何求...原创 2018-04-12 16:09:35 · 800 阅读 · 0 评论 -
支持向量机SVM----学习笔记二(代码实践一线性分类)
本篇主要记录如何使用sklearn去实现SVM,使用的是鸢尾花数据集,在对SVM进行分类前,和KNN一样我们首先,要对数据进行标准化处理,这是因为SVM寻找的是使margin最大的区间中间的那根线,而我们衡量margin的方式是数据点之间的距离,如果数据点在不同维度上量纲不同的话,那对于距离的估计就是有问题的。 例如在下图中,横轴范围在0-1,纵轴范围却在0-10000,...原创 2018-05-09 11:07:23 · 777 阅读 · 0 评论 -
特征工程
有这么一句话在业界广泛流传:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。特征工程其本质是一项工程活动,目的是最大限度地从原始数据中提取特征以供算法和模型使用。通过总结和归纳,人们认为特征工程包括以下方面:特征选择的经典经验总结起来主要有三种:1)Filter:过滤法,按照发散性或者相关性对各个特征进行评分,设定阈值或者待选择阈值的个数,选择特征。2)Wrapper:包装法,根...原创 2018-04-24 21:25:31 · 250 阅读 · 0 评论 -
支持向量机SVM----学习笔记三(代码实践一多项式特征)
处理非线性数据最典型的思路就是采用多项式的方式来扩充原本的数据,制造新的多项式的特征。 本篇主要记录如何使用sklearn去用多项式特征来实现非线性SVM,使用的是sklearn自带的make_moons数据集,我们在此基础上添加了噪声。1.数据准备import numpy as npimport matplotlib.pyplot as pltfrom sklea...原创 2018-05-09 15:06:21 · 873 阅读 · 0 评论 -
支持向量机SVM----学习笔记三(代码实践一高斯核函数)
高斯核函数是SVM中使用最多的一种核函数,对比高斯函数x-u,高斯核函数中表征的是两个向量(x,y)之间的关系,高斯函数又被称为RBF核和径向基核函数。在多项式核函数中,我们知道多项式核函数是将数据点添加多项式项,再将这些有了多项式项的特征点进行点乘,就形成了多项式核函数,对于高斯核函数也是一样,首先将原来的数据点映射成一种新的特征向量,然后得到新的特征向量点乘的结果,对高斯核函数来...原创 2018-05-09 17:09:05 · 11166 阅读 · 0 评论 -
支持向量机SVM----学习笔记四(代码实践一SVM思路解决回归问题)
用SVM思路解决回归问题本质就是找到一根直线或曲线能够最佳程度拟合数据点。SVM在解决分类问题时是存在一个margin的,SVM在解决回归问题同样存在一个margin,与分类不同的是在此情况下,我们希望margin里包含的样本数据越多越好,这就代表这个范围能比较好的表达样本数据点。在这种情况下,取中间的那根直线作为回归的结果,用它来预测其他未知点y的值。SVM分类是相反的思路...原创 2018-05-09 17:50:40 · 1529 阅读 · 0 评论 -
分类器性能度量----查准率、召回率、F1
#!/usr/bin/python# -*- coding:utf-8 -*-import numpy as npfrom sklearn.metrics import accuracy_scorefrom sklearn.metrics import precision_score, recall_score, f1_score, fbeta_scorefrom sklearn.me...原创 2018-05-11 14:10:13 · 734 阅读 · 0 评论 -
决策树+编程实现
什么是决策树构建决策树的关键问题是:每个节点在哪个维度上做划分某个维度在哪个值上做划分信息熵信息熵在信息论中代表随机变量不确定的度量。熵越大,数据的不确定性就越高。熵越小,数据的不确定性越低。上图中可以看出,右边的数据比左边的数据熵小,右边数据更确定。以二分类问题,编程实现信息熵,观察信息熵的函数曲线import numpy as npimport matplotlib.pyplot as p...原创 2018-07-12 17:06:07 · 1780 阅读 · 0 评论