自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dyh的博客

chill

  • 博客(64)
  • 收藏
  • 关注

原创 GPU提升多分类问题

多层线性网络这里,直接使用nn.Module搭建,与之前自定义搭建的三层网络一样,但注意这里用的激活函数是ReLU的改良后的LeakyReLU,能够避免在输入小于0时出现梯度弥散。使用GPU加速多分类问题,与上一篇文章中前几部分代码相同。设置GPU设备,并把网络和loss函数计算搬到GPU上。在任务管理器上看代码运行前后效果,验证是否使用了GPU。

2023-10-11 16:00:43 131

原创 交叉熵Loss多分类问题实战(手写数字)

7、训练及测试,并记录每轮训练的loss变化和在测试集上的效果。第一轮就达到了98的准确度,判断是初始化效果较好,在前几次测试中根据初始化的情况不同,初始准确率为50%-85%不等。2、加载mnist手写数字数据集,划分训练集和测试集,转化数据格式,batch_size设置为200。4、初始化参数,这一步比较关键,是否初始化影响到数据质量以及后续网络学习效果。3、定义三层线性网络参数w,b,设置求导信息。1、import所需要的torch库和包。6、选定优化器激活函数和loss函数。

2023-10-11 10:55:47 713

原创 2D函数优化实战

初始化起始点,再设置优化器,进行梯度下降优化。该函数有四个极小值点,值都为0。

2023-10-10 11:06:55 135

原创 激活函数与loss的梯度

激活函数:最开始由生物学家对青蛙的神经元机制进行研究发现,青蛙的神经元有多个输入x0、x1、x2,响应值是他们加权后的结果,但响应值如果小于阈值,则不会响应,而只有大于阈值时,才会有固定的响应。这就类似于阶梯函数但阶梯函数由于不连续,故不可导。科学家提出了连续光滑的激活函数:sigmoid / logistic。

2023-10-08 11:16:09 105

原创 高阶操作(where和gather函数)

原理:当满足condition条件时,输出tensor对应位置为x中该位置元素,反之为y中该位置元素。

2023-09-27 16:52:59 337

原创 tensor统计属性

就在使用argmin/max时会默认把张量打平,返回打平会所有元素中最小或最大值的索引,结果为单一标量。)只能输出目标维度最大值及其所在索引,top-k可根据k的大小,输出目标维度前k个元素值及其所在索引。对于向量来说,是向量中各元素的p次方和的p次根;而对于矩阵来说,是矩阵中对应位置元素的p次方和的p次根。)输出目标维度最大值及其所在索引,k-th输出的是第k小的数及其所在索引。至于是最大的k个数还是最小的k个数,取决于是否添加参数largest=False。是max函数中除了dim之外的另一个参数。

2023-09-27 11:59:49 201

原创 tensor数学运算

其中,mm只支持2d的tensor,不建议使用。将shape为(4,784)的x降维度到(4,512)总结:所有的次方运算都可以用pow()或运算符**实现。a.rsqrt() 是a.sqrt()结果的倒数。a.sqrt()相当于 a**(0.5)a.frac()分离出小数部分0.14。也可以是a.sqrt()**(-1)a.trunc()分离出整数部分3。a.floor()向下取整得到3。a.round()四舍五入得到3。a.ceil()向上取整得到4。#a为张量,x为次方数。用的较多的是梯度裁剪。

2023-09-26 17:57:31 110

原创 ternsor合并与分割

与concat相比,stack不同的是会创造一个新的维度。将这九名学生的成绩进行合并。可以根据长度和数量进行拆分。

2023-09-26 11:52:49 70

原创 broadcast自动扩展

注:在最小维度匹配,才能继续扩展。

2023-09-26 10:36:41 51

原创 tensor维度变换

expand改变了我们对数据的理解方式,但没有增加数据,repeat实实在在增加了数据,两种方法最终的效果是等效的,区别在于expand不会主动复制数据,只会在有需要的时候复制。原为 [b, c, h, w] -> 索引1、3维度交换顺序后为 [b, w, h, c]在a中插入维度指定索引:[-a.dim()-1, a.dim()+1)expand与repeat之间,推荐使用expand。要变回原shape,一定要保证w和h的顺序不乱!新插入一个维度,这个维度的插入不会改变数据本身。要人为跟踪好维度顺序。

2023-09-26 09:06:32 623

原创 索引与切片

