python
xiaopengyaonixi
Enjoy life Enjoy coding
展开
-
基于Tensorflow的ResNet经典卷积神经网络的实现
1.关于ResNetResNet(Residual Neural Network)残差神经网络是由微软研究员的何凯明等人提出,该卷积神经网络达到了惊人的152层,在ILSVRC2015比赛中以top5错误率3.57%一举夺冠。相比较VGGNet,尽管ResNet模型的深度远远大于VGGNet,但是参数量确比较低。RestNet的提出的创新点在于引入了残差学习单元(Residual Unit)。该创新点受到了Shmidhuber2015年提出的HighwayNetwork的启发。Highway Net原创 2020-06-09 11:48:10 · 609 阅读 · 0 评论 -
基于Tensorflow的VGGNet16经典卷积网络模型的实现
1. 背景 2014年ILSVRC图像分类大赛上,VGGNet网络模型以top-5错误率 7.3%取得了第二名的成绩。相比较当年第一名的谷歌GoogleNet模型(InceptionV1)top-5错误率6.6%略逊一筹,然而,在将网络迁移到其他图片数据上应用时,VGGNet却比GoogleNet有更好的泛化性。该模型是由牛津大学计算机视觉几何组合Google DeppMind公司研究员合作开发的深度卷积神经网络。在整个网络中,全部使用了大小相同的卷积核3x3和最大池化核2x2。根据网络深...原创 2020-06-08 16:40:30 · 617 阅读 · 0 评论 -
基于Tensorflow的AlexNet经典卷积网络模型的实现
1.背景 Hinton的学生Alex Krizhevsky于2012年借助深度学习的相关理论提出了深度卷积神经网路模型AlexNet。同年在ILSVRC大赛上,该模型取得了top-5错误率仅为15.3%的好成绩,相比较于第二名的top-5错误率为16.2%以明显的优势胜出。从此Alex成为了CNN领域比较有标志性的一个网络模型。 AlexNet模型中自带了很多的开创新特点:AlexNet使用ReLu作为CNN的激活函数取得了成功,原因在于ReLu激活函数能够在较深的网...原创 2020-06-08 16:11:42 · 402 阅读 · 0 评论 -
基于Inception-V3模型的迁移学习在图像识别分类中的应用
1.背景 自1998年LeNet-5模型的提出一直到现在,卷积神经网络模型的层数和复杂度都发生了巨大的变化,下表中罗列了ILSVRC(Lareg Scale Visual Recognition Challenge)第一名模型的表现:年份 模型名称 层数 Top5错误率 2012 AlexNet 8 15.3% 2013 ZF Net 8 14.8% 2014 GoogLeNet 22 6.67% ...原创 2020-06-06 15:44:10 · 984 阅读 · 0 评论 -
基于Tensorflow的LeNet-5经典卷积神经网络模型的实现
1.背景 LeNet-5模型是Yann LeCun教授于1998年在论文Gradient-based learning applied to document recognition中提出,它是第一个成功应用于数字识别问题的卷积神经网络,其主要模型结构图如下:2.主要代码本文中的全部代码来源于TensorFlow实战Google深度学习框架第5、6章节。模型定义代码cnndemo.py:"""resnet5 手写字体识别"""import tensorflow...原创 2020-06-05 20:35:20 · 495 阅读 · 0 评论 -
PyQt5 使用 QAbstractTableModel 和 QTableView 组件实现分页效果展示
1.背景 项目中需要实现一个历史消息分页查看的功能,并能够对消息进行删除的操作。换做是在web网站里面,这是一个非常常规的功能,但是如何在桌面应用程序做到这一点,还需要花点心思去探索一下。不过无论桌面应用程序还是html网页,本质上开发的思路没有任何的区别。需要克服的难点问题就是,如何使用PyQt5 的组件来实现上述的功能。通过查阅QT的的资料文档,找到了两个组件可以实现这样的功...原创 2020-04-17 14:06:08 · 6834 阅读 · 4 评论 -
基于windows平台 PyQt5 程序打包后安装开机自动运行
目录1.背景 2.使用的打包技术 FBS 3.三种基于windows平台软件自启动方案4. 操作实验 4.1 Run/RunOnce Key 添加注册表的方式 4.2Start Menu/Startup Folder5.总结1.背景 本文主要实现了使用PyQt5开发软件完成后,打包软...原创 2020-04-15 17:40:00 · 1518 阅读 · 1 评论 -
python 实现仿微信聊天时间格式化显示
时间格式化所使用的算法为: """ 1.如果不在同一年 '%Y年%m月%d日' 2.如果在同一年 2.1 如果在同一个月 2.1.1 如果在同一天 '%H:%M' 2.1.2 如果是昨天 '昨天 %H:%M' 2.1.2 如果在同一周...原创 2020-04-15 00:28:17 · 374 阅读 · 0 评论 -
PyQt5 编写画布小程序
实现的效果图如下:该实例中,设计到的知识点 有:1.pyqt的常用的布局方式,这里使用到了QVBoxLayout,QHBoxLayout,如何灵活运用这些布局;2.常用组件的使用方法,这里使用到了QPushButton, QLabel, QPixmap;3.使用QPainter进行绘制;4.pyqt的事件与槽的用法;主要代码如下:import randomim...原创 2020-04-12 13:35:51 · 1867 阅读 · 0 评论 -
PyQt5编写登录页面
效果图:python代码:import sysfrom PyQt5.QtCore import Qtfrom PyQt5.QtGui import QPixmap, QPainter, QColor, QFont, QIconfrom PyQt5.QtWidgets import QWidget, QVBoxLayout, QApplication, QLabel, QDes...原创 2020-01-15 10:36:49 · 1249 阅读 · 0 评论 -
python 学习--定制类
# python 定制类class DStudent(object): # 初始化参数,类似于c# 和 java中的构造函数 # 没有'_'表示是公有字段外部可以访问 # 一个‘_'表示外部可以访问但是不建议访问 # 两个'__'表示外部不能访问 def __init__(self,name): self.__name = name转载 2016-10-20 11:26:24 · 303 阅读 · 0 评论 -
python 学习--线程池
from multiprocessing import Poolimport os,time,randomdef long_time_task(name): print('Run task %s (%s)...' % (name,os.getpid())) start = time.time() time.sleep(random.random()*3) e转载 2016-10-22 14:00:19 · 333 阅读 · 0 评论 -
python 学习 -- 分布式进程
服务器端:import random,time,queuefrom multiprocessing.managers import BaseManager# 发送任务的队列task_queue = queue.Queue()# 接收结果的队列result_queue = queue.Queue()class QueueManager(BaseManager): pas转载 2016-10-23 08:34:27 · 412 阅读 · 0 评论 -
python 学习 -- 正则表达式的使用
import re# 分割字符串的用法t = 'a b c'.split(' ')print(t)t1 = re.split(r'\s+','a b c')print(t1)t2 = re.split(r'[\s\,]+','a,b, c')print(t2)t3 = re.split(r'[\s\,\;]+','a b ;;; d , d,,sd')print(转载 2016-10-23 09:08:37 · 361 阅读 · 0 评论 -
python 学习--摘要算法的使用
import hashlib# md5算法md5 = hashlib.md5()md5.update('how to use md5 in python hashlib?'.encode('utf-8'))print(md5.hexdigest())# sha1算法sha1 = hashlib.sha1()sha1.update('how to use sha1 in'.enc转载 2016-10-25 15:13:14 · 587 阅读 · 0 评论 -
python 学习-- TCP编程
直接上代码:服务端:import socketimport threading,times =socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 绑定ip和端口s.bind(('127.0.0.1',9999))# 定义最大连接数s.listen(5)print('等待连接...')# 定义子线程处理的方法def t转载 2016-10-27 17:01:40 · 417 阅读 · 0 评论 -
python 学习-使用生成器输出杨辉三角和斐波拉契数列
# 定义输出杨辉三角的生成器def tran(max): n,L = 1,[1] while n<=max: yield L L1 = [0] + L[:] L = [L1[i+1]+L1[i] for i in range(len(L))]+[1] n = n+1 return "done"# 定义斐波原创 2016-10-19 09:41:54 · 503 阅读 · 0 评论 -
python 学习--map 和 reduce的使用
# 利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:['adam', 'LISA', 'barT'],输出:['Adam', 'Lisa', 'Bart']:def normalize(name): return name[0:1].upper()+name[1:].lower();L1 = ['adam','LISA','barT']原创 2016-10-19 14:18:07 · 315 阅读 · 0 评论 -
python 学习--使用filter来实现判断回文数
# python 判断回文数,将数字转化为字符转,然后倒序字符串,再转化为整数,和原来的数字比较def is_palindrom(n): return int(str(n)[::-1])==noutput = filter(is_palindrom,range(1,1000))print(list(output))转载 2016-10-19 16:07:49 · 696 阅读 · 0 评论 -
python 学习 -- json的序列化和反序列化
import jsonclass Student(object): def __init__(self,name,age,score): self.name = name self.age = age self.score = scores = Student('Bob',20,88)def studentparse(std):转载 2016-10-21 13:37:04 · 313 阅读 · 0 评论