自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 资源 (1)
  • 收藏
  • 关注

原创 一分钟理解softmax函数(超简单)

做过多分类任务的同学一定都知道softmax函数。softmax函数,又称归一化指数函数。它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来。下图展示了softmax的计算方法:下面为大家解释一下为什么softmax是这种形式。首先,我们知道概率有两个性质:1)预测的概率为非负数;2)各种预测结果概率之和等于1。softmax就是将在负无穷到正无...

2018-11-28 16:39:09 385662 110

原创 明朝皇帝在位时间

任 姓名 年号 庙号 谥号 生卒年份 在位年份 享年 继位年纪 在位时长 陵寝 世系 一 朱元璋 洪武 太祖 开天行道肇纪立极大圣至神仁文义武俊德成功高皇帝 1328-1398 1368-1398 71岁 30岁 41年 南京孝陵 朱士珍之子 二 朱允炆 建文 惠帝 嗣天章道诚懿渊功观文扬武克仁笃孝让皇帝 1377-1402 1398

2020-10-28 18:12:58 3858 1

原创 Python的赋值、浅拷贝和深拷贝

  直接赋值 浅拷贝 深拷贝 定义 默认浅拷贝传递对象的引用而已,原始列表改变,被赋值的b也会做相同的改变 浅拷贝,没有拷贝子对象,所以原始数据改变,子对象会改变 深拷贝,包含对象里面的自对象的拷贝,所以原始对象的改变不会造成深拷贝里任何子元素的改变 赋值 alist=[1,2,3,["a","b"]] b=alist alist=[1,2,3,["a","b"]] import copy c=copy.copy(alist)

2020-09-08 09:55:39 461

原创 一分钟巧记精准率、召回率

学习过机器学习算法的同学一定不会对精准率、召回率陌生。精准率(precision)和召回率(recall)是对二分类模型效果评价的指标。下图为精准率和召回率的计算公式:由于这里面涉及到TP、FN、FP、TN这四个指标...

2020-05-27 08:29:54 1176

原创 Excel反向匹配

Excel的vlookup应该是我们日常办公室使用频率最高的函数之一了。通过vlookup我们可以快速地进行核对数据,多个表格之间快速导入数据等函数功能。但vlookup函数有一个缺点,就是要求匹配列必须在查询列之后。如果匹配列在查询列之前,在使用vlookup之前我们需要将查询列移到匹配列之后。下面为大家介绍一种不需要变动原表结构就可以实现反向查询的方法:index+match函数有...

2020-03-13 11:11:07 2441

原创 市盈率和市净率

市盈率市净率

2020-02-26 15:19:15 1071 1

原创 货币供应量——M0、M1、M2

货币

2020-02-22 00:28:23 4242

原创 excel利用公式取最后一行单元格内容

我们在数据处理中经常会涉及到去数据的前几行、后几行这样的操作。在excel中,取前几个单元格,我们可以直接写"=A1"这样的函数去取数。但是取最后一行的话,则不能写成"=Ax"这样类型的函数,因为若表格的行数变化了的话,会导致我们取到的就不是最后一行的数据了。大家可以通过函数"=INDIRECT("A"&COUNTA(A:A))"来取得最后一行的数据。结果如下:...

2019-11-19 11:28:11 21257

原创 Excel的Sumif、Sumifs求和结果错误

最近在利用excel的sumif函数求和时,发现结果大于真是结果。分析发现原因:sumifs的判断条件为数值型,但长度大于15位,excel会将长度大于15位的数字后面默认为0。例如下面的例子,若用账号1进行聚合求和,由于账号长度为16位,大于excel的数值最大位数15位。excel会将9919000000041035和9919000000041039都默认为9919000000041030...

2019-10-14 16:56:42 16640 1

原创 类别特征的独热编码和二进制编码

我们在建模之前,一般需要对数据进行预处理。对于分类变量,一般模型不能直接作为变量输入,需要进行编码。分类变量常用编码方式如下:有序变量:序号编码无序变量:独热编码、二进制编码下面为大家介绍独热编码和二进制编码之间的区别。1)独热编码:独热编码会将变量的不同取值(N种取值)分别赋予一个只有1位为0的N维向量。例如星期,共有7个取值,独热编码会把它编码成一个7维稀疏向量。星期一表示为(...

2019-09-23 19:28:30 3217

原创 利用excel的lookup函数来数据分箱

我们在对数据进行统计时,经常会按照一定的标准将数据先分为若干类,然后统计每一类的数据的频率和占比。例如,我们需要统计不同分数段学生的人数。我们拿到的是每个学生的具体的分数,目的是统计不同分数段学生的人数。为了达到这个目的,我们先要将分数划分到指定的分数段,然后再统计每个分数段的人数。之前我是通过一连串的if语句将数据进行分箱,这样做的坏处有:1)代码较长,容易出错;2)风箱逻辑改变后不能复用。...