其中,ind指的是张量a的第ind维索引,ind=0时,表示第0维即图片数量;idx1,idx2表示取索引是idx1和idx2的两幅图片。的使用仅仅是为了更方便,a[…]还是可以用a[:, :, :, :]表示。补:torch.take()方法也会把张量打平。多个索引与python稍微不一样,但很相似。这么做会把目标张量打平,结果dim=1。单个索引的方式与python一样。生成一个CNN的输入格式张量。

2023-09-25 16:47:50 159

原创 创建Tensor

torch.arange(min, max, step)# --> [min, max), step默认为1。要是想生成[0, 10)均匀分布的数值,10 * torch.rand_like(a)如:a = torch.rand(3 ,3) , (3, 3)是shape。torch.randn(3, 3), (3, 3)是shape。如: torch.randint(1, 10, (3, 3))若torch.eye(3,4),则多余的第四列数值均为0。torch.eye(3)则生成3*3的单位矩阵。

2023-09-25 10:49:37 61

原创 pytorch张量数据类型

pytorch不是一个完备的语言库,而是一个面向数据计算的GPU加速库,对str字符类型没有直接支持的对应数据类型。注:CPU和GPU的tensor不是同一类型,可以使用.cuda(),a.cuda()可以返回一个gpu上的引用。注: 主要用在 1、Bias,2、batch为1,dim为1.图片打平后的线性输入。假如有5句话,每句话10个单词,batch设置每次处理8个单词。较广泛适用于图片数据处理,如CNN:[b, c, h, w]标量是最简单的数据类型,dim为0。则输入为[8,5,10]

2023-09-22 10:30:31 253

原创 pytorch学习3(pytorch手写数字识别练习)

按之前设想的三层线性模型嵌套的思想搭建模型,为了模型简单,第三层不加激活函数。设置三层网络,一般最后一层激活函数不选择relu。取一些样本看数据的shape以及图片内容。2、展示部分测试样本原图以及预测标签结果。1、计算准确率acc。

2023-09-21 16:01:10 247

原创 pytorch学习2

给到一个新的x,在经过三组w,b的线性模型和激活函数的计算后,得到的pred结果是[1,10]的矩阵,其中值的大小表示所在位置索引数字的判断概率大小,通过argmax()函数实现,最终结果输出的是最大0.8概率对应的索引数字“1”。其中,每个数字图片大小是28 x 28,矩阵中每个元素的大小为[0,1]区间的灰度值,将二维矩阵拉平(flat)为一维784,数据量不变,这样能忽略上下位置相关性,甚至左右位置相关性也可忽略,再插入一个维度变为[1,784]H1作为H2的输入,H2作为H3的输入。

2023-09-20 16:41:52 83

原创 pytorch学习1

王者之争核心之争在于动态图优先还是静态图优先pytorch是动态计算生成新变量tf是先定义变量,再生成。

2023-09-20 15:21:09 95

原创 HCIA笔记-1 网络基础

①发生端②接收端③介质④数据⑤协议注:通信是双向的,发送端发送数据到接收端,接收端也要回复。

2022-09-07 16:54:46 280 1

原创 牛客网Linux专项练习错题or不熟悉题总结

解析:uptimevmstatsar可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、、效率、使用状况、进程活动及IPC有关的活动等,但是不能查看网络接口信息。网络接口信息使用ifconfig可以查看free。

2022-09-07 15:50:12 439

原创 php扩展memcache功能模块及nginx高速缓存

官网httpOpenResty是一个基于Nginx与Lua的高性能Web平台,其内部集成了大量精良的Lua库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态Web应用、Web服务和动态网关。OpenResty通过汇聚各种设计精良的Nginx模块(主要由OpenResty团队自主开发),从而将Nginx有效地变成一个强大的通用Web应用平台。以上所说的OpenResty的特点也是它的优势之处2、...

2022-07-15 21:54:07 658

原创 lnmp架构php安装

LNMP是web应用软件组合一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的WEB应用程序平台。LNMP架构通信过程LNMP是一个cs架构的平台(client/server架构,即客户端/服务器架构)web客户端基于TCP/IP通过http协议发起请求,这个请求可能是动态的也可能是静态的,所有的服务器通过发起请求的后缀来判断。如果是静态的就由web服务器自己处理,然后将资源发给客户端。下载路径PHP。...

2022-07-15 10:41:41 831

原创 nginx重定向与防盗链

如果别人将其他域名绑定到你服务器的公网IP上,就会大量的耗你网站的流量1)如果直接访问ip,返回500错误代码 客户端测试: 访问IP,返回500错误 2)通过重定向解决测试:curl命令访问ip,被重定向到www.westos.org上 80端口重定向到443 测试: 1)bbs.westos.org论坛是挂载在www.westos.org域名下,也就是www.westos.org/bbs迁移目标:当访问www.westos.org/bbs域名时,重定向到域名bbs.westos.org首先,在配置

