![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
LS_learner
业精于勤,荒于嬉;
行成于思,毁于随。
展开
-
避免将list转化为torch.tensor,考虑np.array转化为torch.tensor
在python中,实验发现,当数据量较大时,将列表数据转化为torch.tensor类型,需要耗费大量的时间。不如先将列表数据转化为np.array,然后将np.array转化为torch.tensor!原创 2021-11-19 13:20:30 · 1014 阅读 · 0 评论 -
linux如何在指定的python环境下安装包
在linux中,进入anaconda的虚拟环境之后,使用pip并不一定会安装在当前环境下(和windows不太一样),而是安装在该pip对应的python版本里,pip对应的版本可以使用pip -V进行查看。如何准确无误地将包安装在想要安装地python环境下:方法一:找到该python环境对应地pip位置,一般是xxx/bin/pip,然后使用xxx/bin/pip install 包,或者将该指令软连接到pip,这样再使用pip install 包,就可以了。方法二:找到该python环境地位原创 2021-11-03 11:10:21 · 4705 阅读 · 0 评论 -
python实现客户端接收服务端发送的数据 UDP实现
** 服务端代码:server_UDP.py **import socketimport timeaddress = ('127.10.0.1', 31500) # 服务端地址和端口s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # 创建sockets.bind(address) # 绑定服务端地址和端口count=0useraddr = ('127.4.3.100', 8888) # 客户端的地址和端口,后面将发送数据到该地原创 2021-10-12 17:07:04 · 1955 阅读 · 0 评论 -
ModuleNotFoundError: No module named ‘open3d‘
conda install -c open3d-admin -c conda-forge open3d原创 2021-08-10 23:30:26 · 12196 阅读 · 6 评论 -
ModuleNotFoundError: No module named ‘git‘
pip install gitpython原创 2021-08-10 23:29:12 · 18498 阅读 · 0 评论 -
python中类的self的含义
import torch # 省略部分代码#----------------------网络模型,预测部分-----------------------------------#class Net1: def __init__(self,input_test): self.inputn_test = scaler1.transform(input_test) self.inputn_test = torch.Tensor(self.inputn_test)原创 2021-06-09 10:31:42 · 1359 阅读 · 2 评论 -
python调用百度API接口,使用json解析出错“json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) ”
代码如下:输入地址,返回经纬度import json from urllib.request import urlopen, quote def getlnglat(address): ak = 'xxxxxxxxxxx' # 浏览器端密钥,自己申请ak address = quote(address) # 由于本文地址变量为中文,为防止乱码,先用quote进行编码 url = 'http://api.map.baidu.com/geocoding/v3/?address=原创 2021-05-13 18:31:21 · 1221 阅读 · 3 评论 -
python保存函数并加载函数or类
**python保存函数or类并加载函数or类**import dill as pickle #用于函数打包存储#储存模型with open(file_name, 'wb') as f: pickle.dump(function_name, f)#读取模型with open(file_name, 'rb') as f:data_pack = pickle.load(f)和保存变量一样,只不过使用的包是dill举例:import dill as pickle #用于函数打包存储原创 2021-04-26 14:11:28 · 636 阅读 · 0 评论 -
pyqtgraph的使用文档和代码示例
找了半天关于pyqtgraph的文档,最后还是觉得这两行代码运行出来的界面最有用。执行以下代码:import pyqtgraph.examplespyqtgraph.examples.run()弹出下面的窗口:该界面的左边是示例代码,选择一个,并点击Run Example即可执行,查看运行的结果:如:执行Basic Ploting看代码就可以知道自己需要的代码部分究竟改怎么写了,挺好!...原创 2021-01-14 20:11:10 · 1214 阅读 · 0 评论 -
DTW(Dynamic Time Warping)动态时间规整——简单易懂
DTW可以用来干什么呢?DWT可以计算两个时间序列的相似度,尤其适用于不同长度、不同节奏的时间序列(比如不同的人读同一个词的音频序列)。比如:DTW在语音中的运用:在实际应用中,比如说语音识别中的孤立词识别,我们首先训练好常见字的读音,提取特征后作为一个模板。当需要识别一个新来的词的时候,也同样提取特征,然后和训练数据库中的每一个模板进行匹配,计算距离。求出最短距离的那个就是识别出来的字了。那么距离如何计算呢,因为待识别的语音的长度和模板的长度不总是一直的,也很难做到一致,所以DTW就可以解决这个原创 2021-01-09 17:20:25 · 6485 阅读 · 1 评论 -
python的多线程和定时器
多线程和多进程的区别:比如你有好几个python的代码文件,如果你把他们都打开,都开始执行,那么这些同时被执行的文件再电脑中,就是多个进程。如果你执行的一个文件中,代码执行的顺序就是一个劲往下执行,只专注于当前的任务,那么该被执行的文件就是单线程的。如果在该文件中,不只有当下的任务,还有其他的任务需要在执行主任务的情况下,也有被执行的需求,那么该文件就是多线程的。所以,每个进程中可以有多个线程,线程是进程的子集。import threadingimport pyqtgraph as pgdef原创 2021-01-06 22:28:15 · 1069 阅读 · 0 评论 -
lightGBM参数解析及其参数调优
lightgbm是xgboost的加强升级版.LightGBM=XGBoost+Histogram+GOSS+EFB其中,Histogram算法是直方图算法,作用:减少后选分类点的算法GOSS是基于梯度的单边采样算法,作用减少样本数量EFB算法是互斥特征捆绑算法,作用是减少特征数量基于以上三个算法,LightGBM生产一片叶子需要的复杂度大大降低了,从而极大节约了计算时间。同时Histogram算法还将特征浮点数转换成0~255位的证书进行存储,从而集打节约了内存存储空间。代码举例:impor原创 2020-10-25 20:45:10 · 28371 阅读 · 7 评论 -
TPOT自动机器学习参数详解
TPOT自动机器学习参数详解分类:代码class tpot.TPOTClassifier(generations=100, population_size=100, offspring_size=None, mutation_rate=0.9, crossover_rate=0.1,原创 2020-10-25 15:20:48 · 4129 阅读 · 0 评论 -
训练集准确率很高,验证集准确率低问题
训练集在训练过程中,loss稳步下降,准确率上升,最后能达到97%验证集准确率没有升高,一直维持在50%左右(二分类问题,随机概率)测试集准确率57%在网上搜索可能打的原因:1.learning rate太小,陷入局部最优2.训练集和测试集数据没有规律3.数据噪声太大4.数据量太小(总共1440个样本,80%为训练集)5.训练集和测试集数据分布不同:如训练集正样本太少(训练集和测试集每次运行随机选择,故排除)6.数据集存在问题,如标注有问题(采用公开数据集,排除)7.学习率过大8.模型原创 2020-10-08 17:01:57 · 101546 阅读 · 130 评论 -
pytorch中反卷积torch.nn.ConvTranspose2d()的使用
卷积:class torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, groups=1, bias=True)蓝色为输入,蓝色上的阴影为卷积核(kernel),绿色为输出,蓝色边缘的白色框为padding反卷积:class torch.nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride=1, padding=0, o原创 2020-10-08 16:57:17 · 4992 阅读 · 13 评论 -
sys.path.append()、os.path.exists()、os.path.join()以及os.makedirs()含义
sys.path.append():当我们导入一个模块时:import xxx,默认情况下python解析器会搜索当前目录、已安装的内置模块和第三方模块,搜索路径存放在sys模块的path中:import syssys.path输出结果:['d:\\program\\anaconda3\\envs\\learn_py36\\python36.zip', 'd:\\program\\anaconda3\\envs\\learn_py36\\DLLs', 'd:\\program\\anaco原创 2020-10-07 17:45:43 · 1699 阅读 · 0 评论 -
GAN原理简单讲解即代码实现
GAN的基本原理其实非常简单,这里以生成图片为例进行说明。假设我们有两个网络,G(Generator)和D(Discriminator)。正如它的名字所暗示的那样,它们的功能分别是:G是一个生成图片的网络,它接收一个随机的噪声z,通过这个噪声生成图片,记做G(z)。D是一个判别网络,判别一张图片是不是“真实的”。它的输入参数是x,x代表一张图片,输出D(x)代表x为真实图片的概率,如果为1,就代表100%是真实的图片,而输出为0,就代表不可能是真实的图片。在训练过程中,生成网络G的目标就是尽量生成真实原创 2020-08-30 22:36:57 · 5111 阅读 · 0 评论 -
python中的argparse.ArgumentParser.add_argument()中的参数required
源码如下:parser = argparse.ArgumentParser()parser.add_argument('--trainRoot',required=True, help='path to dataset')parser.add_argument('--valRoot',required=True,help='path to dataset')直接在vscode中运行,出现如下问题:the following arguments are required: --trainRoot,原创 2020-08-23 17:01:52 · 4620 阅读 · 4 评论 -
python中的argparse —— 命令行选项、参数
在python代码中,经常会看到如下代码:import argparseparser = argparse.ArgumentParser()parser.add_argument('--trainRoot', required=False, help='path to dataset')parser.add_argument('--valRoot', required=False, help='path to dataset')parser.add_argument('--workers', t原创 2020-08-23 15:22:56 · 767 阅读 · 0 评论 -
python代码的中断调试操作
如果python的集成软件上,可以通过软件的自动调试程序对代码进行调试,比如VSCode.但是如果没有调试按键,该如何调试?可以是使用代码:import pdbpdb.set_trace() #--------------设置断点,可用于在终端的调试只需要把pdb写在需要断点的位置即可,代码执行到这里将自动中断,等待在终端输入调试命令。有如下命令:break 或 b 设置断点 continue 或 c 继续执行程序list 或 l原创 2020-08-17 11:30:20 · 1774 阅读 · 0 评论 -
Pandas中关于数据索引iloc()和loc()的用法和区别
Pandas中关于数据索引使用iloc()和loc()的区别导入train.csv数据import pandas as pdData=pd.read_csv('train.csv',index_col=0) #index_col=0把第一列作为行索引print(Data)使用iloc来索引数据时,不考虑真实数据的索引名,如上数据中的列索引"位置","区"等,可以直接使用索引0,1,2,3,4,…来作为第一列/行,第二列/行等的索引。a=Data.iloc[[1,2,3],[2,3,4]]#索原创 2020-07-14 18:24:03 · 1763 阅读 · 0 评论 -
如何解析模型代码的调用关系——以“ResNet网络模型的代码运行过程解析”为例
ResNet网络模型的代码运行解析过程本博客以ResNet50为例子,来解析代码运行的过程与函数解析:源码:如下之前一直为代码的复杂调用关系而感到头疼,看完之后虽然在脑子里能回想起来代码的流程,但是过了几天之后,这些典型的深度学习网络模型的代码又就忘记了,为了解决这个问题,我使用思维导图,来整理模型代码的整个流程,得到了很不错的效果,而且整个模型的函数调用也是一目了然!!!下次再看,也能很快想起来。我是用的是鱼骨思维导图:效果如下:与中间一跟鱼骨相连的骨刺是最先被运行的代码,然后在这个代码中如原创 2020-07-12 16:41:25 · 615 阅读 · 2 评论 -
python—查看不同版本的包和与之对应的python版本
python—查看不同版本的包和与之对应的python版本我们在给自己当前的python环境安装包时,经常会出现包与python 版本不匹配,而导致无法安装成功的情况,那么如何解决呢?解决办法如下所示:我们使用anaconda中的conda命令:以pytorch包为例:conda search pytorch用于查看不同版本的python版本可以安装哪些版本的pytorch,如下:现在验证一下,上面的匹配关系。python -V (查看当前环境下的python版本)我当原创 2020-06-07 10:50:25 · 12755 阅读 · 4 评论