entropy

深度学习的手写数字识别程序设计

穿精又带淫゛_ 提交于 2020-04-27 08:44:42
  写博客的目的是发现虽然网上有许多深度学习资源可供使用,但是要独立的完成一个程序,如何恢复调用模型并不是想象的那么容易,踩过许多坑。幸运的是最终完成了设计和论文。贴出来与大家共享一下。     用到的基础工具:Anaconda,pytq5库,image库,TensorFlow(GPU版)     ps:由于篇幅有限,关于用到的各种神经网络知识部分可以参考我的论文中介绍。     完整代码已放入 [github仓库]   首先解决GUI的问题。网上参考了一些别人的半成品,在自己的加工下凑合能用,基于python的pyqt5库开发。 先展示下成品:稍后会将代码放出。  这里我使用了四个py文件:DigitalMnistNum.py,MainWindowC.py,UI_MainWindow.py,run.py DigitalMnistNum.py定义了clear,save,recog,以及result事件的操作。初始化时设置保存画布中图像为png格式,以及设置大小为28*28pixel。 1 # 定义手写数字面板类 2 from PyQt5 import QtCore, QtGui, QtWidgets 3 from PyQt5.QtGui import QColor 4 5 6 class DigitalMnistNum(QtWidgets.QWidget): 7 def _

深度学习面试题07:sigmod交叉熵、softmax交叉熵

≯℡__Kan透↙ 提交于 2020-04-24 05:59:55
目录    sigmod交叉熵    Softmax转换    Softmax交叉熵    参考资料 sigmod交叉熵 Sigmod交叉熵实际就是我们所说的对数损失,它是针对二分类任务的损失函数,在神经网络中,一般输出层只有一个结点。 假设y为样本标签,_y为全连接网络的输出层的值,那么,这个对数损失定义为 PS:这个是可以用极大似然估计推导出来的 举例: y=0,_y=0.8,那此时的sigmod交叉熵为1.171 import numpy as np def sigmod(x): return 1/(1+np.exp(-x)) y=0 _y=0.8 -y*np.log(sigmod(_y))-(1-y)*np.log(1-sigmod(_y)) #_y-_y*y+np.log(1+np.exp(-_y)) 返回目录 Softmax转换 假设向量x=(x 1 ,x 2 ,...,x m ),对x进行softmax转换的处理方式为: 显然,x进行softmax处理后,会归一化为[0,1],且和为1 举例:假设x=[0,2,-3], softmax(x)=[0.11849965, 0.8756006 , 0.00589975] View Code 返回目录 Softmax交叉熵 在神经网络的多分类中,假设是3分类,那么输出层就有3个神经元。 假设神经网络对某个样本的输出为out =

老白学编程

夙愿已清 提交于 2020-04-22 23:03:33
NetData plugin 之 proc Netdata 的数据采集都是通过各个plugin来进行的。找几个有代表性的plugin来看看。 概述 该plugin 顾名思义, 是针对于类Linux系统(BSD有单独的plugin), 通过读取 /proc 下面的数据来进行采集。 列表 先列一下都有哪些项。 文件 说明 /proc/stat 系统和内核的统计信息 /proc/uptime 系统运行时间 /proc/loadavg 负载 /proc/sys/kernel/random/entropy_avail 熵池大小,单位bit /proc/pressure 参考一下 psi /proc/interrupts 中断表 /proc/softirqs 系统软中断信息 /proc/vmstat 虚拟内存统计信息 /proc/meminfo 当前内存信息 /sys/kernel/mm/ksm ksmd 类似一个COW机制 /sys/block/zram 虚拟内存的压缩 /sys/devices/system/edac/mc EDAC即error detection and correction(错误检测与纠正) /sys/devices/system/node numa node 信息 /proc/pagetypeinfo 伙伴系统信息 /proc/net/dev 网络适配器统计信息

第六章-逻辑回归与最大熵模型

