深度学习进阶之路-程序员宅基地

技术标签: 机器学习  资料  过程  深度学习  进阶之路  

深度学习之路

写在前面一些东西:我是一个转行的人,也是一个小白,写这些东西既是为了记录回顾自己所学,同时也是给刚入门的同学一点信心和冲劲,正如亮剑中李云龙所说,我们要敢于亮剑,不管前方道路有多么艰难困苦,我相信我们的坚持和努力能够克服
本帖会持续更新,记录自己一路走过的学习之路,如果有人能够从中获取点什么,也算是我的万分荣幸。另外 本帖中出现的所有课程资料我均已购买正版或为免费资源,如有侵权,请告知

开拔

先写一些路径指导上的东西,给学习定一个框架

这是成为一个成熟的AI算法工程师所必需的知识框架,当然大家也不要太过紧张,短时间内肯定不可能都学完,下面是我的学习之路,仅做参考,后续成长的过程中继续对自己进行补充升级。
这个地方也是我踩的坑之一,一开始总会显得比较迷茫,太多了,不知道开始学什么,这也学点那也学点,最后还是什么都不会,才痛定思痛,顺着一条路径开始学习,并且定了自己的细分领域,比如我想进入无人驾驶行业,细分下就是目标检测,这属于CV即计算机视觉,单单只学习前面的东西,是不够的,万丈高楼从地起,前面的都是地基,是方法,细分领域下还有工具,有更多具体问题的算法,正如周院士所说,算法没有优劣,具体问题的算法才有优劣,每一个细分领域的算法都是基础算法的改进再改进,但是万变不离其宗,如果基础不牢固,后面也听不懂,无从下手。我就是直接跳过了一些基础算法部分,直接去看SSD,YOLO,Faster RCNN这些经典算法发现看不懂,又回来补基础。
看一下学习路径吧,从小白入门开始,慢慢进阶,学到哪儿我就更新到哪儿,步步排雷,开拓道路,希望有一起学习的同学加入我,我们互相鼓励,共同进步

基础部分的学习过程

这是我学python的视频,大家可以另外找视频,也可以用这个,内容较多,请选择观看,不明白的请私信我
链接:https://pan.baidu.com/s/1K4ObShiou1ttOXkmD3u-1A
提取码:wed0
数学基础就是上面提到的那些,目前只用到了简单的微积分,线性代数(主要是矩阵思维,还有一些特殊矩阵的性质,比如对称矩阵,忘记了的不要慌,我也忘记了,重新翻一下,静下心来,大概几个小时就可以了,大家可以找本书看一下),概率论与数理统计(基础建设,深度学习很多东西都是基于概率来的,从头到尾即符号意义,古典概率开始到大数定理都需要掌握,静下心来,很快的,因为都是基础东西,不做很难的研究,先把原理搞懂再说,基础不牢地动山摇)。
比较重要的是导数,偏导,梯度下降原理,Beta函数(概率的概率分布),Taylor展开(多项式,我们解决的就是一个模型近似问题),我看的是王良老师的课程,是数学背景,大家有兴趣可以搜一下,我报的会员不需要钱,不知道正常看这个课需不需要钱,其个人博客为:https://wangliangster.github.io,我是转行的所以比较着急,想花点钱有人带着少走些弯路,资金有困难的同学可以自己看,都是基础知识,上学时间比较充裕
附上一个知乎专栏连接,讲机器学习中数学知识点的,你会了可以按这个复习,不会可能看不懂,但可以按照这个点去看相关知识点:https://zhuanlan.zhihu.com/p/36584206

下面开始更新学到的东西(19/12/04开始记录)

