标准化互信息NMI计算步骤及其Python实现
Excellence is a continuous process and not an accident. 卓越是一个持续的过程而不是一个偶然事件。 标准化互信息NMI计算步骤 假设对于17个样本点(v1,v2,...,v17)(v_1,v_2,...,v_{17})(v1,v2,...,v17)进行聚类: 某一种算法得到聚类结果为: A=[1 2 1 1 1 1 1 2 2 2 2 3 1 1 3 3 3] 标准的聚类结果为: B=[1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3] 问题:需要度量算法结果与标准结果之间的相似度,如果结果越相似NMI值应接近1;如果算法结果很差则NMI值接近0。 根据公式计算MI的值其中X=unique(A)=[1 2 3] , Y=unique(B)=[1 2 3]: MI(X,Y)=∑i=1∣X∣∑j=1∣Y∣P(i,j)log(P(i,j)P(i)P′(j))MI(X,Y)=\sum_{i=1}^{|X|}\sum_{j=1}^{|Y|}P(i,j)log(\frac{P(i,j)}{P(i)P^{'} ...
节点重要性度量指标汇总
本文主要介绍度量图中顶点重要性的指标 局部特征 度中心性(Degree Centrality) 即一个节点的度越大就意味着这个节点越重要,为了便于比较而对中心性指标做归一化处理,度为kik_iki的节点的归一化的度中心性值定义为: DCi=kiN−1DC_i=\frac{k_i}{N-1} DCi=N−1ki 集聚系数(Clustering Coefficient) 对于节点i, 它的邻居节点N(i)之间所存在的边数,与可能存在的最大边数的比值,就叫节点i的局部集聚系数。网络的全局集聚系数就是所有节点的集聚系数求平均值。 ClusterCoefficient(i)=∑j,k∈N(i)A(j,k)∣N(i)∣∗(∣N(i)∣−1)/2ClusterCoefficient(i)=\frac{\sum_{j,k\in N(i)}A(j,k)}{|N(i)|*(|N(i)|-1)/2} ClusterCoefficient(i)=∣N(i)∣∗(∣N(i)∣−1)/2∑j,k∈N(i)A(j,k) 全局特征 介数中心性(Between Centrality) 经过某个节点的最短 ...
教务处成绩自动爬取
最近无聊写了一个Python爬虫,可以根据输入的学号和密码爬取研究生的课程成绩,具体过程记录如下。 工具: Chrome Wireshark Tesseract-ocr+Pytesseract 其中关键步骤在于下载登录界面上的验证码到本地然后输入验证进行登录。 其次要考虑到的是登录提交表单的内容。 奇怪的是利用chrome浏览器的开发者工具竟然不能记录对登录页面提交的表单,真奇怪!!!后来想到以前用到过的强大的wireshark抓包工具,然后用来进行抓取登录页面提交的表单信息。 首先利用chrome浏览器查看登录页面的验证码地址的对应的请求地址。 然后查看登录时请求的地址,发现并不是登录页面的地址,导致后面出现错误。 对于验证码的处理,我是先下载到本地然后再通过画图呈现出来供用户进行输入。 话不多说,下面直接给出Python代码: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 ...
Linux 常用命令汇总
补充技巧命令: date -d@********** 时间戳转为时间格式; ctrl + r 命令行历史命令搜索; wc -cml ***** 统计文件行数等; supervisorctl status 查看任务运行状态; jps 查看所有 Java 进程的 pid; grep -v:不包含某字符的行; ssh-copy-id user@ip:本地公钥复制到远程服务器; 更新补充 nohup 和 awk 命令; nohup nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。 nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。 语法格式: 1nohup Command [ Arg … ] [ & ] 参数说明: Command:要执行的命令。 Arg:一些参数,可以指定输出文件。 &:让命令在后台执行,终端退出后命令 ...