自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(154)
  • 资源 (3)
  • 收藏
  • 关注

原创 多标签分类、BCELoss和BCEWithLogitsLoss用法

BCELoss在图片多标签分类时,如果3张图片分3类,会输出一个3*3的矩阵。先用Sigmoid给这些值都搞到0~1之间:假设Target是:BCELoss是− 1 n ∑ ( y n × ln ⁡ x n + ( 1 − y n ) × ln ⁡ ( 1 − x n ) ) -\frac 1 n\sum(y_n \times \ln x_n+(1-y_n) \times \ln(1-x_n))−n1​∑(yn​×lnxn​+(1−yn​)×ln(1−xn​))其中y是target

2020-11-04 14:39:16 13177 8

原创 医学图像分割中常用loss函数

一、交叉熵损失函数-cross entropy二分类交叉熵损失函数binary_crossentropy 其中,N为像素点个数,为输入实例​的真实类别,为预测输入实例属于类别 1 的概率. 对所有样本的对数损失表示对每个样本的对数损失的平均值, 对于完美的分类器, 对数损失为 0。多分类交叉熵损失函数categorical_crossentropy ...

2020-10-29 19:42:30 4212 1

原创 Image Demoireing with Learnable Bandpass Filters

图像去噪是一项多方面的图像恢复任务,涉及纹理和颜色恢复。在本文中,我们提出了一种新颖的多尺度带通卷积神经网络(MBCNN)来解决这个问题。对于纹理恢复,我们提出了一种可学习带通滤波器(LBF)来学习摩尔纹理去除之前的频率。对于颜色恢复,我们提出了一种两步色调映射策略,首先应用全局色调映射来校正全局颜色偏移,然后对每个像素的颜色进行局部微调。

2024-03-08 17:26:55 848

原创 High-Resolution Image Synthesis with Latent Diffusion Models

为了在有限的计算资源上进行 DM 训练,同时保持其质量和灵活性,我们将它们应用在强大的预训练自动编码器的潜在空间中。与之前的工作相比,在这种表示上训练扩散模型首次允许在复杂性降低和细节保留之间达到接近最佳的点,从而极大地提高了视觉保真度。通过将交叉注意力层引入模型架构中,我们将扩散模型转变为强大而灵活的生成器,用于一般调节输入(例如文本或边界框),并且以卷积方式使高分辨率合成成为可能。

2024-03-08 17:16:00 978

原创 Tensorflow 计算模型的FLOPs

最近在研究模型的计算量,发现Pytorch有库可以直接计算模型的计算量,所以需要一个一个Keras和Tensorflow可以用的,直接把Model接入到函数中,print一下就可以计算出FLOPs FLOPS:注意全大写,是floating point operations per second的缩写,意指每秒浮点运算次数,理解为计算速度。是一个衡量硬件性能的指标。 FLOPs:注意s小写,是floating point operations的缩写(s表复数),意指浮点运算...

2022-03-09 15:28:50 4465

原创 Python中列表(List)、元组(Tuple)、字典(Dict)和集合(Set)的异同

列表(List): []有序可以修改,可以重复 存取按下标元组(Tuple): () 有序 不能修改,可以重复存取按下标字典(Dict): {} key-value,无序 key不可修改且不能重复,value可以修改且可以重复 存取按照key 查找速度快,空间占用...

2021-06-24 13:54:22 834

原创 Mybatis动态SQL之<where>标签

为了简化where 1=1的条件拼装,我们可以采用<where>标签来简化开发。持久层Dao映射配置<!-- 根据用户信息查询 --> <select id="findByUser" resultType="user" parameterType="user"> <include refid="defaultSql"></include> <where> <

2021-04-19 08:54:39 433

原创 Mybatis动态SQL之<if>标签

我们根据实体类的不同取值,使用不同的SQL语句来进行查询。比如在id如果不为空时可以根据id查询,如果username不同空时还要加入用户名作为条件。这种情况在我们的多条件组合查询中经常会碰到。1.持久层Dao接口/** * 根据用户信息,查询用户列表 * @param user * @return */ List<User> findByUser(User user);2. 持久层Dao映射配置<select id="findByUser" resu

