![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
飘的心
这个作者很懒,什么都没留下…
展开
-
机器学习中的特征选择和优缺点
特征选择和机器学习算法两者存在紧密的联系,根据特征选择中子集评价标准和后续学习算法的结合方式可分为嵌入式(embedded)、过滤式(filter)和封装式(wraper)1.嵌入式特征选择在嵌入式特征选择中,特征选择算法本身作为组成部分嵌入到学习算法里,最典型的就是决策树算法,如Quinlan的ID3,C4.5以及Breiman的CART算法等,决策树算法在树增长过程的每个递归步原创 2017-08-15 23:49:40 · 19876 阅读 · 0 评论 -
Python实现CART,并且展示混淆矩阵
# -*- coding: utf-8 -*-"""Created on Tue Sep 5 16:18:15 2017@author: piaodexin"""from sklearn import datasetsfrom sklearn import cross_validationfrom sklearn.tree import DecisionTreeClassifi原创 2017-09-05 16:36:55 · 1135 阅读 · 0 评论 -
python学习learning_curve和validation_curve
learning_curve是展示不同数据量,算法学习得分validation_curve是展示某个因子,不同取值的算法得分# -*- coding: utf-8 -*-"""Created on Wed Sep 06 09:55:13 2017@author: 飘的心"""from sklearn.model_selection import learning_curve原创 2017-09-06 11:37:00 · 8473 阅读 · 0 评论 -
Python进行参数调优GridSearchCV和RandomizedSearchCV
# -*- coding: utf-8 -*-"""Created on Wed Sep 6 14:30:24 2017@author: 飘的心"""from sklearn.datasets import load_digitsfrom sklearn.linear_model import LogisticRegressionfrom sklearn.model_selec原创 2017-09-06 15:27:25 · 12211 阅读 · 0 评论 -
python实现自编码器autoencode
# -*- coding: utf-8 -*-"""Created on Sun Sep 3 13:48:19 2017@author: piaodexin"""from __future__ import division, print_function, absolute_importimport tensorflow as tffrom tensorflow.exampl原创 2017-09-03 16:59:02 · 9489 阅读 · 2 评论 -
sklean中交叉检验和混淆矩阵
'''今天学习到的东西,、很重要'''#cross_validationfrom sklearn import cross_validationx_train,x_test,y_train,x_test=cross_validation(x,y,test_size=0.25, random_state=0,stratify=y原创 2017-09-05 17:18:36 · 3830 阅读 · 1 评论 -
Python实现Adaboost(decisiontree)
from sklearn import datasetsfrom sklearn.svm import LinearSVCfrom sklearn import ensemblefrom sklearn.model_selection import validation_curveimport matplotlib.pyplot as pltimport numpy as npdat原创 2017-09-07 17:57:30 · 1161 阅读 · 0 评论 -
Python实现感知器
# -*- coding: utf-8 -*-"""Created on Fri Sep 1 11:56:12 2017@author: piaodexin"""#import pandas as pdimport numpy as np#生成正标签数据x1=np.random.randn(50,2)+40y1=np.ones((50,1))data1=np.hstack原创 2017-09-01 14:45:39 · 1048 阅读 · 0 评论 -
对糖尿病数据进行PCA降维
from sklearn import datasets #加载数据集from sklearn import decompositiondata=datasets.load_diabetes() data=data.datajiangwei=decomposition.PCA(n_components=4) #提取四个主成分jiangwei.fit(data)jiangwe原创 2017-09-01 15:15:43 · 1175 阅读 · 0 评论 -
python进行机器学习中的SVM
# -*- coding: utf-8 -*-"""Created on Thu Aug 10 16:42:38 2017@author: cq"""import matplotlib.pyplot as pltimport numpy as npfrom sklearn import datasets,linear_model,cross_valida原创 2017-08-11 15:31:25 · 1249 阅读 · 1 评论 -
Python中学习器流水线Pipeline
'''sklean提供的pipeline来将多个学习器组成流水线,通常流水线的形式为:将数据标准化的学习器---特征提取的学习器---执行预测的学习器除了最后一个学习器之外,前面的所有学习器必须提供transform方法,该方法用于数据转化(例如: 归一化,正则化,以及特征提取'''from sklearn.datasets import load_digitsfro原创 2017-09-01 16:25:48 · 17125 阅读 · 2 评论 -
Python实现KMeans聚类
from sklearn import datasets #加载数据包from sklearn.cluster import KMeans #加载KMeansfrom sklearn import cross_validation #加载交叉检验,然后处理数据data=datasets.load_iris()x=data.datay=data.targetx_train,x_t原创 2017-09-05 14:46:12 · 612 阅读 · 0 评论 -
softmax回归
在分类中,我们会碰到二分类,这个时候我们就可以使用logistic回归,然后多分类的任务在现实中才是常见的,例如让你分类某一个电影属于哪一类,以及文章类型属于哪一类,这个时候我们就需要softmax回归。 在Logistic回归中,样本数据的值,而在softmax回归中,其中是类别种数,比如在分析电影类别时中,表示要识别的10种类型的电影。设原创 2017-08-22 11:26:24 · 630 阅读 · 0 评论 -
浅谈广义线性回归
首先,广义线性模型是基于指数分布族的,而指数分布族的原型如下 其中为自然参数,它可能是一个向量,而叫做充分统计量,也可能是一个向量,通常来说。 实际上线性最小二乘回归和Logistic回归都是广义线性模型的一个特例。当随机变量服从高斯分布,那么 得到的是线性最小二乘回归,当随机变量服从伯努利分布,则得到的是Logistic回归。 那么如原创 2017-08-22 11:06:12 · 7525 阅读 · 0 评论 -
python实现神经网络
# -*- coding: utf-8 -*-"""Created on Sun Jul 30 18:23:26 2017@author: r"""import randomimport mathrandom.seed(0)def rand(a,b): return (b-a)*random.random()+adef make转载 2017-08-17 00:34:08 · 513 阅读 · 0 评论 -
Python进行数据处理
# -*- coding: utf-8 -*-"""Created on Thu Aug 17 17:15:14 2017@author: cq"""#二元化from sklearn.preprocessing import Binarizerx=[[1,2,3,4,5], [5,4,3,2,1], [3,3,3,3,3], [1,1,1原创 2017-08-17 18:02:26 · 466 阅读 · 0 评论 -
机器学习中牛顿法与拟牛顿法
提要:今天讲的牛顿法与拟牛顿法是求解无约束问题最优化方法的常用方法。一 牛顿法假设我们求下面函数的最小值:假设f(x)具有连续的二阶的连续偏导数,假设第K次迭代值为xk的值,那么可将f(X)在xk附近进行二阶泰勒展开得到:我们对上述公式求导可得: 假设其中可逆,我们就可以得到牛顿法的迭代公式为: 这样就可以转载 2017-08-20 00:36:36 · 622 阅读 · 0 评论 -
hessian矩阵
黑塞矩阵(Hessian Matrix),又译作海森矩阵、海瑟矩阵、海塞矩阵等,是一个多元函数的二阶偏导数构成的方阵,描述了函数的局部曲率。黑塞矩阵最早于19世纪由德国数学家Ludwig Otto Hesse提出,并以其名字命名。黑塞矩阵常用于牛顿法解决优化问题。函数方程为y=f(x1,x2,x3,.......xn),则hessian矩阵就是:因为求导的顺序不影响最终结果,所以它原创 2017-08-20 13:29:40 · 1883 阅读 · 0 评论 -
logict分类器和sigmoid分类器
首先说明啊:logistic分类器是以Bernoulli(伯努利) 分布为模型建模的,它可以用来分两种类别;而softmax分类器以多项式分布(Multinomial Distribution)为模型建模的,它可以分多种互斥的类别。补充:什么是伯努利分布?伯努利分布[2] 是一种离散分布,有两种可能的结果。1表示成功,出现的概率为p(其中0什么是二项分布?二项分布即重复转载 2017-08-14 15:53:57 · 2090 阅读 · 0 评论 -
各种激活函数的比较
激活函数的作用首先,激活函数不是真的要去激活什么。在神经网络中,激活函数的作用是能够给神经网络加入一些非线性因素,使得神经网络可以更好地解决较为复杂的问题。比如在下面的这个问题中:如上图(图片来源),在最简单的情况下,数据是线性可分的,只需要一条直线就已经能够对样本进行很好地分类。但如果情况变得复杂了一点呢?在上图中(图片来源),数据就变成了线性不可分的情况。在这种情况转载 2017-08-14 16:01:07 · 12677 阅读 · 2 评论 -
神经网络中梯度消失的原因
转载自哈工大SCIR(公众号) 为了弄清楚为何会出现消失的梯度,来看看一个极简单的深度神经网络:每一层都只有一个单一的神经元。下图就是有三层隐藏层的神经网络:转载 2017-08-14 16:22:50 · 3108 阅读 · 0 评论 -
神经网络为什么要使用激活函数,为什么relu要比sigmoid要好
第一个问题:为什么引入非线性激励函数?如果不用激励函数(其实相当于激励函数是f(x) = x),在这种情况下你每一层输出都是上层输入的线性函数,很容易验证,无论你神经网络有多少层,输出都是输入的线性组合,与只有一个隐藏层效果相当,这种情况就是多层感知机(MLP)了。正因为上面的原因,我们决定引入非线性函数作为激励函数,这样深层神经网络就有意义了(不再是输入的线性组合,可以逼近任意函数)。最原创 2017-08-14 16:33:46 · 6923 阅读 · 3 评论 -
决策树的优缺点
优点:得出结果的过程易于理解,比神经网络等黑箱操作好理解 计算量较小比其他算法计算的较快缺点:很容易造成过拟合,需要采用剪枝操作 当类别太多时,会很复杂原创 2017-08-14 21:20:44 · 4432 阅读 · 0 评论 -
随机森林的优缺点
随机森林是建立在决策树的基础上,决策树在分类时是选择所有变量,而随机森林则是产生很多决策树,然后每根决策树选择不同的变量,进行分析,最后选取决策树中的众数,作为最终结果优点:不会产生过拟合现象可以作用在高维数据中能够展现出那些变量重要具有很好的抗干扰能力可以并行处理缺点:可能有很多相似的决策树,掩盖了真实的结果对小数据或者底维数据可能不能原创 2017-08-14 21:24:39 · 6485 阅读 · 0 评论 -
Python进行特征提取
# -*- coding: utf-8 -*-"""Created on Mon Aug 21 10:57:29 2017@author: 飘的心"""#过滤式特征选择#根据方差进行选择,方差越小,代表该属性识别能力很差,可以剔除from sklearn.feature_selection import VarianceThresholdx=[[100,1,原创 2017-08-21 17:11:07 · 15115 阅读 · 3 评论