Linux中vi与vim的使用

一、vi与vim的联系与区别vim是在vi的基础上进行的改进,现在的Linux应该默认都有,可以使用命令进行测试,如在终端键入vi,然后按两次tab键,如果显示只有vi和vim-tiny,则需要安装完全版的vim,如果只显示vi,则表示没有安装vim,需要全新安装yum install -y vim另外,在终端中输入vi有的是进入vim工作模式,软连接形式。二、vim中的三种工作模式1、命令模式类型命令:说明光标定位G : 跳至文件最后一行,光标停在行首g
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

每天进步一点点《ML - K-means》

一些前提的约定,还是沿用上篇文章的哈。先来致敬下男神。一:聚类就我个人而言,学到了这里,是让我非常激动的事情,因为K-means这个算法是我学习到的第一个非监督学习算法,也是第一个聚类算法。所谓的无监督学习,就是对于样本来说,我们不知道它的输出,或者不知道它的标签是什么,我们唯一知道的就是样本空间内,各个样本的特征向量。所谓聚类,就是通过某种算法,自动将在特征空间内相似的样本聚合在一起组成一个类簇(cluster),通过自动的样本聚类,帮助人们发现样本之间的分布和类群特征。比如在文章分类中,通过提
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

每天进步一点点《ML - DBSCAN》

一些前提的约定,还是沿用上篇文章的哈。先来致敬下男神。一:DBSCAN介绍有一堆样本点,在特征空间内,样本之间有稀疏之分,所以呢有一种就是基于密度的聚类算法,就把密切紧密挨着的点,认为是一个簇,密度小的点,认为是噪声点。它比仅仅考虑距离的K-means算法优点是:这个算法不仅仅考虑距离,正中啊哟考虑密度,这样一来就是可以发现任意形状的样本簇。二:算法介绍好比一个人群,自动的进行聚合找朋友圈,一开始所有的人都没有分类,随机找到一个未分类的人,就好比是找朋友,给定某个圈子范围大小,如果以你为中心,你
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

每天进步一点点《ML - 基于层次的聚类》

一些前提的约定,还是沿用上篇文章的哈。先来致敬下男神。一:层次聚类(Hierarchical Clustering)介绍它也是聚类算法的一种,也是我学习的第三种聚类算法,通过计算样本点之间的相似性,也可以理解成距离,构建出一个嵌套层次聚类树,有两种方式,一个是自下而上的合并法,一个是自上而下的分裂法,本文讲解更容易理解的合并法。如上图所示,不断地将样本汇聚成小的簇,再将晓得簇不断重复该过程汇聚成更大簇。二:算法介绍简单的说层次聚类的合并算法是通过计算每一个类别的数据点与所有数据点之间的距离来确
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

每天进步一点点《ML - 异常点检测》

一些前提的约定,还是沿用上篇文章的哈。先来致敬下男神。一:异常点检查(Anomaly Detection)这一章节相对来说简单很多,也可以说是很大程度是概率论的知识内容了。异常点,和大部分正常状态下表现上不一致的点,就叫做异常点,举个例子,我们分析统计用户的行为,并提取某个特征,或者一个月内去的次数,和一个月内去网吧的时长,如下图:很明显,我们会把红色点的行为定义为不正常的,去的少,上网时间还挺长,看来存在巨大网瘾啊,运用某个模型检测过来,对应到具体人,警察就可以出动强制了,这样及早帮助父母发现
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

数学与算法《TF-IDF》

TF-IDF零:寒暄寒暄昨天看了一天的CNN,结果被深度学习的深度给深深地深刻地深埋了(是叹服了),今天想换换脑子,去综结一下之前学习的《数学之美》里面介绍的算法和数学,下一篇再搞几篇深度学习的学习笔记。一:TF-IDF简介这个是用来提取文章或者网页关键字的算法,我们每一篇文章或者,都是有核心讨论主题,因此如何提取器关键内容的词汇呢?当然你可以说出非常多的方法,但是这里有个非常简单的数学算法,不用特别复杂和高深即理论,一般的学过高中数学的人都能明白的,就是此文的主题,TF-IDF。它是一种计算词语
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

数学与算法《文档相似性 - 余弦定理》