2022-07-07 20:11:55 678

原创 nginx --goaccess访问日志可视化

1、下载1.4版本安装包2、编译安装3、软件使用安装完成后,开启服务并打入后台 此时我们就可以通过 172.25.254.1/report.html 查看网页监控: 测试:

2022-07-07 17:04:25 267

原创 nginx -- location匹配优先级

匹配模式含义解释以上模式按优先级从高到低的顺序排列,即精确匹配优先级最高,最后是通用匹配,当匹配成功的时候就停止向下匹配,按当前匹配规则处理请求

2022-07-07 12:05:03 661

原创 nginx参数设置及优化

查看系统进程,nginx进程的用户是nobody,在系统中添加用户nginx,并设置配置文件用nginx用户身份启动nginx程序 nginx -s reload 加载后用户改变:创建并编写nginx.service文件,放入/usr/lib/systemd/system目录 systemctl daemon-reload 重新加载系统配置文件,之后就可以通过systemctl命令启动关闭nginx服务1、2、...............

2022-07-07 11:01:01 2601

原创 nginx七层负载均衡配置

目录一、负载均衡介绍1)四层负载均衡2)七层负载均衡3)四层与七层区别二、nginx下载安装1、下载nginx源码包2、安装并启用三、nginx七层负载均衡配置real server设置:nginx配置:客户端设置:测试: 四、nginx扩充调度算法(sticky)1.下载扩展包2.编译前做一些优化:3.重新编译测试:nginx网站域名:http://nginx.org/2、安装并启用解决:继续编译 解决:编译成功 此时生成了文件Makefile,此文件会指导我们进行make(将

2022-07-04 22:08:47 1772

原创 列表排序 2021-10-28

排序:将一组‘无序’的记录序列调整为‘有序’的记录序列列表排序:将无序列表变为有序列表输入:列表输出:有序列表内置排序函数:sort()常见排序算法排序Low B三人组:冒泡排序选择排序插入排序排序NB三人组:快速排序堆排序归并排序其他排序希尔排序计数排序基数排序冒泡排序(Bubble Sort)(这里说的是排成升序)列表每两个相邻的数,如果前面比后面大,则交换这两个数。一趟排序完成后,则无序区减少一个数,有序区增加一个数。比如列表1-

2022-07-02 16:23:08 135

原创 ansible_1初学之安装与部署

前言:实验环境设置为了实验需要,配置三个虚拟机,一台ansible主机和两台受控主机在配置虚拟机前,将主机设置为路由器,因为ansible需要虚拟机上网下载[root@westos_student72 Desktop]# firewall-cmd --add-masquerade success1、ansible主机设置设置主机名称、配置网卡、设置开机为无图形网络模式[root@westos_ansible ~]# hostnamectl set-hostname westos_ansibl

2022-07-02 16:22:47 230

原创 查找算法(简单)【剑指offer】

剑指 Offer 03. 数组中重复的数字解题思路:利用数据结构特点,容易想到使用哈希表(Set)记录数组的各个数字,当查找到重复数字则直接返回注:可以查找学习一下python中的set()函数用法算法流程:1.初始化: 新建 HashSet ,记为 dic2.遍历数组 nums 中的每个数字 num :  当 num 不在 dic 中,将 num 添加至 dic 中  当 num 在 dic 中,说明重复,直接返回 num ;class Solution: def fin

2022-07-02 16:22:23 68

原创 查找算法(中等)【剑指offer】

剑指 Offer 04. 二维数组中的查找解题思路1:遍历二分查找(时间复杂度大于n平方)class Solution: def findNumberIn2DArray(self, matrix: List[List[int]], target: int) -> bool: n = len(matrix) if n == 0: return False m = len(matrix[0]) if m == 0: return

2022-07-02 16:22:06 66

原创 搜索与回溯算法(简单)【剑指offer】

剑指 Offer 32 - I. 从上到下打印二叉树解题思路:题目要求的二叉树的 从上至下 打印(即按层打印),又称为二叉树的 广度优先搜索(BFS)BFS 通常借助 队列 的先入先出特性来实现算法流程:1.特例处理: 当树的根节点为空,则直接返回空列表 [ ] ;2.初始化: 打印结果列表 res = [ ] ,包含根节点的队列 queue = [root]3.BFS 循环: 当队列 queue 为空时跳出  a.初始化一个tmp列表用于添加下一层节点  b.遍历当前层节点: 

