Python
doubleslow;
Success is a series of little wins.
展开
-
UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xd7 in position 0: ordinal not in range(128)
出错根源:解码方式不匹配出错源代码:import _pickle as cPicklex = cPickle.load(open('s01.dat', 'rb'))报错:UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xd7 in position 0: ordinal not in range(128)其实这个错误很好理解,就是说,这个文件的编码0xd7翻译为十进制数字是215,大于ascii编码的最大数字128,所以Python3.7原创 2020-11-18 11:18:20 · 2167 阅读 · 0 评论 -
.pyx文件编译出错
文章目录.pyx文件的编译导入参考博客(写的超级好,完美解决了问题)错误ImportError: Building module dtw failed: ["distutils.errors.CompileError: command 'D:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\2019\\\\Preview\\\\VC\\\\Tools\\\\MSVC\\\\14.24.28314\\\\bin\\\\HostX86\\\\x64原创 2020-05-28 19:48:11 · 3653 阅读 · 4 评论 -
python生成随机数random.normalvariate矩阵输入,超牛逼
import randommu=np.array([[0, 100],[-100, 900]])sigma=np.array([[1, 1],[1, 1]])number=random.normalvariate(mu, s)muarray([[ 0, 100], [-100, 900]])sigmaarray([[1, 1], [1, 1]])...原创 2019-12-18 13:47:05 · 6268 阅读 · 0 评论 -
Python 把一个数分解为最接近的两个数的乘积(不是质数因子分解)
做这个主要是想把一个长矢量转化为一张尽量方正的图片,用于CNNimport numpy as npdef crack(integer): start = int(np.sqrt(integer)) factor = integer / start while not is_integer(factor): start += 1 facto...原创 2019-12-18 13:09:45 · 4878 阅读 · 2 评论 -
Python把二维numpy数组转变为灰度图
from PIL import Image# image_array是归一化的二维浮点数矩阵image_array *= 255 # 变换为0-255的灰度值im = Image.fromarray(image_array)im = im.convert('L') # 这样才能转为灰度图,如果是彩色图则改L为‘RGB’im.save('outfile.png')...原创 2019-12-16 12:18:47 · 19373 阅读 · 4 评论 -
python .all()所有元素都相等则为True,.any()表示有一个相等就是True
很像与和或的关系a=[np.zeros((2,1)), np.array([2,3])]a[0]array([[0.], [0.]])a[0]==np.zeros((2,1))array([[ True], [ True]])(a[0]==np.zeros((2,1))).all()True原创 2019-12-15 17:09:44 · 900 阅读 · 0 评论 -
pycharm sciview的图片另存为
在图片上右击设置你想放在的目录原创 2019-12-12 18:25:21 · 6853 阅读 · 4 评论 -
ValueError: Internal work array size computation failed: -10
官网:sklearn.discriminant_analysis.LinearDiscriminantAnalysisLDA用solver=svd,如果输入数据只有一个特征,会报错,这是因为在奇异值分解的过程中如果输入只有一个特征,有可能使得rank=0,秩小于特征总数可以换solverclf = LinearDiscriminantAnalysis(solver='lsqr')官网有...原创 2019-12-08 12:43:25 · 1330 阅读 · 0 评论 -
pycharm的print输出保存到txt文件
程序比较大,运行时间又长的时候,不想等着结果,只要先确保程序功能正确无误,可以把需要的结果print然后保存到TXT文件中,超级方便# 创建一个txt文件,文件名为mytxtfiledef text_create(name): desktop_path = "C:\\Users\\Administrator\\PycharmProjects\\EmotionRecog\\venv\\S...原创 2019-12-08 12:17:53 · 14361 阅读 · 8 评论 -
pytorch 实现VAE排坑记
RuntimeError: element 0 of tensors does not require grad and does not have a grad_fnlist没有mean()方法,必须转为ndarray一直没想通VAE怎么实现特征学习,怎么着才算是训练好了可以用来被信任用于学习特征呢?PCA的话不需要想什么,直接算特征值,然后拿出前几个特征值和对应的特征向量,就好了...原创 2019-12-04 20:57:52 · 1184 阅读 · 1 评论 -
pycharm加载matlab得到的.mat文件
import scipy.io as sioimport joblibvae_mat = 'dataset/vae_data.mat'vae_dict = sio.loadmat(vae_mat)vae_data = vae_dict['vae_data']joblib.dump(vae_data, 'dataset/vae_data.pkl')vae_data = joblib.lo...原创 2019-12-03 14:06:06 · 4164 阅读 · 0 评论 -
Python声音提示
Python声音提示import winsoundduration = 1500 # millisecondfreq = 440 # Hzwinsound.Beep(freq, duration)winsound.Beep(500, 5000)原创 2019-11-28 18:32:29 · 1036 阅读 · 0 评论 -
pycharm没有sciview窗口的解决(换专业版pycharm!)
只有专业版才有科学模式,tool windows中才有sciview窗口settings里面才会有Python scientific所以如果你是用的社区版,就只能卸掉重装专业版,我刚刚做了这件事,永久激活花了一个多小时使我泪牛满面······有时候你需要sciview窗口!!!什么时候呢当你需要连续画多个图的时候今天跑深度学习,之前在另一台电脑用的专业版,可以连续画图,就没在意没...原创 2019-11-28 16:07:42 · 20844 阅读 · 9 评论 -
pytorch cuda入门
刚刚装好一切配置,手头杂活快速清理了来迎接cuda入门的抽打······pytorch是一个Python科学计算包,它的主要受众是两类人:想找个numpy的替代品,好利用GPU的强大的人找个最灵活最快速的深度学习平台的人本文翻译和参考自pytorch官方教程文章目录torch.Tensorbackprop举例Function类autogradtorch.nn损失函数torchvisi...原创 2019-11-28 20:43:18 · 4942 阅读 · 4 评论 -
pytorch gpu版本安装外部库报错 TypeError: LoadLibrary() argument 1 must be str, not None
文章目录解决问题的关键和核心: conda package manager!!!pytorch_gpu解释器需要conda包管理器才可以正常安装外部库pytorch_gpu解释器需要conda包管理器才可以正常安装外部库pytorch_gpu解释器需要conda包管理器才可以正常安装外部库base解释器不需要conda包管理器,就可以正常安装外部库base解释器不需要conda包管理器,就可以正常...原创 2019-11-26 16:18:58 · 1284 阅读 · 1 评论 -
No module named 'torchsample' 问题解决
anaconda prompt中依次输入命令conda install gitpip3 install -e git+https://github.com/ncullen93/torchsample.git#egg=torchsamplepip3 install visdompip3 install nibabelpip3 install h5py # this will be remo...原创 2019-11-16 07:31:55 · 4184 阅读 · 0 评论 -
python 找到一个数组中没有出现的数字
python 找到一个数组中没有出现的数字import numpy as npdef find_miss_number(the_array): # the_array是numpy array miss = [] for i in range(np.max(the_array)): if i in the_array: i += 1 ...原创 2019-11-07 12:41:21 · 1177 阅读 · 0 评论 -
python day4 python调用同一目录/路径的另一个模块中的函数
在 python 中,每一个 py 文件都称为模块,每一个具有 __init__.py 文件的目录称为包。Python中提供了list容器,可以当作数组使用。但列表中的元素可以是任何对象,因此列表中保存的是对象的指针,这样一来,为了保存一个简单的列表[1,2,3]。就需要三个指针和三个整数对象。对于数值运算来说,这种结构显然不够高效。Python虽然也提供了array模块,但其只支持一维数组,...原创 2019-11-06 20:45:07 · 2119 阅读 · 0 评论 -
pycharm 不调试也可以查看变量
pychrm右上角,当前程序下拉菜单,选择 编辑配置勾选 用控制台运行再run就可以看到变量咯pycharm版本不同,有的人是勾选这个,具体自己根据意思去揣度,试错就行...原创 2019-11-05 21:06:51 · 815 阅读 · 0 评论 -
误差反向传播的python实现(简单高效计算梯度值)
NN的学习中需要计算权重和偏置参数的梯度,对于梯度的计算,很容易想到数值导数,即前向差分dx=f(x+h)−f(x)hdx=\frac{f(x+h)-f(x)}{h}dx=hf(x+h)−f(x)或者改进一点,用中心差分(更接近准确的导数值)dx=f(x+h)−f(x−h)2hdx=\frac{f(x+h)-f(x-h)}{2h}dx=2hf(x+h)−f(x−h)h取一个接近0的数值...原创 2019-08-15 21:13:38 · 2534 阅读 · 0 评论 -
用Python搭建2层神经网络实现mnist手写数字分类
这是一个用python搭建2层NN(一个隐藏层)识别mnist手写数据集的示例mnist.py文件提供了mnist数据集(6万张训练图,1万张测试图)的在线下载,每张图片是28∗2828*2828∗28的尺寸,拉长为1∗7841*7841∗784的向量作为NN的输入,隐藏层设置了50个神经元,输出层由于是十分类(数字0-9)所以设置了10个神经元,所以网络的架构是784-50-10;设置的迭代...原创 2019-08-15 15:48:23 · 2323 阅读 · 0 评论 -
NN学习中的技巧之(一) 参数的最优化之Adam
Momentum参照小球在碗中滚动的物理规则进行移动AdaGrad为每个参数适当调整更新步伐Adam是2015年提出的新方法,它是Momentum和AdaGrad的结合体,,融合了两种方法的优势代码:# Adam.pyimport numpy as npimport matplotlib.pyplot as pltclass Adam: def __init__(s...原创 2019-08-20 14:41:50 · 2112 阅读 · 0 评论 -
NN学习中的技巧之(一) 参数的最优化之AdaGrad
AdaGrad中的Ada是Adaptive之意,即“自适应的”,什么自适应呢,这里是指NN中的学习率,可以自适应的调整,并且是每一个参数有自己专门的调整,不是全体参数的学习率同时调整(共享一个学习率)。NN的学习中,学习率对于学习效果非常重要。学习率太大,一次学太多,容易太发散,跳来跳去的,难收敛还慢;学习率太小,则学的慢,效率低。所以自适应减小学习率是很容易想到的解决方案,也叫 learini...原创 2019-08-20 14:19:59 · 1359 阅读 · 0 评论 -
NN中的学习技巧之(一)参数的最优化之 Momentum
前面的博文里说了SGD,最基础的一个梯度下降优化算法,在SGD之后还有很多改进版本的算法,比如动量法,下面我降动量法扥别作用于两个函数,第一个是完美凸函数,第二个则是非凸的香蕉函数函数1:(Rosenbrock函数)f(x,y)=(a−x)2+b(y−x2)2f(x,y)=(a-x)^2+b(y-x^2)^2f(x,y)=(a−x)2+b(y−x2)2取a=1,b=100从下图可以看出,...原创 2019-08-20 11:36:17 · 5235 阅读 · 0 评论 -
命令行更新python的pip包 && 用pip或pycharm图形界面安装python外部库
命令行更新pip,可以看到旧版本和安装的新版本C:\Users\SSMM>python -m pip install --upgrade pipCollecting pip Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken b...原创 2019-08-10 15:38:26 · 2793 阅读 · 0 评论 -
python学习 day3
一个优秀程序员能维护的代码量最多只有两万行每个人都应该学习python或者ruby豆瓣纯粹是python开发的,YouTube是python写的,Google,NASA都在用python,大部分工作都是可以只用python就完成的,3D动画特效也通过嵌入python实现;很多开源网站也是python开发的;云计算。你甚至可以不学其他高级语言学python不需要前置知识python和其他高级...原创 2019-08-14 07:09:44 · 148 阅读 · 0 评论 -
python学习 day2
What I cannot create, I do not understand.——Richard Phillips Feynman昨天在pycharm安装了numpy,matplotlib库,命令行用python解释器却无法调用这两个库,又在命令行下载安装了库。原来直接在系统管理员下输入命令 pip install numpy然后顺便更新了pip版本命令行下载安装东西超炫酷的...原创 2019-08-03 19:45:59 · 159 阅读 · 0 评论 -
NN学习技巧之参数最优化的四种方法对比(SGD, Momentum, AdaGrad, Adam),基于MNIST数据集
前面几篇博文分析了每一种参数优化方案,现在做一个对比,代码参考斋藤的红鱼书第六章。实验对mnist数据集的6万张图片训练,使用5层全连接神经网络(4个隐藏层,每个隐藏层有100个神经元),共迭代2000次,下图是损失函数随着训练迭代次数的变化:可以看到SGD是最慢的,而AdaGrad最快, 且最终的识别精度也更高,这并不是一定的,跟数据也有关主要代码:(完整代码可去图灵社区找红鱼书,随书下...原创 2019-08-21 15:38:42 · 1811 阅读 · 3 评论 -
NN权重初始值及其对各层激活值分布的影响,权值衰减
NN中每一个Affine层的权重参数的初始值是非常重要的,甚至会影响学习是否成功。但幸好我们已经有很多前辈总结出了比较好的初始值,以及判定一组初始值是否可以取得好的学习效果的方法。权值衰减有一种抑制过拟合,提高泛化能力的技术,叫做权值衰减,weight decay, 它的目的是减小NN的权重参数。但是虽然较小权值参数可以获得好的学习效果避免过拟合,我们却不可以把权重的初始值设置为0!!! 这...原创 2019-08-21 15:53:38 · 1609 阅读 · 0 评论 -
Python学习 字符串拼接,pycharm再探索,记录一个异常,Python高维矩阵切片索引
parts = ['Is', 'Chicago', 'Not', 'Chicago?']' '.join(parts)Out[21]: 'Is Chicago Not Chicago?'','.join(parts)Out[22]: 'Is,Chicago,Not,Chicago?'''.join(parts)Out[23]: 'IsChicagoNotChicago?'平时shi...原创 2019-09-11 14:52:34 · 4249 阅读 · 0 评论 -
anaconda初体验
LINUX和mac系统一般都自带一个Python的命令行版本,如果需要图形界面的版本(IDLE(Python GUI)),需要自己另外安装。但是Windows系统默认不提供任何Python版本,这无所谓,自己装一个就是了,反正是自由下载的开源软件,很简单。Python可以跑的平台很多,mac,类unix系统(比如Linux),Windows,sun solaris, os/2, amiga, ...原创 2019-09-10 20:28:24 · 1179 阅读 · 0 评论 -
pickle模块学习和一次惨痛(sb)的debug经历
pickle模块实现了把Python对象结构进行序列化和反序列化( serializing and de-serializing a Python object structure)的二进制协议。pickling: 把对象序列化为字节流a byte streamunpickling: 把二进制文件binary file的字节流转换为对象JSON: 文本序列化格式a text seriali...原创 2019-09-10 20:28:05 · 341 阅读 · 0 评论 -
NN学习中的技巧之(一) 参数的最优化之SGD
文章目录一、NN参数的最优化1、SGD(Stochastic Gradient Descent)随机梯度下降二、权重参数的初始值三、超参数的设定四、专治过拟合:权值衰减 & Dropout五、Batch Normalization一、NN参数的最优化NN的学习实质上就是区找到使得损失函数最小的那组参数,包括权重和偏置,所以这就是一个参数寻优的过程,是最优化问题。但NN中的参数空间非常庞...原创 2019-08-17 17:49:25 · 1350 阅读 · 0 评论 -
用反向传播学习识别mnist手写数字(mini-batch版)
# BP_Study.py# 反向传播学习,mnist手写数字分类# 2层网络import numpy as npimport timefrom dataset.mnist import load_mnistfrom TwoLayerNet import TwoLayerNetimport matplotlib.pyplot as pltstart = time.clock()...原创 2019-08-17 02:11:15 · 1336 阅读 · 1 评论 -
python学习 day4(reshape,contour配色方案)
reshape()方法:x=np.array([1,2,3,4])y=x.reshape(1, x.size) # 把x变为行向量,但y的维度是2维!!!x==yarray([[ True, True, True, True]])z=np.array([1,2,3,4])x==zarray([ True, True, True, True])yarray([[1, ...原创 2019-08-16 15:36:02 · 866 阅读 · 0 评论 -
python学习 day1(pycharm快捷键)
学习python的第一天每天都要写学习记录命令行直接用解释器,pycharm编辑脚本文件都会了。看了很多pycharm的快捷键tip。解决了几个问题,比如安装numpy,matplotlib第三方外部库;no interpreter问题;查看安装的python解释器版本最简单的交互式编程练习,直接在命令行(终端):字典,布尔变量,数组访问pycharm是个...原创 2019-08-06 09:33:59 · 401 阅读 · 0 评论