还是那句话,基础不牢地动山摇,在这之前我已经看了比较久的深度学习了,但是遇到了一些瓶颈,让我的学习进度变得很慢,有些东西开始听不太懂了,心情也跟着烦躁了起来,干脆就针对性的复习数学知识,我下面所说都是我视频课程中的数学知识点,大家可以按照这个学习,应该够用,如果时间充裕,可以将基本数学课全部过一遍另算。
今天学习和复习的内容包括:导数,偏导,方向导数,梯度下降原理(为什么梯度下降最快,因为该方向的导数移动速度最快),Beta函数,Taylor展开,还有线代的一些知识,包括特征值与特征向量,方程组的解,PCA降维原理,主要是协方差矩阵和对称矩阵的性质,具体可以到王良老师博客上去看一下。
关于Beta分布可以看下这篇博客:https://blog.csdn.net/ccnt_2012/article/details/81113923
可汗学院统计学的经典内容:
http://open.163.com/newview/movie/free?pid=M82IC6GQU&mid=M83J9IK60
不知道一天能不能看完,看不完过来分割一下。
很可惜今天没有看可汗学院的视频,主要理解PCA的降维原理的时候碰到了一些问题,对于矩阵对角化和对称矩阵这块儿不太理解,又重新翻了下书,附上PCA算法链接,写的很通俗易懂:https://blog.csdn.net/r709651108/article/details/82777598

PCA的理解

此博客关键部分的理解:
当然首先就是矩阵与其转置相乘为协方差矩阵的理解,先看协方差的定义:
Cov(X,Y) = E[(X-E(X))(Y-E(Y)],先看这个式子,是协方差定义,再看下面这个性质:若两个随机变量X和Y相互独立,则E[(X-E(X))(Y-E(Y))]=0,因而若上述数学期望不为零,则X和Y必不是相互独立的,亦即它们之间存在着一定的关系
这就是博客中所说的去中心化的好处,即数据都减去了均值,全部完成了X1=X-E(X)和Y1=Y-E(Y)的过程,然后相乘的时候,对角线全是自己乘自己,就是方差(保持自己这个维度离散情况),对角线全是自己乘以别的数据(保持自己维度和别的维度的不相关性),挨个乘一遍(这个地方适合自己举个例子写出来),你再看看协方差定义是什么乘什么,不就是X1Y1嘛,所以这不就是协方差吗,再看性质,如果相互独立,E(X1Y1)=0,这不就是我们要求的东西嘛,我们要求解一个矩阵P,使得D矩阵满足非对角线元素为0。解释到这儿应该差不多了吧,再看下面
协方差矩阵A * A的转置的对角元素是数据方差,其余元素为不同数据间的协方差,降维而不丢失信息的原理就是找到一个新的这样的协方差矩阵,使数据自己的方差最大,保持本身数据完整性,协方差为0,保证数据降维过程中不同数据的不相关性,以便在新的基上投影时保证数据的多样性。
我们在降维过程中是在这样的原则指导下进行的,所以基于下图D和原始数据协方差矩阵C的关系,我们将原始数据X降维到Y的矩阵P就可以确定了,C本身是实对称矩阵(至于为什么矩阵X *X的转置是对称矩阵,不知道的可以自己查一下资料),P就是将C对角化的一个矩阵,接下来就是C为对称矩阵的性质,求P,求出P取前K行(怎么取),再乘以X得到Y,就完成了降维。
附上个图,是博客里面涉及到的一个推导过程,博客中没有,其余少的例子自己例举一下就好,不知道为啥举例子解释却没有例子,不过不咋影响阅读
在这里插入图片描述
总结一下PCA的算法步骤:
设有m条n维数据。
1)将原始数据按列组成n行m列矩阵X
2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值
3)求出协方差矩阵
4)求出协方差矩阵的特征值及对应的特征向量
5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P
6)即为降维到k维后的数据

解释一下矩阵的对角化:

首先提出矩阵相似的概念,设有n 阶方阵A与B,若有可逆矩阵P使得P逆AP=B,则称A与B相似,如果一个方阵和一个对角阵相似,就称此方阵可对角化。
矩阵对角化的充要条件为:n阶方阵A有n个线性无关的特征向量
推论:若n阶方阵A有n个不同的特征值,则A可对角化
因为不同特征值的特征向量是线性无关的,若特征值有重数,还是看特征向量的个数
对于这种情况来说P就是线性无关的特征向量组成的矩阵
对于n阶实对称方阵来说,有定理:不同特征值对应的特征向量互相垂直
这就是求解上述使对称矩阵C成为对角化矩阵D的P矩阵的方法,对于博客中所说的基只需要将特征向量正交化即可,使用施密特正交公式。
正交矩阵的定义是A*A的转置=E

