PYTHON
Airuio
这个作者很懒,什么都没留下…
展开
-
Python中的特殊方法__XX__的理解
类,是Python 中的核心概念,方法是类的动作,分为类方法、实例方法、静态方法以及特殊方法。特殊方法通常会放在类的结尾处定义,其格式为:def __XXX(特殊方法名字)__(shelf,arg*) return XXXX其作用是为类实现一些特殊的类操作eg:class A: def __init__(self, x): slef...原创 2018-05-23 11:26:17 · 2337 阅读 · 1 评论 -
torch学习系列一
一.pythorch的张量类似numpy的nadarry,而且可以支持GPU优化。a.其构造方法有一下一些:x = torch.empty(5, 3)x = torch.rand(5, 3)x = torch.zeros(5, 3, dtype=torch.long)x = torch.tensor([5.5, 3])x = x.new_ones(5, 3, dty...原创 2019-03-28 09:26:13 · 641 阅读 · 0 评论 -
读取/加载全部文件的路径的方法---glob
imagedata = [] imagefilenames=[] for basedir in ['./miniImagenet_46/']: print(basedir) alphabetdirs = glob.glob(basedir+'train') print(alphabetdirs) for al...原创 2019-03-19 10:19:34 · 469 阅读 · 0 评论 -
一个标准的resnet网络,包含18-150层
import torch.nn as nnimport torch.utils.model_zoo as model_zoo__all__ = ['ResNet', 'resnet18', 'resnet34', 'resnet50', 'resnet101', 'resnet152']model_urls = { 'resnet18': 'https...原创 2019-03-19 10:15:59 · 2420 阅读 · 0 评论 -
Python实现感知机算法
感知机算法是机器学习最基本的理论算法之一,其原理如下图所示:该算例和应用以及数据集可从博主的github内下载:https://github.com/Airuio/python-其python代码如下:improt numpy as np class perceptron(object): def __init__(self,eta = 0.1,n_iter = 10): s...原创 2018-07-07 12:39:17 · 3789 阅读 · 2 评论 -
Python实现大规模机器学习和随机梯度下降法
上一片讲解了Python实现批梯度下降法(batch gradient desent),不同于感知机算法每次计算一个样本就更新一次结果,BGD算法 在计算完所有样本一轮以后才更新一次权重,这样当样本量巨大的时候极大的影响了效率,因而出现了新的随机梯度算法(Stochastic gradient desent)其也被称为迭代/在线梯度下降,其每次只用一个样本对权重进行更新。除此之外还有最小批...原创 2018-07-08 15:26:26 · 885 阅读 · 0 评论 -
Python实现梯度下降法及算例分析以及可视化
代码和算例可以到博主github中下载:https://github.com/Airuio/Implementing-the-method-of-gradient-descent-by-using-Python-上一篇讲解了最原始的感知机算法,该算法的目的只为收敛,得到的往往不是基于样本的最佳解,梯度下降法以最小化损失函数为目标,得到的解比原始感知机算法一般更准确。梯度下降法算法原理如下图所示:基...原创 2018-07-08 09:21:14 · 4652 阅读 · 2 评论 -
Python装饰器的理解
装饰器是Python中广泛运用的一种技术,主要可以起到代码复用减小代码量,增强代码可读性的作用。要理解装饰器先要理解两个概念,闭包和参数寻找优先级。闭包可以参看上一篇博客的介绍,参数寻找优先级概念如下:当我们使用到某个参数a时,会自动按顺序去寻找a的定义,在python中是可以在多出定义a的值且调用的值还不一样,这就是由于参数寻找优先级的不同导致的,参数寻找优先级可以用四个字母(按优先级别从高到低...原创 2018-05-29 17:45:35 · 386 阅读 · 0 评论 -
Python中闭包的理解
闭包在Python中是一把双刃剑,在解决某些问题上面有提高效率的作用,但是若是理解不充分则容易出问题。闭包的本质是函数在调用子函数的过程中的参数传递,即def 函数A(x,y): x=1 y=2 def 函数B(z): print(x+y+z)B(3)返回 6闭包即函数A调用了B,B引用了A的参数,A返回B的结果的形式,本质是函数A的局部参数供给函数B使用...原创 2018-05-23 18:59:32 · 394 阅读 · 1 评论 -
Python中特殊方法的分类与总结
以下为转载:Python 用下划线作为变量前缀和后缀指定特殊变量_xxx 不能用’from module import *’导入__xxx__ 系统定义名字__xxx 类中的私有变量名核心风格:避免用下划线作为变量名的开始。 因为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用下划线作为变量名的开始。一般来讲,变量名_xxx被看作是“私有的”,在模块或类外不可以使用...转载 2018-05-23 11:32:23 · 4778 阅读 · 0 评论