孤人 提交于 2020-04-21 08:52:52
逻辑斯谛回归是统计学习中的经典分类方法,和最大熵模型相比,具有以下的共同点和区别: 共同点 都属于 概率模型 ,该模型要寻找的是给定一个x,得到输出变量Y的概率分布P(Y|x),如果是二分类,Y取值为0或1,如果是多分类,Y有K个不同的类别。 都属于 对数线性模型 ,对概率分布P(Y|x)取对数,可得lnP(Y|x)=w * x关于x的线性函数。 两个模型之前的区别是 Logistic回归属于判别模型 , 最大熵模型属于生成模型 。在最大熵模型中,不仅x有随机性,Y也具有随机性,是一个随机变量。 Logistic回归模型(Logistic Regression Model) 给定输入变量 ,输出变量为 ,将 的概率记作 ,我们已经知道该模型是一个线性模型,可以用 线性 函数来表示,由于 ,那么要如何将 与 对应起来呢?这就需要用到一个变换,该变换称为 Logit变换 。 Logit变换: ,这个就是Logistic回归模型的一个形式。 ,其中 就是给定 的条件下, 的概率。 所以可得下面两个公式:   有了这个模型之后,需要求解参数 ,一旦求出 ,那么任意给定一个输入变量 ,就可以得到 的概率,如果该概率值大于0.5,就将该类判定为1,如果小于0.5,将该类判定为0。   求解 使用的方法是 极大似然估计 ,给定参数 ,求样本的联合概率密度,最大化该联合概率,从而求出参数 。 已知

用决策树(CART)解决iris分类问题

孤者浪人 提交于 2020-04-20 18:10:07
首先先看Iris数据集 Sepal.Length——花萼长度 Sepal.Width——花萼宽度 Petal.Length——花瓣长度 Petal.Width——花瓣宽度 通过上述4中属性可以预测花卉属于Setosa,Versicolour,Virginica 三个种类中的哪一类 决策树 by CART 决策树有挺多种,这里讲下 CART CART 的执行过程是这样的: 用特征值k和下限tk二分子集 不断二分,直到到达最大深度或者划分不能再减少不纯度为止 这一下sklearn都会自动帮我们完成,我们调用就行了 如何避免过拟合问题 减小最大深度等等 一个tip: ​ min_* 的调大 ​ max_*的调小 ​ 就是DecisionTreeClassifier里面的参数,具体看文档_(:з」∠)_ 损失函数的比较 sklearn提供了两种损失函数gini和entropy gini是通过计算每个节点的不纯度,具体公式如下↓ $J(k,t_k) = \frac{m_{left}}{m}G_{left} + \frac{m_{right}}{m}G_{right}$ entropy在这里就不再赘述了 sklearn默认的是调用gini,因为gini的速度会快点,而且两者最后的效果是差不多的,真要比的话entropy产生的决策树会更平衡点 接下来我们来看代码 from sklearn

【半监督学习】MixMatch、UDA、ReMixMatch、FixMatch

ぃ、小莉子 提交于 2020-04-19 10:42:44
半监督学习(Semi-Supervised Learning,SSL)的 SOTA 一次次被 Google 刷新,从 MixMatch 开始,到同期的 UDA、ReMixMatch,再到 2020 年的 FixMatch。 目录 Consistency Regularization Entropy Minimization 结合 Consistency Regularization 和 Entropy Minimization FixMatch: Simplifying SSL with Consistency and Confidence References 这四篇深度半监督学习方面的工作,都是从 consistency regularization 和 entropy minimization 两方面入手: consistency regularization:一致性,给输入图片或者中间层注入 noise,模型的输出应该尽可能保持不变或者近似。 entropy minimization:最小化熵,模型在 unlabeled data 上的熵应该尽可能最小化。Pseudo label 也隐含地用到了 entropy minimization。 Consistency Regularization 对于每一个 unlabeled instance,consistency

肺结节CT影像特征提取(四)——肺结节CT影像特征提取MATLAB代码实现

前提是你 提交于 2020-04-19 10:30:44
之前的文章讲述了肺结节CT影像数据特征提取算法及基于MATLAB GUI设计的肺结节CT影像特征提取系统。本文将讲述几个主要部分的代码实现,分别是预处理、灰度特征提取、纹理特征提取、形态特征提取数据。 一.预处理部分代码 1、读取肺结节CT数据和专家标记的mask数据 function [ sData ] = read_dcm_mask( dcmPath,maskPath,Ng ) function [ sData ] = read_dcm_mask( dcmPath,maskPath,Ng ) %read_dcm_mask.m 读取dcm文件和mask文件为矩阵,为后期使用准备 %第一个程序 % DESCRIPTION: %此函数处理dcm文件和mask文件 %1.设置dcm和mask文件所在路径 %2.执行函数即可 %INPUTS: %dcmPath:dcm文件所在路径 %maskPath:mask文件所在路径 %Ng:标准化的CT灰度级数 %OUTPUTS: %sData:保存了volume和mask以及prepareVolume函数所需参数的一个cell结构 nowPath=cd; mkdir(nowPath,'feature_extraction');%创建文件夹存放数据 dcmList=dir(dcmPath); %获取dcm文件列表 maskList=dir

