疑难杂症
遇到的各种问题,疑难杂症
MrCharles
隐私
展开
-
用latexdiff实现修改的跟踪
对得到的diff.tex进行编译,既可以看到template.tex和template1.tex两个文件的差异。首先要打开MikTex console,选择packages,查看latexdiff是否已经安装。如果没有安装,则安装latexdiff。原创 2022-10-01 13:13:09 · 965 阅读 · 1 评论 -
Hamming distance 可以做损失函数么?
Hamming distance 是不可微的,选择做损失函数是不行的,要做一些smoothing才行!Hamming loss is by definition not differentiable, so for small movements of trainable weights you will never experience any changes in the loss. I imagine it is only added to be used for final measurement原创 2022-01-20 20:22:00 · 339 阅读 · 0 评论 -
使用jupyter notebook 时明明已经安装了某个lib,还是出现ModuleNotFoundError
这是因为jupyter notebook要选择不同conda环境,但是运行jupyter 的时候,没有使用到这个环境,即使你已经conda activate这个环境,再执行jupyter。解决方法就是将conda环境写入jupyter notebook的kernel中在jupyter notebook中不同环境之间是通过切换kernel实现的。在conda环境下创建kernel文件,命令是conda install -n 环境名称 ipykernel。先进入conda的某个环境中,然后执行以下命令。p原创 2022-01-11 12:05:33 · 2312 阅读 · 2 评论 -
内存不足够怎么办,swap空间来相伴
工作研究中经常需要intensive的模型训练,但是目前可用的两台机器都是32GB的内存搭配24GB显存的RTX3090,因此使用起来经常发现内存不足够,进程会被系统直接kill。可是我们又想把所有的数据集加载到内存中,加快我们模型的训练速度,不然一边读取数据一边训练模型,GPU使用率非常低,训练的时间会很久。经过摸索,发现增加swap空间是可行的。swap交换空间只有在内存用尽的时候才会被使用到。虽然swap使用的是硬盘来代替内存空间,速度会慢非常多,但是只要数据能够加载到内存之中,多一点点数据在sw原创 2021-10-30 12:14:35 · 615 阅读 · 2 评论 -
tf.data.Dataset 不要和random包混用
自从Tensorflow1.4发布之后,Datasets就成为了新的给Tensorflow模型创建input pipelines的方法。DDataset 有如下模式:从你的数据创建数据集在数据上进行一些预处理迭代每一个数据迭代是按照流这种模式进行的,所以整个数据集是不需要一次性加载到内存。一个典型的dataset构建过程:def ListFiles(basedir,ext): list_ds = tf.data.Dataset.list_files(basedir+"/*."+e.原创 2021-10-09 19:51:45 · 428 阅读 · 3 评论 -
为什么OpenCV使用BGR而不是RGB?
https://learnopencv.com/why-does-opencv-use-bgr-color-format/Satya Mallick早期的开发者选择了BGR,为啥选择BGR呢?那时候流行的相机制造商和软件商都是用这个模式,例如微软使用的是BGR,微软的软件里面COLORREF的值的格式为0x00bbggrr。所以从那时候起,opencv就一直使用BGR。现在我们也还是使用BGR,这种反人类的设计,只能去习惯它(当然,早期它并不绝对反人类)。“Why not use RGB when e原创 2021-07-09 16:24:44 · 744 阅读 · 1 评论 -
纯RAW数据转换为DNG格式
手上有一个没有任何header信息的RAW文件,是从相机传感器直接输出的,格式是一个一维的数组,大小是1,310,720,也就是1024*1280.想使用rawpy来模拟ISP的处理流程,但是很不幸的是,rawpy不支持直接处理这种没有任何header信息的RAW文件。报错信息如下:LibRawFileUnsupportedError: b'Unsupported file format or not RAW file'好在,我找到了一个解决方案:(http://im.snibgo.com/proc原创 2021-07-06 09:20:43 · 5143 阅读 · 4 评论 -
K40自动重启的分析(RTC)
还没有毕业,等着论文送审期间之前老手机坏掉了,屏幕花了。现在又没有收入,红米K40就像一束光照向我的黑暗人生。抢了几次都没有在平台上抢购到。。。但是经过网友指点,去了小米之家,终于预定到了。三天之后到货,拿到手真的是觉得太幸运了。艰难生活中总要有点色彩呀。但是好不容易买到的K40也给我带来了烦恼。他一直无故异常重启呀。。。。瞬间又不爱了。。。。我附上我的系统日志:14号当天拿到,在小米之家让小哥哥帮忙开机的,一切正常:我怀疑,这个RTC可能是有问题。查了一下资料,发现不简单呀。所谓RTC(R原创 2021-04-18 13:22:15 · 12320 阅读 · 3 评论 -
解决GitHub访问缓慢
https://www.eet-china.com/mp/a45791.htmlGitHub 镜像访问https://hub.fastgit.org也就是说上面的镜像就是一个克隆版的 GitHub,你可以访问上面的镜像网站,网站的内容跟 GitHub 是完整同步的镜像,然后在这个网站里面进行下载克隆等操作。...原创 2021-04-12 23:06:21 · 390 阅读 · 0 评论 -
[LeetCode ] 9. 回文数 谢谢你让我明白了我是个智障
很简单一道题呀。就很happy开始写啊,最朴素的算法:class Solution: def isPalindrome(self, x: int) -> bool: if x<0: return False # l=list(str(x)) # l = [] # while (x>0): # l.append(x%10) # x=x//10 .原创 2021-04-01 23:39:39 · 801 阅读 · 2 评论 -
[LeetCode] Rotate Function 旋转函数
很傻的方法:class Solution: def maxRotateFunction(self, nums: List[int]) -> int: maxt = -math.inf K = len(nums) for k in range(K): t = 0 for i in range(K): t = t + i*nums[i-k] .原创 2021-03-29 19:26:06 · 316 阅读 · 0 评论 -
Widgets are not available. Please install widgetsnbextension or ipywidgets 4.0
浏览器JS里面显示:Widgets are not available. Please install widgetsnbextension or ipywidgets 4.0# 方式一pip install ipywidgetsjupyter nbextension enable --py widgetsnbextension# 方式二conda install -c conda-forge ipywidgetsfastpbkdf2 0.2不能使用:E: Package ‘libff原创 2021-03-22 19:08:00 · 1031 阅读 · 0 评论 -
python实现matlab的nchoosek函数
def nchoosek(startnum, endnum, step=1, n=1): c = [] for i in itertools.combinations(range(startnum,endnum+1,step),n): c.append(list(i)) return ca = nchoosek(1, 3, step=1, n=2)print(a)[[1, 2], [1, 3], [2, 3]]原创 2021-03-19 13:33:07 · 1221 阅读 · 0 评论 -
小米路由器同一wifi局域网下,各主机无法ping连
使用的是小米路由器,死活ping不通同网的电脑:Pinging 192.168.31.26 with 32 bytes of data:Reply from 192.168.31.139: Destination host unreachable.Reply from 192.168.31.139: Destination host unreachable.Reply from 192.168.31.139: Destination host unreachable.Reply from 192.原创 2021-03-19 09:37:37 · 4761 阅读 · 2 评论 -
一万年太久只争朝夕:从灯泡的寿命谈截尾样本的基础知识
人的一生有多长?80年?宇宙的一生有多长?100亿年?有时候,观测到时间尽头是不可能的产品寿命存在于我们每个人的生活之中,很多人觉得查看产品寿命是理所当然,然而很少人会仔细思考他的本质。现在我们来看一下如何去估计一个产品的寿命。产品寿命T是一个随机变量,它的分布称为寿命分布,是一个随机变量.完全样本:将随机抽取的 n 个产品, 在时间 t = 0 时, 同时投入试验直到每个产品都失效 . 记录每一个产品 的失效时间 , 这样得到的样本 (即由所有产品的失 效时间 0 ≤ t1 ≤ t2..原创 2021-02-24 20:58:14 · 2526 阅读 · 0 评论 -
威布尔weibull distribution
data = wblrnd(0.5,0.8,100,1);生成威布尔随机函数,尺寸参数为0.5,形状参数为0.8,生成数列100行,一列;parmhat = wblfit(data)对data的进行威布尔拟合,返回拟合的两个值翻译了一下:[PARMHAT,PARMCI] = WBLFIT(X,ALPHA,CENSORING)给定右截尾样本数据X,计算Weibull分布在取尺度参数A,形...原创 2018-08-15 15:44:17 · 8174 阅读 · 8 评论 -
Tensorflow 2.0/Keras 指定CPU运行,强制使用CPU
全局配置运行TensorFlow代码时候常出现OOM(Out of Memory)的错误,原因是batch_size设置得太大导致显存不足。如果想让代码仅仅运行在CPU下,可在原代码中加入如下代码:import osos.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" os.environ["CUDA_VISIBLE_DEVICES"] = "-1...原创 2019-12-26 02:38:29 · 5721 阅读 · 3 评论 -
ubuntu opencv imshow不可用问题,要安装libgtk2.0-dev,但是安装不了
https://blog.csdn.net/Suan2014/article/details/81166395OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, th转载 2021-01-27 17:37:27 · 3969 阅读 · 3 评论 -
(Windows 10) AttributeError: module 'skimage' has no attribute 'io'
一开始pip install scikit-image还是有问题经过摸索,conda install scikit-image解决问题原创 2019-12-11 18:40:42 · 3700 阅读 · 3 评论 -
python 多线程处理图像,充分利用CPU
Python是一门非常适合处理数据和自动化完成重复性工作的编程语言,我们在用数据训练机器学习模型之前,通常都需要对数据进行预处理,而Python就非常适合完成这项工作,比如需要重新调整几十万张图像的尺寸,用Python没问题!你几乎总是能找到一款可以轻松完成数据处理工作的Python库。然而,虽然Python易于学习,使用方便,但它并非运行速度最快的语言。默认情况下,Python程序使用一个CP...原创 2019-11-21 20:12:08 · 12533 阅读 · 0 评论 -
机器学习改善Interpretability的几个技术
改善机器学习可解释性的技术和方法尽管透明性和道德问题对于现场的数据科学家来说可能是抽象的,但实际上,可以做一些实际的事情来提高算法的可解释性算法概括首先是提高概括性。这听起来很简单,但并非那么简单。当您认为大多数机器学习工程都以非常特定的方式应用算法来发现所需的特定结果时,模型本身可能会感觉像是次要元素-仅仅是达到目的的一种手段。但是,通过改变这种态度来考虑算法的整体运行状况以及运行该算法的...原创 2019-10-23 15:55:16 · 1707 阅读 · 0 评论 -
如何设计类似百度网盘的系统?-百度网盘的系统设计分析
系统设计是软件工程中最重要和最令人担忧的方面之一。这种观点来自我自己在r架构课程中的学习经验。当我开始架课程时,我很难理解设计系统的想法。主要原因之一是,一开始很难理解软件体系结构书籍中使用的术语,并且没有明确的分步指南。 每个人似乎都有不同的方法。 当然,还有一个心理障碍是这些可能本来就很难理解。因此,我根据自己学习架构课程的经验着手设计一个系统。第一个是关于Google Auto Suggestion的。为此,让我们设计一种云文件存储服务,例如Google Drive。它是一个文件存储 和同步服务,原创 2020-09-23 21:38:10 · 7949 阅读 · 1 评论 -
给定一个数组序列, 需要求选出一个区间, 使得该区间是所有区间中经过如下计算的值最大
Python 版本的解析请参见https://blog.csdn.net/weixin_42001089/article/details/84203651此处本人给出java版本,其实java的栈很好用;import java.util.ArrayList;import java.util.List;import java.util.Random;import java.util.Sc...原创 2020-03-30 23:50:55 · 1969 阅读 · 0 评论 -
Blahut-Arimoto algorithm Matlab源码
For a discrete memoryless channel, the capacity is defined aswhereanddenote the input and output variables of the channel respectively, and the maximization is taken over all input distribu...原创 2019-06-18 00:13:01 · 1972 阅读 · 0 评论 -
overleaf 提交arXiv 不成功
从overleaf下载的PDF不能够直接提交给arXiv,但是可以在submit中选择导出下载压缩包,图片不能是png,最好是PDF 或者eps。参考文献是bbl 文件,不是bib....原创 2019-05-08 20:00:22 · 6388 阅读 · 0 评论 -
服务器断电之后通电自动开启
设置BIOS >> seting >>advanced >>Power Management setup >>将Restore after AC Power Loss 设定为"Power ON"。一通电就能开机了,亲测有用,非常方便。原创 2019-04-22 12:12:51 · 2229 阅读 · 0 评论 -
WIN10安装CUDA10 cuDNN
文章目录CPU和GPU什么是CUDA什么是cuDNNCPU和GPUCPU和GPU是不一样的计算机设备,CPU作为计算机心脏一直被人们所认知,但是GPU直到最近才被人们重视起来,因为其优异的图片运算性能,或者说矩阵运算性能。CPU和GPU的关系和差别:从上图可以看出GPU(图像处理器,Graphics Processing Unit)和CPU(中央处理器,Central Processin...原创 2019-04-10 20:35:04 · 9782 阅读 · 2 评论 -
逻辑符号
符号 名字 解说 例子 读作 范畴 ⇒ 实质蕴涵 A ⇒ B 意味着如果 A 为真,则 B 也为真;如果 A 为假,则对 B 没有任何影响。 x = 2 ⇒ x² = 4 为真,但 x² = 4 ⇒ x = 2 一般为假(因为 x 可以是 −2)。 蕴涵;如果.. 那么 命题逻辑 → 可能意味着同 ⇒ 一样的...原创 2019-04-04 16:05:51 · 4311 阅读 · 0 评论 -
一文尽览近似最近邻搜索中的哈希与量化方法
来自 微软研究院AI头条 编者按:最近邻搜索算法能够帮助人们在海量数据中快速搜索到有效内容,但是想要将其应用于实际,则需要解决如何缩短搜索时间的问题。本文将为大家介绍两种减少搜索时间的方法。基于哈希的近似最近邻搜索的方法通过设计和优化哈希函数,减少计算的次数,从而缩短搜索时间。基于量化的近似最近邻搜索方法则通过聚类把向量集聚成若干类,每类里面的向量用对应的类中心来近似。我们每个人每天都...转载 2019-02-23 18:12:47 · 2354 阅读 · 0 评论 -
无法解析的外部符号 jpeg_std_error
1>dlib.lib(png_loader.obj) : error LNK2001: 无法解析的外部符号 png_set_sig_bytes1>dlib.lib(png_loader.obj) : error LNK2001: 无法解析的外部符号 png_sig_cmp1>dlib.lib(png_loader.obj) : error LNK2001: 无法解析的外部符号...原创 2018-08-18 16:36:22 · 4460 阅读 · 1 评论 -
约瑟夫问题
package 约瑟夫问题;public class MainClass { public static void main(String[] args) { Cyclink cl = new Cyclink(); cl.setLen(1000000000); cl.createLink(); //cl.print(); int k=3; cl.play(1, 3); }原创 2015-05-21 12:20:00 · 631 阅读 · 0 评论 -
CSDN学院:NumPy极简教程,欢迎订阅学习
NumPy是Python的最重要的扩展程序库之一,也是入门机器学习编程的必备工具。然而对初学者来说,NumPy的大量运算方法非常难记。本课程通过形象的图示来解析numpy,为您的编程助一臂之力。现在订阅课程享受优惠。优惠代码:NumPyProhttps://edu.csdn.net/course/detail/31568...原创 2021-01-10 17:34:20 · 1389 阅读 · 2 评论 -
讲明白了-Python的多线程和多处理
什么是MultiProcessing?MultiProcessing允许在程序中生成多个进程。它允许在计算机上利用多个 CPU内核程序中的多个进程不共享内存全局解释器锁定限制:只允许一个线程控制 Python 解释器用于计算或 CPU 密集型程序那么什么是多线程, 什么时候使用它?线程在程序中执行的最小独立命令集应用程序中的多个线程可以在称为多线程的 CPU上同时执行始终在程序内运行,不能自己运行当程序受网络绑定或存在繁重的 I/O 操作时使用内存在进程中的多个线程之间共享,因原创 2021-01-07 10:47:02 · 1850 阅读 · 9 评论 -
python – 输入和输出numpy数组到h5py,保存加载的dataset
有一矩阵,其条目都是float类型。如果用扩展名.dat保存它的文件大小是500 MB的量级。使用h5py大大减少了文件大小。所以,如何保存到一个h5py文件?如何读取相同的文件,并把它作为numpy数组。保存import h5pyh5f = h5py.File('aug1202data.h5', 'w')h5f.create_dataset('dataset_train_x', data...原创 2019-12-02 17:35:19 · 3749 阅读 · 0 评论 -
WildFly配置gzip压缩
使用jboss-cli.sh 执行下面的脚本/subsystem=undertow/configuration=filter/gzip=gzipFilter:add()/subsystem=undertow/server=default-server/host=default-host/\ filter-ref=gzipFilter:add(predicate="not min-con原创 2016-08-11 10:45:17 · 2009 阅读 · 0 评论 -
如何做系列(1)- mybatis 如何实现分页?
mybatis 如何实现分页? 第一个做法,就是直接使用我们的sql语句进行分页,也就是在mapper里面加上分页的语句就好了。 Select ROWNUM,ID,NAME FROM(Select ROWNUM as ROWNO, ID,NAME from CHANGED_CONTENT ) #{startRow}]]> 然后我们在使用这个da原创 2016-07-14 19:22:16 · 3998 阅读 · 0 评论 -
如何做系列(2)- XML转义字符
< 小于号 >原创 2016-02-15 10:03:30 · 1277 阅读 · 0 评论 -
如何做系列(4)-微博URL短网址生成算法原理(java版、php版实现实例)
短网址(Short URL),顾名思义就是在形式上比较短的网址。通常用的是asp或者php转向,在Web 2.0的今天,不得不说,这是一个潮流。目前已经有许多类似服务,借助短网址您可以用简短的网址替代原来冗长的网址,让使用者可以更容易的分享链接。例如:http://t.cn/SzjPjA短网址服务,可能很多朋友都已经不再陌生,现在大部分微博、手机邮件提醒等地方已经有很多应用模式原创 2016-01-29 18:41:49 · 3505 阅读 · 0 评论 -
如何做系列(5)-james mail安装总结
安装james还是比较复杂的,我们在EC2上花费了差不多一天,发现不能发送邮件到外网,后续又陆续花了几天的时间,才成功搭建james邮件服务器。现在愿意把我们的经历分享出来,让大家参考一下。 由于项目需要部署在Linux上,而又使用到Apache James作邮件服务器,因此总结了一下在Linux上部署Apache James的步骤,写得比较凌乱。在Linu原创 2016-01-29 18:41:22 · 7143 阅读 · 0 评论 -
如何做系列(3)-Java数据类型和MySql数据类型对照表
Java数据类型和MySql数据类型对照表原创 2016-01-24 15:15:32 · 1199 阅读 · 0 评论