重新全面复习一下概率论与统计
概率论

我又把书全部快速过了一遍,每个定理对应看一个练习题,太难的略过,把重要的都掌握一下中心思想,以下所提所有概念和理解都是工程意义上的常规理解,不做纯数学上的严格区分,比如卷积,期望和均值等
概率公式,条件概率公式,0-1分布(n=1的二项分布,又叫做伯努利分布),二项分布,泊松分布,连续分布,联合分布(二维因素),联合分布的边缘密度(只考虑一个因素)。协方差公式,切比雪夫公式即大数定理,中心极限定理
大数定理比较好理解,在下面的统计学中我也做了介绍,大数定理本身讲究的是频率的稳定性。而中心极限定理讲的是不管来自任何分布的独立变量,符合期望为μ,方差为sigmod方,
当n趋向于无穷大时,所有随机变量的和近似符合正态分布,正态分布的期望为nμ,方差为n倍的sigmod方 ,将这个和记为Y。标准化后近似服从N(0,1)标准正态分布,标准化式子为(Y-nμ)/sigmod*根号n,(这个不知道的可以查一下,就是正态分布的内容,一个是变量符合正态分布,那么标准化后符合期望为0,方差为1的标准正态分布)。
为什么把这个中心极限定理写出来,是因为下面要用,有了这个中心极限定理,在下面统计学中样本均值的抽样分布,期望和方差的计算才可以理解,样本均值的抽样分布一样符合中心极限定理,但它近似正态分布的期望为μ,方差为总体方差/n,标准差就是开根号,总体标准差/根号n。为什么方差要除以n呢,实际上期望和方差都要除以n,注意看上面,Y服从的正态分布的期望和方差,现在是样本均值,注意均值2字,所以在原来的基础上除以n,得到期望为μ,与总体期望一致,标准差为总体标准差/根号n。
加上一张图片,从书上看到了,拍了张照片,某些时候可以加深理解。
在这里插入图片描述

可汗学院的统计学

以下内容均为自己笔记,可能有点杂乱,内容均来自于可汗学院的统计学视频,可自行观看,比较简单
https://blog.csdn.net/weixin_45440964/article/details/103662467

西瓜书的学习

最近跟着深度之眼的西瓜书训练营开始学习西瓜书,同步更新自己所学到的知识点,每天将所学到的东西,同时在博客中更新,未完待续。。。

机器学习

吴恩达的机器学习课程我已经看完了,这个是入门必看课程,前面很简单,后面慢慢的才有些难度,有些不懂的地方,特别是关于PCA降维原理部分,这个课程在网易云课堂是免费的,大家可以去看看,这个课程不好的一点是没有代码,只有原理,脱离代码可能有时候觉得比较懵逼,我看了两遍那个课,现在还是忘了很多,因为没有代码,后续一段时间我会将里面的代码实现,开始实现那里面代码的时候会在这个段落添加博客链接。

对抗生成网络

放在这篇博客了,课程已通过正规渠道购买,我都是边听边学习边记载的,如果有侵权,请告知
https://blog.csdn.net/weixin_45440964/article/details/103429433

CV与深度学习

绕老绕去还是没能离开传统cv,按照老师的讲课学习一下,课程内容就不自己写了,网上很多,放两篇博客链接吧

两个传统的算法

Harris Corner Detection
https://blog.csdn.net/jia20003/article/details/16908661
结论:两个特征值都小是平坦区域,一个大一个小是边缘区域,两个都大是角区域,也是我们需要找的区域
代码详解:https://www.cnblogs.com/DOMLX/p/8763369.html
SIFT(重要,难)
https://www.cnblogs.com/cuteshongshong/archive/2012/05/25/2506374.html
上面这个链接是SIFT算法的译文,如果有心的同学还是建议看英文原文
https://blog.csdn.net/u010440456/article/details/81483145这篇博客写的也很好,这位作者搞了一个多月才明白,我们看他现成的理解起来没有那么困难。写一点自己的东西 :https://blog.csdn.net/weixin_45440964/article/details/103578987
代码链接:https://www.cnblogs.com/my-love-is-python/p/10414135.html