ML-Agents(七)训练指令与训练配置文件

烂漫一生 提交于 2020-04-18 10:00:45
目录 ML-Agents(七)训练指令与训练配置文件 一、背景 二、训练命令 三、训练配置文件 四、用PPO训练 配置文件参数 训练统计参数 五、用SAC训练 配置文件参数 训练统计参数 六、奖励信号(Reward Signals) 开启奖励信号 奖励信号类型 外部奖励信号(Extrinsic Reward Signal) 好奇心奖励信号(Curiosity Reward Signal) GAIL奖励信号 七、总结 ML-Agents(七)训练指令与训练配置文件 一、背景 到现在为止,官方的示例已经研究三个了,但是说实话自己去按官方的配置文件训练,有时候并不能完全训练出好的模型,而且官方的配置文件配置项都不是很明白,因此想在看下一个示例之前,先来研究一下官方关于配置文件的文档,通俗点就是翻译一下,有可能其中会找到我之前在训练模型时遗漏的点。 当然如果大家有时间的话,还是可以去学习一下ML-Agents的理论,就是机器学习那套。我自己的话直接把ML-Agents当黑盒来用了,一般我的理念就是先学会怎么用,要知道能解决什么问题,然后遇到不懂得再看原理,这样就是有好有坏,主要看个人喜好。 以下翻译内容主要来自ml-agents的github文档: https://github.com/Unity-Technologies/ml-agents/blob/master/docs

ML-Agents(七)训练指令与训练配置文件

拥有回忆 提交于 2020-04-18 08:39:38
目录 ML-Agents(七)训练指令与训练配置文件 一、背景 二、训练命令 三、训练配置文件 四、用PPO训练 配置文件参数 训练统计参数 五、用SAC训练 配置文件参数 训练统计参数 六、奖励信号(Reward Signals) 开启奖励信号 奖励信号类型 外部奖励信号(Extrinsic Reward Signal) 好奇心奖励信号(Curiosity Reward Signal) GAIL奖励信号 七、总结 ML-Agents(七)训练指令与训练配置文件 一、背景 到现在为止,官方的示例已经研究三个了,但是说实话自己去按官方的配置文件训练,有时候并不能完全训练出好的模型,而且官方的配置文件配置项都不是很明白,因此想在看下一个示例之前,先来研究一下官方关于配置文件的文档,通俗点就是翻译一下,有可能其中会找到我之前在训练模型时遗漏的点。 当然如果大家有时间的话,还是可以去学习一下ML-Agents的理论,就是机器学习那套。我自己的话直接把ML-Agents当黑盒来用了,一般我的理念就是先学会怎么用,要知道能解决什么问题,然后遇到不懂得再看原理,这样就是有好有坏,主要看个人喜好。 以下翻译内容主要来自ml-agents的github文档: https://github.com/Unity-Technologies/ml-agents/blob/master/docs

CDH entropy was available 问题解决

泪湿孤枕 提交于 2020-04-16 17:01:00
【推荐阅读】微服务还能火多久?>>> 问题 CDH 集群,出现 Entropy 不良问题,原因是系统熵值低于 CDH 检测的阀值引起的, 所以解决思路是需要调大系统熵值。 image.png 本文不阐述熵值问题,如需理解 entropy (熵值),需自行 google。 解决 查询系统熵值大小 cat /proc/sys/kernel/random/entropy_avail 安装 rng-tools 工具 yum install rng-tools 修改 /etc/sysconfig/rngd 文件,如没有该文件就创建 cat /etc/sysconfig/rngd 键入如下内容 OPTIONS="-r /dev/urandom" 启动服务,并重新查询熵池 service rngd start 点赞 收藏 分享 文章举报 脚丫先生 发布了188 篇原创文章 · 获赞 347 · 访问量 62万+ 他的留言板 关注 来源: oschina 链接: https://my.oschina.net/u/4309507/blog/3236697