TF-IDF零:寒暄寒暄昨天看了一天的CNN,结果被深度学习的深度给深深地深刻地深埋了(是叹服了),今天想换换脑子,去综结一下之前学习的《数学之美》里面介绍的算法和数学,下一篇再搞几篇深度学习的学习笔记。手里没机器,慢慢先学习,等我回国了再搞机器。一:深入浅出现在,我有两篇文档,如何计算两篇文档的相似程度的呢?因此,这两句话变成了两个向量,每个元素是词语出现的个数,现在问题就变成了两个向量之间的相似性对比,那么就可以用到余弦定理了。两个向量之间的夹角越小,那么两个向量之间的方向越相近,也相
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《图像卷积》

骚话一下:今天是2020年10月1号,是祖国的71岁生日,也是传统节日中秋节,而我由于工作的安排身在海外不得回家,怀念祖国的乡土,倍加思念远方的亲人。由于疫情,在这里哪里也去不了,只能好好学习,用学习来充实这八天假期。本文完全是为了给CNN做铺垫。一:图像卷积算法至于卷积的含义,以及在连续数据的卷积和离散数据的卷积概念和公式我就不说了,不清楚的同学请自行百度,我就直接上过程,直接给出图像的卷积的计算过程。数字图像是一个二维的离散信号,对数字图像做卷积操作其实就是利用卷积核(卷积模板)在图像上滑动
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《CNN架构》

摘要:今天来写第一篇深度学习的博文,也是学习CNN的第一篇。骚话一下:今天是2020年10月1号,是祖国的71岁生日,也是传统节日中秋节,而我由于工作的安排身在海外不得回家,怀念祖国的乡土,倍加思念远方的亲人。由于疫情,在这里哪里也去不了,只能好好学习,用学习来充实这八天假期。一:CNN的灵感起源也许CNN就是深度学习过程中的必须且最基础的网络结构了,下面我们先来回顾下传统的神经网络的网络结构。每一层的节点都是和前一层或者后一层的每个节点都是相连接的,分为输入层,隐藏层和输出层。我们所学习的C
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《CNN架构续篇 - 正则化》

前言:这篇是在前面CNN博文的基础上扩展出来写的,前面也说了这一篇需要单独拿出来。正则化就是为了防止模型过拟合。在机器学习的篇幅分类里也有一片是讲正则化的,那一篇是专门只讲解了L2正则化,而且也写出了在线性回归,逻辑回归,神经网络的代价函数的表达式。一:L2正则化这里再次简要提一下,最常见的正则化方式就是L2正则化,在代价哈数后面加上正则项式子,作为对参数的“惩罚”。求导也很简单,这里不再赘述之前所讲了。这里主要想讲一下一个新的防止过拟合的方法。二:Dropout这个思想来自遗传学,好吧,当
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《CNN架构续篇 - 梯度下降的优化》

骚话一下:今天是2020年10月2号,继续学习。本文依然是《CNN架构》的延续博文,重点介绍优化的新的梯度下降算法。一:梯度下降的种类说到梯度下降的方法,确实是求最优解的比较好的途径了,一步一步通过迭代到达最优解,之前在机器学习的博文里面,我们也是学习到了梯度下降的很多运用场景。今天我们来说一下,我们之前学习的梯度下降的算法,我们还有哪些优化的方式。梯度下降有是三个种类。1)批量梯度下降(Batch Gradient Descent)简单理解就是每一次迭代,都是根据所有的样本计算更新参数的。
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《CNN架构续篇 - 1乘1卷积》

这里专门花一个小篇幅介绍下1*1卷积核。承上启下,为后面的内容做学习铺垫。一:11 卷积的操作实践卷积核一般有11,33,55的卷积核,今天来说说这个1*1卷积的使用,假如,步长Stride=1,Padding=1,那么根据之前的计算公式,输出图像就是和输入图像的大小(长度和宽度)是完全一样的了,而且,因为1×1卷积核只有一个参数,那么实际上也就是给元乳香乘以了某个系数,完全的线性变化(也可以理解成一个数字和一个矩阵的数乘运算的过程,多个通道的情况就是多个数乘的结果累加而已)。比如下面的计算过程:
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《CNN架构续篇 - BatchNorm》

一:batch NormalizationBN算法的灵感来自于对图像的白化操作,白化就是对输入图像数据分原始分布规律转换到N(0~1)的分布,这样会使得收敛速度变快。在深度网络中每一隐藏层的输入都可以做这样的白化处理呢?随着网络深度的增加,收敛变慢的的原因还有就是数据的分布会变得越来越畸形,数据分布法还是能移动,这也是会导致梯度消失的原因,因此在每个隐藏层如果都做一个Normalization 的操作,那么就会消除数据不同特征之间的分布的特征范围差异,减少梯度消失的可能性。算法一共有四个步骤,包括计
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习《CNN架构续篇 - 学习率衰减》