项目一 图像拼接

开始做一些上手的简单项目,图像拼接方面的,用到上面的算法提取特征点。

先看2篇硕士论文有个轮廓,泊车辅助系统快速全景图像拼接研究_汪伦,全景可视化辅助泊车系统研究_赵凯
项目过程:
最近邻域插值、双线性插值、双立方(三次卷积)插值的原理分析及其代码实现:
https://blog.csdn.net/csdnforyou/article/details/82315683
图像配准(Image registration)就是将不同时间、不同传感器(成像设备)或不同条件下(天候、照度、摄像位置和角度等)获取的两幅或多幅图像进行匹配、叠加的过程,它已经被广泛地应用于遥感数据分析、计算机视觉、图像处理等领域。

图像配准算法总结

常用的图像配准算法:https://blog.csdn.net/gaoyu1253401563/article/details/80631601
https://blog.csdn.net/xuluohongshang/article/details/52886352
特征检测与特征匹配方法汇总:https://blog.csdn.net/qq_21950671/article/details/93620052
https://blog.csdn.net/Aidam_Bo/article/details/89135969
下面这个写的特别好,看完这篇博客大概就能够知道这个小项目的流程是什么了,具体细节再继续挖掘。
图像拼接和图像融合技术:https://blog.csdn.net/lla520/article/details/77488332

相关知识

单应矩阵与透视变换矩阵:https://blog.csdn.net/u012948715/article/details/53885379
经典的齐次坐标理解:https://blog.csdn.net/jeffasd/article/details/77944822
单应性矩阵:https://blog.csdn.net/liubing8609/article/details/85340015
openCV中的findHomography函数分析以及RANSAC算法的详解:https://blog.csdn.net/qq_25352981/article/details/51530751

确认步骤:
  1. 提取特征点(我使用sift)
  2. 匹配特征点
  3. 筛选特征点对(RANSAC算法)
  4. 图像配准(计算单应性矩阵)
  5. 过渡区域处理即图像融合(加权平均法,羽化算法,拉普拉斯金字塔融合算法,我是用的是渐入渐出的加权图像融合算法 )

刚刚开始总是会显得很慌乱,万事开头难,几天后就会走向正轨的

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_45440964/article/details/103381437

智能推荐

还不会ES?Elasticsearch快速入门实操指南送上_elastic怎么发送请求-程序员宅基地

文章浏览阅读521次。还不会ES?Elasticsearch入门实操指南送上_elastic怎么发送请求

云大计算机考博 经验,计算机考博难不难?-程序员宅基地

文章浏览阅读359次。计算机考博难不难?希赛网考博英语频道为大家整理和分享考博英语相关考试知识,供大家参考学习。希望能为大家提供到帮助,祝各位都能顺利通过考试。其实计算机考博与其他专业的博士考试难度都类似,第一英语难:为什么?想进入复试,初试的英语必须过线(也有破格录取的,这是幸运当年那所高校报考的人少或是导师实在找不到人了降分录取,不要把自己放在幸运上。)。如果你是应届生,那你在研究生期间的英语有没有落下,有很多考..._云南大学计算机申博 小木虫

python调节电脑音量_python如何调节音量大小-程序员宅基地

文章浏览阅读2.4k次。首先需要安装模块pycaw,在cmd中执行:pip3installpycaw下面是完整代码示例:fromctypesimportcast,POINTERfromcomtypesimportCLSCTX_ALLfrompycaw.pycawimportAudioUtilities,IAudioEndpointVolumedevices=AudioUtilities.Ge..._python控制电脑音量

Educational Codeforces Round 19 F. Mice and Holes-程序员宅基地

文章浏览阅读168次。题目链接One day Masha came home and noticed nnn mice in the corridor of her flat. Of course, she shouted loudly, so scared mice started to run to the holes in the corridor.The corridor can be represeted as a numeric axis with nnn mice and mmm holes on it. it_educational codeforces round 19

