
人工智能
孙ちゃん(颖)♂
一点点前进~
展开
-
Jupyter Notebook导入anaconda的虚拟环境的一些问题
Jupyter Notebook是非常方便的Python IDE,安装anaconda后Jupyter NoteBook也会安装好,使用起来十分方便。当anaconda使用的多了之后,会有创建多个虚拟环境来兼容不同版本的python环境及安装包的需求,这时再使用Jupyter Notebook时就需要制定使用的虚拟环境的需求。其实使用虚拟环境非常简单,只需要安装一个nb_conda包就可以直接使用了。创建tf虚拟环境:conda install tensorflow==1.14conda ins原创 2020-09-09 20:23:48 · 461 阅读 · 0 评论 -
pillow常用图像处理功能总结
PIL:Python Imaging Library,是Python环境下最受欢迎的图像处理库之一。pillow简单优雅而功能强大,是图像相关机器学习任务中算法工程师的亲密合作伙伴。pillow如下16个常用的图像处理功能:1.图片读写2. 图片与array互转3. 图片与string互转4. 图片由彩色转灰度5. 图片通道分离与合并6. 调整图片尺寸7. 截取图片部分区域8. 图片旋转9. 图片翻转10. 提取图片边缘11. 图片高斯模糊12. 在.原创 2020-09-03 13:18:13 · 1653 阅读 · 0 评论 -
深度学习必须掌握的 13 种概率分布
作为机器学习从业者,你需要知道概率分布相关的知识。这里有一份最常见的基本概率分布教程,大多数和使用 python 库进行深度学习有关。一 概率分布概述 共轭意味着它有共轭分布的关系。 在贝叶斯概率论中,如果后验分布 p(θx)与先验概率分布 p(θ)在同一概率分布族中,则先验和后验称为共轭分布,先验称为似然函数的共轭先验。共轭先验维基百科在这里(https://en.wikipedia.org/wiki/Conjugate_prior)。 多分类表示随机方差大于 2。转载 2020-09-03 11:07:27 · 232 阅读 · 0 评论 -
PyTorch 关于多 GPUs 时的指定使用特定 GPU
PyTorch 中的 Tensor,Variable 和 nn.Module(如 loss,layer和容器 Sequential) 等可以分别使用 CPU 和 GPU 版本,均是采用.cuda()方法.如:import torcha = torch.Tensor(2, 3)if torch.cuda.is_available(): # 判断是否支持 CUDA a.is_cuda # False a = a.cuda() # 放到 GPU 上 a.is_cud..原创 2020-07-18 10:38:50 · 4303 阅读 · 0 评论 -
随机池化(Stochastic Pooling)
前言 CNN中卷积完后有个步骤叫pooling, 在ICLR2013上,作者Zeiler提出了另一种pooling手段(最常见的就是mean-pooling和max-pooling),叫stochastic pooling。只需要对Feature Map中的元素按照其概率值大小随机选择,元素选中的概率与其数值大小正相关,并非如同max pooling那样直接选取最大值。这种随机池化操作不但最大化地保证了取值的Max,也部分确保不会所有的元素都被选取max值,从而提高了泛化能力。...原创 2020-07-06 16:58:03 · 8440 阅读 · 2 评论 -
python-opencv中的逻辑运算与mask的理解
python-opencv中的逻辑运算opencv中有四种逻辑运算函数:与运算 cv2.bitwise_and();或运算 cv2.bitwise_or();异或运算 cv2.bitwise_xor();非运算 cv2.bitwise_not();当对一个二值化的图像做位运算时:与运算:有0为0,全1为1或运算:有1为1,全0为1异或运算: 不同为1,相同为0四种计算后面都有一个mask参数,当mask参数 = None时,不参加运算;否则输原创 2020-06-09 16:09:22 · 1693 阅读 · 2 评论 -
算法岗面试:Deep Learning 27类常见问题+解析汇总
一、为什么深层神经网络难以训练?1、梯度消失。梯度消失是指通过隐藏层从后向前看,梯度会变得越来越小,说明前面层的学习会显著慢于后面层的学习,所以学习会卡主,除非梯度变大。梯度消失的原因:学习率的大小,网络参数的初始化,激活函数的边缘效应等。在深层神经网络中,每一个神经元计算得到的梯度都会传递给前一层,较浅层的神经元接收到的梯度受到之前所有层梯度的影响。如果计算得到的梯度值非常小,随着层数增...原创 2020-03-31 23:45:05 · 6525 阅读 · 0 评论 -
图解机器学习十大算法
1、决策树 根据一些 feature 进行分类,每个节点提一个问题,通过判断,将数据分为两类,再继续提问。这些问题是根据已有数据学习出来的,再投入新数据的时候,就可以根据这棵树上的问题,将数据划分到合适的叶子上。2、随机森林算法在源数据中随机选取数据,组成几个子集S 矩阵是源数据,有 1-N 条数据,A B C 是feature,最后一列C是类别由 S ...原创 2020-03-17 10:42:57 · 225 阅读 · 1 评论 -
搞懂深度网络初始化(Xavier and Kaiming initialization)
参数初始化就是这么一个容易被忽视的重要因素,因为不仅使用者对其重要性缺乏概念,而且这些操作都被TF、pytorch这些框架封装了,你可能不知道的是,糟糕的参数初始化是会阻碍复杂非线性系统的训练的。本文以MNIST手写体数字识别模型为例来演示参数初始化对模型训练的影响。点击这里查看源码。Xavier Initialization 早期的参数初始化方法普遍是将...原创 2020-01-06 16:50:24 · 4063 阅读 · 1 评论 -
numpy常用数据分析与matplotlib常用操作(纯代码例子理解)
一、numpy初入#一般的array是可以包含字符的import array# output:array('i', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9])arr = array.array("i", [i for i in range(10)])#开始numpy之旅import numpy as npnparr = np.array([1.0,2.0])n...原创 2019-12-28 20:21:22 · 283 阅读 · 0 评论 -
tf.name_scope()和tf.variable_scope()辨析
tf.name_scope()在 Tensorflow 当中有两种途径生成变量 variable, 一种是tf.get_variable(), 另一种是tf.Variable(). 如果在tf.name_scope()的框架下使用这两种方式, 结果会如下:import tensorflow as tfwith tf.name_scope("a_name_scope"): ...原创 2019-12-03 16:48:05 · 111 阅读 · 0 评论 -
感受野(receptive field)、感兴趣区域(ROI,region of interest)与ROI-Align
感受野(receptive field)定义:在卷积神经网络中,感受野的定义是 卷积神经网络每一层输出的特征图(feature map)上的像素点在原始图像上映射的区域大小。例子(1)两层3*3的卷积核卷积操作之后的感受野是5*5,其中卷积核(filter)的步长(stride)为1、padding为0,如下图所示:(2)三层3*3卷积核操作之后的感受野是7*7,其中...原创 2019-06-24 11:21:14 · 3637 阅读 · 0 评论 -
熵、相对熵与互信息
一、熵熵的定义:其对数log的底为2,若使用底为b的对数,则记为。当对数底为时,熵的单位为奈特。用表示数学期望,如果,则随机变量的期望值为,当,关于的分布自指数学期望。而熵为随机变量的期望值,其是的概率密度函数,则可写为,引理:证明:二、联合熵与条件熵:对于服从联合分布为的一对离散随机变量,联合熵的定义:若,条件熵的定义:定理链...转载 2019-06-25 21:42:59 · 1295 阅读 · 1 评论 -
机器学习中的数学(八):卡方分布(Chi-squared Distribution) t分布(T Distribution)F分布(T Distribution)
前言 有很多统计推断是基于正态分布的假设,以标准正态分布变量为基石而构造的三个著名统计量在实际中有广泛的应用,这是因为这三个统计量不仅有明确背景,而且其抽样分布的密度函数有显式表达式,它们被称为统计中的“三大抽样分布”。这三大抽样分布即为著名的卡方分布,t分布和F分布。卡方分布(Chi-squared Distribution)卡方分布的基本描述 具有k个自由度的卡...原创 2019-06-15 21:50:07 · 15470 阅读 · 5 评论 -
机器学习中的数学(八):矩阵奇异值分解(SVD)
SVD分解SVD分解是LSA的数学基础,本文是我的LSA学习笔记的一部分,之所以单独拿出来,是因为SVD可以说是LSA的基础,要理解LSA必须了解SVD,因此将LSA笔记的SVD一节单独作为一篇文章。本节讨论SVD分解相关数学问题,一个分为3个部分,第一部分讨论线性代数中的一些基础知识,第二部分讨论SVD矩阵分解,第三部分讨论低阶近似。本节讨论的矩阵都是实数矩阵。基础知识1. 矩阵的秩...原创 2019-06-14 22:23:43 · 883 阅读 · 0 评论 -
浅谈因子分析(Factor Analysis)
问题 之前我们考虑的训练数据中样例的个数m都远远大于其特征个数n,这样不管是进行回归、聚类等都没有太大的问题。然而当训练样例个数m太小,甚至m<<n的时候,使用梯度下降法进行回归时,如果初值不同,得到的参数结果会有很大偏差(因为方程数小于参数个数)。另外,如果使用多元高斯分布(Multivariate Gaussian distribution)对数据进行拟合时,也会有问题...原创 2019-06-13 22:32:32 · 1978 阅读 · 0 评论 -
机器学习中的数学(七):独立成分分析(ICA)以及FastICA算法
独立成分分析(ICA)问题 1、上节提到的PCA是一种数据降维的方法,但是只对符合高斯分布的样本点比较有效,那么对于其他分布的样本,有没有主元分解的方法呢? 2、经典的鸡尾酒宴会问题(cocktail party problem)。假设在party中有n个人,他们可以同时说话,我们也在房间中一些角落里共放置了n个声音接收器(Microphone)用来记录声音。宴会过后,...原创 2019-06-13 21:51:54 · 4219 阅读 · 0 评论 -
冈萨雷斯《数字图像处理》学习笔记(八)图像压缩
目录一、图像压缩基本概念1、图像压缩的可能性2、图像压缩的可能性二、图像压缩模型三、信息论要素四、无损压缩和有损压缩五、有损压缩1、有损预测编码(1)有损压缩的基本概念(2)量化器(3)量化器的定义(4)无损到有损——算法演变2、变换编码六、图像视频压缩标准1、图像压缩标准2、JPEG标准的划分3、JPEG2000压缩标准(...原创 2019-04-20 22:50:40 · 7354 阅读 · 2 评论 -
冈萨雷斯《数字图像处理》学习笔记(九)形态学图像处理
目录序言一、集合论基础1、集合的子集与相等2、集合的基本运算符3、集合的反射和平移二、二值形态学的基本运算1、腐蚀2、膨胀3、膨胀与腐蚀运算的对偶性3、开运算与闭运算4、一些基本的形态学算法三、二值形态学图像处理1、形态滤波2、边界提取3、区域填充4、骨架提取5、物体识别四、灰度形态学基本运算1、灰度腐蚀 2...原创 2019-04-22 16:33:18 · 7076 阅读 · 0 评论 -
冈萨雷斯《数字图像处理》学习笔记(十)图像分割
目录序言一、点、线和边缘检测1、背景知识2、孤立点的检测3、 线检测4、边缘模型5、基本边缘检测6、更先进的边缘检测技术7、边缘连接和边界检测二、阈值处理1、基本的全局阈值处理2、用Otsu方法的最佳全局阈值处理三、区域分割1、基于区域的分割2、用形态学分水岭的分割3、分割中运动的应用序言本章中的多数分割算法均基...原创 2019-04-22 16:51:24 · 3292 阅读 · 0 评论 -
特征提取之线性方法:主成分分析PCA、独立成分分析ICA、线性判别分析LDA
(一)维数灾难(二)特征提取——线性方法1. 主成分分析PCA2. 独立成分分析ICA3. 线性判别分析LDA机器学习 —— 基础整理(四)特征提取之线性方法:主成分分析PCA、独立成分分析ICA、线性判别分析LDA...原创 2019-05-02 20:16:40 · 1413 阅读 · 0 评论 -
冈萨雷斯《数字图像处理》学习笔记(六)彩色图像处理
目录一、彩色基础二、彩色模型三、色彩转换四、彩色图像处理基础五、彩色图像处理六、彩色图像的噪声七、彩色图像的压缩附加知识点一、彩色基础彩色定义:彩色是物体的一种属性,他依赖于一下三个方面的因素。(1)光源——照射光的谱性质或谱能量分布(2)物体——被照射物体的反射性质(3)成像接收器(眼睛或成像传感器)——光谱能量吸收性质二、彩色模型...原创 2019-04-19 21:48:16 · 5228 阅读 · 0 评论 -
移位运算,移位操作应用
一、位运算应用口诀 清零取位要用与,某位置一可用或 若要取反和交换,轻轻松松用异或二、移位运算 1、它们都是双目运算符,两个运算分量都是整形,结果也是整形。 2、"<<" 左移:右边空出的位上补0,左边的位将从字头挤掉,其值相当于乘2。 3、">>"右移:右边的位被挤掉。对于左边移出的空位,如果是正数则空位补0...转载 2019-05-01 15:47:13 · 1099 阅读 · 0 评论 -
机器学习中的数学(一):L0、L1与L2范数
前言 监督机器学习问题无非就是“minimizeyour error while regularizing your parameters”,也就是在规则化参数的同时最小化误差。最小化误差是为了让我们的模型拟合我们的训练数据,而规则化参数是防止我们的模型过分拟合我们的训练数据。因为参数太多,会导致我们的模型复杂度上升,容易过拟合,也就是我们的训练误差会很小。但训练误差小并不是我们的...原创 2019-06-12 19:42:06 · 813 阅读 · 1 评论 -
机器学习中的数学(二):核范数与规则项参数选择
一、核范数核范数||W||*是指矩阵奇异值的和,英文称呼叫Nuclear Norm。这个相对于上面火热的L1和L2来说,可能大家就会陌生点。那它是干嘛用的呢?霸气登场:约束Low-Rank(低秩)。OK,OK,那我们得知道Low-Rank是啥?用来干啥的?我们先来回忆下线性代数里面“秩”到底是啥?举个简单的例子吧:对上面的线性方程组,第一个...原创 2019-06-12 19:50:50 · 1208 阅读 · 0 评论 -
机器学习中的数学(三):回归(regression)、梯度下降(gradient descent)
前言:想要学好机器学习,首先得去理解其中的数学意义,不一定要到能够轻松自如的推导中间的公式,不过至少得认识这些式子吧,不然看一些相关的论文可就看不懂了。回归与梯度下降: 回归在数学上来说是给定一个点集,能够用一条曲线去拟合之,如果这个曲线是一条直线,那就被称为线性回归,如果曲线是一条二次曲线,就被称为二次回归,回归还有很多的变种,如locally weighted回归,logist...原创 2019-06-12 19:57:41 · 446 阅读 · 0 评论 -
机器学习中的数学(四):线性回归,偏差、方差权衡
前言机器学习绝对不是一个一个孤立的算法堆砌起来的,想要像看《算法导论》这样看机器学习是个不可取的方法,机器学习里面有几个东西一直贯穿全书,比如说数据的分布、最大似然(以及求极值的几个方法,不过这个比较数学了),偏差、方差的权衡,还有特征选择,模型选择,混合模型等等知识,这些知识像砖头、水泥一样构成了机器学习里面的一个个的算法。想要真正学好这些算法,一定要静下心来将这些基础知识弄清楚,才能够真正...原创 2019-06-12 20:02:38 · 1875 阅读 · 0 评论 -
机器学习中的数学(五):模型组合(Model Combining)之Boosting与Gradient Boosting
前言 将简单的模型组合起来,效果比单个更复杂的模型好。组合的方式很多,随机化(比如random forest),Boosting(比如GBDT)都是其中典型的方法,今天主要谈谈Gradient Boosting方法(这个与传统的Boosting还有一些不同)的一些数学基础,有了这个数学基础,上面的应用可以看Freidman的Gradient Boosting Machine。要求...原创 2019-06-12 20:08:58 · 3374 阅读 · 0 评论 -
一维(多维)高斯模型(One(Multi)-dimensional Gaussian Model) 高斯混合模型GMM(Gaussian Mixture Model)
一维高斯模型(One-dimensional Gaussian Model)若随机变量X服从一个数学期望为,标准方差为的高斯分布,记为:x~N(,)。则概率密度函数为:高斯分布的期望值决定了其位置,标准方差决定了其幅度。 高斯分布的概率分布函数高斯分布标准差在概率分布的数据意义高斯分布重要量的性质密度函数关于平均值对称 平均值是...原创 2019-06-12 22:54:03 · 10348 阅读 · 0 评论 -
机器学习中的数学(六):线性判别分析(LDA), 主成分分析(PCA)
前言 如果学习分类算法,最好从线性的入手,线性分类器最简单的就是LDA,它可以看做是简化版的SVM,如果想理解SVM这种分类器,那理解LDA就是很有必要的了。谈到LDA,就不得不谈谈PCA,PCA是一个和LDA非常相关的算法,从推导、求解、到算法最终的结果,都有着相当的相似。 本次的内容主要是以推导数学公式为主,都是从算法的物理意义出发,然后一步一步最...原创 2019-06-13 09:52:21 · 2172 阅读 · 0 评论 -
冈萨雷斯《数字图像处理》学习笔记(七)小波变换和多分辨率处理
序言什么是小波“小波”(wavelet)就是一种“尺度”很小的波动,并具有时间和频率特性小波函数必须满足以下两个条件:(1)小波必须是振荡的;(2)小波的振幅只能在一个很短的一段区间上非0,即是局部化的。如■傅里叶变换的基础函数是正弦函数。■小波变换基于一些小型波,称为小波,具有变化的频率和有限的持续时间。◆傅里叶变换反映的是图像的整体特征,其...原创 2019-04-20 22:17:20 · 8387 阅读 · 2 评论