自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (2)
  • 收藏
  • 关注

原创 Linux多进程下载之aria2c

可能是因为服务器使用了一个未知的证书颁发机构(CA),或者证书本身是无效的。如果你信任这个服务器,你可以使用。请注意,这会使你的连接变得不安全,因为它允许中间人攻击。只有当你完全信任你正在下载的服务器时,才应该使用这个选项。在这个命令中,'-x4’表示你想要使用4个连接来下载文件。你可以根据你的需求调整这个数字。

2024-04-07 13:00:44 195

原创 全角符号编码

汉字和平假名的编码值中间的空缺部分为12246-12352,其中12289-12319是常见的全角符号。python中,ord(c)可以获取字符的编码值,chr(idx)可以获取指定编码对应的字符。半角符号和全角符号的编码值对应关系是固定的,全角编码 = 半角编码 + 65248。空格比较特殊,全角为 12288(0x3000),半角为 32(0x20)。

2024-01-25 19:56:47 119

原创 C++生成乱码

【代码】C++生成乱码。

2024-01-25 19:55:22 129

原创 code server安装使用教程

1.1. 下载code-server安装包类似这种文件:code-server-3.10.2-linux-amd64.tar.gz解压:tar -xvf code-server-3.10.2-linux-amd64.tar.gz1.2 (可选)建立软连接1.3 建立运行脚本写入如下内容,PASSWORD自己设置,最后行8445是端口号,需要网络设置。

2024-01-25 19:54:37 533

原创 Python多进程使用

如果要在多个进程中更改同一个全局变量,需要使用Manager()。

2024-01-25 19:35:22 102

原创 git配置

【代码】git配置。

2024-01-25 19:27:25 70

原创 VSCode配置偏好

【代码】VSCode配置偏好。

2024-01-25 19:22:36 115

原创 linux docker使用方法

【代码】linux docker使用方法。

2024-01-25 19:18:35 122

原创 Python框排序

按照上下左右顺序对一系列框进行排序。

2024-01-17 14:27:39 359

原创 Python判断一个点或者凸多边形是否在一个凸四边形内部

稍微做了一些改动。

2024-01-17 14:19:55 374

原创 PyTorch训练模型出现“Address already in use”问题解决

通过环境变量指定端口。

2024-01-16 11:50:46 492 1

原创 PyTorch深度学习代码获取内存、显存使用情况

整理自别的博客,侵删。

2023-09-20 20:03:47 287

原创 Python图像旋转与坐标映射

【代码】Python将旋转后图像上的坐标映射到原图坐标。

2023-09-05 13:56:25 243

原创 python使用cv2给图像画框和加字

python使用cv2画框和加文本

2023-07-05 20:45:32 498

原创 请慎用torch.nn.Upsample

计算机视觉算法中的上采用函数,一般都是采用nearest这种简单模式进行,PyTorch也是有相应的模块`nn.Upsample`来支持。但这个模块实在是不太与时俱进,慎用!1. 不支持bf162.导致模型可复现性变差

2023-05-18 11:16:44 1093 1

原创 pre-commit安装与简单使用

pre-commit安装与使用

2023-01-03 17:41:31 1118

原创 中文文本的常见编码方式

中文文本文件的常见编码方式及python读取方法

2022-11-19 21:09:28 663

原创 CTC方法推理阶段对未对齐字符串的快速解码代码

import res = '-h--ee---l--ll--o--'p = re.compile(r"([0-9a-zA-Z])(\1+)")out_s = re.sub('-', '', p.sub(r'\1', s)) # 'hello'

2020-11-18 19:53:40 204

原创 Git常用命令

Git global setupgit config --global user.name "用户名"git config --global user.email "邮箱"git config --global credential.helper store # 设置不用每次push/pull都输入账号密码Create a new repositorygit clone http://gitlab.xxx.com/xxx/abc.gitcd abctouch R...

2020-06-30 20:54:02 111

原创 【论文笔记】自监督场景去遮挡 CVPR2020 oral

该任务就是将物体被遮挡的部分补全。这篇文章的方法贡献主要是2点。1. 考虑使用自监督去做,核心思想是对目标物体已有的map再切一刀,以此作为训练目标。2. 另一个重要的一点是引入正则机制。有遮挡,自然要补全;没有遮挡,就应该不要增大本来的mask。此外,文章做了大量的应用案例,效果很好。具体参考作者的知乎回答。...

2020-04-18 00:14:56 794

原创 Grad-CAM 和 CAM