2019-08-08 17:32:30 7865

原创 mysql安装个人总结

最近换了新工作,帮部门同事处理一些数据分析的工作。拿到的数据是excel格式的,评估后觉得导入到数据库中做处理会方便一下,所以计划在本地安装MySQL。发现版本已经更新到8.0.16,记得上次安装还是在读书的时候,版本也是5.X.X。由于很久没有安装MySQL,安装差不多用了一个晚上,最后还是在同学的帮助下完成了安装。现将安装过程中需要注意的一些点记录下来,以便日后再次安装使用。1.下载地址:...

2019-06-06 09:46:52 883

原创 TF-IDF个人总结

TF-IDF算是nlp工程师必须掌握的入门级别的算法。作为兴趣爱好,之前曾阅读过几篇介绍该算法的博客,对其只是知道个大概。最近在看吴军老师的《数学之美》,里面对TF-IDF的介绍使得我对该算法有了更深刻的认识。现将个人对该算法的理解整理如下:TF-IDF是一种统计方法,用来评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它①在文件中出现的次数成正比增加,但同时会...

2019-05-29 18:19:11 724

原创 变量相关性热力图

我们在建模的时候为了避免多重共线性一般都会分析变量之间的相关性。衡量变量相关性我们一般都是计算变量两两之间的皮尔逊相关系数( Pearson correlation coefficient)。为了能够更好的展现变量之间的相关性,下面为大家介绍如何利用热力图来表示变量之间的相关性。def corr_map(df): var_corr = df.corr() mask = np....

2019-04-13 10:41:36 15085 1

原创 利用Shap Value挑选变量

#Shap Valueclf = lgb.LGBMClassifier(objective='binary',random_state=1024).fit(X_train,y_train)explainer = shap.TreeExplainer(clf)shap_values = explainer.shap_values(X_train)shap.summary_plot(...

2019-03-19 09:07:51 8351 4

原创 利用PermutationImportance挑选变量

我们在构建树类模型(XGBoost、LightGBM等)时,如果想要知道哪些变量比较重要的话。可以通过模型的feature_importances_方法来获取特征重要性。例如LightGBM的feature_importances_可以通过特征的分裂次数或利用该特征分裂后的增益来衡量。一般情况下,不同的衡量准则得到的特征重要性顺序会有差异。我一般是通过多种评价标准来交叉选择特征。博主认为,若一个特...

2019-03-19 08:57:39 13266

原创 CNN卷积池化后维度的变化

CNN的卷积操作后维度变化:输入维度:,分别代表输入样本的长宽高 卷积操作的超参数 卷积核个数: 卷积核大小: 滑动步长(Stride): 填充(Padding): 则输出的维度为,其中 由于CNN的参数共享机制,每个卷积核的参数个数为,共有个权重和个偏置 若想要卷积后得到的矩阵长宽与卷积前保持一致,则当时 卷积核为3时 padding 选择1...

2019-02-23 10:22:24 11110 1

原创 RNN系数矩阵维度之间的关系

我们知道RNN有三个系数矩阵需要训练,经常会被这些矩阵的维度搞晕。下面举一个简单的例子让大家记住各个矩阵维度之间的关系。 输入:输出:隐层(记忆):其中,,  ...

2019-02-20 23:47:10 3369 2

原创 Mysql的字符串转日期

 我们在对mysql的数据进行分析时,经常会遇到将业务意义为时间类型的变量定义为字符串的情况。如果我们需要按照时间维度进行分析的话,首先先要将字符串转换为时间类型。这里就需要使用Mysql的函数:STR_TO_DATE(str,format),其中,str为需要转换的字符串;format为str中时间的格式。注意:str中必须包含年月日,时分秒可以不包含。select STR_T...

2019-01-22 14:12:16 17446 4

原创 python 循环创建变量

数据分析时,我们经常会有这样的需求:将数据集按某一个维度拆分成若干数据子集、创建多个变量。如果手动去实现,工作量较大。我们可以通过locals()配合循环语句来实现这一需求。我们以鸢尾花数据集为例,我们按照花的种类将数据集拆分成数据子集,分别放到不同的变量中去。实现代码如下:from sklearn.datasets import load_irisiris = load_iris()...

2019-01-02 21:54:45 10896

原创 Sql中的DDL和DML

