笔记
文章平均质量分 62
李峻枫
这个作者很懒,什么都没留下…
展开
-
【pytorch】LSTM神经网络
在处理时序数据,已经有和两个比较经典的网络。当然还有一种LSTM神经网络,长短期记忆神经网络。从发展历史来看,是现有LSTM再有GRU的,但是从复杂度来看,LSTM比GRU更加复杂。先来回忆一下GRU,其有两个门(更新门和重置门),有一个记录历史信息的向量Ht。而LSTM就更加复杂了,无论是在门的数量上还是记录历史信息的向量上。...原创 2022-07-27 11:44:57 · 2790 阅读 · 2 评论 -
GRU神经网络
通过重置门与更新门,GRU神经网络能够更好地记录历史信息。原创 2022-07-26 11:36:04 · 2458 阅读 · 0 评论 -
RNN循环神经网络
RNN神经网络是一种处理时序数据的简单模型,其的应用十分广泛。原创 2022-07-25 21:34:39 · 494 阅读 · 0 评论 -
【pytorch】CNN实战-花朵种类识别
采用CNN神经网络中经典的resnet18模型,对Flowers数据集进行分类。运用了图像增广技术与微调技术,在5轮训练后正确率超过了90%,在经过15轮训练后,精度可以达到97%。原创 2022-07-25 20:37:14 · 3241 阅读 · 1 评论 -
多目标检测
这是最简单的情形,只需要判定一张图片是属于哪一个类别即可。这种图像往往有一个非常显著的特殊,就是图像主体清晰且突出。但是日常生活中这类图像并不多,更多的是一张图片中包含了多个主体,此时单纯的目标分类就无法满足了,需要使用多目标检测。...原创 2022-07-24 20:25:35 · 3639 阅读 · 0 评论 -
【pytorch】微调技术
训练神经网络是一件非常耗费时间的事情,其需要大量的算力以及大量的数据。显然从头开始训练并不是明智之选,利用好已有的资源才是明智之选。原创 2022-07-24 19:57:12 · 610 阅读 · 0 评论 -
【pytorch】图片增广
在神经网络的训练过程中,往往需要大量的图片,大量的数据,否则可能会造成过拟合与欠拟合。然而并非都能找到合适的数据,因为标注标签的成本太高了,因此非常有必要利用好手上现有的数据。...原创 2022-07-24 19:28:12 · 597 阅读 · 0 评论 -
从全连接到卷积
作为图像处理中的一大核心工具,卷积已经应用在各个方面。但是卷积是如何而来的呢?从某种意义上来说,我们可以认为卷积是一种特殊的全连接,它就是从全连接层,根据某些图片的特点,演变而来的。因为全连接网络在处理图片上存在着很多问题。......原创 2022-07-17 20:38:02 · 784 阅读 · 0 评论 -
神经网络中的数值稳定性问题
数值稳定性,这个说起来简单但真正碰到确实一个非常难的问题,而且它十分的重要。当神经网络在训练的过程中,碰到NAN和inf的时候,是最为恼火的,这严重地影响了训练。有的时候,模型不断训练但没有结果也可能是数值稳定性问题。...原创 2022-07-17 17:30:37 · 768 阅读 · 0 评论 -
【pytorch】线性神经网络
回归是一种能更加多个变量之间的关系进行建模的一种方法,其在机器学习中有着官方运用。线性回归是其中最最最最简单的一种,其假设自变量与因变量之间是线性关系。利用pytorch就可以简单地写出线性回归的代码。...原创 2022-07-14 20:00:41 · 386 阅读 · 0 评论 -
【pytorch】简单的线性回归模型
回归是一种能更加多个变量之间的关系进行建模的一种方法,其在机器学习中有着官方运用。线性回归是其中最最最最简单的一种,其假设自变量与因变量之间是线性关系。利用pytorch就可以简单地写出线性回归的代码。...原创 2022-07-14 19:46:07 · 864 阅读 · 1 评论 -
Jupyter botebook开机自启动
jupyter notebook是一个非常好用的记事本,其不仅仅可以写代码,也可以写文字等,相比于纯代码,其更有容易读懂。而且jupyter notebook是一个网页,可以非常简单地打开。相比于服务器的命令行界面,它图形化操作更加容易被用户接收。通过远程连接,就可以轻松地访问服务器上面的jupyter notebook了。但是如果每次都需要先连接服务器启动notebook的话,也十分麻烦,因此我们需要将其设置为一个后台服务。这一点非常重要,也为了避免后面的操作频繁地输入。...原创 2022-07-09 15:32:56 · 911 阅读 · 0 评论 -
微分与梯度
在最优化的过程中,常常需要用到导数,比如最经典的随机梯度下降法,其原理就是每次选取梯度最大的方向,对参数值进行修改。根据标量与向量,我们可以简单的分为4类。原创 2022-07-08 11:44:43 · 588 阅读 · 0 评论 -
jupyter notebook远程连接
jupyter notebook是一个非常好用的记事本,其不仅仅可以写代码,也可以写文字等,相比于纯代码,其更有容易读懂。而且jupyter notebook是一个网页,可以非常简单地打开。相比于服务器的命令行界面,它图形化操作更加容易被用户接收。...原创 2022-07-07 21:38:16 · 2344 阅读 · 1 评论 -
Numpy的基本用法
Numpy是一个python用来处理数学问题的包,全程是Numerical Python。其最重要的一点就是,提供了n维数组,弥补了list的不足。而且Numpy还有一个优势,就是快。它可以利用矩阵的计算优化,比用循环计算要快很多。.........原创 2022-07-07 10:00:28 · 510 阅读 · 0 评论 -
Heroku搭建简单网站
在这个“互联网+”时代,搭建一个普通的网站可以说是一个必备技能了。利用Github与Heroku配合,就可以简单地搭建出一个网站,更重要的是,这两个东西都是免费的。原创 2022-07-06 19:41:07 · 2397 阅读 · 1 评论 -
MiniConda在Ubuntu终端的安装
Miniconda是一款小巧玲珑但是非常好用的软件,其大小只有不到百MB,对于服务器等是非常方便的。其安装过程非常简单,而且可以完全在终端内完成。原创 2022-07-04 10:37:19 · 445 阅读 · 0 评论 -
Control Unit 控制部件
在控制部件中,通过对指令编码的 op 、func 字段进行逻辑运算,来输出对应的控制信号。此模块仍然采用了门级实现,门级实现的代码虽然较为繁琐冗长,但是其更有利于我们理解电路内部的逻辑。...原创 2022-07-03 17:03:20 · 774 阅读 · 0 评论 -
ALU逻辑运算单元
根据(二)中对单周期 CPU 的定义,该模块需要实现以下 4 类运算:加、减、按位与、按位或。因此需要 2 bit 的控制信号 Aluc 来控制 ALU 的运算类型。原创 2022-07-03 16:55:01 · 1282 阅读 · 0 评论 -
卷积神经网络——卷积层
卷积神经网络中,最重要的就是卷积层,它负责从图片中提取特征信息。原创 2022-07-03 16:33:08 · 1968 阅读 · 0 评论 -
卷积神经网络简介
卷积神经网络(Convolutional Neural Networks, CNN)原创 2022-07-03 10:54:13 · 782 阅读 · 0 评论 -
Excel2016里查询并引用功能
大数据时代,使得分析整理数据变得非常重要, Excel2016是一个很好的工具。引入如果想查询表格中一个东西,可以直接用Ctrl+F进行搜索。 如果需要查找的东西变得越来越大,这样做就显得很繁琐。 如果还需要将查找的东西提取并整理处理,就会更加麻烦。具体用法vlookup函数就可以很好地解决这个问题。 vlookup用法: vlookup(需要查找的东西,查找并引用源,查找到的位置往后几列原创 2017-10-25 08:05:52 · 5057 阅读 · 0 评论 -
Excel中的相对引用和绝对引用详解
在表格里面,经常会拖动函数来整理数据。 但不同的引用方式,可能导致拖动函数的结果不同。引用方式1、= a1,这种引用方式会在拖动的时候行列都改变。 2、=a1,这种引用方式会在拖动的时候列改变。3、=aa1,这种引用方式会在拖动的时候列改变。 3、=a1,这种引用方式会在拖动的时候行改变。 4、绝对引用,这种引用方式在拖动的时候都不会改变。2、3两种方式称之为相对引用。实例第一种的引用方式原创 2017-10-25 22:45:07 · 9423 阅读 · 0 评论 -
过拟合与正则化
过是一个神经网络训练过程中,经常会遇到的问题,简单来说,就是模型的表现了,学习能力太强了,以至于把训练集的所有细节都记录下来了。当遇到测试集,就是之前完全没有见过的数据的时候,就会出现明显的错误。...原创 2022-07-02 20:07:31 · 230 阅读 · 0 评论 -
常见的最优化方法
在神经网络的训练中,其本质就是找到合适的参数,使得loss function最小。然而这个最小值实在是太难求了,因为参数太多了。为了解决这个问题,目前有几种常见的最优化方法。这是最最最经典的一个算法,也是比较常用的方法。相比于随机搜素,这个方法已经非常优秀了,但是仍然存在着一些不足。由于梯度的性质,决定了其很难在部分地方能够改进,但是对于步长这个超参也可以有优化。...原创 2022-07-02 11:37:50 · 1039 阅读 · 0 评论 -
Ubuntu安装mujoco_py的各种错误及处理办法
Ubuntu安装mujoco_py的各种错误及处理办法原创 2022-04-13 15:10:49 · 3324 阅读 · 0 评论 -
Vim中安装自动补全插件YouCompleteMe
前言自动补全:YouCompleteMe可以说是Vim中最好用的插件了,但是它的安装也可以说的上是Vim中最难的一个了。往往会出现各种错误,在还没有享受到这个插件给我们带来的快感时就会被安装的各种错误劝退。此处提供一种能正确安装的方法。安装过程先克隆代码:git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe涉及到github,故安装的时候需要保持畅通的网络,以免出现问题。进入到对应的文原创 2022-04-03 20:01:23 · 2462 阅读 · 1 评论 -
Vim配置Python环境
Vim是一款非常好用的IDE,特别是在Linux中。但是其的配置过程十分麻烦。原创 2022-04-03 19:28:35 · 2799 阅读 · 1 评论 -
Ubuntu 安装mujoco
前言mujoco是一个非常实用的强化学习的环境。安装环境ubuntu20下载先去其官网下载安装包。下载地址选择下载200 linux版本,一个压缩包。获取密钥同样是在官网上,任何人都可以获取,直接下载一个txt文件即可。解压首先,需要建立一个文件夹,在根目录:mkdir ~/.mujoco将压缩包复制过去:cp ~/Downloads/mujoco200_linux.zip ~/.mujoco/进入~/.mujoco,使用unzip命令解压。复制密钥将下载的txt文件复制过去。原创 2022-03-29 22:07:27 · 1301 阅读 · 0 评论 -
Ubuntu更换下载源
由于种种原因,在使用apt-get命令的时候总会出现各种各样的问题,比如说下载速度慢,或者出现W: Failed to fetch http://cn.archive.ubuntu.com/ubuntu/dists/precise/InRelease情况。在国内有着不少的镜像提供,包括清华大学、阿里云等在这里推荐使用清华大学提供的镜像。1 查看镜像链接ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror根据不同版本的Ubuntu系原创 2022-02-07 10:12:57 · 6466 阅读 · 0 评论 -
Ubuntu安装LaTeX
1 前言LaTeX是一个非常好用的东西,其在编写数学公示的时候非常方便,其将文章的排版以代码的形式呈现,这种方式很符合程序员以及科学工作者的审美和工作习惯。2 Texlive简介TeX Live 是 TUG (TeX User Group) 维护和发布的 TeX 系统,可以说是「官方」的 TeX 系统。其相比其他的系统优势在于能够保证更新,兼容性强,也能保持在跨操作系统平台、跨用户的一致性。3 安装Texlive在终端安装,输入如下命令:sudo apt-get install texlive-原创 2022-02-07 09:56:11 · 5630 阅读 · 1 评论 -
U盘Linux启动引导
前言在给U盘安装系统的时候,很有可能不小心将启动引导安装到别的地方。而将U盘中系统的启动引导安装到别的地方时候就会造成非常麻烦的后果。比如电脑启动的时候可能会因为引导出错(找不到U盘,因为没插U盘),出现如下界面而U盘插在别的电脑上因为没有启动引导,导致其无法启动。因此在U盘上设置一个启动引导就非常重要。1 查看分区情况打开gparted即可看到当前分区情况,分出一块几十M的区域,格式化为fat32格式。查看其信息,并记录下UUID,如AAAA-0000。...原创 2022-01-30 16:15:51 · 3051 阅读 · 0 评论 -
U盘安装Ubuntu
U盘安装Ubuntu原创 2022-01-30 16:06:51 · 9069 阅读 · 0 评论 -
U盘安装Ubuntu——准备篇
安装Ubuntu之前的准备工作原创 2022-01-30 15:44:38 · 1938 阅读 · 0 评论 -
【神经网络实战】MNIST
经过一段时间的学习,终于要迎来这个激动人心的时刻了,我们要开始写我们自己的神经网络了!不过在此之前还是先回顾一下之前所学到的知识。回顾与复习Python是一门比较简单的语言,本次实战就是用Python来写的,因此先要在电脑上安装好Python。我们从最简单的感知机开始,渐渐地推广到多层的感知机。在引入了激活函数后,实现了从感知机到神经网络质的飞跃。然后我们开始了解神经网络的结构,深入地了解输出层是如何设计的,在此基础上又理解了信息是如何在神经网络中正向传递的。最后,我们了解了一些微积分的知识,学会了原创 2021-08-16 22:26:00 · 719 阅读 · 0 评论 -
【神经网络实战——MNIST】网络的设计
整体架构MNIST是一个比较简单的数据集,因此也无需设计过于复杂的神经网络。因此我们就选择最简单的三层神经网络,即输入层,输出层,隐藏层。现在就分别对每一层进行设计。输入层MNIST的图片大小是28×2828\times 2828×28,图片非常小,一共也就784像素,因此完全没有必须用到卷积神经网络来处理。输入层就设计有784个结点,每个结点代表一共像素。这样就可以很好地把整张照片的信息全部地记录下来,并全部传入神经网络。输出层这显然十分分类问题,一共有10类,即数字0到9。因此输出层只原创 2021-08-16 10:12:33 · 495 阅读 · 0 评论 -
MNIST
MNIST概述这个是一个公开的手写数字数据集,被用于各种各样的场合,从平时的练习到各种学术论文中,都能看到这个数据集的身影。内容这个数据集包含训练集和测试集两个部分。训练集这是由六万28×2828\times2828×28的照片组成的,每张照片都有一个标签,告诉我们这张照片上写的是什么数字。测试集这里面有一万张照片,照片大小与训练集一样,每张照片同样也有一个标签。这里的一万张照片中的每张照片与训练集不一样。下载下载链接:http://yann.lecun.com/exdb/mnist/原创 2021-08-16 09:55:25 · 256 阅读 · 0 评论 -
神经网络的训练——边权的更新
训练的目的在更新边权之前,必须先要清晰地知道我们的目的是什么。显然,我们想要神经网络的结果与正确的结果一模一样(虽然真不太现实,但是理想总是要有的)。如果用严格一点的数学语言来表达,就是想办法使得输出层的损失函数趋于0!修改边权的核心思想——随机梯度下降法先来观察一下输出层的损失函数与什么有关,最直接的就是与输出层结点的权值有关,再进一步输出层的权值又与连接隐藏层和输出层直接的边权、隐藏层结点的权值有关。接着往下寻找,不难看出来,输出层的损失函数是一个关于所有边权的多元函数,其涉及到元的个数是非常原创 2021-08-16 09:00:49 · 486 阅读 · 0 评论 -
神经网络的训练——误差的反向传递
计算出输出层结点的误差非常容易,但是其他结点的误差该如何计算呢?一种简单粗暴的方法直接将当前结点的误差平均分给每一个与它相连的结点。这样做简单粗暴,非常好实现,但是这样子做符合逻辑吗?很显然非也!考虑两个与它相邻的结点,其中一个结点的边权为100000100000100000,另一个结点的边权为0.00000010.00000010.0000001,这里的权值有些夸张,只是为了更加凸显出这种问题。如果将误差平均分给这两个结点的话,那么边权非常小的那个结点所被分配到的误差就太大了。因为它边权那么小原创 2021-08-15 16:14:13 · 626 阅读 · 0 评论 -
神经网络的训练
在了解了信息是如何在神经网络中的传递,并知道了如何设计输出层之后,那么神经网络的询问操作就已经基本上学习完了。但是,训练该如何进行呢?神经网络训练的基本思路单个数据独立训练具体步骤:1.将训练的数据输入神经网络,并得到一个输出的结果。2.将正确的结果与当前输出结果作比较,计算出误差。3.对这个误差进行学习。其实第一步就是神经网络的询问操作,而第二步在输出层的设计中也有所提及。当输出层的损失函数与激活函数为特定的函数,这里的误差就为输出结果与正确结果的差分,非常容易计算。一般情况下,我原创 2021-08-15 12:56:52 · 4759 阅读 · 0 评论