CAM,即class activation map,类别响应图。grad的意思是梯度。二者都是为了可视化:特征图对于某一类别的响应情况(特征图每一个位置对于指定类别的响应值)。CAM只是Grad-CAM的一种特例:在最后一个特征图之后使用全局平均池化和一个线性层做分类。这种特定场景下,计算最后一层的特征图上的类别相应图。这个在Grad-CAM原文中有严格的证明。虽然这说明Grad-CA...

2020-01-13 23:17:03 2563

原创 python json读写常规操作

import json# Writewith open(file_name, 'w', encoding='utf-8') as f: json.dump(var_to_be_saved, f, ensure_ascii=False) # 最后一个参数主要针对汉字# Readwith open(file_name, 'r', encoding='utf-8') as f:...

2019-11-29 15:08:05 229

原创 pytorch将tensor指定维度的指定数值都移到后面

例如,将矩阵每一行的0都甩到最后面。代码的第一行和最后一行表示输入和想要的输出。x = torch.tensor([[2,3,0,2,1,0,6,],[0,0,3,9,0,1,0]])# [[2, 3, 0, 2, 1, 0, 6],# [0, 0, 3, 9, 0, 1, 0]]x_01 = (x == 0)# [[0, 0, 1, 0, 0, 1, 0],# [1, 1, ...

2019-08-08 17:21:08 2169

转载 itertools

python迭代器工具itertools,用起来很方便!官网说的很详细了:https://docs.python.org/3/library/itertools.html在序列建模准备数据的时候,为了在一个batch里面可以包含不同长度的序列,一般需要对较短序列加padding。常用到itertools.zip_longest。torch.tensor(list(itertool...

2019-07-22 15:18:35 105

原创 使用torch.gather选择tensor某一维度指定的元素

使用torch.gather选择tensor某一维度指定的元素问题简化实现torch.gather用法TIPS问题简化PyTorch中,对于某个二维tensor,要求取出其每一行的指定元素,组成新的tensor。例如,对于A = torch.tensor([[1,2,3],[4,5,6],[7,8,9]])# tensor([[1, 2, 3], [4, 5, 6],...

2019-07-18 16:24:09 13231

原创 pytorch MSELoss计算平均的方法

