Python
文章平均质量分 56
Anakin6174
这个作者很懒,什么都没留下…
展开
-
textCNN原理简介与工程实现
textCNN原理简介与工程实现textCNN是启发于图像处理领域的CNN,将其改造应用于文本领域。原论文是纽约大学Yoon Kim发表于EMNLP 2014的Neural Networks for Sentence Classification;论文显示,只是简单的在word2vector加入textcnn层,在很多公开数据集的任务上性能都得到了很好的提升。下面从textcnn的原理介绍和代码实现两个方面来具体介绍。1,textCNN原理介绍textCNN网络结构很清晰,基本下面这张图就说清楚该模型原创 2021-09-29 16:41:00 · 957 阅读 · 0 评论 -
大文件读取首行末行
文件太大时,一般不能直接打开,用程序读取时也不能直接读取到内存,否则导致内存不足,只能部分读取。def read_big_file(filepath): with open(filepath,mode='rb') as f: # 打开文件 first_line = f.readline() # 读第一行 off = -50 # 设置偏移量 while True: f.seek(off, 2) # seek(off, 2原创 2021-01-22 15:23:01 · 237 阅读 · 1 评论 -
Python解析json文件
日常编程工作中,JSON是接口传递数据的默认格式,对json文件的解析是很常见的步骤。Python的第三方库JSON让解析json文件变得很简单。1,读取json文件json文件内容本质上字符串,当我们拿到json文件后只有转换成字典才方便使用,方便获取需要的字段;import json# json示例{ "version": "1.0", "modelinfo": [ { "versionid": "V1", "netypes": ["ITBBU"],原创 2020-08-20 20:28:22 · 390 阅读 · 0 评论 -
搭建神经网络八股功能增强
资料来源:北京大学 曹建教授的课程 人工智能实践:TensorFlow笔记使用八股搭建神经网络参考:https://blog.csdn.net/Anakin6174/article/details/108046166这次是增强版。其中二三四五步是大家调试模型常用的步骤。代码示例:import tensorflow as tfimport osimport numpy as npfrom matplotlib import pyplot as pltnp.set_printopti原创 2020-08-17 23:19:32 · 315 阅读 · 1 评论 -
用tensorflow.keras模块化搭建神经网络模型
资料来源:北京大学 曹建教授的课程 人工智能实践:TensorFlow笔记使用八股搭建神经网络其中第三步使用Sequential只能搭建简易的全连接模型,如果是有跳转的卷积网络或者其他复杂设计的网络需要自己创建一个类来设计;利用鸢尾花数据集来搭建网络举例:# 用sequential或自己搭建model类import tensorflow as tffrom sklearn import datasetsimport numpy as npx_train = datasets.lo原创 2020-08-16 23:19:00 · 626 阅读 · 0 评论 -
python中self的简明介绍
在Python的类的实例方法第一个参数都是self,下面的文章对此有一个深入简明的介绍:https://www.programiz.com/article/python-self-why转载 2020-07-23 19:13:37 · 115 阅读 · 0 评论 -
list与string转换
list与string是常用的数据类型,有时候需要相互转换;一个常见的操作:ls3 = [3,47,5]st = str(ls3)print(st)new_list = list(st)print(type(new_list))print(new_list)#输出"""[3, 47, 5]<class 'list'>['[', '3', ',', ' ', '4', '7', ',', ' ', '5', ']']"""可见,将list转成string很容易,反过原创 2020-07-06 20:03:14 · 2638 阅读 · 0 评论 -
python多线程编程笔记
多线程编程多线程编程对于具有如下特点的编程任务而言是非常理想的:本质上是异步的;需要多个并发活动;每个活动的处理顺序可能是不确定的,或者说随机的、不可预测的。这种编程任务可以被组织或划分成多个执行流,其中每个执行流都有一个指定要完成的任务。根据应用的不同,这些子任务可能需要计算出中间结果,然后合并为最终的输出结果。计算密集型的任务可以比较容易地划分成多个子任务,然后按顺序执行或按照多线程方式执行。而那种使用单线程处理多个外部输入源的任务就不那么简单了。如果不使用多线程,要实现这种编程任务就需要为串行程序原创 2020-07-06 19:49:10 · 152 阅读 · 0 评论 -
car-price-deeplearning-0411
import pandas as pdimport numpy as npfrom sklearn.preprocessing import MinMaxScalerfrom sklearn.model_selection import train_test_splitfrom tensorflow import kerasfrom sklearn.metrics import mean...原创 2020-04-11 16:57:14 · 475 阅读 · 0 评论 -
Python实现定时任务
看到的一个例子,亲测有效from threading import Timerimport psutilimport timeimport datetimedef MonitorSystem(logfile = None): cpuper = psutil.cpu_percent() mem = psutil.virtual_memory() memper ...原创 2020-04-08 17:14:16 · 203 阅读 · 0 评论 -
sklearn数据预处理
sklearn.preprocessing包提供了一些常用的工具函数来对数据进行预处理。一般来说,机器学习算法在经过预处理的数据上能够取得更好的效果。1, 标准化数据集的标准化是许多在scikit-learn中实现的机器学习估计器的普遍要求。如果各个特征看上去或多或少不像标准正态分布数据,则它们的性能可能会很差:平均值和单位方差为零的高斯。在实践中,我们经常忽略分布的形状,而只是通过删除每个...原创 2020-03-20 16:45:55 · 372 阅读 · 0 评论 -
python中函数传递参数是值传递还是引用传递?
python中函数传递参数是值传递还是引用传递?严格来说,应该都不是;正确的叫法应该是传对象,或者说传对象的引用。Python 函数中,参数的传递本质上是一种赋值操作,而赋值操作是一种名字到对象的绑定过程。函数参数在传递的过程中将整个对象传入,对可变对象的修改在函数外部以及内部都可见,调用者和被调用者之间共享这个对象,而对于不可变对象,由于并不能真正被修改,因此,修改往往通过生成一个新对象然后...原创 2020-02-25 10:40:10 · 452 阅读 · 0 评论 -
更改Jupyter Notebook默认打开目录
Jupyter notebook是anaconda下面的一个交互式的编辑器,非常方便好用。在默认情况下,打开的目录是user目录下,很多其他文件也存储在此目录下,比较混乱,我们可以自己单独设置一个目录。在之前使用anaconda2版本的时候,直接修改配置文件即可:C:\Users*用户名*.jupyter目录下有jupyter_notebook_config.py文件,编辑此文件中的c.No...原创 2020-02-06 10:09:50 · 365 阅读 · 0 评论 -
Python编程惯用法
1,数据交换值的时候不推荐使用中间变量一般交换两个值是借助中间变量来实现,不过Python有更简单的实现方式:X, Y = Y, X这种方式耗时少,代码也更加简洁。之所以能这样,因为一般情况下Python的表达式的计算顺序是从左到右,但是遇到表达式赋值的时候,表达式右边的操作会先于左边的操作数计算,因此表达式 exp3, exp4 = exp1, exp2 的计算顺序是exp1,exp2–...原创 2020-02-03 11:00:43 · 214 阅读 · 0 评论 -
pandas采坑记录
记录工作中使用pandas遇到的小坑------吃一堑,长一智1,pandas中merge两个df,若有重复数据,会造成输出项多了(笛卡尔乘积式增长),话不多说,举例如下:import pandas as pdimport numpy as npdf1 = pd.DataFrame()df1['A'] = [1,1,1,2,2]df1['B'] = [3,3,3,4,5]# 输出d...原创 2019-12-24 10:56:03 · 299 阅读 · 0 评论 -
python 多进程之multiprocessing
由于Python的全局解释器锁(GIL)的限制,每次只有一个线程在运行,这导致使用多线程在Python程序中并不能提高性能,只有在IO密集型任务中才稍稍有点用处。要想充分利用CPU资源,这个时候就得用多进程。1,简单的使用from multiprocessing import Processimport timeimport osdef run(name): while Tru...原创 2019-12-19 20:28:32 · 304 阅读 · 0 评论 -
吴恩达 深度学习 第二课 第二周 作业Optimization+methods
直接导入jupyter文件,部分图片显示不出来,其他的都还好。Optimization MethodsUntil now, you’ve always used Gradient Descent to update the parameters and minimize the cost. In this notebook, you will learn more advanced optim...原创 2019-07-31 15:51:11 · 897 阅读 · 0 评论 -
Python数据科学手册(2)---Numpy
有效的存储和操作数值数组是数据科学中绝对的基础,Python中有专门的包Numpy和Pandas来应对,本文主要介绍Numpy.1、理解Python中的数据类型Python的一个易用之处在于动态输入。静态语言(如Java,C)往往需要每一个变量明确的声明,而动态语言可以跳过这个规定。...原创 2018-12-23 10:23:25 · 210 阅读 · 0 评论 -
基于TensorFlow的深度神经网络简介
Tensorflow之深层神经网络1,深度学习与深层神经网络维基百科对深度学习的定义:一类通过多层非线性变换对高复杂性数据建模算法的合集。深层神经网络是实现多层非线性变换的最常用方法,因此实际中深度学习成为深层神经网络的代名词。深度学习有两个重要特性:多层和非线性。1.1 线性模型的局限性y = (xw_1)w_2 = x(w_1w_2) = xw_1从上面这个推理可以看出线性的两层神...原创 2019-09-25 11:14:14 · 612 阅读 · 0 评论 -
深度学习第五课 第二周 作业1 编程练习 Operations+on+word+vectors+-+v1
Operations on word vectorsWelcome to your first assignment of this week!Because word embeddings are very computionally expensive to train, most ML practitioners will load a pre-trained set of embedd...原创 2019-09-08 16:25:08 · 854 阅读 · 0 评论 -
Python数据科学手册(5)--- 机器学习
Python数据科学手册最后一章讲的是机器学习,这是一个很大的课题,每一种算法都可以钻研,远不是一篇文章能讲清楚的,这里主要总结一下书中关于特征工程的课题。俗话说,巧妇难为无米之炊。在机器学习中,数据和特征便是“米”,模型和算法则是“巧妇”。对于一个机器学习问题,数据和特征往往决定了结果的上限。特征工程是对原始数据进行一系列工程处理,将其提炼为特征,作为输入和算法和模型使用。分类特征一种常见...原创 2019-01-21 22:36:51 · 210 阅读 · 0 评论 -
详解Python装饰器
装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量与函数功能本身无关的雷同代码并继续重用。看到一篇博客写的很完善,转载下来网址:https://www.cnblogs....转载 2019-01-15 19:17:13 · 112 阅读 · 0 评论 -
Python数据科学手册(4)---matplotlib数据可视化
matplotlib是Python实现可视化的第三方库,具有良好的操作系统兼容性,支持几十种图形显示接口和输出格式,称为数据科学中不可或缺的一部分。1,常用技巧1.1 导入matplotlibimport matplotlib.pyplot as pltplt是最常用的接口。设置绘图样式:使用plt.style来选择图形的绘图风格plt.style.use('classic')如...原创 2019-01-13 21:44:36 · 287 阅读 · 1 评论 -
Python数据科学手册(3)--- Pandas数据处理
Pandas是数据科学家极喜欢的一个库,因为它集成了很多方便的功能,处理数据高效方便,当然1000多页的文档也令人生畏;一般情况下是掌握基本的操作方法后,之后在工作中需要什么功能再去查找;本文也不再描述其基本用法,只记录自己工作中的一些积累;有一个非常好的文档介绍入门知识,基本能应对80%以上的数据处理任务:十分钟搞定Pandas: http://python.jobbole.com/84416...原创 2019-01-03 22:04:59 · 281 阅读 · 0 评论 -
Python数据科学手册(1)---IPython
本文主要是看完Python数据科学手册第一章的笔记IPython是一种交互式的Python开发环境,在数据探索阶段非常有用,下面是对它的用法特性的简单介绍。1,IPython的帮助和文档a: 用符号?获取文档,类似于Python的内置函数help()help(len) 等价于 len?b: 用??获取源代码c. 用Tab补全的方式探索模块包含对象内容的Tab自动补全;导入时的Tab...原创 2018-12-16 22:36:25 · 229 阅读 · 0 评论 -
Python日志记录之logging模块
Python中提供了logging模块来支持日志的记录一, 使用场景在开发过程中,如果程序运行出现了问题,我们是可以使用我们自己的 Debug 工具来检测到到底是哪一步出现了问题,如果出现了问题的话,是很容易排查的。但程序开发完成之后,我们会将它部署到生产环境中去,这时候代码相当于是在一个黑盒环境下运行的,我们只能看到其运行的效果,是不能直接看到代码运行过程中每一步的状态的。在这个环境下,肯定...原创 2018-12-09 21:28:43 · 185 阅读 · 0 评论 -
python同级目录导入问题
在PyCharm2017中同目录下import其他模块,会出现No model named …的报错方法:1,这是因为PyCharm不会将当前文件目录自动加入source_path。在当前目录右键make_directory as–>Sources Root2,如果导入的目录没有__init__.py文件,pycharm并不能识别其为Python包,也会出现导入出错,这样只需添加一个...原创 2018-11-28 17:26:47 · 3979 阅读 · 0 评论 -
Python求两个列表的差集,并集,交集
Python求两个列表的差集,并集,交集Python中经常需要对两个列表求差集,并集和交集,方法如下:1,差集a = [1,2,3,4]b = [2,3,4,5]re = [ i for i in a if i not in b ]# 方法二re = list(set(a) ^ set(b))# 方法三re = list(set(b).difference(set(a)))...转载 2018-11-21 19:25:20 · 1568 阅读 · 3 评论 -
安装第三方库失败PermissioError(win10)
记录一下在给Python安装第三方库的时候出现问题,系统是win10.电脑安装了anaconda,自带了很多第三方库,但是有些库还是的自己安装。在安装xgboost的时候出现安装失败。从出错信息来看,下载应该没问题,只是安装的时候出错了,是权限问题;解决方案:只需将pip 安装后面加上“–user”,亲测有效。也试过另外一种方法,但是不成功,这里也记录一下:...原创 2019-03-23 09:47:29 · 700 阅读 · 0 评论 -
Python实现switch方法
在很多编程语言中都有switch/case语法,但是Python中并没有switch语句。相应的应对方法除了if-else语句外,还可以用字典dict来实现;举例如下:import outer_funclass PythonSwitch(): def __init__(self): self._operator_map = { 'A': s...原创 2019-03-28 18:53:18 · 3641 阅读 · 1 评论 -
pandas常用小技能
pandas是数据处理中常用的第三方库,有很多小技能可以方便的实现一些功能。1,字符替换 replace举例:df = df.replace(regex={’#’: ‘’})可以将文件中的‘#’替换为空。replace的基本结构是:df.replace(to_replace, value) 前面是需要替换的值,后面是替换后的值对部分列进行替换:df[‘col_name’].replac...原创 2019-05-06 19:11:48 · 314 阅读 · 0 评论 -
吴恩达 深度学习 第一课第二周 课后习题
补充第二周的作业,这次作业主要就是搭建一个简单的逻辑回归的模型。第二节习题,只选取之中的部分内容sigmoid函数:def sigmoid(z): """ Compute the sigmoid of z Arguments: z -- A scalar or numpy array of any size. Return: s -- si...原创 2019-07-27 15:02:43 · 535 阅读 · 0 评论 -
吴恩达 深度学习 第一课第四周 课后习题
这一周的习题是搭建了一个两层和多层的神经网络,做完这一课的作业,以后无论搭建什么结构的网络都会轻轻松松了。第一次作业:用到的工具包dnn_utils_v2:import numpy as npdef sigmoid(Z): """ Implements the sigmoid activation in numpy Arguments: Z --...原创 2019-07-27 14:37:27 · 618 阅读 · 0 评论 -
深度学习 第二课 第一周 作业3
Gradient CheckingWelcome to the final assignment for this week! In this assignment you will learn to implement and use gradient checking.You are part of a team working to make mobile payments availa...原创 2019-08-01 10:29:58 · 242 阅读 · 0 评论 -
深度学习 第二课 第一周 作业1
InitializationWelcome to the first assignment of “Improving Deep Neural Networks”.Training your neural network requires specifying an initial value of the weights. A well chosen initialization metho...原创 2019-08-01 10:23:14 · 431 阅读 · 1 评论 -
一行式编程:列表辗平、简易Web Server
列表辗平您可以通过使用itertools包中的itertools.chain.from_iterable轻松快速的辗平一个列表。下面是一个简单的例子:a_list = [[1, 2], [3, 4], [5, 6]]print(list(itertools.chain.from_iterable(a_list)))# Output: [1, 2, 3, 4, 5, 6]# orprin...原创 2019-07-09 18:55:36 · 204 阅读 · 0 评论 -
pycharm 显示当前 python 文件下的函数和类的列表
显示每个py文件里面的类和方法,方便快速跳转。方法一(推荐):左侧 project 工具栏窗口顶部那个齿轮有个 show member 选项,默认是不开的,勾选后 py 文件会显示内部定义的 class 和 method每个文件可以自由选择折叠还是展开方法二:只能对选择某个文件来展开...原创 2019-06-09 16:22:36 · 18829 阅读 · 0 评论 -
看一遍就懂的python生成器
首先理解三个名词:可迭代对象(Iterable)迭代器(Iterator)迭代(Iteration)可迭代对象(Iterable):Python中任意的对象,只要它定义了可以返回一个迭代器的__iter__方法,或者定义了可以支持下标索引的__getitem__方法(这些双下划线方法会在其他章节中全面解释),那么它就是一个可迭代对象。简单说,可迭代对象就是能提供迭代器的任意对象。迭代器(...转载 2019-06-13 19:32:20 · 162 阅读 · 0 评论 -
python对日期时间处理
python处理时间的模块有三个:datetime,time,calendar;datetime模块主要是用来表示日期的,就是我们常说的年月日时分秒,calendar模块主要是用来表示年月日,是星期几之类的信息,time模块主要侧重点在时分秒,粗略从功能来看,我们可以认为三者是一个互补的关系,各自专注一块。1,time模块1.1 时间的获取、表示、转换time模块获取时间的基本方法:tt ...原创 2019-05-30 17:04:52 · 1880 阅读 · 0 评论 -
Python函数式编程常用函数简介
Python函数式编程常用函数简介函数式编程是一种编程泛型,它将计算机运算视作数学上的函数计算,并且避免使用程序状态以及易变对象,可以程序变得简洁高效,是Python的一大特色。在Python中,函数式编程主要由几个函数的使用组成:lambda(), map(), reduce()和filter()。下面逐一介绍:lambda简单来说,编程中提到的 lambda 表达式,通常是在需要一个函...原创 2018-10-24 21:18:38 · 270 阅读 · 0 评论