
Python
文章平均质量分 95
写代码的阿呆
每天保持进步就是最大的进步!
展开
-
游程检验和随机性检验
游程检验和随机性检验1 游程检验的含义2 应用1:两总体分布一致性检验2.1 定义及解决的问题2.2 原理2.2.1 Step1:提出假设2.2.2 Step2:计算检验统计量2.2.3 Step3:决策2.3 Python实现3 应用2:样本随机性检验(单总体)3.1 定义及解决的问题3.2 原理3.2.1 Step1:提出假设3.2.2 Step2:计算检验统计量3.2.3 Step3:决策3.3 Python实现1 游程检验的含义什么叫游程检验(Runs test)呢?游程检验的定义:亦称“连贯原创 2022-02-14 09:50:41 · 13472 阅读 · 2 评论 -
KL散度及Python实现
KL散度及Python实现1 KL散度1.1 定义1.2 公式1.3 几个结论1.4 应用1.4.1 应用1:机器学习领域1.4.2 应用2:用户画像2 Python实现求解2.1 生成分布2.2 计算方法12.3 计算方法23 参考1 KL散度在很多场合,经常会遇到KL散度这个概念,那么它到底是什么含义呢?如何定义的?又有哪些应用场景?最后如何用Python进行计算呢?1.1 定义KL散度(Kullback-Leibler divergence,简称KLD):在信息系统中称为相对熵(relat原创 2021-12-09 16:36:01 · 17934 阅读 · 3 评论 -
灰色关联分析及实践
灰色关联分析及实践1 背景2 灰色关联分析2.1 定义2.2 名称起源2.3 思想2.4 作用2.5 算法步骤2.6 评价标准2.7 应用应用1: 旅游业发展程度的影响因子应用2:哪一种产业对GDP总量影响最大?应用3:不同产业之间的协同度(关联度)3 Python实现3.1 读入数据3.2 确定参考序列和比较序列3.3 归一化处理3.4 计算灰色关联系数3.5 计算灰色关联度3.6 结论4 总结1 背景近期需要针对某省份十大关心的产业进行一个产业协同分析,从而分析出不同产业之间的关联程度,以及单独产业原创 2021-12-03 15:21:47 · 4479 阅读 · 1 评论 -
知识图谱 | 表示学习篇
知识图谱 | 表示学习篇1 知识图谱表示的挑战2 词的向量表示方法3 知识图谱嵌入3.1 概念3.2 优缺点4 知识图谱嵌入方法4.1 转移距离模型—TransE及其变体4.1.1 TransE4.1.2 TransH4.1.3 TransR4.1.4 TransD4.1.5 TransSparse4.1.6 TransM4.1.7 ManifoldE4.1.8 TransF4.1.9 TransA4.2 转移距离模型—高斯嵌入4.2.1 KG2E4.2.2 TransG4.3 其他距离模型4.3.1 非结原创 2021-06-29 11:22:06 · 3416 阅读 · 0 评论 -
Python | 一次代码优化的经历
Python | 一次代码优化的经历1 背景2 思路2.1 思路12.2 思路23 具体做法4 合并为一个函数1 背景小编最近在做知识图谱表示学习相关的一个项目,而在结果整理过程中,遇到了一个问题,并自主解决,现通过博客记录一下思考的过程。现在通过知识图谱的表示学习得到了如下结果:即每个字段和对应的向量表示。df_fie_vec 字段序号 字段编号 字段向量表示 0 10原创 2021-06-14 19:53:26 · 538 阅读 · 8 评论 -
Python | KS检验以及其余非参数检验的实现
Python | KS检验以及其余非参数检验的实现1 什么是KS检验2 KS检验分类?3 KS检验的Python实现3.1 检验指定的数列是否服从正态分布3.2 检验指定的两个数列是否服从相同分布4 其余的非参数检验4.1 Wilcoxon符号秩检验(t检验的非参数版本)4.2 Kruskal-Wallis H检验(方差分析的非参数版本)4.3 Mann-Whitney秩检验5 参考1 什么是KS检验定义:检验一个分布f(x)与理论分布g(x)【比如正态分布】是否一致,或两个观测值分布是否有显著差异的检原创 2020-10-26 15:56:57 · 16807 阅读 · 6 评论 -
Python | Bootstrap采样实现
Python | Bootstrap采样实现1 什么是Bootstrap采样2 Bootstrap步骤3 为什么要进行Bootstrap采样4 采样的Python实现4.1 验证样本男女比例是否和总体一致4.2 模拟boostrap5 参考1 什么是Bootstrap采样先来看看维基百科的定义:即Bootstrap的定义是利用有限的样本经由多次重复抽样,建立起充足的样本,在机器学习中解决了样本不足的问题。Bootstrap是非参数统计方法,其实质是对观测信息进行再抽样,进而对总体的分布特性进行统计原创 2020-10-26 15:05:19 · 20887 阅读 · 3 评论 -
中心极限定理的理解
中心极限定理的理解1 背景2 Python模拟中心极限定理2.1 生成总体数据2.2 可视化2.3 抽一组看看2.4 抽很多组看看3 应用3.1 应用1:对于总体的估计3.2 应用2:多场景下统计量的近似使用4 中心极限定理可视化5 参考1 背景统计学上有一个重要的理论,就是中心极限定理,它的定义如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-514qxnIY-1603356526721)(attachment:image.png)]下面我们希望直观上来去理解下中原创 2020-10-22 16:51:30 · 2182 阅读 · 2 评论 -
iv值计算(含qcut细节)
iv值计算(含qcut细节)1 背景2 含有重复的数据2.1 数据准备2.2 等频分组2.3 等频分组-加上去掉重复的值3 不含有重复的数据3.1 数据准备3.2 等频分组3.3 等频分组-加上去掉重复值4 iv计算4.1 读入数据4.2 iv值计算4.3 结果分析1 背景在计算woe以及相关的iv值的时候,需要首先对数据进行分箱,分箱一般采用qcut,即等频分组。下面希望验证qcut(等频分组)-相同的值会在一组,即如果一组数据一半都是0,这些会被分在一组。同时计算iv值并进行相关分析2 含有重原创 2020-10-22 13:07:52 · 3407 阅读 · 0 评论 -
Focal Loss原理及实现
Focal Loss原理及实现1 什么是Focal Loss?2 什么场景下用Focal Loss?3 Focal Loss的原理是什么?为什么能解决样本不平衡问题?3.1 交叉熵损失函数binary loss3.2 Focal Loss的改进4 Focal Loss的实现4.1 导入库4.2 切分数据4.3 分训练集和测试集4.4 Focal Loss+Lightgbm5 写在最后6 参考资料1 什么是Focal Loss?最近工作中,Leader让了解一下Focal Loss,尝试解决信贷场景下样本原创 2020-10-19 15:32:17 · 6350 阅读 · 3 评论 -
FM原理及实现
FM原理及实现1 FM是个啥?2 FM的数学原理3 FM特征的实现样例4 FM的代码实现4.1 数据准备4.2 主代码实现4.2.1 安装xlearn4.2.2 拟合模型4.2.3 预测并得到KS值5 FM的优缺点1 FM是个啥?FM模型首先是一个有监督学习方法,主要用在CTR预估上,适用的情形是高维稀疏!优势是可以自动组合交叉特征,替代人工进行特征工程~同时很多场景下FM模型作为一开始的embedding,相比word2vec这样无监督的embedding,基于有监督FM模型的embedding效果原创 2020-10-14 12:17:18 · 4533 阅读 · 0 评论 -
LGB+LR的实践
文章目录1 背景2 原理3 数据的准备3.1 读入数据3.2 切分训练集测试集4 LR5 LGB6 LGB+LR6.1 LGB实现6.2 LGB的vector导出来!6.2.1 训练集6.2.2 测试集6.3 LR+LGB7 结果对比1 背景相信大名鼎鼎的GBDT+LR组合很多小伙伴都听过,这种组合模型的预测效果要比单模型要好,但之前一直没有亲自实践过,最近刚好公司一个项目用到了,故抓紧时间总结一波~2 原理简单来说就是首先用树模型(GBDT、Xgboost、Lightgbm)来预测样本结果,然后将原创 2020-10-11 20:59:38 · 5018 阅读 · 4 评论 -
Python | 含多个未知参数方程的曲线绘制
Python | 含多个未知参数方程的曲线绘制1 背景2 代码解决3 参考1 背景前几天,一位高中同(ji)学(you)给我发来一个问题,具体见下面图片:上述除了Vo和fu,其余字母均已知,而且fu并不是u的函数,就是一个符号。现在的问题是希望得到Vo和fu的关系:最简单的方法当然是直接解出Vo=XXXfu,即类似于y=f(x),但是上述方程过于复杂,无法直接求解得到,或者说很难得到!那具体该如何处理呢?退而求其次,我不需要求出两者具体的一个关系,而是直接画出图像来,通过图形直观得出两者关原创 2020-08-09 23:23:13 · 2944 阅读 · 1 评论 -
Python | 记一次模型上线的惨痛教训
记一次模型上线的惨痛教训前言演示代码背景需要完成的任务bug浮出水面写在最后-Python如何学习前言最近两周一直在忙导师那边一个项目,进展到最后一步模型上线了,但花了2周多才搞定,其中一个原因是代码中有一个bug,导致模型结果一直和之前小样本测试差距较大,经过项目组小伙伴们的一起努力,终于找到了这个很”狡猾"的bug,故总结并和大家进行分享(由于这两周工作强度太大,很多天工作到深夜实在没有精...原创 2020-03-27 22:44:49 · 828 阅读 · 0 评论 -
随笔 | 少一点人工,多一点智能
欢迎大家关注微信公众号:土申会!简单的生活,明亮的世界。原创 2020-03-04 11:33:16 · 183 阅读 · 0 评论 -
数据结构与算法 | 二分查找
二分查找1 前言2 什么叫二分查找?3 代码实现3.1 递归版本3.2 非递归版本4 时间复杂度5 知识点补充参考1 前言关于二分查找,首先来看一个段子,见下图:有点意思,虽然是个段子,但是大妈查找有问题书的方式其实就是今天我们要说的二分查找!也叫折半查找!下面就跟随小编的角度来具体看看什么叫二分查找吧!2 什么叫二分查找?搜索是在一个项目集合中找到一个特定项目的算法过程。搜索通常...原创 2019-07-10 10:49:24 · 459 阅读 · 2 评论 -
剑指offer | 5 替换空格 + 6 从尾到头打印链表
替换空格+从尾到头打印链表1 题目1-替换空格2 思路及解答3 题目2-从尾到头打印链表4 思路及解答21 题目1-替换空格请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。2 思路及解答思路1:根据空格进行split 然后一个for循环实现字符串拼接,注意最后一个单独拿出来...原创 2019-07-03 19:53:29 · 195 阅读 · 0 评论 -
剑指offer | 9 用两个栈实现队列
用两个栈实现队列1 题目2 思路及解析1 题目用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。2 思路及解析思路1:一个为入栈 一个为出栈代码:感觉逻辑没问题的 但是没有调试成功 还不知道为啥# -*- coding:utf-8 -*-class Solution: # 先初始化 def __init__(self): ...原创 2019-07-04 01:45:33 · 175 阅读 · 0 评论 -
数据结构与算法 | 归并排序
什么叫归并排序?1 什么叫归并排序?2 代码实现2.1 思路2.2 代码2.3 代码拆解3 算法时间复杂度4 算法稳定性参考1 什么叫归并排序?什么叫归并排序呢?这也是我们排序算法中目前最后一个,后面可能还会有补充!归并排序是采用分治法的一个非常典型的应用。归并排序的思想就是先递归分解数组,再合并数组。将数组分解最小之后,然后合并两个有序数组。基本思路是比较两个数组的最前面的数,谁小...原创 2019-07-09 16:38:17 · 359 阅读 · 0 评论 -
数据结构与算法 | 排序算法汇总
排序算法汇总1 前言2 排序算法对比3 排序算法博客汇总参考1 前言排序算法算是自己数据结构方面第一个接触的完整的算法,跟着b站的视频也总结了几篇排序算法的博客,下面进行一个梳理。2 排序算法对比上一个图:其中用的比较多的就是 快速排序!因为其时间较快,应用广泛,虽然最坏情况下为O(n2)O(n^2)O(n2)平方复杂度,但是更多的还是O(nlogn)O(nlogn)O(nlogn),...原创 2019-07-09 16:50:29 · 265 阅读 · 0 评论 -
数据结构与算法 | 链表-2:单链表的实现
如何实现单链表?1 前言2 单链表可以进行哪些操作?3 如何实现上面这些操作?3.1 定义节点3.2 判断链表是否为空3.3 求链表长度3.4 遍历整个链表3.5 链表头部添加元素3.6 链表尾部添加元素3.7 指定位置添加元素3.8 删除节点3.9 查找节点是否存在4 完整封装成类参考1 前言目前大家已经了解了链表的相关概念,但仅停留在理论层面是远远不够的,下面我们就实际的用Python来实...原创 2019-06-28 11:35:30 · 546 阅读 · 0 评论 -
深度学习 | 吴恩达深度学习课程2 Week1
Course2 Week1 编程作业1 任务2 初始化参数2.1 数据2.2 神经网络模型2.3 初始化为零2.3.1 代码2.3.2 训练2.3.3 预测2.4 随机初始化2.4.1 代码2.4.2 训练2.4.3 预测2.5 抑梯度异常初始化2.5.1 代码2.5.2 训练2.5.3 预测2.6 总结3 正则化3.1 数据3.2 代码3.3 训练+预测4 dropout4.1 代码4.1.1前...原创 2019-07-03 17:50:36 · 693 阅读 · 0 评论 -
剑指offer | 4 二维数组中的查找
剑指offer刷题1 前言2 题目3 思路及解答1 前言为了准备算法面试,开始刷题,剑指offer走起。计划10天内刷完!加油!(头条秋招提前批面试之前)2 题目在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。3 思路及解答思路1:暴力搜...原创 2019-07-03 11:14:07 · 223 阅读 · 0 评论 -
深度学习 | 吴恩达深度学习课程1 Week4
多层神经网络1 Quiz1.1 第1题1.2 第2题1.3 第3题1.4 第4题1.5 第5题1.6 第6题1.7 第7题1.8 第8题1.9 第9题2 编程题-两层神经网络2.1 载入相关的库2.2 初始化参数2.2.1 两层2.2.2 多层2.3 前向传播函数2.3.1 两层2.3.2 多层2.4 计算成本2.5 反向传播2.6 更新参数3 搭建两层神经网络3.1 代码3.2 读入数据3.3 ...原创 2019-06-27 17:07:09 · 342 阅读 · 0 评论 -
数据结构与算法 | 栈和队列
什么是栈和队列?1 什么是栈1.1 定义1.2 操作1.3 Python实现1.4 实例2 什么是队列2.1 定义2.2 变形拓展2.3 普通队列Python实现2.3.1 操作2.3.2 Python实现2.3.3 实例2.4 双端队列Python实现2.4.1 操作2.4.2 Python实现2.4.3 实例参考1 什么是栈1.1 定义栈(stack),有些地方称为堆栈,是一种容器,可...原创 2019-07-03 09:09:51 · 486 阅读 · 0 评论 -
数据结构与算法 | 链表-4:双向链表的实现
双向链表的实现?1 前言2 Python实现2.1 先定义节点2.2 定义双链表2.3 实例参考1 前言关于链表的系列,目前已经整理完成了:数据结构与算法 | 链表-1数据结构与算法 | 链表-2:单链表的实现数据结构与算法 | 链表-3:单向循环链表的实现现在还剩下双向链表的问题,双向链表的结构如下:那如何实现它呢?2 Python实现2.1 先定义节点class No...原创 2019-07-02 20:47:09 · 774 阅读 · 0 评论 -
数据结构与算法 | 链表-3:单向循环链表的实现
如何实现单向循环链表?1 定义2 Python手写单向循环链表2.1 先定义节点2.2 增删改查2.3 实例参考1 定义在之前的博客:数据结构与算法 | 链表-2:单链表的实现中笔者提到了单向链表的相关实现,本期博客将注重单向循环链表的实现!单向循环链表其实就是在单向链表的基础之上做了一点改进,就是尾节点的next区域并不是指向None了,而是指向头结点!2 Python手写单向循环链表...原创 2019-07-02 20:40:34 · 426 阅读 · 0 评论 -
数据结构与算法 | 快速排序
快速排序代码实现补充待补充!代码实现思路:定义一个初始值mid_value 和两个游标 low high控制两个游标的移动,要实现的效果是什么呢?就是最后让mid_value左边的值都比它小,右边的值都比它大!这样分成两部分之后再递归调用这个函数就ok了!能实现最终的排序!那我们要怎么操作呢?【两边夹逼!】def quick_sort(alist, first, last): ...原创 2019-07-08 12:29:04 · 409 阅读 · 0 评论 -
数据结构与算法 | 希尔排序
啥叫希尔排序?1 什么叫希尔排序?2 代码实现3 时间复杂度4 稳定性参考1 什么叫希尔排序?希尔排序(Shell Sort)是插入排序的一种。该方法因DL.Shell于1959年提出而得名。希尔排序的基本思想是:对列表数据选定一个初始gap,然后依次挑出数来,分为了几组,然后对每一组的数据进行插入排序,再将将数据归并起来,减少gap,重复上述过程,直至gap=1,此时做最后一次循环然后停...原创 2019-07-07 19:26:44 · 419 阅读 · 0 评论 -
Python | 面向对象编程与面向过程编程究竟是个什么鬼?
面向对象编程与面向过程编程1 前言2 通俗定义3 官方定义参考1 前言相信小伙伴们经常能听到两个高大上的词汇:面向对象编程和面向过程编程。纳尼,不就编程吗?为啥还分的这么细呢?还面向对象?面向过程?究竟是个啥子意思?下面就跟随小编的视角一起来看看这对双胞胎兄弟究竟是个什么鬼!2 通俗定义如果把面向对象和面向过程比喻成一对双胞胎兄弟的话,那么这两人的性格那就完全不同了,有什么不同呢?面向...原创 2019-06-26 11:31:55 · 1008 阅读 · 0 评论 -
数据结构与算法 | 二叉树
什么叫树?二叉树?Python实现?1 什么叫树2 树的术语3 树的种类4 数的存储方式5 树的应用场景6 二叉树6.1 概念6.2 性质7 代码实现二叉树7.1 定义二叉树的节点7.2 往二叉树添加元素7.3 二叉树的遍历7.4 知识点补充8 给出一个序列 如何画出树参考1 什么叫树树(英语:tree)是一种抽象数据类型(ADT)或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质...原创 2019-07-14 15:38:51 · 610 阅读 · 0 评论 -
数据结构与算法 | 汇总
阶段总结汇总1 前言2 博客汇总3 接下来的计划参考1 前言经过应该快1个月的时间,结合着b站系列视频(见下面参考链接)以及小灰的《漫画算法》这本书,将数据结构与算法算入了个门,剑指offer刷了几题,但还远远不够,也是接下来要重点发力的!下面先把自己之前数据结构与算法所记录的笔记进行一个汇总整理!2 博客汇总大概有4大块:基本概念篇+基本结构篇+排序算法篇+查找篇!1、基本概念篇...原创 2019-07-14 15:54:30 · 470 阅读 · 0 评论 -
Python | 编辑器推荐:Jupyter
jupyter神奇操作1 jupyter是个啥?2 jupyter安装3 jupyter简单操作4 jupyter一些好用的技巧4.1 目录功能4.2 更换皮肤4.3 支出导出多种格式4.4 批量折叠cell4.5 显示cell中的行号5 写在最后前言记得自己刚入门Python的时候,一直在纠结一件事情,那就是Python到底用什么编辑器?网上一搜好多听不懂的词汇,高大上,特别是对于我这个编...原创 2019-04-02 17:05:29 · 7358 阅读 · 0 评论 -
机器学习 | Faiss实现
Faiss原理及实现1 前言2 什么是Faiss2.1 为什么会出现Faiss?2.2 Faiss的优点2.3 Faiss组件2.3.1 索引Index2.3.2 索引Index选择的原则2.4 优化方法:单元-探测(Cell-probe) 方法3 Faiss的Python实现3.1 导入库3.2 准备数据3.3 创建索引(Index)3.4 查找相似向量3.5 加速搜索3.6 减少内存3.7 G...原创 2019-08-20 02:10:27 · 5898 阅读 · 0 评论 -
深度学习 | Word2vec原理及应用
聊聊Word2vec1 前言2 什么是Word2vec?2.1 定义2.1.1 分词的原理介绍2.1.2 文本向量化的方式2.2 数学原理2.2.1 CBOW(Continuous Bag-of-Words)原理2.2.2 Skip-Gram原理2.2.3 为什么要有Word2vec 而不是用原来的?2.2.4 Word2vec基础:霍夫曼树2.2.5 Hierarchical Softmax2....原创 2020-06-17 23:43:19 · 3843 阅读 · 0 评论 -
剑指offer | 链表问题汇总
链表问题汇总1 前言2 题目题1 链表中倒数第k个结点1 前言2 题目题1 链表中倒数第k个结点输入一个链表,输出该链表中倒数第k个结点。思路:如果输出链表正向的第k个结点会吗?应该会的!那么再得到长度,一减,就ok了啊!但是上面思路太麻烦,有一个非常牛逼的思路!牛逼思路:我们可以定义两个指针。第一个指针从链表的头指针开始遍历向前走k-1,第二个指针保持不动;从第k步开...原创 2019-08-02 14:58:32 · 812 阅读 · 0 评论 -
机器学习 | 最大熵模型
什么是最大熵模型?1 前言2 什么是最大熵模型?2.1 通俗解释3 最大熵模型的应用场景4 模型优缺点参考1 前言继续梳理李航老师《统计学习方法》的章节内容,今天我们一起来看一看啥叫最大熵模型?2 什么是最大熵模型?2.1 通俗解释首先来看看吴军老师的《数学之美》书中对于最大熵模型的通俗解释。一句话概括:不要把鸡蛋放到一个篮子里!保留全部的不确定性,将风险降到最小,此时对应的熵最大...原创 2019-07-26 10:54:22 · 1774 阅读 · 1 评论 -
深度学习 | Colab入门
Colab入门1 前言2 准备工作3 如何读入数据4 如何安装keras等第三方库参考1 前言最近希望run起来深度学习的相关模型,比如CNN,刚好也是之前的一个项目,但是本机实现跑不动,于是请教师兄,建议我上手Google的Colab,于是刚才就吭哧吭哧的搞起来了!初次上手还是遇到了很多坑的,下面总结一下,方便后面入门的小伙伴们避坑~2 准备工作登录的网址是:https://colab...原创 2019-07-17 16:35:03 · 1021 阅读 · 0 评论 -
剑指offer | 5题
题1:重建二叉树题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:重建二叉树返回的结果是依次打印出二叉树的根节点,肯定要用到递归的思想先根据前序list找到根节点以及其索引然后在前序和...原创 2019-07-25 12:05:58 · 321 阅读 · 0 评论 -
数据结构与算法 | 插入排序
聊聊插入排序1 什么叫插入排序1.1 原理1.2 图解2 插入排序和选择排序的关系3 代码实现4 时间复杂度5 算法稳定性参考1 什么叫插入排序1.1 原理插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步...原创 2019-07-07 14:02:38 · 254 阅读 · 0 评论