对于数据分析人员,我们对数据库的操作无非就是建表、修改表结构、修改表内容(增删改)、查询表内容这些操作。下面总结了这些操作的区别 DDL 数据定义语言(Data Definition Language) 不需要commit 对表格的定义进行修改 create table 创建表 alter table 修改表 drop table 删除表 truncate table...

2019-01-02 15:58:49 1910

原创 python的axis判断

axis = 0,对横轴(第0维)进行操作,运算的方向为纵向运算。即求列和、最大、最小等axis = 1,对纵轴(第1维)进程操作,运算的方向为横向运算。即求行和、最大、最小等import numpy as npimport numpy as npdata = np.array([[1,1,1,1], [2,2,2,2], ...

2018-12-26 22:28:26 816

原创 树类模型特征重要性计算方法

我们在使用GBDT、RF、Xgboost等树类模型建模时,都会有一个feature_importance的方法来返回特征重要性。下面总结了不同树类模型计算特征重要性的原理:Random Foreast 袋外数据错误率 基尼指数 GBDT 基尼指数 Xgboost gain:is the average gain of splits which use the featur...

2018-12-18 23:39:36 3133

原创 Tensorboard可视化

Tensorboard可以将我们搭建的神经网络可视化,下面为大家介绍如何利用tensorboard可视化我们所搭建的模型。测试代码:import tensorflow as tfwith tf.name_scope('graph') as scope: matrix1 = tf.constant([[3., 3.]],name ='matrix1') #1 row by ...

2018-12-11 20:51:00 878

原创 读书笔记-《机器学习》第十三章:半监督学习

目的:利用未标记样本所包含的信息,提高模型泛化能力 主动学习:与外界进行有效次的交互,降低标记成本。使用尽量少的“查询”来获的尽量好的性能 半监督学习:学习器不依赖外界交互、自动地利用未标记样本来提升学习性能 纯半监督学习 直推学习 基本假设:相似的样本拥有相似的输出 聚类假设 流形假设 半监督学习的四大范型(分类) 生成式方法 半监督SVM 图半监督学习 ...

2018-11-21 16:56:59 947

原创 机器学习笔记-朴素贝叶斯

 朴素:假设所有特征独立;贝叶斯:贝叶斯定理 朴素贝叶斯分类器的训练过程就是基于训练集D来估计类先验概率P(y),并为每个属性估计条件概率P(x(i)|y) 实例被划分到后验概率最大的类中,后验分布 = 先验分布 + 数据(似然) 贝叶斯估计:避免要估计的概率值为0的情况 拉普拉斯平滑:贝叶斯估计的特殊情况,λ=1 贝叶斯分类其实是利用用贝叶斯公式,算出每种情况下发生的概率,再取...

2018-11-20 16:42:06 783

原创 传统机器学习算法解决NLP问题

       如今解决nlp问题,一般都是使用深度学习相关算法。在深度学习算法没有发展到如今水平之前,都是通过传统机器学习算法来解决nlp问题。下面为大家总结了解决nlp相关问题的传统机器学习算法。分类模型:文本分类、意图识别、情感分类 Logistics Regression Bayes Model SVM Decision Tree 序列标注模型:分词、词性标注、命名实...

2018-11-08 15:54:46 2356

原创 Python的if...elif语句

      我们在编写程序的时候,经常会进行多条件判断。Python的if...elif可以进行多条件判断。在使用if...elif需注意:if判断会返回第一个满足条件的结果。如果需要返回所有满足条件的结果,这种方法是不可行的。下面为大家举一个例子:a = 5if a < 6: print('aaa')elif a < 7: print('bbb')打印结...

2018-11-06 17:41:00 1157

原创 SQL左连接数据变少

       前一段时间,同学写sql碰到一个问题:两段sql连接看似一样,但是条数却不一样。原因是在左连接之后的where条件对数据进行了筛选,使得数据变少了。两段sql如下:select count(1) from (select * from KXAPP.I_CASH_LOAN_WHITELIST_C2_V_NEW b where b.BG...

2018-10-24 22:36:11 12843 3

原创 机器学习笔记-K近邻

k近邻法不具有显示的学习过程,是一种懒惰学习 即可分类,又可回归 模型由三个基本要素——距离度量、k值的选择、分类决策规则决定 kd树是二叉树,表示对k维空间的一个划分。是一种便于对k维空间中的数据进行快速检索的数据结构 构造kd树 搜索kd树 http://blog.csdn.net/app_12062011/article/details/51986805 构造kd树,相...

2018-09-26 23:22:50 600

原创 机器学习笔记-感知机

感知机的解不唯一,与初始值和选取的误分类点有关 感知机学习算法包括原始形式和对偶形式 对偶形式是对算法执行速度的优化,引入了Gram矩阵,达到一次计算,多次使用的效果 损失函数为误分类点到超平面距离之和(凸函数) 参数通过随机梯度下降法来确定(每次使用一个误分类点)对线性可分数据集,感知机算法收敛,即经过有限次迭代可以得到一个将训练数据集完全正确划分的分离超平面及感知机模型 当训练集线...

2018-09-14 15:52:35 703

原创 Oracle计算分组分位数

 我们在进行分析过程中,经常会有计算某个特征的分位数这个需求。下面为大家介绍如何在oracle计算某一列数据的分位数。需要求分位数的表结构如下:select * from test_lizhen; 我们发现该表有两列,一列是代表不同产品,一列是代表每个用户的属性。我们可以通过如下方法计算特征的分位数1)不分产品,计算全体用户的分位数select PERCENTI...

2018-09-11 09:54:26 11759

原创 机器学习中的信息量与熵

 我们在学习机器学习算法的时候经常听到自信息、互信息、条件熵、交叉熵等概念。下面为我在学习过程中总结的信息量和熵的相关概念。信息量:度量的是一个具体事件发生所带来的信息熵:在结果出来之前对可能产生的信息量的期望——考虑该随机变量的所有可能取值,即所有可能发生事件所带来的信息量的期望目录目录信息量的相关概念有:自信息、互信息自信息:I(X)互信息:I(X;Y)熵:...

2018-09-07 16:41:54 2168

原创 利用Python将数据库提取的数据转为DataFrame格式

     在利用python进行数据分析时,有时候我们会直接连接数据库,将需要分析的数据导入到python中。如果直接导入到python中,数据格式为tuple,不便于后续的分析。下面为大家介绍两种方法,能够将利用sql提取的数据转换为dataframe。解析法def get_df_from_db(sql): cursor = connection.cursor() cur...

2018-09-04 17:43:17 24514 2

原创 win10查看本机IP

 win+R 输入cmd进入命令提示符 输入ipconfig/all

2018-08-29 15:27:15 8240

原创 算法复杂度

算法复杂度 = 时间复杂度 + 空间复杂度一般情况下,运行程序所需的存储空间超过了计算机内存时,空间复杂度才能更受关注复杂度是以程序执行的基本步数为单位进行测量,而不是使用时间“f(x)的复杂度是O(x^2)”,这句话的意义是,在最差情形下,f会运行O(x^2)步O(1):表示常数运行时间 O(logn):表示对数运行时间 O(n):表示线性运行时间 O(nlogn):表示对...

2018-08-22 10:29:52 927

原创 python利用open进行文件读写

python open() 函数用于打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写读f = open('/file', 'r')f.read():一次性读取文件全部内容 f.read(size):每次最多读取size大小的内容 f.readline():每次读取一行内容 f.readlines():一次读取所有内容并按行返回list写f = open('...

2018-08-21 09:51:51 1134

原创 NLP基本任务

下面整理了NLP的基本任务分类,资料来源见下链接。https://edu.csdn.net/course/play/8673词法分析(Lexical Analysis):对自然语言进行词汇层面的分析,是NLP基础性工作 分词(Word Segmentation/Tokenization):对没有明显边界的文本进行切分,得到词序列 新词发现(New Words Identificat...

2018-08-11 17:01:21 9966

原创 频率学派(Frequentists) 、贝叶斯学派(Bayesians)

数学与统计学最大的区别在于数学研究的是变量,而统计学研究的是随机变量 频率学派把未知参数看作普通变量(固定值),把样本看作随机变量;而贝叶斯学派把一切变量看作随机变量 贝叶斯论善于利用过去的知识和抽样数据,而频率论仅仅利用抽样数据。因此贝叶斯推论中前一次得到的后验概率分布可以作为后一次的先验概率 频率学派与贝叶斯学派的区别主要是是否允许先验概率分布的使用 贝叶斯派因为所有的参数都是随机变量...

2018-08-08 17:37:06 5608

原创 《一天搞懂深度学习-李宏毅》大纲

Lecture I : Introduction of Deep LearningIntroduction of Deep Learning Step1 : define a set of function Step2 : goodness of function Step3 : pick the best function Why Deep? "Hello World" f...

2018-07-31 17:22:40 1197

XGBoost原理解析.pdf

XGBoost是机器学习比较热门且重要的算法,其原理为机器学习从业者必须了解的知识。现将电子版免费分享给大家。

2020-05-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除