最近做用户画像,用到了KL散度,发现效果还是不错的,现跟大家分享一下,为了文章的易读性,不具体讲公式的计算,主要讲应用,不过公式也不复杂,具体可以看链接. 首先先介绍一下KL散度是啥.KL散度全称Kullback–Leibler divergence,也称为相对熵,信息增益,它是度量两个概率分布P与Q之间差异的一种不对称度量,可以看做是概率分布P到目标概率Q之间距离.一般情况下,P表示数据的真是分布,Q表示数据的理论分布,也可以理解为影响P分布的一种因素.计算公式为: DKL(P||Q) =ΣP…
一.第一种理解 相对熵(relative entropy)又称为KL散度(Kullback–Leibler divergence,简称KLD),信息散度(information divergence),信息增益(information gain).  KL散度是两个概率分布P和Q差别的非对称性的度量. KL散度是用来度量使用基于Q的编码来编码来自P的样本平均所需的额外的比特个数. 典型情况下,P表示数据的真实分布,Q表示数据的理论分布,模型分布,或P的近似分布. 根据shannon的信息论,给定…
原文:浅谈.NET(C#)与Windows用户账户信息的获取 目录 1. 用户账户名称 - 使用Environment类 2. 用户账户信息 - 使用WindowsIdentity和IdentityReference 3. 使用IPrincipal判断用户账户类型(支持用户账户控制(UAC)提示) 返回目录 1. 用户账户名称 - 使用Environment类 使用Environment可以返回当前系统环境的一些常用信息,其中包括用户账户名称,则不需要额外使用System.Security.Pr…
目录 浅谈NLP 文本分类/情感分析 任务中的文本预处理工作 前言 NLP相关的文本预处理 浅谈NLP 文本分类/情感分析 任务中的文本预处理工作 前言 之所以心血来潮想写这篇博客,是因为最近在关注NLP文本分类这类任务中的文本预处理工作,想总结一下自己的所学所想,老规矩,本博文记载仅供备忘与参考,不具备学术价值,本文默认使用python3编程(代码能力是屎山级别的,请谅解),默认文本为英文,代码主要使用Pytorch(博主老笨蛋了,之前一直执迷不悟用Keras,现在刚刚开始用torch,怎么说…
大学毕业后,选择做了苹果开发,一直是使用的Mac系统,所以对Windows的基本操作忘得几乎一干二净:因为做内网穿透的需要,要用到Windows下的权限问题,所以重新研究了一下Windows设置用户权限的问题. 我这里用的是Win10操作系统,在Win10操作系统下,家庭版的操作系统隐藏了用户组的概念,使普通用户觉得简单易用,所以要想在Win10上操作用户组,需要安装Windows专业版以上(专业版也可以),我这里安装的是Win10的企业版. 首先打开运行,执行MMC,打开管理控制台面板(htt…
在vue中什么是动画 开始先啰嗦一下,动画的解释(自我理解…
采用VSTO或者Shared Add-in等技术开发Excel插件,其实是在与Excel提供的API在打交道,Excel本身的组件大多数都是COM组件,也就是说通过Excel PIA来与COM进行交互.这其中会存在一些问题,这些问题如果处理不好,通常会导致在运行的时候会抛出难以调试的COM异常,从而导致我们开发出的Excel插件的不稳定. 和普通的WinForm程序一样,Excel也是一种STA(Single Thread Apartment)线程的应用程序,Excel插件是寄宿在Excel中运…
Excel开发过程中有时候会遇到各种奇怪的问题,下面就列出一些本人在开发中遇到的一些比较典型的问题,并给出了解决方法,希望对大家有所帮助. 一 插件调试不了以及错误导致崩溃的问题 在开发机器上,有时可能会装有多个版本的.NET运行时,有时候也可能装有多个版本的Visual Studio,本人的开发机器上就安装了3个版本的Visual Studio,在最新的Visual Studio 2013出来之后,就迫不及待的把工程文件迁移到2013上来了,但是在设置了启动程序之后,调试的时候,断点根本不能命…
随着移动端市场的强势崛起,web的开发也变得愈发复杂,对于个体开发者来说,自己开发的网站,在电脑.手机.Pad等上面都要有正常的显示以及良好的用户体验.如果每次都要自己去调整网页去匹配各个不同的客户端设备,这个工作量可想而知.如果网站可以自适应浏览器大小,对于开发者来说,无疑是天大的福音.今天,我通过自己的实践,简单的探探boostrap的自适应功能,这也是众多平台中,我认为比较好的一个. Boostrap是什么 Bootstrap是基于HTML5和CSS3开发的,它在jQuery的基础上进行了…
看到网上很多关于svn环境配置和关联Android-Studio的很多博文,发现很零散,想集大家所长整理一下: 在AndroidStudio中开发版本控制中,除了Git就是SVN,和Eclipse不同Android Studio没有提供单独的插件,只能和SVN客户端关联使用,和Eclipse安装有很大区别,下面介绍在AndroidStudio中SVN的配置和使用. 如果已经搭建好了服务端,只是在日常工作中import和checkout代码,只需下载TortoiseSVN客户端 就行,完全可以跳过…