- 博客(121)
- 收藏
- 关注
转载 数据结构与算法(二) --- 全排列、全组合
1. \(全排列C_{m}^{n}\)的实现【要求】输入m,n, 输出所有可能的索引组合def cmn(m, n): if n ==1: return [[i] for i in range(1, m+1)] elif m==n: return [ list(range(1, m+1)) ] else: te...
2019-09-29 17:08:00
339
转载 mini-batch的TripleLoss实现(Pytorch)
以前都是直接调用别人的, 但是详细实现没有了解过, 今天自己实现一把。简单来说, 找出batch中每个anchor对应的最大正样本postive和最小负样本nagetive,然后距离max(a-p)和min(a-n)做差即可。class TripleLoss(nn.Module): def __init__(self, margin=0.3): super(T...
2019-09-24 17:01:00
1465
转载 jupyter-lab识别anaconda虚拟环境
问题描述在Jupyter Notebook/JupyterLab中想要识别虚拟环境, 需要在虚拟环境中安装nb_conda包, 但是最近几个月来总出现安装错误(虽然conda list显示已安装), 如下, 且jupyter-lab中无法识别出虚拟环境:解决版本:先conda install nb_conda ipykernel;激活环境后运行下面命令, 其中torch...
2019-09-20 10:40:00
1373
转载 算法与数据结构(一) --- 数组
import osimport torchimport numpy as npimport pandas as pdimport math import randomfrom collections import OrderedDict, dequefrom copy import deepcopy案例1: 二分查找def half_find(li, aim, s...
2019-09-11 14:20:00
153
转载 vim 中批量注释和批量条件删除(转)
今天特地查了下如何快速修改注释,相比视图模式,使用命令更加方便:1. 批量注释在 10 - 20 行添加 // 注释:10,20s#^#//#g在 10 - 20 行删除 // 注释:10,20s#^//##g在 10 - 20 行添加 # 注释:10,20s/^/#/g在 10 - 20 行删除 # 注释:10,20s/#//g2. 批量删除含有特定...
2019-08-15 10:41:00
563
转载 caffe用到的命令和零碎知识
这些东西总是忘记来回查,特此记录一下:1. caffe标注txt文件的读取与保存(使用pandas.DataFrame)读取:train_data = pd.read_csv('Train.txt', sep=' ',encoding='gbk',index_col=0, header=None)保存test1.to_csv('test1.txt', sep=' ',enco...
2019-08-06 16:34:00
133
转载 Manjaro — ssh出现22端口拒绝访问问题(port 22: Connection refused)
问题描述Manjaro使用差不多2年了,一直拖着没有解决ssh端口拒绝访问的问题。 所以在服务器运行“scp Server Manjaro_local”服务器主动发送都报错,不得已改成在本地打开命令行来向服务器索取。 问题如下:解决办法:之前以为是22端口没有开放, 但是开放后仍然不起作用。 今天终于找到了原因, 是ssh服务没有启动.立即启动ssh服务:systemctl ...
2019-07-25 17:22:00
3304
转载 Linux 解压z01 .z02 .z03... zip分卷
拿到的数据是一个zip和多个z01,z02..., 于是特地查了一下linux解压zip分卷方法, 我的数据:。解压方法:cat * > single.zipunzip single.zip其中第一步*是需要的解压的文件夹的正则表达式,比如可以写成cat *.zip *.z0* > single.zip, single.zips是自定义的合并文件;第二步就是...
2019-07-18 10:11:00
11169
转载 Manjaro_Windows双系统安装
1. 准备工作windows --- 官网下载镜像, 软碟通刻录manjaro --- 社区下载镜像,USB Writer刻录2. 安装步骤:2.1 Windows安装省略, 使用UEFI模式安装备注,很好用的Office Activation脚本,save and run this .bat as Admin:@echo off(cd /d "%~dp0")&...
2019-07-08 18:45:00
502
转载 Linux 的chsh命令
1. 查看shellchsh -l2. 修改shell我的系统是Manjaro Linux, 默认SHELL是/bin/bash, 我想修改为新安装的zsh:chsh -s ${上面查到的shell路径}(我之前已经改成了zsh, 所有显示没有更改)3. 用户环境变量位置修改完发现anaconda识别不出来, 在~/.bashrc下添加环境变量, 然后source ~...
2019-06-28 09:52:00
325
转载 mat2json, python读取mat成字典, 保存json
python程序, 实现matlab的.mat格式转化为dict / json .第一个参数mat_path代表需要转化的mat路径;第二个参数, 如果需要把字典序列化成json, 添加这一参数, 代表json存放位置;返回值: 转化好的字典import osimport jsonimport scipy.io as spioimport pandas as pdd...
2019-06-24 15:28:00
1306
转载 最便捷的caffe编译方法 ---- cmake+anaconda虚拟环境
caffe编译是一个繁琐个过程, 或多或少会遇到各种各样的问题, 如我caffe编译错误记录记录了遇到过得一部分问题. 原因是因为每个依赖如openblas, protobuf都需要编译特定版本, 每台电脑装的依赖库各不相同, 环境变量也有冲突的情况(如system和anaconda). 于是我一直想找一种简单方便的caffe编译方法, 可以避免上述的问题. 也就有了今天的内容, 使用a...
2019-06-21 13:49:00
1956
转载 复制跳过软链接
1. 问题描述需要把服务器项目拷贝到本地, 其中数据集在服务器是通过软链接存放的. 使用src -r命令, 会导致软链接的数据集也复制到本地, 于是研究了如何跳过软链接的方法. 方法有两个:在服务器压缩项目, 本地解压;使用rsync差异复制命令.本次使用第二种方法.2. 命令介绍Rsync 是一种快速且极其通用的文件复制工具。以其 Delta 传输算法,通过仅发送源...
2019-06-19 14:19:00
460
转载 使用Screen解决ssh连接中断导致的训练中断问题
使用ssh连接到服务器时,如果连接非正常中断(例如使用Xshell长时间未操作自动断开连接 ),重新连接的时候会重新创建一个session,这样如果在进行模型训练时,未训练结束发生非正常中断,则无法恢复到模型训练的session。此时可以通过screen来解决该问题。1. 常用命令命令作用screen -S sessionName# 创建一个sessions...
2019-06-18 15:42:00
934
转载 Caffe训练时Loss=87.3365问题
1. 问题分析如图,在开始训练后, loss升高到87.3365后保持不变。这个问题是因为梯度爆炸导致的。loss -= log(std::max(prob_data[i * dim + label_value * inner_num_ + j], Dtype(FLT_MIN))); 在softmax_loss_layer.cpp的原...
2019-06-17 09:06:00
187
转载 pycaffe编译后的配置问题(ModuleNotFoundError: No module named 'caffe')
今天需要使用caffe的python端口,但是发现虚拟环境识别不出之前编译好的caffe了. 最后发现是环境变量的问题.参考链接: 解决python在import caffe时出现的no module name _caffe问题解决方法:虚拟环境识别出编译好的caffe, 有三种方式:把编译好的build路径下python添加到环境变量;把译好的build路径下pytho...
2019-06-10 16:19:00
2112
转载 jupyter-notebook 中matplotlib不支持中文的问题(Linux)
前言:问题就不截图了, jupyter-notebook中,使用plt画出的图像,中文都是小方格(乱码)解决方法如下1. Linux安装字体把Windows的字体C:/Windows/Fonts复制到Linux系统的存放字体路径/usr/share/fonts下, 如图:cd到/usr/share/fonts/Fonts,也就是拷贝来的文件夹, 建立字体索引信息,更新字体缓存...
2019-05-30 17:16:00
654
转载 基础回顾-向列表条件元素的方法
今天有个需求, 多次的批量处理, 并把这每批结果放进列表. 照例用append, 结果发现,每一次都是放进一个列表, 而不是列表中的元素. 此处应该用extend,而不是append. ___基础语法忘记了,复习一下.1. appendappend用于在尾部添加,用新添加的可迭代对象来扩充原对象.2. extendextend用于在尾部添加, 用新添加的可迭代对象的元素来扩充原...
2019-05-29 17:01:00
93
转载 Ubuntu搭建flask服务器, 部署sklearn 机器学习模型
本文参考自:flaskapi说明:系统ubuntu, anaconda虚拟环境, python = 2.71. 项目结构和文件说明.├── data│ └── 数据汇总.csv # 需要预测的数据├── infer.py # 主要文件, 模型加载推理,和flask服务的创建、解析等├── infer.pyc├── model│ └── liner.pkl # 训...
2019-05-21 17:17:00
1242
转载 Jupyter-notebook 显示图片的两种方法
1. PIL.Image使用PIL.Image类的open函数打开图片, 再displaydisplay(Image.open(path))2. Ipython.display.Image直接使用IPython.display类的Image打开图片, 再displaydisplay(Image(path))以下是示例:转载于:https://www.cnblogs....
2019-05-10 12:57:00
9322
转载 Linux多版本opencv指定 & CMake中 find_package()的原理解析
一、 find_package()的原理解析这部分暂时搁置,以后补充试验参考内容:ubuontu16.04安装Opencv库引发的find_package()错误信息处理及其简单使用cmake教程4(find_package使用)CMake如何查找链接库---find_package的使用方法二、 Opencv版本指定1. Cmake -- find_package(O...
2019-05-09 11:45:00
1917
转载 使用C++调用pytorch模型(Linux)
前言模型转换思路通常为:Pytorch -> ONNX -> TensorRTPytorch -> ONNX -> TVMPytorch -> 转换工具 -> caffePytorch -> torchscript(C++版本Torch)我的模型是使用Pytorch1.0训练的,第三种方法应该是还不支持,没有对应层名字, 放弃....
2019-05-07 17:51:00
1087
转载 Arch / Manjaro Linux下 Opencv 编译\ 配置\ 查看
1. 安装下载OpenCV的安装包,OpenCV官网下载地址在这里我下载OpenCV4.0的安装包,下载Sources包并解压, 在解压的文件夹里新建一个文件夹用来编译OpenCV:unzip opencv-4.0.1.zipcd opencv-4.0.1mkdir buildcd build然后在新建的这个文件里运行cmake(OpenCV4默认不生成.pc文件,OPEN...
2019-05-06 14:26:00
708
转载 获取路径下所有特定格式文件列表
情形1: 没有子目录:方法1:os.listdir获取当前路径下特定格式['.jpg', 'png', 'gif']文件def get_img_list(path): is_image_file = lambda x : any(x.endswith(extension) for extension i...
2019-04-25 13:24:00
331
转载 Pycharm相对路径
问题:今天有个程序,明显路径是存在的,但是os.path.exists的返回结果是False. 仔细想了想, 是相对路径的问题.情况描述:我的路径是:dir_path = 'data/market1501/Market-1501-v15.09.15/bounding_box_train'项目结构是:当前程序路径pwd在market1501.py, 想要访问aim路径mar...
2019-04-25 13:00:00
3300
转载 Python 判断文件后缀
方法1, str的endswith方法:ims_path='data/market1501/Market-1501-v15.09.15/bounding_box_test/12312.jpg'ims_path.endswith('.jpg')返回结果: True应用:判断后缀名的示例:2. 方法2, os.path.splitext() 方法:该方法返回两个元素, 第一个是...
2019-04-24 12:43:00
2548
转载 Random Erasing Augmentation(REA)
为了增强模型的泛化的性能,一般的手段有数据增强和正则化方法(如dropout,BN),而用于数据增强的一般方法有:随机裁剪、随机水平翻转、平移、旋转、增加噪音和生成网络方法等(前两个方法用的最多,也最有效),作者从CNNs输入的数据预处理出发,极端的情况下,如果训练模型的数据集很少有遮挡的样本(尽管放大再随机裁剪一定程度对应对遮挡的情形上有帮助),那么最终训练得到的模型也不能很好处理遮...
2019-04-19 13:56:00
533
转载 caffe 根据txt生成多标签LMDB数据
1. 前提:已经准备好train.txt, test.txt文件, 格式如下此处有坑, 如果是windows下生成txt, 换行符为\r\n, 需要替换成 \n才能在linux运行.可以使用sed -i "s/\s*$//g" filename统一去掉, 具体参考除去文件中显示的^M符号已经编译好了支持多标签的caffe, 具体见多标签caffe重新编译2. 编...
2019-04-18 17:36:00
144
转载 多标签caffe重新编译
说明:Caffe自带的图像转LMDB接口只支持单label,对于多label的任务,可以使用HDF5的格式,也可以通过修改caffe代码来实现.本篇文章介绍怎么通过修改DataLayer来实现带Multilabel的lmdb格式数据输入的分类任务.--- 本文参考自 :Caffe实现多标签分类支持Multi-Label的lmdb数据格式输入caffe实现多标签分类模型...
2019-04-18 16:07:00
97
转载 使用Anaconda虚拟环境编译caffe-gpu pycaffe
1. 前提:安装前服务器情况,已经安装好了:CUDNN=7.3.0CUDA=10.0.130Opencv 2.4.13相应命令为:cuda 版本cat /usr/local/cuda/version.txtcudnn 版本cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2opencv版本...
2019-04-12 14:50:00
1305
转载 判断列表中元素是都都大于零
方法一: if [i for i in old_list if i > 0]: print(f'列表中有{aim}')else; print('没有)方法二:利用pandas或者numpy:(numpy.array(old_list) > 0).all()转载于:https://www.cnblogs.com/geoffreyone/p/10...
2019-04-10 10:28:00
5157
转载 Pytorch: cuda runtime error (59) : device-side assert triggered at /pytorch/aten/src/THC/generic/THC...
更换了数据集, 在计算交叉熵损失时出现错误 :cuda runtime error (59) : device-side assert triggered at /pytorch/aten/src/THC/generic/THCTensorMa解决检查两个问题:1. 模型输出label数量 是否与 标签类别数量相同<label为 男,女, 未知; 但是我模型设计只有男/...
2019-04-04 10:49:00
400
转载 Linux 解压命令tar
1. 参数说明:-c :建立一个打包文件;-x :解开一个打包文件;-t :查看 tar包里面的文件;(c/x/t仅能存在一个,不可同时存在,因为不可能同时压缩与解压缩。)-z :打包后用gzip压缩,生成.tar.gz文件;-j :打包后用zip2压缩,生成.tar.bz2文件;-v :压缩的过程中显示文件;-f :使用文件名,在f之后要立即接文件名...
2019-03-27 10:27:00
142
转载 Terraria(泰拉瑞亚)存档覆盖(Linux)
这是一篇关于游戏的不正经博客 ~游戏介绍:《泰拉瑞亚》是由Re-Logic公司开发的一款高自由度的沙盒游戏,于2011年5月16日在PC上发行。玩家可以在游戏中做很多事情:制造武器战胜各种各样的敌人及群落;挖掘地下寻找器材配件、金钱和其他有用的东西;收集木材,石材,矿石等资源;用世界里的一切创造你需要的东西并守护它。 --- 百度百科我本科时曾玩过PE版,花了一个月时间打到肉山后...
2019-03-27 09:58:00
3113
转载 Telsa显卡比较
1. T42. P4/ P403. P1004. V100转载于:https://www.cnblogs.com/geoffreyone/p/10600516.html
2019-03-26 15:35:00
1011
转载 Jupyter-notebook 不自动打开浏览器解决办法
我的系统是Manjaro Linux, 一直以来,我使用jupyter-notebook的办法都是使用命令sudo jupyer-notebook --allow-root,然后手动复制粘贴URLS到浏览器打开.今天突然决心解决,然后记录解决过程.生成配置文件jupyter notebook --generate-config我的系统配置文件路径在 /root/.jupyte...
2019-03-12 15:21:00
6254
转载 易忘&有用 的冷门Anaconda命令
Python接触有将近2年了,但是在倒腾anaconda环境的时候,总有一些命令忘记需要查半天,今天趁着配置pytorch,特此总结一下,留待后用.1. 创建和删除环境创建环境conda create --name [虚拟环境名] [python的版本] [需要的包]eg:conda create --name myenvconda create --name myenv ...
2019-03-06 16:01:00
227
转载 teamviewer连接未就绪的解决(Manjaro Linux)
放假回家,想设置一下teamviewer,结果一直报错"TeamViewer not ready. Please check your connection"查了一通,发现这个方法解决了,就是重启一下服务,执行以下命令,然后重新打开:sudo teamviewer daemon stopsudo teamviewer daemon start参考自MICHAEL_LIU的博客...
2019-01-30 11:36:00
1180
转载 Attribute-Recognition行人属性识别资料
(摘自王逍同学的论文arxiv-2019+Pedestrian Attribute Recognition A Survey)1. 数据集DatasetPedestriansAttributeSourcePETA Dataset1900061 binary and 4 multi-class attributesoutdoor & indoor...
2019-01-30 10:14:00
2141
转载 Manjaro为包管理器pacman和yaourt\yay 添加多线程下载
用轻量级的axle代替了默认的wget来下载升级包。1. paman添加多线程编辑pacman.conf文件:vim /etc/pacman.conf如果有类似xfercommand的话,注释掉,加上下面这句 :XferCommand = /usr/bin/axel -n 15 -o %o %u2. yaourt添加多线程修改/etc/makepkg.conf:将...
2019-01-30 10:02:00
2150
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人