2021-04-19 08:40:10 303

原创 Tensorflow 2.0 GPU的使用与分配

一、获得当前主机上特定运算设备的列表gpus = tf.config.experimental.list_physical_devices(device_type='GPU')cpus = tf.config.experimental.list_physical_devices(device_type='CPU')print(gpus, cpus)二、设置当前程序可见的设备范围默认情况下 TensorFlow 会使用其所能够使用的所有 GPU。tf.config.experimenta

2021-04-16 20:04:38 843

原创 Mybatis中的事务

设置后,就不要提交事务public List<User> findAll() { //1.根据factory获取SqlSession对象 SqlSession session=factory.openSession(); //2.调用SqlSession中的方法,实现查询列表 List<User> users=session.selectList("com.nbu.dao.IUserDao.findAll");..

2021-04-16 10:08:43 106

原创 Mybatis中连接池详解

连接池: 我们在实际开发中都会使用连接池。 因为它可以减少我们获取连接所消耗的时间。三种mybatis连接池介绍POOLED:UNPOOLED:

2021-04-16 09:50:21 721

原创 Mybatis中xml配置

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!-- mybatis的主配置文件 --><configuration> <!--配置propert.

2021-04-15 21:04:05 122

原创 Python中sys.stdout、sys.stdin的用法

1. sys.stdout与print:在python中调用print时,事实上调用了sys.stdout.write(obj+'\n')print 将需要的内容打印到控制台,然后追加一个换行符'\n'以下两行代码等价:sys.stdout.write('hello' + '\n')print('hello')2. sys.stdin与inputsys.stdin.readline( )会将标准输入全部获取,包括末尾的'\n',因此用len计算长度时是把换行符'\n'算进去了的,

2021-04-02 12:30:29 3948 3

原创 构造下三角矩阵

import sysdef maxAndMin(nums): length = len(nums) dp = [[-1 for i in range(j+1)] for j in range(length)] for i in range(length): for j in range(i+1): if i != j: dp[i][j] = abs(nums[i] - nums[j]) minV.

2021-04-02 08:45:38 750

原创 牛客-算法基础-构造回文

方法:先逆序,再找与原来序列的最大公共序列长度,递归实现import sysdef maxLength(s1, s2): length = len(s1) dp = [[0 for i in range(length + 1)] for j in range(length + 1)] for i in range(length): for j in range(length): if s2[i] == s1[j]: ..

2021-04-01 21:13:09 115

原创 牛客-算法基础-字符移位

方法一:利用两次循环遍历,先输出小写字母,后输出大写字母import sysdef sorting(s): length = len(s) for i in range(length): if s[i] >= 'a' and s[i] <= 'z': print(s[i], end='') for i in range(length): if s[i] >= 'A' and s[i] &lt..

2021-04-01 20:54:44 138

原创 OJ在线编程常见输入输出练习场-Python实现

import sysfor line in sys.stdin: num = line.split() print(int(num[0]) + int(num[1]))lines = int(input())for n in range(1, lines+1): list = [] list.extend([int(i) for i in input().split()]) c = list[0] + list[1] print(i...

2021-04-01 14:01:04 529

原创 显卡,显卡驱动,nvcc, cuda driver,cudatoolkit,cudnn详解

在使用深度学习框架的过程中一定会经常碰到这些东西,虽然anaconda有时会帮助我们自动地解决这些设置,但是有些特殊的库却还是需要我们手动配置环境。GPU型号含义参考【GPU编程系列之一】从深度学习选择什么样的gpu来谈谈gpu的硬件架构显卡: 简单理解这个就是我们前面说的GPU,尤其指NVIDIA公司生产的GPU系列,因为后面介绍的cuda,cudnn都是NVIDIA公司针对自身的GPU独家设计的。 显卡驱动:很明显就是字面意思,通常指NVIDIA Driver,其实它就是一个驱动软件,而前

2021-03-08 11:54:35 1218

原创 ndarray进行判断

import numpy as np# 返回ndarray:[[ -1 25 8 7], [ 16 -5 -4 9], [ 12 -30 0 -4]]img_np = np.array([[-1, 25, 8, 7], [16, -5, -4, 9], [12, -30, 0, -4]])# 返回list:[[-1, 25, 8, 7], [16, -5, -4, 9], [12, -30, 0, -4]]img_list = [[-1, 25, 8, 7], [16, .

2021-03-04 15:43:49 566 1

原创 Pytorch - K折交叉验证过程说明及实现

K折交叉验证的过程如下:以200条数据,十折交叉验证为例子,十折也就是将数据分成10组,进行10组训练,每组用于测试的数据为:数据总条数/组数,即每组20条用于valid,180条用于train,每次valid的都是不同的。(1)将200条数据,分成按照 数据总条数/组数(折数),进行切分。然后取出第i份作为第i次的valid data,剩下的作为train data(2)将每组中的train数据利用DataLoader和Dataset,进行封装。(3)将train数据用于训练,epoch可

2021-03-03 13:12:32 2788

原创 Python移动文件夹

这里可以移动文件或者文件夹:# 深度学习过程中,需要制作训练集和验证集、测试集。import os, random, shutildef moveFile(fileDir): pathDir = os.listdir(fileDir) # 取文件的原始路径 filenumber=len(pathDir) rate=0.1 # 自定义抽取文件的比例,比方说100个文件抽10个,那就是0.1 picknumber=int(.

2021-01-20 10:22:46 410 2

原创 Linux 硬盘管理----清空.Trash-1000—硬盘空间不够

Linux 硬盘管理----清空.Trash-1000—硬盘空间不够原因:Linux通过图形化界面delete的文件在./Trash-1000下面,需要手动删除当发现我11T的硬盘空间可能不够的时候,一边删数据,一边让服务器跑,可是最后发现空间还是不够。重启后,df –h 发现我那些通过图形界面单机右键删掉的文件的空间并没有得到释放,到回收站去找,也没有发现文件,那么问题来了,那些文件都跑哪去了通过自带的磁盘使用分析器,我们看到在./.Trash-1000文件大小居然有7.8T,那么问题来了,这

2021-01-19 19:31:01 7382

原创 向日葵远程控制Ubuntu无法显示图形化界面

问题描述操作系统: Ubuntu 20.04.1 TLS(OS Type:64-bit,GNOME Version:3.36.3,Windowsing System:X11),安装的向日葵版本是“向日葵 X for Linux”(Version:10.1.1.38139)。遇到的问题是:使用该电脑的向日葵远程控制其它电脑的向日葵,完全正常; 使用其它电脑的向日葵远程控制该电脑的向日葵,该电脑右下角弹窗提示已被远控,但其它电脑上的向日葵显示黑屏。解决方案给向日葵提交工单,了解到向日葵需要使用

2021-01-18 20:42:07 4002

原创 ConvTranspose2d用法

1.逆卷积ConvTranspose2d(fractionally-strided convolutions)先说卷积:对于一个图片A,设定它的高度和宽度分别为Height,Width,通道数为Channels。 然后我们用卷积核(kernel * kernel)去做卷积,(这里设定卷积核为正方形,实际长方形也可以类推,相信我,不会很难),步长为stride(同样的,不区分高宽方向),做padding。卷积后得到B。重复上面的话就是利用一个卷积操作将A变成B。那么,在这个前提下,逆卷积就是将B变

2021-01-14 13:30:22 2913 1

原创 查询Linux中CPU的核数

以一台Linux服务器为例。这台Linux包括两颗Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHzCPU, 单颗CPU包括 10 个 cpu core, 使用超线程包含20个逻辑cpu core, 具体的官方介绍:E5-2630 V4。下面让我们通过Linux的命令来查找对应的参数,看看是否符合官方的介绍, 主要是查看/proc/cpuinfo的信息获得。查看 CPU 的型号cat /proc/cpuinfo | grep 'model name' |..

2021-01-13 20:43:03 394

原创 Python中logging基本用法

logging的初级用法:# -*- coding:utf-8 -*-import logging# 默认的日志输出级别为warning# 使用baseConfig()来指定日志输出级别print("this is print log")import logging# 输出格式和添加一些公共信息logging.basicConfig(format="%(asctime)s|%(levelname)s|%(filename)s:%(lineno)s|%(message)s",

2021-01-08 19:53:53 763

原创 自定义交叉熵损失计算出现nan值问题解决

交叉熵损失函数本身的公式比较简单,但是在实际定义的时候需要注意exp(x)函数的溢出问题,exp(x)函数在numpy或者说tensorflow的底层实现上,当x过大的时候会产生溢出,过小的时候直接范围近似值0,所以我们在定义交叉熵损失函数的时候需要注意这一点;1. 当模型返回的值是sigmoid函数映射过后的值,这里假设输入交叉熵的为x,那么我们计算的就是 -(y*np.log(x)+(1-y)*np.log(1-x))# y为标签值,x为预测值,标准的二分类交叉熵损失代码但是log(0..

2021-01-07 09:45:25 6628 2

原创 tf.cond()用法

在TensorFlow中,tf.cond()类似于if...else...,用来控制数据流向,但是仅仅类似而已,其中差别还是挺大的。format:tf.cond(pred, fn1, fn2, name=None)Return :either fn1() or fn2() based on the boolean predicate `pred`. # (注意这里,也就是说'fnq'和‘fn2’是两个函数)arguments:`fn1` and `fn2` both return lis

2021-01-07 09:24:52 575

原创 tf.clip_by_value用法

tf.clip_by_value(A, min, max):输入一个张量A,把A中的每一个元素的值都压缩在min和max之间。小于min的让它等于min,大于max的元素的值等于max。例如:import tensorflow as tf;import numpy as np; A = np.array([[1,1,2,4], [3,4,8,5]]) with tf.Session() as sess: print sess.run(tf.clip_by_value(A, 2, 5))

2021-01-07 09:19:44 251

原创 PyCharm调试时一直显示collecting data

找到并打开:File -> Setting,然后勾选Gevent compatible

2021-01-06 21:36:46 863

原创 Python中logging模块格式化字符串的用法

import logginglogging.basicConfig(level=logging.DEBUG)name = 'Python'age = 30logging.debug('姓名:%s,年龄:%d', name, age)logging.debug('姓名:%s,年龄:%d' % (name, age))logging.debug('姓名:{},年龄:{}'.format(name, age))logging.debug(f'姓名:{name},年龄:{age}')...

2021-01-05 14:25:34 4074

原创 Linux杀死进程

如果Linux程序运行过程中出现卡死现象,则需要杀死该进程:# 如果pycharm出现卡死现象,则在Linux终端中进行如下操作# 查询程序进程号ps -ef | grep pycharmkill -9 程序进程号

2020-12-29 21:56:03 554

原创 Python中eval函数

eval函数eval()函数十分强大 ——将字符串当成有效的表达式来求值 并返回计算结果# 基本的数学计算In [1]: eval("1 + 1")Out[1]: 2# 字符串重复In [2]: eval("'*' * 10")Out[2]: '**********'# 将字符串转换成列表In [3]: type(eval("[1, 2, 3, 4, 5]"))Out[3]: list# 将字符串转换成字典In [4]: type(eval("{'name'...

2020-12-29 15:30:51 590

原创 Python中文件操作

文件01. 文件的概念1.1 文件的概念和作用计算机的文件,就是存储在某种长期储存设备上的一段数据 长期存储设备包括:硬盘、U 盘、移动硬盘、光盘...文件的作用将数据长期保存下来,在需要的时候使用在计算机中,文件是以二进制的方式保存在磁盘上的1.2 文件的存储方式文本文件和二进制文件 文本文件 可以使用文本编辑软件查看 本质上还是二进制文件 例如:python 的源程序 二进制文件 保存的内容 不是给人直接阅读的,而是提供给...

2020-12-29 15:18:59 279

原创 Python中的模块和包

模块和包01. 模块1.1 模块的概念模块是 Python 程序架构的一个核心概念每一个以扩展名py结尾的Python源代码文件都是一个模块 模块名同样也是一个标识符,需要符合标识符的命名规则 在模块中定义的全局变量、函数、类都是提供给外界直接使用的工具 模块就好比是工具包,要想使用这个工具包中的工具,就需要先导入这个模块1.2 模块的两种导入方式1)import 导入import 模块名1, 模块名2 提示:在导入模块时,每个导入应...

2020-12-29 10:49:47 98 1

原创 Python中获取程序运行时间

方法一:datetime.datetime.now()获取当前时间import datetimeimport timestart_time = datetime.datetime.now()print(start_time)time.sleep(20)# long running# do something otherend_time = datetime.datetime.now()print(end_time)print(end_time - start_time)print

2020-12-28 20:50:44 1541 1

原创 常用Letex公式语法

以下面的公式为例:其Letex源代码为:J^{T} \cdot v = \left(\begin{array}{ccc} \frac{\partial y_{1}}{\partial x_{1}} & \cdots & \frac{\partial y_{m}}{\partial x_{1}}\\ \vdots & \ddots & \vdots\\ \frac{\partial y_{1}}{\partial x_{n}} & \cdots &

2020-12-25 10:36:50 864

原创 Python指数运算

Python中指数运算有两种实现方式:1.针对指数为即开根号:Python中sqrt()函数返回x的平方根(x > 0)。语法:import mathmath.sqrt(x)2.针对其他次方利用pow(a, b)函数。需要开a的r次方则pow(a, r)。例如:pow(a, 1.0/2),等价于a开2次根号pow(a, 2),等于a的2次方...

2020-12-25 10:12:17 26432

原创 Pytorch中net.zero_grad() vs optim.zero_grad()

net.zero_grad()将其所有参数(包括子模块的参数)的梯度设置为零。 如果调用optim.zero_grad()将会执行相同的操作,但是是对于已指定要优化的所有参数。 如果您在优化器中仅使用net.parameters(),例如 optim = Adam(net.parameters(), lr=1e-3),则两者相等,因为它们包含的参数完全相同。你可能有其他参数正在由同一优化器进行优化,但不是网络的一部分,在这种情况下,您将不得不手动将其梯度设置为零并因此跟踪所有参数,或者可以简单地调用op

2020-12-23 10:04:23 2266

原创 Python读取文件名中的数字

可以使用正则表达式:regex = re.compile(r'\d+')然后获取匹配的字符串:regex.findall(filename)这将返回包含数字的字符串列表。如果您实际需要整数,可以使用int:[int(x) for x in regex.findall(filename)]如果每个文件名中只有一个数字,则可以使用regex.search(filename).group(0)(如果您确定它将产生匹配)。如果没有找到匹配项,上面的行将生成一个attributeE

2020-12-22 22:24:35 2997 1

T检验入门.docx

T检验,亦称student t检验(Student's t test),主要用于样本含量较小(例如n<30),总体标准差σ未知的正态分布资料。   T检验是用于小样本(样本容量小于30)的两个平均值差异程度的检验方法。它是用T分布理论来推断差异发生的概率,从而判定两个平均数的差异是否显著。   T检验是戈斯特为了观测酿酒质量而发明的。戈斯特在位于都柏林的健力士酿酒厂担任统计学家。戈斯特于1908年在Biometrika上公布T检验,但因其老板认为其为商业机密而被迫使用笔名(学生)。

2020-09-02

How_to_connect_iDRAC.pdf

iDRAC卡即DELL远程控制卡.相当于是附加在服务器上的一台小计算机,通过与服务器主板上的管理芯片BMC进行通信,监控与管理服务器的硬件状态信息。 它拥有自己的系统和IP地址,与服务器上的操作系统无关,是管理员进行远程访问和管理的利器。

2020-08-11

conda-cheatsheet.pdf

常用的conda操作命令,方便查询与学习 Conda是一个开源跨平台语言无关的包管理与环境管理系统。由“连续统分析”(Continuum Analytics)基于BSD许可证发布。 Conda允许用户方便地安装不同版本的二进制软件包与该计算平台需要的所有库。还允许用户在不同版本的包之间切换、从一个软件仓库下载包并安装。 Conda是用Python语言开发,但能管理其他编程语言的项目(如R语言),包括多语言项目。Conda可安装Python语言的包,类似于其他基于Python的跨平台包管理器(如wheel或pip)。 一些基于Conda的工具软件: Bioconda,用于计算生物学。 Anaconda Miniconda Anaconda Repository.

2020-03-14

空空如也

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

TA关注的人

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