截图来自于吴恩达的深度学习视频。我们在参数更新的时候,存在一个步长α,这个参数代表了我们每一轮迭代在梯度方向上要进步的步伐长度,以前呢骂我们都是设置成规定值,那么有什么影响呢?首先简单不用说了,在某个梯度下降的过程中,在谷底(梯度最低值)的时候,可能出现始终徘徊到达不了最低点,甚至反而出现越来越大不收敛的情况,原因就是步长一致导致的,因此有个优化方式就是,将固定的步长α改成变化的值,怎么变呢?如下图,在固定步长下,在最优值附近会产生剧烈抖动,可能无法达到最优解。1) 随着迭代次数的增长逐渐减少,使用
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

《Pytorch简要安装指导》

在举国欢庆的时候,我只能苦逼地待在家学习,欧洲的疫情太严重,哪里都去不了。之前我们学习了一些机器学习算法和深度学习的算法,理论知识毫无疑问必不可少,但也不能缺少实践,今天就用业界流行的深度学习框架来进行一些实践,会大大减少我们的学习时间成本,正所谓工欲善其事必先利其器。让我们开始第一步,安装PyTorch。一:安装AnacondaAnaconda 是安装管理python软件包的软件,含有命令集conda。1:打开链接:https://www.anaconda.com/products/individ
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

《Pytorch - 线性回归模型》

2020年10月4号,依然在家学习。今天是我写的第一个 Pytorch程序,从今天起也算是入门了。就从简单的线性回归开始吧。话不多说,我就直接上代码实例,代码的注释我都是用中文直接写的。import torch# Step 1: ========创建模型========# 定义一个类,继承自 torch.nn.Module,torch.nn.Module是callable的类# 在整个类里面重新定义一个线性回归模型 y = wx+b# 整个子类需要重写forward函数,class L
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

《Pytorch - 逻辑回归模型》

2020年10月4号,依然在家学习。今天是我写的第二个 Pytorch程序,从今天起也算是入门了。这里是简单的实现了逻辑回归开始。回顾线性回归,线性模型如下 y = wx + b,图画的丑了,意思到了就行。回顾逻辑回归,线性模型如下 y =σ(wx + b) ,图画的丑了,意思到了就行。也就是逻辑回归其实就是在之前的线性回归的基础上增加了一个 sigmoid函数层。而且误差损失函数也会发生变化,需要使用二分类的误差损失函数,具体细节在很早的博文机器学习里面有介绍,这里就不多赘述了。话不多说,
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

《Pytorch - BP全连接神经网络模型》

2020年10月4号,国内已经5号凌晨了,依然在家学习。今天是我写的第三个 Pytorch程序,从今天起也算是入门了。这一次我想把之前自己手写的matlab实现的简易的传统的BP神经网络在Pytorch上重新实现一遍,想看看对比和效果差异。这一次我设计的是一个四个层的全连接网络[784, 400, 200, 100, 10]的网络,输入层是400个节点,输出层是10个节点。其他的都是隐藏层,这里每一层节点的输出我用的是ReLu函数作为激活函数。测试数据依然是MNIST数据集。核心步骤描述如下:1:
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

《Pytorch - CNN模型》

2020年10月5号,依然在家学习。今天是我写的第四个 Pytorch程序, 这一次我想把之前基于PyTorch实现的简易的传统的BP全连接神经网络改写成CNN网络,想看看对比和效果差异。这一次我设计的是一个两个卷积层,两个全连接层的网络,模型如下描述。# 输入数据维度是[batch_size, 1, 28, 28], 批量是batch_size, 每个Img的通道是1, 图片大小是28*28# 第一层卷积核维度是[1, 10, 5 ,5], 输入通道是1, 输出通道是10, 卷积核大小是 5*5
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0

深度学习 《RNN模型》

前言:前几篇博文里面我们学习了传统的BP神经网络,你可以称为她是全连接的网络,也可以称之为DNN(denisty nextwork),也学习了卷积神经网络,在卷积神经网络里面还学习了池化等结构,并且在pytorch 上都拿MNIST数据集做了测试,总体感觉提取了特征后的CNN确实要比普通的神经网络效果要好一些。今天我们学习另外一种网络结构RNN,它具有什么特征结构呢?我们来一起学习下,只能说网络种类太多了。一:RNN的介绍之前我们学习的BP,CNN都具有一个共同的特点就是,每时每刻的输出都是且仅仅与当
分类: 其他 发布时间: 10-25 08:41 阅读次数: 0