
machine learning
文章平均质量分 56
SZU_Hadooper
数据挖掘工程师
展开
-
交叉熵和信息熵
交叉熵:用于多分类的损失函数,熵越大模型越不确定,熵越小模型越确定,即优化模型目的是最小化交叉熵公式如下:例子:信息熵:信息熵是消除不确定性所需信息量的度量,也即未知事件可能含有的信息量,信息熵大小与观测者的观测粒度有关,即在P(xi)P(x_i)P(xi)这个观测分布下熵的大小相对熵(KL散度)如果对于同一个随机变量XXX有两个单独的概率分布P(x)P(x)P(x)和Q(x...原创 2020-04-24 17:12:46 · 2007 阅读 · 0 评论 -
XGboost详解
前言 作为一个非常有效的机器学习方法,Boosted Tree是数据挖掘和机器学习中最常用的算法之一。因为它效果好,对于输入要求不敏感,往往是从统计学家到数据科学家必备的工具之一,它同时也是kaggle比赛冠军选手最常用的工具。最后,因为它的效果好,计算复杂度不高,也在工业界中有大量的应用。Boosted Tree的若干同义词 说到这里可能有人会问,为什么我没有听过这个名字。这是因为Boost转载 2018-01-02 14:54:47 · 705 阅读 · 0 评论 -
python 使用卡方检验
什么是卡方分析卡方分析有两个常见的应用——适合度分析和独立性分析。这个笔记着重于适合度分析。从我目前的经验来看,这也是应用十分广泛的一种统计分析方式。那么什么是卡方适合度分析呢?且听我慢慢道来。现象1 现象2 现象3 观测值 a b c 预期值 A B C 常见的适合度分析的结构如下,一般有两组数据,一组是你统计或者观察到的值,另一组是理论上的预期值。如果这两组值十分转载 2018-01-11 15:27:59 · 6525 阅读 · 0 评论 -
L1正则和L2正则理解
相交的点就是θ\theta的解原创 2018-01-02 20:15:15 · 694 阅读 · 0 评论 -
交叉验证
sklearn中train_test_split将训练数据的一部分留出来做校验,不参与模型参数训练 – 优点:速度快 – 缺点:训练数据减少,一次校验集的划分会带来随机性交叉验证(corss-valisation, CV),但训练时间延长 – 适合训练数据规模较大的情况(如上百万条记录) – 适合训练慢的机器学习模型k-折交叉验证:将训练数据等分成k份(k通常的取值为3、5或10) – 重转载 2018-01-03 11:01:16 · 2036 阅读 · 0 评论 -
XGBOOST 参数
XGBoost ParametersBefore running XGboost, we must set three types of parameters: general parameters, booster parameters and task parameters.General parameters relates to which booster we are using转载 2018-01-12 23:24:09 · 1395 阅读 · 0 评论 -
XGBoost 模型保存,读取
一个数据集可以分为训练集和验证集,训练完模型后,放到测试集上做预测。#!/usr/bin/pythonimport numpy as npimport scipy.sparseimport pickleimport xgboost as xgb### simple example# load file from text file, also binary buffer gene转载 2018-01-13 12:05:23 · 30893 阅读 · 1 评论 -
特征处理(特征筛选,排序)
特征选择是特征工程中的重要问题(另一个重要的问题是特征提取),坊间常说:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。由此可见,特征工程尤其是特征选择在机器学习中占有相当重要的地位。通常而言,特征选择是指选择获得相应模型和算法最好性能的特征集,工程上常用的方法有以下: 1. 计算每一个特征与响应变量的相关性:工程上常用的手段有计算皮尔逊系数和互信息系数,皮尔逊系数只能衡量线性转载 2018-01-09 13:51:56 · 6621 阅读 · 0 评论 -
模糊集合和隶属度详解
模糊集合老是喜欢用一堆专业术语来解释,看上去似乎很难懂,所以越看越烦。下面我来白话解释一下。论域什么是论域?出现这个词感觉就很高大上,其实论域就是我们要讨论的集合,比如说,我们要研究人这个物种,我们的论域就是人,不是鸟,也不是鸭子。很简单吧。用术语表示:人们在研究具体问题时,总是对局限于一定范围内的对象进行讨论,所讨论的对象的全体称为论域,常用 UUU 表示。论域 UUU 中的每个对象...原创 2018-10-17 16:56:18 · 15037 阅读 · 3 评论 -
[PyTorch] rnn,lstm,gru中输入输出维度
[PyTorch] rnn,lstm,gru中输入输出维度本文中的RNN泛指LSTM,GRU等等CNN中和RNN中batchSize的默认位置是不同的。CNN中:batchsize的位置是position 0.RNN中:batchsize的位置是position 1.在RNN中输入数据格式:对于最简单的RNN,我们可以使用两种方式来调用,torch.nn.RNNCell(),它只接受序...转载 2018-12-03 16:20:02 · 8108 阅读 · 1 评论 -
Keras 复现结果
import numpy as npimport tensorflow as tfimport random as rn# The below is necessary in Python 3.2.3 onwards to# have reproducible behavior for certain hash-based operations.# See these referenc...转载 2018-12-21 15:03:24 · 1243 阅读 · 0 评论 -
SVM matlab
关于SVM参数的优化选取,国际上并没有公认统一的最好的方法,现在目前常用的方法就是让c和g在一定的范围内取值,对于取定的c和g对于把训练集作为原始数据集利用K-CV方法得到在此组c和g下训练集验证分类准确率,最终取使得训练集验证分类准确率最高的那组c和g做为最佳的参数,但有一个问题就是可能会有多组的c和g对应于最高的验证分类准确率,这种情况怎么处理?这里采用的手段是选取能够达到最高验证分类准确率中...转载 2019-02-24 16:41:34 · 1438 阅读 · 1 评论 -
pd.get_dummies()的使用
s = pd.Series(list(‘AABBCCABCDDEE’))s0 A1 A2 B3 B4 C5 C6 A7 B8 C9 D10 D11 E12 Edtype: objectpd.get_dummies(s)A B C D E0 1 0 ...原创 2019-03-04 21:34:03 · 3048 阅读 · 0 评论 -
Python生成多种类别的样本数据
import matplotlib.pyplt as pltfrom sklearn.datasets import make_blobsfrom matplotlib import pyplotdata, label = make_blobs(n_samples=200, n_features=2, centers=5)plt.scatter(data[:, 0], data[:, 1]...原创 2019-03-04 14:33:54 · 1992 阅读 · 0 评论 -
SVM:支持向量机
支持向量机SVM目的最优的超平面点到平面的距离支持向量推理支持向量机求解支持向量机的对偶形式核技巧SVM目的低纬到高维,使线性不可分变成超平面下线性可分,SVM可以得到最优的超平面最优的超平面是指模型可以容忍最大的误差(灰色区域是高斯噪音,从第三个图可以看出高斯噪音的方差最大,模型的鲁棒性最好)在SVM中就是找出margin最大的超平面点到平面的距离一个平面:w1x1+w2x2+....原创 2019-07-22 15:28:43 · 472 阅读 · 0 评论 -
Softmax 回归 vs. k 个二元分类器
如果你在开发一个音乐分类的应用,需要对k种类型的音乐进行识别,那么是选择使用 softmax 分类器呢,还是使用 logistic 回归算法建立 k 个独立的二元分类器呢? 这一选择取决于你的类别之间是否互斥,例如,如果你有四个类别的音乐,分别为:古典音乐、乡村音乐、摇滚乐和爵士乐,那么你可以假设每个训练样本只会被打上一个标签(即:一首歌只能属于这四种音乐类型的其中一种),此时你应该使用类别数 k转载 2017-12-07 00:16:41 · 695 阅读 · 0 评论 -
决策树和CART决策树
首先简单介绍下决策树: 说到决策树肯定离不开信息熵 什么是信息熵(不要被这名字唬住,其实很简单)? 一个不太可能的时间居然发生了,要比一个非常可能的时间发生提供更多的信息。消息说:“今天早上太阳升起”。信息量是很少的,以至于没有必要发送。但另一条消息说:“今天早上日食”。信息量就很丰富。 概率越大信息量就越少,与概率成反比1p\frac{1}{p} I(x)=logP(x)−1=−logP原创 2017-12-04 23:39:49 · 871 阅读 · 0 评论 -
混合高斯模型
一、高斯模型简介 首先介绍一下单高斯模型(GSM)和高斯混合模型(GMM)的大概思想。1.单高斯模型 如题,就是单个高斯分布模型or正态分布模型。想必大家都知道正态分布,这一分布反映了自然界普遍存在的有关变量的一种统计规律,例如身高,考试成绩等;而且有很好的数学性质,具有各阶导数,变量频数分布由μ、σ完全决定等等,在许多领域得到广泛应用。在这里简单介绍下高斯分布的概转载 2017-12-13 22:58:54 · 524 阅读 · 0 评论 -
matlab中贝叶斯简单使用
Matlab部分代码: Data_prediction = load('lichen\Pima-prediction-set.txt');Data_train = load('lichen\Pima-training-set.txt');training_data = Data_train(:,1:8);training_label = Data_train(:,9);pr原创 2017-01-10 09:33:41 · 7890 阅读 · 3 评论 -
经验风险最小化
学习理论:偏差方差权衡(Bias/variance tradeoff)训练误差和一般误差(Training error & generation error)经验风险最小化(Empiried risk minization)联合界引理和Hoeffding不等式(Union bound & Hoeffding inequality)有限与无限假设类的讨论(Discuss on finite转载 2017-05-24 11:05:49 · 1143 阅读 · 0 评论 -
高斯判别法
同朴素贝叶斯一样,高斯判别分析(Gaussian discriminant analysismodel, GDA)也是一种生成学习算法,在该模型中,我们假设y给定的情况下,x服从混合正态分布。通过训练确定参数,新样本通过已建立的模型计算出隶属不同类的概率,选取概率最大为样本所属的类。一、混合正态分布(multivariate normal distribution)混合正态转载 2017-05-08 10:36:38 · 4363 阅读 · 0 评论 -
PCA和协方差的理解
学过概率统计的孩子都知道,统计里最基本的概念就是样本的均值,方差,或者再加个标准差。首先我们给你一个含有n个样本的集合,依次给出这些概念的公式描述,这些高中学过数学的孩子都应该知道吧,一带而过。很显然,均值描述的是样本集合的中间点,它告诉我们的信息是很有限的,而标准差给我们描述的则是样本集合的各个样本点到均值的距离之平均。以这两个集合为例,[0,8,12,20]和[8,9,11,1转载 2017-06-02 15:16:35 · 8440 阅读 · 0 评论 -
beta分布
作者:小杰链接:https://www.zhihu.com/question/30269898/answer/123261564来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。beta分布介绍相信大家学过统计学的都对 正态分布 二项分布 均匀分布 等等很熟悉了,但是却鲜少有人去介绍beta分布的。用一句话来说,beta分布可以看作一个概率的转载 2017-08-21 16:10:04 · 577 阅读 · 0 评论 -
马尔科夫过程
作者:Yang Eninala链接:https://www.zhihu.com/question/20962240/answer/33438846来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。隐马尔可夫(HMM)好讲,简单易懂不好讲。我认为 @者也的回答没什么错误,不过我想说个更通俗易懂的例子。我希望我的读者不是专家,而是对这转载 2017-07-07 09:17:45 · 527 阅读 · 0 评论 -
不平衡数据的数据处理方法(F值)
在机器学习中,不平衡数据是常见场景。不平衡数据一般指正样本数量远远小于负样本数量。如果数据不平衡,那么分类器总是预测比例较大的类别,就能使得准确率达到很高的水平。比如正样本的比例为 1%,负样本的比例为 99%。这时候分类器不需要经过训练,直接预测所有样本为负样本,准确率能够达到 99%。经过训练的分类器反而可能没有办法达到99%。 对于不平衡数据的分类,为了解决上述准确转载 2017-11-17 16:40:14 · 1147 阅读 · 0 评论 -
Metropolis-Hasting 算法和 Gibbs sampling 算法
在科学研究中,如何生成服从某个概率分布的样本是一个重要的问题。 如果样本维度很低,只有一两维,我们可以用反切法、拒绝采样和重要性采样等方法。 但是对于高维样本,这些方法就不适用了。这时我们就要使用一些 “高档” 的算法,比如下面要介绍的 Metropolis-Hasting 算法和 Gibbs sampling 算法。 Metropolis-Hasting 算法和 Gibbs s转载 2017-11-17 16:53:11 · 4488 阅读 · 0 评论 -
训练集和测试集的划分
交叉验证(CrossValidation)方法思想以下简称交叉验证(Cross Validation)为CV.CV是用来验证分类器的性能一种统计分析方法,基本思想是把在某种意义下将原始数据(dataset)进行分组,一部分做为训练集(train set),另一部分做为验证集(validation set),首先用训练集对分类器进行训练,在利用验证集来测试训练得到的模型(model),以转载 2017-11-17 21:02:50 · 5939 阅读 · 0 评论 -
泊松分布
泊松分布标签(空格分隔): 统计学泊松分布是由二项分布推导而来满足平稳性、无后效性、普通性. 平稳性:在任意时间区间内,事件发生k次(k≥0)的概率只依赖于区间长度而与区间端点无关. 无后效性:在不相重叠的时间段内,事件的发生是相互独立的. 普通性:如果时间区间充分小,事件出现两次或两次以上的概率可忽略不计. 一放射性源放射出的alfa粒子数,某电话交换台收到的电话呼叫数,到某机场降落的飞机原创 2017-12-02 00:25:16 · 3097 阅读 · 0 评论 -
朴素贝叶斯:分母相对于所有类别为常数
朴素贝叶斯原创 2017-08-13 21:49:47 · 2260 阅读 · 0 评论 -
广义线性模型理解
本文纯属个人理解,恳求指正。广义线性回归能做什么?为什么我们要使用广义线性回归?这俩天看到了广义线性回归这个概念,百度上面基本是吴恩达的copy版本,知乎上面都是大神写的,表示看完等于没看。看了prml也还是弄不太清楚这个广义线性回归是干嘛的。不过经过我反复思考我把我想到的写下来,大家参考参考,(只是我自己的理解)恳求指正。回归分析的输出变量通常记做Y,也称为因变量(d原创 2017-11-29 22:20:28 · 8798 阅读 · 0 评论 -
极大似然估计(MLE)和贝叶斯估计(MAP)
极大似然估计(MLE)和贝叶斯估计(MAP)标签(空格分隔):机器学习笔记 极大似然估计与贝叶斯估计是统计中两种对模型的参数确定的方法,两种参数估计方法使用不同的思想。 前者来自于频率派,认为参数是固定的,我们要做的事情就是根据已经掌握的数据来估计这个参数(上帝眼中参数θ\theta早已经固定了,带入xix_i样本来求θ\theta,根据样本来求θ\theta,最大的值就是最大的估计,就是我们认为原创 2017-12-02 14:11:51 · 1368 阅读 · 3 评论 -
逻辑回归解决多分类和softmax
我们已经知道,普通的logistic回归只能针对二分类(Binary Classification)问题,要想实现多个类别的分类,我们必须要改进logistic回归,让其适应多分类问题。关于这种改进,有两种方式可以做到。第一种方式是直接根据每个类别,都建立一个二分类器,带有这个类别的样本标记为1,带有其他类别的样本标记为0。假如我们有个类别,最后我们就得到了个针对不同标记的普通的logis转载 2017-11-23 21:01:50 · 17260 阅读 · 3 评论 -
BP的详细推导过程
最近在看深度学习的东西,一开始看的吴恩达的UFLDL教程,有中文版就直接看了,后来发现有些地方总是不是很明确,又去看英文版,然后又找了些资料看,才发现,中文版的译者在翻译的时候会对省略的公式推导过程进行补充,但是补充的又是错的,难怪觉得有问题。反向传播法其实是神经网络的基础了,但是很多人在学的时候总是会遇到一些问题,或者看到大篇的公式觉得好像很难就退缩了,其实不难,就是一个链式求导法则反复用。如果转载 2017-11-23 22:05:11 · 2214 阅读 · 2 评论 -
matlab中kmeans简单使用
[Idx,C,sumD,D]=Kmeans(data,3,’dist’,’sqEuclidean’,’rep’,4)等号右边:kmeans:K-均值聚类 data是你自己的输入数据3 是你要聚成3类dist sqEuclidean 这2个参数,表示距离函数为欧式距离。什么是欧式距离自己百度’rep’,4 聚类重复次数4次。因为要反转载 2017-01-09 15:53:53 · 4434 阅读 · 2 评论