PyQt学习笔记-使用QSettings保存系统配置参数_pyqt qsettings 使用 详解-程序员宅基地

文章浏览阅读1k次。QSettings继承于QObject,位于PyQt6.QtCore模块中。QSettings的API基于QVariant,允许您以最小的工作量保存大多数基于值的类型,例如QString,QRect和QImage。可通过配置将应用程序需要保存的参数数据保存到本地,如windows的注册表,macOS 和 iOS 上的属性列表文件,linux的ini文本文件等。_pyqt qsettings 使用 详解

Elm-Flatris:优雅的Elm语言实现的俄罗斯方块游戏-程序员宅基地

文章浏览阅读384次,点赞4次,收藏9次。Elm-Flatris:优雅的Elm语言实现的俄罗斯方块游戏项目地址:https://gitcode.com/w0rm/elm-flatris项目简介Elm-Flatris 是一个基于 Elm 语言开发的经典俄罗斯方块游戏。Elm是一种功能型前端编程语言,以其简洁、类型安全和易于维护的特性而受到开发者喜爱。该项目不仅是一个娱乐应用,更是学习Elm语言及函数式编程理念的理想实例。技术分析E...

随便推点

极速进化,光速转录,C++版本人工智能实时语音转文字(字幕/语音识别)Whisper.cpp实践_c++语音识别库-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏8次。业界良心OpenAI开源的[Whisper模型](https://v3u.cn/a_id_272)是开源语音转文字领域的执牛耳者,白璧微瑕之处在于无法通过苹果M芯片优化转录效率,Whisper.cpp 则是 Whisper 模型的 C/C++ 移植版本,它具有无依赖项、内存使用量低等特点,重要的是增加了 Core ML 支持,完美适配苹果M系列芯片。 _c++语音识别库

前端(vue)导出word文档(导出图片)_前端批量docx转jpg-程序员宅基地

文章浏览阅读688次,点赞7次,收藏11次。导出word文档方法有很多,但这次要导出图片,所以选用了html-docxhtml-docx是根据html代码进行导出........_前端批量docx转jpg

TaiShan 200服务器安装Ubuntu 18.04_ubuntu登录华为泰山服务器.-程序员宅基地

文章浏览阅读749次。TaiShan 200 服务器 Ubuntu 18.04 安装指南, amr64,aarch64_ubuntu登录华为泰山服务器.

linux openerp,openerp-程序员宅基地

文章浏览阅读101次。实验环境centos7_x64实验软件odoo_8.0.20170101.noarch.rpm软件安装yum install -y /root/odoo_8.0.20170101.noarch.rpmyum install -y yum-utils postgresql postgresql-server postgresql-libspostgresql-setup initdbsu - po..._openerp中文版 for liunx

STM32+AS608指纹模块串口通讯_as068-程序员宅基地

文章浏览阅读2.1w次,点赞53次,收藏263次。STM32+AS08指纹模块串口通讯一. 使用硬件:stm32F103 -mini stm32开发板+AS608指纹模块+usb转串口实物图:硬件接线:注意:usb转串口线是连接串口1即PA9,PA10引脚的,并接上VCC、GND提供电源二. AS068工作流程:As068模块驱动采用的是正点原子公司提供的As068.c及As068.h文件,具体..._as068

全通滤波器 相位校正 matlab,一文读懂滤波器的线性相位,全通滤波器,群延迟...-程序员宅基地

文章浏览阅读3.1k次,点赞2次,收藏19次。延迟和全通滤波器,来解释这些概念。先说结论:线性相位能保证信号中各频率成分的相对相位关系不改变。通俗解释是:信号经过线性相位滤波器后,各个频率分量的延时时间是一样的。1. 延迟举一个最简单的FIR的例子,延迟。假设16kHz的采样频率,一个采样周期的延迟,可以用FIR来表示。利用Matlab来观看这个滤波器的频率响应,代码如下。采样频率为Fs = 16kHz, 采样周期为Ts,Ts = 1/Fs。..._matlab如何对滤波器进行相位校准

推荐文章

热门文章

相关标签