2022-07-02 16:21:54 76

原创 LVS负载均衡全解析

  客户通过本地设置dns获得hosts文件,dns解析CDN(需要厂家购买的服务或者自研),CDN进入企业内部的VIP上,一般公司会把VIP强制到路由器上,路由器通过OSPF协议走等价路由(例一致性哈西算法),通过路由协议分发到例如LVS调度节点CDN:Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率

2022-06-16 22:38:52 576

原创 字符串(简单)【剑指offer】

剑指 Offer 05: 替换空格解题思路:遍历添加在 Python 和 Java 等语言中,字符串都被设计成「不可变」的类型,即无法直接修改字符串的某一位字符,需要新建一个字符串实现算法流程:初始化一个 list (Python) ,记为 res遍历列表 s 中的每个字符 i:  当 i 为空格时:向 res 后添加字符串 “%20”  当 i 不为空格时:向 res 后添加字符 i将列表 res 转化为字符串并返回列表遍历拼接class Solution: def

2022-05-27 10:54:34 58

原创 链表(简单)【剑指offer】

是啥

2022-05-27 10:53:06 112

原创 栈与队列(简单)【剑指offer】

1.剑指offer09:用两个栈实现队列题意):思路):函数设计题目只要求实现 加入队尾appendTail() 和 删除队首deleteHead() 两个函数的正常工作,因此我们可以设计栈 A 用于加入队尾操作,栈 B 用于将元素倒序,从而实现删除队首元素。a、加入队尾 appendTail()函数: 将数字 val 加入栈 A 即可b、删除队首deleteHead()函数: 有以下三种情况:①当栈 B 不为空: B中仍有已完成倒序的元素,因此直接返回 B 的栈顶元素。②否则,当 A

2022-05-27 10:52:54 104

原创 codis部署

1.go环境安装部署压缩包位置在/root下cd /usr/local/lstar zxf /root/go1.8.3.linux-amd64.tar.gz cd ~vim .bash_profile#PATH=$PATH:$HOME/bin:/usr/local/go/bin/source .bash_profile go version ##检测 go version go1.8.3 linux/amd642.codis环境安装部署将codis安装在go目录下

2022-01-20 18:00:25 169

原创 【LVS负载均衡】

一、LVS  LVS(Linux Virtual Server)即Linux虚拟服务器,是一个虚拟的服务器集群系统,在unix/linux平台下实现负载均衡集群功能。LVS是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。  跟据LVS工作模式的不同,真实服务

2022-01-12 19:15:09 262

原创 rhel7虚拟机封装

一、安装虚拟机选择本地7.6镜像安装虚拟机创建好后重启进入无图形界面:二、虚拟机母盘封装前的一些配置设置1、关闭selinux刚安装的虚拟机上没有vim,用vi编辑文件/etc/sysconfig/selinux编辑完后需要reboot重启生效2、关闭防火墙和网络管理器3、设置网络4、修改主机名并设置地址解析5、配置软件仓库并下载一些常用工具设置好地址解析后本地主机ssh [email protected]三、封装虚拟机1、

2022-01-12 16:03:08 249

原创 [五]网络文件系统

一、sambasmb = Server Message Block windows系统共享文件时用到的协议smbcifs = Common Internet File System Linux 系统共享文件时用到的协议cifs实际上smb和cifs是一回事1、samba安装和启用[root@westosa100 ~]# dnf install samba samba-common samba-client -y[root@westos_studen

2021-12-03 19:51:58 830

原创 【六】企业dns服务器搭建

一、关于dns1、dns名词解释dns:domain name service(域名解析服务)提供域名解析,主要分为dns服务端的搭建和测试端测试两部分内容2、关于客户端指向文件:/etc/resolv.confnameserver 172.25.254.72用于测试的命令:host www.baidu.com#地址解析命令dig www.baidu.com#地址详细解析信息命令其他一些内容A记录 ##ip地址叫域名的Address记录SOA ##授权起始主机dns顶级

2021-11-30 22:09:57 2390

原创 【四】数据库mysql的基本管理

一、数据库的介绍1.什么是数据库数据库就是个高级的表格软件2.常见数据库Mysql Oracle mongodb db2 sqlite sqlserver …3.数据库中的常用名词名词解释字段表格中的表头表表格库存放表格的目录查询对表格中的指定内容进行查看4.Mysql (SUN----> Oracle)mysql数据库本来是SUN公司的,后来SUN公司被甲骨文Oracle公司收购。mysql数据库后来更名为mariadb.二、mar

2021-11-30 15:39:39 712

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除