08 2020 档案
摘要:python机器学习库numpy 15、模拟e^x的麦克劳林展开式 一、总结 一句话总结: numpy模拟e^x的麦克劳林展开式也就是 x轴模拟一些点,y轴数据根据e^x的麦克劳林公式展开式,逐步增加项数,然后画图即可 import matplotlib.pyplot as plt import n
阅读全文
摘要:python机器学习库numpy 14、numpy实现正态分布 一、总结 一句话总结: numpy实现正态分布就是 x轴模拟一些点,y轴根据正态分布的公式算出这些点的结果,然后画图即可 # Python实现正态分布 # 绘制正态分布概率密度函数 import numpy as np import m
阅读全文
摘要:python机器学习库numpy 13、数组拷贝 一、总结 一句话总结: numpy的copy方法是浅拷贝,numpy实现深度拷贝,可以用copy库的deepcopy方法 2、浅拷贝 a = np.arange(4) # b = a.copy() b = np.copy(a) print(a) pr
阅读全文
摘要:python机器学习库numpy 12、数组分割 一、总结 一句话总结: 1、numpy数组等量分割可以用hsplit(horizontal split)、vsplit(vertical split)、split等方法 2、numpy数组不等量分割可以用array_split方法 不等量分割 不等量
阅读全文
摘要:python机器学习库numpy 11、数组合并 一、总结 一句话总结: A、numpy数组水平合并可以用hstack方法、垂直合并可以用vstack; B、numpy数组合并也可以用concatenate方法,axis为1表示横轴合并(水平合并),axis为0表示纵轴合并(垂直合并) a [[1
阅读全文
摘要:python机器学习库numpy 10、遍历数组元素 一、总结 一句话总结: numpy遍历数组的行可以直接for循环,遍历列的话可以先转置,让列变成行,再遍历行的方式即可遍历,遍历每一个元素的话可以用flatten()方法打平数组 1、迭代行 for i in arr: print(i) 2、迭代
阅读全文
摘要:python机器学习库numpy 9、访问数组元素 一、总结 一句话总结: 在numpy中,我们可以通过下标的方式来访问数组元素,比如arr[1][1],我们也可以通过索引的方式来访问数组,比如arr[1,1:3](第1行 列从1-2) import numpy as np arr=np.arang
阅读全文
摘要:python机器学习库numpy 8、常用函数 一、总结 一句话总结: 二、常用函数 博客对应课程的视频位置: 8、常用函数(一)-范仁义-读书编程笔记https://www.fanrenyi.com/video/38/350 8、常用函数(二)-范仁义-读书编程笔记https://www.fanr
阅读全文
摘要:python机器学习库numpy 7.3、生成随机数-随机种子 一、总结 一句话总结: 设置随机数种子主要是两个方法,一个是RandomState方法,一个是seed方法 随机种子方法 RandomState:定义种子类:RandomState是一个种子类,提供了各种种子方法,最常用seed see
阅读全文
摘要:python机器学习库numpy 7.2、生成随机数-正态分布 一、总结 一句话总结: 正态分布主要两个函数,一个randn方法,表示标准正态分布,一个是normal方法,表示指定均值和标准差的正态分布 a、标准正态分布(均值为0,标准差为1): numpy.random.randn(d0, d1,
阅读全文
摘要:python机器学习库numpy 7.1、生成随机数-均匀分布 一、总结 一句话总结: 均匀分布常用主要四个方法,表示[0, 1)之间均匀分布的rand和random,表示[low, high)之间的uniform,随机整数randint a、服从[0, 1)之间的均匀分布: numpy.rando
阅读全文
摘要:Tensorflow2(预课程) 1.4.1、自动计算梯度 一、总结 一句话总结: 将变量指定为Variable,就不需要tape.watch([a, b, c])步骤了,tensorflow自动给你做了 import tensorflow as tf x = tf.constant(1.) a =
阅读全文
摘要:python基础_格式化输出(%用法和format用法) 一、总结 一句话总结: A、%是格式化占位输出,就像c语言的printf方法一样,比如 text1.set_text('w=%.4f,b=%.4f,step=%d' %(bw_list[i][1],bw_list[i][0],i)) B、fo
阅读全文
摘要:Tensorflow2(预课程) 1.5、线性回归-非tensorflow方式 一、总结 一句话总结: 对这样的一个节点的神经网络而言,不同的数据的梯度和误差都是所有数据相加,不过误差求求平均即可 # 计算误差 # y = wx + b def compute_error_for_line_give
阅读全文
摘要:Tensorflow2(预课程) 1.2.1、线性回归对应的神经网络结构 一、总结 一句话总结: |||-before 线性模型的神经网络模型到底是怎样,一维的多个输入又怎么表示 |||-end (I)、如果有两个维度的输入,那么input就是2条线,比如第二层是3层,那么对应的w是[2,3]个 (
阅读全文
摘要:代理软件中PAC模式和全局模式的区别 一、总结 一句话总结: PAC模式:国内网站依旧走本地网络,速度快,绝大部分国外网站都走代理,速度也快。 全局模式:所有网站都走代理,访问国内网站速度变慢。 二、代理软件中PAC模式和全局模式的区别 转自或参考:代理软件中PAC模式和全局模式的区别https:/
阅读全文
摘要:socket.error: [Errno 98] Address already in use 一、总结 一句话总结: 出现原因是端口占用,可以想办法杀死进程:sudo kill 进程号 二、socket.error: [Errno 98] Address already in use 转自或参考:
阅读全文
摘要:numpy生成随机数 一、总结 一句话总结: numpy生成随机数,主要是生成均匀分布和随机分布的随机数 (1)、均匀分布 a、服从[0, 1)之间的均匀分布: numpy.random.rand(d0, d1, ..., dn) b、[0, 1)之间均匀抽样: numpy.random.rando
阅读全文
摘要:python numpy : random.rand 和 random.random 的区别 一、总结 一句话总结: 相同点:两个函数都是在 [0, 1) 的均匀分布中产生随机数。 不同点:参数传递不同。random.random( )接收一个单独的元组,而random.rand( )接收分开的参数
阅读全文
摘要:python:matplotlib绘图无法显示中文或负号,显示为框框 一、总结 一句话总结: 可以修改matplotlib配置文件,也可以直接在代码中指定 # 解决中文乱码 plt.rcParams["font.sans-serif"]=["SimHei"] plt.rcParams["font.f
阅读全文
摘要:正态分布和标准正态分布的联系及区别 一、总结 一句话总结: 标准正态分布是正态分布的一种,平均数为0,标准差为1。 二、正态分布和标准正态分布的联系及区别 转自或参考:正态分布和标准正态分布的联系及区别?https://zhidao.baidu.com/question/210506564.html
阅读全文
摘要:keras里面有常用的网络结构 一、总结 一句话总结: keras里面有常用的网络结构,比如ResNet152、InceptionV3、VGG19等等 二、keras里面有常用的网络结构 博客对应课程的视频位置:
阅读全文
摘要:keras中自带数据集 一、总结 一句话总结: keras中自带了一些常用数据集,比如cifar10,cifar100,minist,boston_housing等等,讲课的话可以优先考虑这些数据集 二、keras中自带数据集 博客对应课程的视频位置:
阅读全文
摘要:python机器学习库numpy 6、基本计算 一、总结 一句话总结: numpy中的ndarray对象重载了许多运算符,使用这些运算符可以完成矩阵间对应元素的运算。如 +,-,*(内积),/,%,**(次方),@(矩阵乘法) # 矩阵内积:对应位置相乘 print(arr1*arr2) # 矩阵乘
阅读全文
摘要:python机器学习库numpy 5、常用属性 一、总结 一句话总结: numpy的多维数组常用属性主要有dtype(数据类型)、ndim(维度)、shape(形状)、size(元素个数) arr=np.arange(12).reshape(3,4) arr array([[ 0, 1, 2, 3]
阅读全文
摘要:对角矩阵和单位矩阵 一、总结 一句话总结: 对角矩阵(diagonal matrix)是一个主对角线之外的元素皆为0的矩阵。 单位矩阵是对角线上元素全为1的对角矩阵。 对角矩阵(diagonal matrix)是一个主对角线之外的元素皆为0的矩阵,常写为diag(a1,a2,...,an) 。 对角
阅读全文
摘要:python机器学习库numpy 4.3、n维数组的创建(特殊数组) 一、总结 一句话总结: numpy中常用的特殊矩阵 主要有ones(全1)、zeros(全0)、eye(单位矩阵)、empty(未初始化) 二、n维数组的创建(特殊数组) 博客对应课程的视频位置:4.3、n维数组的创建(特殊数组)
阅读全文
摘要:python疑难问题 8、只有一个数的元组表示 一、总结 一句话总结: (一)、要定义一个只有1个元素10的tuple,不能直接(10),因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义 (二)、因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是10。
阅读全文
摘要:TensorFlow的Eager模式 一、总结 一句话总结: 直接迭代和直观调试,Eager模式下求解梯度与自定义训练 1、Eager模式直接迭代和直观调试 2、tf.GradientTape求解梯度,自定义训练逻辑 二、TensorFlow的Eager模式 转自或参考:TensorFlow Eag
阅读全文
摘要:python中的元组如何定义只有一个元素 一、总结 一句话总结: [壹]、要定义一个只有1个元素的tuple,不能直接(1),因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义 [贰]、因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。 [叁]、所以
阅读全文
摘要:python机器学习库numpy 4.2、n维数组的创建(其它常用方法) 一、总结 一句话总结: (A)、创建数字数组(均匀间隔分布):arange方法:arr=np.arange(10,20,3) (B)、创建等差数列:linspace方法:arr=np.linspace(1,10,5) (C)、
阅读全文
摘要:python机器学习库numpy 4.1、n维数组的创建(array方法) 一、总结 一句话总结: numpy的核心就是同构的n维数组,所以可以用numpy的array方法来创建n维数组 In [3]: # numpy的核心就是同构的n维数组, arr = np.array([[1,2],[3,4]
阅读全文
摘要:python机器学习库numpy 3、numpy的安装及引入 一、总结 一句话总结: numpy的安装:pip install numpy numpy的引入:import numpy as np 二、numpy的安装及引入 博客对应课程的视频位置:python机器学习库numpy-范仁义-读书编程笔
阅读全文
摘要:python机器学习库numpy 2、numpy介绍 一、总结 一句话总结: (1)、NumPy是使用Python进行科学计算的基础软件包。 (2)、Numpy主要用于大数据量的同构数组处理,以及数组操作函数、科学计算函数和线性代数等 1、numpy库核心? numpy的核心结构是同构的ndarra
阅读全文
摘要:python机器学习库numpy 1、课程介绍 一、总结 一句话总结: 二、课程介绍 博客对应课程的视频位置:1、课程介绍-范仁义-读书编程笔记https://www.fanrenyi.com/video/38/338 numpy是机器学习中经常用到的库,本课程讲解numpy库里面非常常用的操作,不
阅读全文
摘要:200820_预测双色球 1、神经网络擅长解决的是什么(杂) 一、总结 一句话总结: 【拟合函数来预测】:神经网络擅长解决的是“过去发生过 而且 未来也会发生 可是它喵的我就是看不出规律 只好求助计算机”的事情。 1、完全随机事件(比如买彩票)可以被神经网络预测么? 可以,因为完全随机事件有没有规律
阅读全文
摘要:200820_机器学习 1、基础知识 一、总结 一句话总结: 一定要录课,不录课==没学 1、机器学习的两个驱动? 神经网络,数据挖掘 2、强化学习? 介于监督和无监督之间,当答案不正确时,算法被告知,如何改正则不得而知,算法需要去探索,试验不同情况,直到得到正确答案,强化学习有时称为伴随评论家的学
阅读全文
摘要:机器学习常见知识点(总结) 一、总结 一句话总结: 目录结构(知识结构)清晰了,添枝加叶就非常非常简单了 二、机器学习常见知识点(总结) 转自或参考:一文总结机器学习常见知识点https://zhuanlan.zhihu.com/p/85508001 一、准备 机器学习是什么,人工智能的子类,深度学
阅读全文
摘要:机器学习目录 一、总结 一句话总结: A、数据量够的话,深度学习是可以做几乎所有事情的 B、其它的算法比如支持向量机,还有最开始的那些,比如决策树,比如什么k-means什么的 模型的评估与选择:来选择模型依据线性模型:决策树:神经网络:支持向量机:贝叶斯分类:集成学习:聚类:降维与度量学习:特征选
阅读全文
摘要:机器学习理论|频率派和贝叶斯派对比 一、总结 一句话总结: (A)、对于一些问题,比如类似从盒子中抽取小球的经典问题,我们可以通过多次实验的方式来计算频率,并进而估算概率,这种思想是典型的Frequentist的思想; (B)、而对于另一些问题,如南极大陆在本世纪末完全融化的可能性,这类事件其不可能
阅读全文
摘要:进化神经网络(总结) 一、总结 一句话总结: 【也就是神经网络的遗传变异进化那一套】:进化神经网络(evolutionary neural networks,ENN)是基于进化计算和神经网络两大智能分支,将二者有机融合在一起产生的一种全新神经网络模型。 1、进化神经网络的优缺点? 优点:避免梯度下降
阅读全文
摘要:机器学习中正则化项L1和L2的直观理解 一、总结 一句话总结: l1正则化:cost=(Wx− real y)2+ abs (W)
l2正则化:$$\operatorname { cos
阅读全文
摘要:迁移学习 (Transfer Learning)是什么(总结) 一、总结 一句话总结: 【踩在巨人的肩膀上】:迁移学习就是一层层网络中每个节点的权重从一个训练好的网络迁移到一个全新的网络里,而不是从头开始,为每特定的个任务训练一个神经网络。 举图像识别中最常见的例子,训练一个神经网络。来识别不同的品
阅读全文
摘要:深度学习: 参数初始化 一、总结 一句话总结: 1)、好的开始是成功的一半,为了让你的模型跑赢在起跑线 ,请慎重对待参数初始化。 2)、tf的初始化器包括:tf.initializers.he_normal()、tf.initializers.truncated_normal()、tf.contri
阅读全文
摘要:200813_tensorflow2 5、卷积神经网络讲课,用CBAPD讲的话,真的极佳 一、总结 一句话总结: 卷积就是特征提取器,就是C(卷积层)B(批标准化层)A(激活层)P(池化层)D(dropout层) model=tf.keras.models.Sequential([ Conv2D(f
阅读全文
摘要:200813_tensorflow2 4、为什么需要批标准化(Batch Normalization)操作(杂) 一、总结 一句话总结: 一、神经网络对0附近的数据更加敏感,但是随着网络层数的增加,特征数据会出现偏离0均值的情况 二、标准化可以使数据符合以0为均值,1为标准差的标准正态分布,把偏移的
阅读全文
摘要:200813_tensorflow2 3、iris分类简单神经网络 一、总结 一句话总结: (A)、具体相乘就是 每个batch(这里是32)的数据来整体和w1相乘,然后加上b1,b1维度不够,肯定是用了广播 (B)、y = tf.matmul(x_train, w1) + b1 # 神经网络乘加运
阅读全文
摘要:200813_tensorflow2 2、读取iris数据 一、总结 一句话总结: (1)、为方便查看数据,用pandas构建DataFrame,加上数据的标签,加上对应的y数据 (2)、x_data = DataFrame(x_data, columns=['花萼长度', '花萼宽度', '花瓣长
阅读全文
摘要:200813_tensorflow2 1、基础 一、总结 一句话总结: 讲课的时候可以考虑就像这样讲,把需要的基础东西先过一遍,用什么讲什么,这样减轻记忆力,极好的 1、常用函数 t.Variable? ①、tf.Variable()将变量标记为“可训练”,被标记的变量会在反向传播中记录梯度信息。神
阅读全文
摘要:DNS Lookup 一、总结 一句话总结: DNS Lookup(域名解析):请求某域名下的资源,浏览器需要先通过DNS解析器得到该域名服务器的IP地址。在DNS查找完成之前,浏览器不能从主机名那里下载到任何东西。 1、DNS Lookup(域名解析)的优化方法? 1、利用DNS缓存(设置TTL时
阅读全文
摘要:Keras实现卷积神经网络 一、总结 一句话总结: tf的高级模块keras是可以非常简单方便的实现卷积神经网络、循环神经网络等神经网络 model = Sequential()# 第一个卷积层,32个卷积核,大小5x5,卷积模式SAME,激活函数relu,输入张量的大小 model.add(Con
阅读全文
摘要:感悟总结 感悟总结(200813) 一、总结 一句话总结: 二、感悟总结(200813) 博客对应课程的视频位置: 翻过这道山,就有人听到你的故事。 学习 【轻学无用】:学生时代学html、java、c++、php、安卓、python等和之前学英语的感受,轻学无用,不为需求学,不学全面无用。 学习和
阅读全文
摘要:Tensorflow2.0的Kreas高层接口介绍 一、总结 一句话总结: Keras 是一个主要由 Python 语言开发的开源神经网络计算库,它被设计为高度模块化和易扩展的高层神经网络接口,使得用户可以不需要过多的 专业知识就可以简洁、快速地完成模型的搭建与训练。 1、TensorFlow2.X
阅读全文
摘要:TensorFlow 的常用模块介绍 一、总结 一句话总结: Module:tf.train:这个模块主要是用来支持训练模型的 Module:tf.nn:神经网络的功能支持模块,这是最常用到的一个模块,比如用于构建经典的卷积网络,它下面还包含了 rnn_cell 的子模块,用于构建循环神经网络; M
阅读全文
摘要:keras是什么 一、总结 一句话总结: Keras是一个由Python编写的开源人工神经网络库,可以作为Tensorflow、Microsoft-CNTK和Theano的高阶应用程序接口,进行深度学习模型的设计、调试、评估、应用和可视化。 二、keras是什么 转自或参考:Kerashttps:/
阅读全文
摘要:200812_深度学习系列 1、感知器(神经元) 一、总结 一句话总结: 神经元也叫做感知器:神经元是神经网络的基本组成单元 1、神经网络中的输入层、输出层和隐藏层? 最左边的层叫做输入层,这层负责接收输入数据;最右边的层叫输出层,我们可以从这层获取神经网络输出数据。输入层和输出层之间的层叫做隐藏层
阅读全文
摘要:KL散度、JS散度、Wasserstein距离 一、总结 一句话总结: ①)、KL散度又称为相对熵,信息散度,信息增益。KL散度是是两个概率分布P和Q 差别的非对称性的度量。 ②)、JS散度度量了两个概率分布的相似度,基于KL散度的变体,解决了KL散度非对称的问题。 ③)、Wessertein距离相
阅读全文
摘要:200812_深度学习系列 3、神经网络和反向传播算法(没完) 一、总结 一句话总结: 神经网络的实现很简单,原理的实现就是矩阵相乘,就是前向传播和反向传播 1、前向传播和反向传播? 前向传播:就是函数套函数计算y,简单的很 反向传播:就是很简单的链式法则 2、什么是向量化编程? 就是计算用向量来计
阅读全文
摘要:200812_深度学习系列 2、线性单元和梯度下降 一、总结 一句话总结: 线性单元感知器,知识激活函数变了,其它代码都一样 from perceptron import Perceptron #定义激活函数f f = lambda x: x class LinearUnit(Perceptron)
阅读全文
摘要:手把手教你理解和实现生成式对抗神经网络(GAN) 一、总结 一句话总结: GAN的全称是 Generative Adversarial Networks,中文名称是生成对抗网络。原始的GAN是一种无监督学习方法,巧妙的利用“博弈”的思想来学习生成式模型。 1、gan的目标函数? $$\min _ {
阅读全文
摘要:生成对抗网络(GAN) 一、总结 一句话总结: GAN的全称是 Generative Adversarial Networks,中文名称是生成对抗网络。原始的GAN是一种无监督学习方法,巧妙的利用“博弈”的思想来学习生成式模型。 1、GAN的原理(从博弈方面)? 在训练过程中,生成网路G的目标是尽量
阅读全文
摘要:GAN对抗神经网络(原理解析) 一、总结 一句话总结: (一)、GAN的主要灵感来源于博弈论中零和博弈的思想,应用到深度学习神经网络上来说,就是 (二)、**通过生成网络G(Generator)和判别网络D(Discriminator)不断博弈,进而使G学习到数据的分布**, (三)、如果用到图片生
阅读全文
摘要:Wasserstein distance(EM距离) 一、总结 一句话总结: ①、Wasserstein 距离又叫Earth-Mover距离(EM距离),用于衡量两个分布之间的距离, ②、定义:$$W ( P _ { 1 } , P _ { 2 } ) = \inf _ { \gamma \sim
阅读全文
摘要:浅谈KL散度 一、总结 一句话总结: (a)、相对熵(relative entropy)又称为KL散度(Kullback–Leibler divergence,简称KLD),信息散度(information divergence),信息增益(information gain)。 (b)、KL散度是两
阅读全文
摘要:深度学习中 Batch Normalization是什么 一、总结 一句话总结: batch normalization嘛,就是“批规范化”咯,即在每次SGD时,通过mini-batch来对相应的activation做规范化操作,使得结果(输出信号各个维度)的均值为0,方差为1. 1、什么时候用ba
阅读全文
摘要:Batch Normalization的正确打开方式 一、总结 一句话总结: a)、计算出当前batch的每个channel的均值mean,计算出当前batch的每个channel的方差variance,令输入减去均值再除以标准差delta, b)、得到normalized输出x-hat,最后乘以s
阅读全文
摘要:对于梯度消失和梯度爆炸的理解 一、总结 一句话总结: 梯度消失或者梯度爆炸,简单一点来讲就是层数太多,链式求梯度的时候连乘太多 1、循环神经网络梯度消失或者梯度爆炸说明? (1)、$$W ^ { t } = ( V \operatorname { diag } ( \lambda ) V ^ { -
阅读全文
摘要:梯度消失和梯度爆炸原因及其解决方案 一、总结 一句话总结: A)、当神经元层数变多时,链式法则求梯度会遇到很多个连乘,连乘多了,如果大了,梯度就爆炸了,如果小了,梯度就消失了 B)、我们知道Sigmoid函数有一个缺点:当x较大或较小时,导数接近0;并且Sigmoid函数导数的最大值是0.25 C)
阅读全文
摘要:TensorFlow2_200729系列 28、梯度消失和梯度爆炸是什么(杂) 一、总结 一句话总结: 对于多层的神经网络,当由后向前传播时,因为本来就有误差,传到某一层的时候,要么梯度不更新(梯度消失),要么梯度特别大(梯度爆炸),这两种情况都不能很好的更新网络 1、[784,w,h,b]中的b一
阅读全文
摘要:TensorFlow2_200729系列 27、gan对抗神经网络 一、总结 一句话总结: A、gan对抗神经网络主要也是用到的卷积神经网络,就是一个生成器(卷积神经网络做的生成器)和一个分类器(卷积神经网络做的分类器), B、比如生成器是在卷积神经网络的基础上小小改动了一下,分类器自然也是,因为有
阅读全文
摘要:深度学习中Flatten层的作用 一、总结 一句话总结: Flatten层用来将输入“压平”,即把多维的输入一维化,常用在从卷积层到全连接层的过渡。Flatten不影响batch的大小。 # now:model.output_shape==(None,64,32,32) model.add(Flat
阅读全文
摘要:如何通俗的理解纳什均衡点 一、总结 一句话总结: ①、纳什均衡是博弈论中的一个规律,指的是在一个博弈过程中,博弈双方都没有改变自己策略的动力,因为单方面改变自己的策略都会造成自己收益的减少。 ②、纳什均衡点可以理解为个体最优解,但并不一定是集体最有解。 ③、那么,有没有办法使个人最优变成集体最优呢?
阅读全文
摘要:TensorFlow2_200729系列 26、图片为什么要使用卷积神经网络 一、总结 一句话总结: 因为图片的数据量太大,特征太多,如果用全连接层参数太多,用卷积的思想可以只关注局部 1、RNN为什么增加层可以增加准确率(拿用评价做好评差评举例)? 第一层可能只能提取一些底层特征(比如褒义词贬义词
阅读全文
摘要:深度学习之循环神经网络(RNN) 一、总结 一句话总结: (A)、【短期记忆】:循环神经网络(Recurrent Neural Network,RNN)是一类具有短期记忆能力的神经网络,适合用于处理视频、语音、文本等与时序相关的问题。 (B)、【接收自身信息】:在循环神经网络中,神经元不但可以接收其
阅读全文
摘要:循环神经网络(Recurrent Neural Networks)(第一部分) 一、总结 一句话总结: ①、RNN是一种可以预测未来(在某种程度上)的神经网络,可以用来分析时间序列数据(比如分析股价,预测买入点和卖出点)。 ②、在自动驾驶中,可以预测路线来避免事故。更一般的,它可以任意序列长度作为输
阅读全文
摘要:Autoencoders(自编码器) 一、总结 一句话总结: a)、【无监督学习】:自编码器是一种能够通过无监督学习,学到输入数据高效表示的人工神经网络。 b)、【输出与输入数据相似生成模型】:此外,自编码器还可以随机生成与训练数据类似的数据,这被称作生成模型(generative model)。比
阅读全文
摘要:自编码器(Autoencoders) 一、总结 一句话总结: a)、【无监督学习】:自编码器是一种能够通过无监督学习,学到输入数据高效表示的人工神经网络。 b)、【输出与输入数据相似生成模型】:此外,自编码器还可以随机生成与训练数据类似的数据,这被称作生成模型(generative model)。比
阅读全文
摘要:TensorFlow2_200729系列 25、ResNet实例 一、总结 一句话总结: 按照结构构建ResNet网络即可,挺简单的 1、显卡Out of memory解决方案? I、decrease batch size II、tune resnet [2, 2, 2, 2] III、try Go
阅读全文
摘要:tf.config.list_physical_devices作用 一、总结 一句话总结: 通过tf.config.list_physical_devices,我们可以获得当前主机上某种特定运算设备类型(如 GPU 或 CPU )的列表 二、tf.config:GPU 的使用与分配 转自或参考:tf
阅读全文
摘要:Tensorflow2疑难问题 2、tensorflow2.3的GPU版本安装 一、总结 一句话总结: 安装tensorflow的gpu的版本的时候,要特别注意CUDA、cuDNN、tensorflow版本的一致性,在tensorflow官网可以查看对应版本关系 二、tensorflow2.3的GP
阅读全文
摘要:Tensorflow2疑难问题 1、课程介绍 一、总结 一句话总结: 二、Tensorflow2疑难问题 课程介绍 博客对应课程的视频位置:1、课程介绍-范仁义-读书编程笔记https://www.fanrenyi.com/video/37/335 tensorflow2疑难问题讲解tensorfl
阅读全文
摘要:tensorflow2的gpu的版本安装(一些核心点) 一、总结 一句话总结: 特别注意:当配置CUDA、cuDNN、tensorflow时,要确保这三者之间的版本对应一致 二、tensorflow2的gpu的版本安装 博客对应课程的视频位置: 我没有详细介绍的部分,请大家自己去找度娘 1、安装cu
阅读全文
摘要:此环境变量太大, 此对话框允许将值设置为最长2047个字符(解决方法) 一、总结 一句话总结: 问题原因是由于安装内容太多,path有限制。 解决方法是创建一个新的类似path的PATH(名字自己命名),然后在PATH中添加额外的路径;最后,将PATH这个名称以格式" %PATH% "添加到原pat
阅读全文
摘要:windows下cuda的安装 一、总结 一句话总结: cuda的安装:到 https://developer.nvidia.com/cuda-toolkit 去下载。在安装的时候一定要自定义安装,否则将会安装很多无用的东西。 二、windows下cuda的安装 转自或参考:windows下cuda
阅读全文
摘要:tensorflow指定CPU与GPU运算 一、总结 一句话总结: with tf.device('/cpu:0'): 二、tensorflow指定CPU与GPU运算 转自或参考:TensorFlow——tensorflow指定CPU与GPU运算https://www.cnblogs.com/bab
阅读全文
摘要:绕过Nvidia官方要求的注册或登陆步骤直接下载cuDNN的方法 一、总结 一句话总结: 直接复制链接地址,迅雷下载即可,不要点进去,点进去要注册麻烦 二、绕过Nvidia官方要求的注册或登陆步骤直接下载cuDNN的方法 转自或参考:绕过Nvidia官方要求的注册或登陆步骤直接下载cuDNN的方法h
阅读全文
摘要:“Failed to get convolution algorithm. This is probably because cuDNN failed to initialize”错误的解决办法 一、总结 一句话总结: 错误原因是我的图像比较大,消耗GPU资源较多。但我的显卡(RTX2060)显存只
阅读全文
摘要:TensorFlow1.2~2.1各个GPU版本CUDA和cuDNN对应版本整理(干货) 一、总结 一句话总结: 可以在官网查看tensorflow、cuda、cudnn的对应关系,在TensorFlow的GPU版本安装过程中,如果对应的CUDA版本和cuDNN版本不正确的话,是无法正常使用GPU来
阅读全文
摘要:cuda和cudnn是什么 一、总结 一句话总结: CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 NVIDIA cuDNN是用于深
阅读全文
摘要:DenseNet:比ResNet更优的CNN模型 一、总结 一句话总结: (A)、DenseNet模型,它的基本思路与ResNet一致,但是它建立的是前面所有层与后面层的密集连接(dense connection),它的名称也是由此而来。 (B)、DenseNet的另一大特色是通过特征在channe
阅读全文
摘要:ResNet详解-通俗易懂版 一、总结 一句话总结: ResNet是一种残差网络,咱们可以把它理解为一个子网络,这个子网络经过堆叠可以构成一个很深的网络。 1、为什么要引入ResNet? ①、我们知道,网络越深,咱们能获取的信息越多,而且特征也越丰富。但是根据实验表明,随着网络的加深,优化效果反而越
阅读全文
摘要:残差网络ResNet笔记 一、总结 一句话总结: ResNet的主要思想是在网络中增加了直连通道,允许原始输入信息直接传到后面的层中,看图非常明显,也就是如果后面的层性能不好,可以忽略。 1、为什么卷积神经网络(Convolutional Neural Networks, CNN)中深度重要? 因为
阅读全文
摘要:ResNet主要思想(总结) 一、总结 一句话总结: ResNet的主要思想是在网络中增加了直连通道,允许原始输入信息直接传到后面的层中,看图非常明显,也就是如果后面的层性能不好,可以忽略。 1、ResNet为什么叫残差网络? ResNet的思想允许原始输入信息直接传到后面的层中,这样的话这一层的神
阅读全文
摘要:TensorFlow2_200729系列 24、一些卷积网络创新点 一、总结 一句话总结: VGG 创新点:发现小的 核心(比如3*3、1*1),这样的效果更好(参数减少,计算变快,并且不影响精度) ResNet的创新点:比如33层,最低也要不比22层差,所以在33层处接了22层的短路 GoogLe
阅读全文
摘要:Python 爬取网页中JavaScript动态添加的内容 一、总结 一句话总结: 方法一:用Web kit,Web kit 可以实现浏览器所能处理的任何事情,Web kit是QT库的一部分,因此如果你已经安装QT和PyQT4库,那么你可以直接运行之。 方法二:使用 selenium + phant
阅读全文
摘要:TensorFlow2_200729系列 23、卷积神经网络实例 一、总结 一句话总结: A、layers.Conv2D(64, kernel_size=[3, 3], padding="same", activation=tf.nn.relu), B、layers.Conv2D(64, kerne
阅读全文
摘要:Adam 优化算法详解 一、总结 一句话总结: Adam Optimizer是对SGD的扩展,可以代替经典的随机梯度下降法来更有效地更新网络权重。 Adam使用动量和自适应学习率来加快收敛速度。 二、Adam 优化算法详解 转自或参考: 据牛津字典的定义,优化是指最好或最有效地利用一种情况或资源,或
阅读全文
摘要:legend3 使用MathJax 一、总结 一句话总结: js文件就用github中mathjax对应的cdn的js文件,配置的话就用之前博客园对应的配置即可 二、使用MathJax 博客对应课程的视频位置: 直接去github(https://github.com/mathjax/MathJax
阅读全文
摘要:卷积在计算机视觉方面的常见应用 一、总结 一句话总结: 卷积在图像锐化、图像模糊、图像的边缘检测方面早有应用,有特定的卷积矩阵,比如图像模糊,就是中间9个全是1,这样就 起到了平均,也就是模糊的作用 二、卷积在计算机视觉方面的常见应用 博客对应课程的视频位置:
阅读全文
摘要:博客园的LaTeX数学公式设置 一、总结 一句话总结: 可以很方便的用MathJax库来显示LaTeX代码 <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-
阅读全文
摘要:卷积基本定义 一、总结 一句话总结: A、【两个函数f 和g 生成第三个函数】:卷积(英语:Convolution)是通过两个函数f 和g 生成第三个函数的一种数学算子 B、【重叠部分函数值乘积对重叠长度的积分】:函数f 与g经过翻转和平移的重叠部分函数值乘积对重叠长度的积分 C、卷积公式:$$\i
阅读全文
摘要:TensorFlow2_200729系列 22、cifar10分类实战 一、总结 一句话总结: The CIFAR-10 and CIFAR-100 are labeled subsets of the 80 million tiny images dataset. 网址:http://www.cs
阅读全文
摘要:cifar-10-python.tar数据集下载过慢解决方式 一、总结 一句话总结: 下载之后放在.keras文件夹中:C:\Users\xxx\.keras\datasets目录中 二、cifar-10-python.tar数据集下载过慢解决方式 转自或参考:cifar-10-python.tar
阅读全文
摘要:TensorFlow2_200729系列 21、Keras模型保存与加载 一、总结 一句话总结: 模型保存:save方法:network.save('model.h5') 模型加载:load_model方法:network = tf.keras.models.load_model('model.h5
阅读全文
摘要:tensorflow2自定义损失函数 一、总结 一句话总结: 直接定义函数,然后在compile时传给loss即可 def customized_mse(y_true, y_pred): return tf.reduce_mean(tf.square(y_pred - y_true)) model
阅读全文
摘要:TensorFlow2_200729系列 20、自定义层 一、总结 一句话总结: 继承layers.Layer,初始化方法中可以定义变量,call方法中可以实现神经网络矩阵乘法 # 自定义层(比如之前的全连接dense层) class MyDense(layers.Layer): def __ini
阅读全文
摘要:Windows下Anaconda中tensorflow的tensorboard使用 一、总结 一句话总结: 1、监听目录:Listen logdir 2、创建summary实例:build summary instance 3、给summary instance喂数据:fed data into s
阅读全文
摘要:Windows下Anaconda中tensorflow的tensorboard使用(实测) 一、总结 一句话总结: 1、监听目录:Listen logdir 2、创建summary实例:build summary instance 3、给summary instance喂数据:fed data in
阅读全文
摘要:可视化利器Visdom 一、总结 一句话总结: visdom是facebook开源,感觉非常优雅,支持numpy和torch Visdom整体是一个CS架构,可以远程实时显示数据 二、可视化利器Visdom 转自或参考:可视化利器Visdomhttps://www.cnblogs.com/fangh
阅读全文
摘要:python虚拟环境-virtual environment 一、总结 一句话总结: python虚拟环境是一个隔离/独立的python开发环境,和系统python环境可以完全隔离,互不相关,相当于多了一个python开发环境。 1、python 可用于virtual environment的具体模
阅读全文
摘要:TensorFlow2_200729系列 18、手写数字识别(层方式) 一、总结 一句话总结: 之前是张量(tensor)的方式,体现细节和原理,现在是层方式,更加简便简洁 model = Sequential([ layers.Dense(256, activation=tf.nn.relu),
阅读全文
摘要:tensorFlow2.1下的tf.data.Dataset.from_tensor_slices()的用法 一、总结 一句话总结: 将输入的张量的第一个维度看做样本的个数,沿其第一个维度将tensor切片,得到的每个切片是一个样本数据。实现了输入张量的自动切片。 # from_tensor_sli
阅读全文
摘要:TensorBoard:TensorFlow 的可视化工具包 一、总结 一句话总结: TensorBoard的原理就是指定文件夹保存数据,然后监控文件夹数据变化,然后图像化显示出来,和我们自己做可视化的原理是一样的 二、TensorBoard:TensorFlow 的可视化工具包 tensorboa
阅读全文
摘要:神经网络反向传播更新原理 一、总结 一句话总结: A、输入x (w1和b2)-->中间输出h(省略很多层) (wi和bi)-->输出y-->loss函数 B、现在的需求是loss取最小值,可以求出loss对所有参数的梯度,让沿梯度下降的方向更新参数,例如w1= w1-lr*∂(loss)/∂(w1)
阅读全文
摘要:TensorFlow2_200729系列 17、函数用梯度下降法求最值实例 一、总结 一句话总结: 从不同的初始点梯度下降,找到的极值点不一样 import numpy as np from mpl_toolkits.mplot3d import Axes3D from matplotlib imp
阅读全文
摘要:TensorFlow2_200729系列 16、链式法则求多层感知器梯度实例 一、总结 一句话总结: A、y2对y1求导:w2:dy2_dy1 = tape.gradient(y2, [y1])[0] B、y1对w1求导:x:dy1_dw1 = tape.gradient(y1, [w1])[0]
阅读全文
摘要:TensorFlow2_200729系列 15、交叉熵求梯度实例 一、总结 一句话总结: loss = tf.reduce_mean(tf.losses.categorical_crossentropy(tf.one_hot(y,depth=2), logits, from_logits=True)
阅读全文
摘要:TensorFlow2_200729系列 14、MSE求梯度实例 一、总结 一句话总结: tf.losses.MSE:loss = tf.reduce_mean(tf.losses.MSE(y, logits)) 1、机器学习中的公式推导? 机器学习中,很多看似很复杂的公式的推导,就是非常普通的按照
阅读全文
摘要:神经网络激活函数softmax,sigmoid,tanh,relu总结 一、总结 一句话总结: 常见激活函数:softmax、sigmoid、tanh、relu 二、【神经网络】激活函数softmax,sigmoid,tanh,relu总结 转自或参考:【神经网络】激活函数softmax,sigmo
阅读全文
摘要:数学公式库KaTeX小实例 一、总结 一句话总结: A、MathJax可以渲染公式,另一个库js库KaTeX有可以。 B、KaTeX是Khan Academy出品的一款快速、简单易用的JavaScript库,用来在Web上渲染TeX格式的数学公式。 1、在线的js和css显示正常,本地的js和css
阅读全文
摘要:小白都能看懂的softmax详解 一、总结 一句话总结: softmax把一些输入映射为0-1之间的实数,并且归一化保证和为1,因此多分类的概率之和也刚好为1 二、小白都能看懂的softmax详解 转自或参考:小白都能看懂的softmax详解https://blog.csdn.net/bitcarm
阅读全文
摘要:TensorFlow2_200729系列 13、二阶梯度求解 一、总结 一句话总结: 梯度是放在with tf.GradientTape() as t1 语句之中,那二阶梯度就是这个语句的嵌套 import tensorflow as tf w = tf.Variable(1.0) b = tf.V
阅读全文
摘要:Python查看对象属性的方法 一、总结 一句话总结: a、使用dir(object)或者object.__dict__ b、也可以使用help函数 二、Python查看对象属性的方法 转自或参考:Python查看对象属性的方法https://www.cnblogs.com/linyouyi/p/1
阅读全文
摘要:TensorFlow2_200729系列 12、全连接层 一、总结 一句话总结: tf.keras.layers.Dense(2, activation='relu') 1、为什么神经节点一般有多个w和一个b? A、h=relu(X@W)+b,这里的b表示bias,也就是误差, B、比如第一层3个节
阅读全文
摘要:TensorFlow2_200729系列 11、测试(张量)实例 一、总结 一句话总结: 就用算好的w和b,来计算测试集上面的正确率即可,非常简单 # test/evluation # [w1, b1, w2, b2, w3, b3] total_correct, total_num = 0, 0
阅读全文
摘要:TensorFlow2_200729系列 10、meshgrid操作实例 一、总结 一句话总结: point_x, point_y = tf.meshgrid(x, y) import tensorflow as tf import matplotlib.pyplot as plt def func
阅读全文
摘要:神经网络可视化:PlayGround 一、总结 一句话总结: PlayGround是一个在线演示、实验的神经网络平台,是一个入门神经网络非常直观的网站。这个图形化平台非常强大,将神经网络的训练过程直接可视化。 PlayGround的网址是:http://playground.tensorflow.o
阅读全文
摘要:TensorFlow2_200729系列 9、前k项准确率实例 一、总结 一句话总结: 就是用tf.math.top_k可以得到概率前k的项的索引构成的数组,然后在普通计算即可,核心点就是矩阵的一些操作 def accuracy(output, target, topk=(1,)): maxk =
阅读全文
摘要:TensorFlow2_200729系列 8、前向传播(张量)实战 一、总结 一句话总结: A、就是手动(模拟原理)实现多层多节点的神经网络计算,784(输入)->256->128->10(输出) B、多节点的神经网络,用矩阵计算很方便,比代数计算方便多了 for epoch in range(10
阅读全文
摘要:神经网络中的代数运算和矩阵运算的关系 一、总结 一句话总结: 神经网络中矩阵运算和代数效果是一样的,只不过是代码转成矩阵了,矩阵计算更加方便 1、神经网络中的节点都是简单的感知器? 也就是 y=w*x+b,如果加上激活函数,比如relu,就是y=relu(w*x+b) 二、神经网络中的代数运算和矩阵
阅读全文
摘要:tf.random.truncated_normal()-截断正态分布 一、总结 一句话总结: sigmoid激活函数,用截断的正态分布更好,因为这样就不会有两侧的梯度消失的情况 二、tf.random.truncated 转自或参考:tf.random.truncatedhttps://blog.
阅读全文
摘要:TensorFlow2_200729系列 6、tensorflow2 数据类型 一、总结 一句话总结: list(python原生):python中灵活的数据存储方式,但是效率低 np.array(numpy):相同数据的n维数组,用于高性能计算,没有GPU加速和自动求导 tf.Tensor(ten
阅读全文
摘要:TensorFlow2_200729系列 7、广播 一、总结 一句话总结: a、手动或自动扩充维度进行运行,numpy也有类似的功能 b、比如x=tf.random.normal([4,32,32,3]); (x+tf.random.normal([3])).shape; TensorShape([
阅读全文
摘要:TensorFlow2_200729系列 5、手写数字识别实例 一、总结 一句话总结: 手写数字识别实例,神经网络的层是不断降维的过程。 model = keras.Sequential([ # 28*28=784 784到512的降维 # 相当于公式 h1 = relu(w1*x+b) layer
阅读全文
摘要:TensorFlow2_200729系列 4、手写数字识别理论 一、总结 一句话总结: 手写识别数字中,最开始由784(28*28)维降到最后输出的10(10类输出)维,每一层神经网络降一次维 1、p(y=1|x)=0.8表示什么意思:out:[0.1,0.8,0.02,0.08]? 在x的条件下,
阅读全文
摘要:损失函数基础知识总结 一、总结 一句话总结: I、损失函数(loss function)是用来估量模型的预测值f(x)与真实值Y的不一致程度, II、损失函数是一个非负实值函数, III、损失函数通常使用L(Y, f(x))来表示, IV、损失函数损失函数越小,模型的鲁棒性就越好。 1、损失函数、代
阅读全文