给定损失函数的输入y,pred,shape均为bxc。若设定loss_fn = torch.nn.MSELoss(reduction='mean'),最终的输出值其实是(y - pred)每个元素数字的平方之和除以(bxc),也就是在batch和特征维度上都取了平均。如果只想在batch上做平均,可以这样写:loss_fn = torch.nn.MSELoss(reduction='...

2019-07-16 13:46:40 7562

原创 BPE提取subword

有一篇机器翻译的文章Neural Machine Translation of Rare Words with Subword Units提到了这个英文分词方法,这里简要介绍BPE。BPE全称Byte Pair Encoding,通过不断迭代分词,每次按照最大出现频率将某一种n-gram子串组合在一起。随着迭代的推进,就像滚雪球一样,将subword 的组成字符们聚在一起。以单词 lovi...

2019-07-14 23:10:50 653

原创 数学证明交叉熵函数的原理

关于交叉熵函数是什么,这里不解释。【本文讨论的问题】:若已知n个已知的真实值为,且现在有相应的n个未知的预测值,且X, Y为定值。问这些未知的预测变量满足什么条件时,可以使得 达到最大?【解答】:利用拉格朗日乘数法求解。构造函数L如下:对所有自变量求偏导,得分别令偏导数等于0,有这就说明,当预测值为真实值得某...

2019-07-07 23:32:25 572

原创 维特比算法

维特比算法是一种动态规划的思想,每一步中,针对每个节点只保留最优的路径。例如某一步有3个节点,到这一步后就只有对应的3条路径。相比于穷举法,复杂度大大降低。操作很简单。具体可以看这篇回答里面的动图。...

2019-07-04 23:10:14 135

原创 python分割字符串为列表

利用了re模块。例子:只去除句子中的空格;保留标点符号,并且与单词分开。In [44]: s = re.split('([,.])', "apple a day, keep dr away.") # 注意第一项参数有()In [45]: sOut[45]: ['apple a day', ',', ' keep dr away', '.', '']In [46]: x = [...

2019-06-23 23:44:59 7149

原创 合成文字图片数据集的注意事项

1. 保证测试集出现的字符在训练集都出现;2. 建议使用lmdb存储,除了图像和label信息,还要记录一些关键数目信息;3. 对汉字要做繁简体字检查,以便正确使用字体或者其他;4. 避免出现gt信息缺失的情况。...

2019-05-31 14:06:36 706 1

原创 中文图片的文本行识别心得

中文相比于英文,有个显著特点就是字符很多。如果不考虑偏旁部首构成,文字的分类数会有几千几万。这种情况下如果从头训练(随机初始化),单个字符识别的训练过程尚且不容易(参考博客,还是可以训练好的),基于attention的encoder-decoder方法就更困难了,因为它还包含一个计算attention的定位过程。我曾尝试从头训练一个基于attention的encoder-decoder方法...

2019-05-13 23:52:51 1008

原创 pip install 使用国内清华镜像源

本文分别从windows和linux两个方面给出方法。1. Windows在'C:\Users\<usename>' 目录下新建目录 'pip',再进入此 'pip' 目录,添加 'pip.ini' 文件,文件内容为:[global]index-url = https://pypi.tuna.tsinghua.edu.cn/simple重新打开cmd。Done!...

2019-05-07 10:56:01 5827 1

转载 Python中文分词工具包

这里介绍两个中文分词工具包:pullword和pkuseg。1. pullword它采用在线服务器运作传输输入和输出,python接口在这里,针对python3,还需要做一些简单的细节更改。这还有一个简单的网页版demo,供在线测试。如果在for 循环中大量反复调用这个包,由于跟在线服务器传输频繁,会有一些速度上的问题,甚至连接短暂被拒绝。这时候使用下面的本地分词工具就好了。2...

2019-04-28 17:24:25 585

原创 PyTorch BiLSTM参数及packed形式的输出的组成

先回忆一下LSTM,直接上pytorch官网的公式截图:它可以处理变长序列,每个rnn cell参数是一样的,共享,就是上面列出的那些W..。这里需要说明的是,PyTorch里面将W_{i*}统一放到了'weight_ih_l0'变量,将W_{h*}统一放到了'weight_hh_l0'变量。BiLSTM包含一个从左到右和一个从右到左的并列的的序列计算。需要注意的是,两个方向使用...

2019-04-22 23:40:50 4365 5

原创 针对大类别分类实验的一些记录

最近在对10750个汉字做分类,使用resnet50为基本框架,分类部分多加了一个线性层,每个汉字作为1类。损失函数是交叉熵函数。类别太多的话,网络一开始不易学习到。使用sgd的话好像根本没法学习。我使用Adadelta (lr=0.01) 从头开始训练,虽然结果可以达到92%,但是查看网络输出的得分发现值相当异常,全部都是小于-30,000。这也导致了最后的分类层的梯度值相当大,最终导致...

2019-04-16 21:33:06 179

转载 中文分词方法

原文和相关开源代码仅根据给定的一段中文文字,怎么提取出其中的汉语词汇呢?有3个指标可以用来决定:分词的出现频率、凝固程度和自由程度。其中后两个尤为重要。凝固程度顾名思义,就是这个分词内部字符是紧凑的。比如“我爱家乡”,“明天考试”这类就明显可以再继续分词,凝固程度很低;而“孙悟空”,“冰箱”这类的凝固成都就很高。具体地,为了算出一个文本片段的凝合程度,我们需要枚举它的凝合方式——这...

2019-04-03 22:39:14 143

原创 python lmdb读写

直接上代码。import lmdbdef create(): env = lmdb.open('/home/dataset/ReCTS/tmp_lmdb', map_size=1099511627776) txn = env.begin(write=True) txn.put('a'.encode(), 'q'.encode()) # 写入 txn....

2019-03-23 19:15:34 1303 2

转载 用于序列建模的CTC方法

Better to see inhttps://distill.pub/2017/ctc/.You can also see the following extraction from the original.IntroductionTraining3 methods: Greedy search, beam search, prefix...

2019-03-04 22:30:51 258

转载 ThinPlatesSpline (TPS) 理解

https://profs.etsmtl.ca/hlombaert/thinplates/

2019-02-21 22:19:44 325

Scripts for visdom

使用pytorch为了做实时可视化,在安装visdom之后 (pip install visdom), 第一次使用python -m visdom.server时,会要求下载一些Scripts。 由于网络原因,有时候很难成功下载。这里提供已经下载好了的文件,直接将static文件夹放在 root/anaconda3/lib/python3.6/site-packages/visdom/ 目录下即可。

2018-12-02

模式识别和机器学习(英文版)

书名:Pattern Recognition and Machine Learning。Springer出版,Michael Jordan等人编写,2006 Springer Science+Business Media, LLC. 书本文字可复制粘贴,不是扫描版。包含常见的一些机器学习方法,如神经网络,贝叶斯模型等等等等

2018-10-30

空空如也

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

TA关注的人

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