Starter.bundle计算机视觉与深度学习:1-6

利用假期好好充实自己吧,找到了一套关于《计算机视觉与深度学习的书籍》准备认真啃一啃,同时写好学习总结博客。研二这一年应该要出一些成果,虽然导师还是以理论为主,但是为了以后能去大厂,还是要多下功夫啊,女生在这方面好难。
在这里插入图片描述
这本书分为三个bundle:

  • Starter Bundle - 这部分的内容比较基础,包括从零开始实现回归算法、深度神经网络和卷积神经网络。对于完全没有机器学习基础的人而言,可以从实例中学习到深度学习的基础知识。如果有一定的深度学习知识背景,也可以学习到在实际中如果应用深度学习(主要是图像分类),加深对深度学习的理解。
  • Practition Bundle - 这部分的内容在Starter Bundle基础上更进一步,探讨的是在实际中可能会碰到的问题及解决之道,比如提高识别的精度、模型选择、超大数据集,最后引入了几个大型的、复杂的网络模型。
  • ImageNet Bundle - 这部分更多的关注于实战,前半部分是在ImageNet数据集上训练各种复杂的网络,后半部分则是解决实际生活中的问题,包括表情检测、车辆识别、年龄预测等等。完成这部分的学习之后,想必你的实战能力会提高一大截。

链接:https://pan.baidu.com/s/10EWiaHY2SqP2ITiq2OqSAw
提取码:45hb
复制这段内容后打开百度网盘手机App,操作更方便哦

链接放在这里,有需要的同学自取,有问题一起讨论呀!!!

书中涉及的code部分,我在github上找到了一个总结好的内容,供大家参考https://github.com/shengqishi8787/Starter_Bundle

3. Image Fundamentals

像素如何形成图像,如何用numpy数组表示像素

  • 像素是图像的原始构建块,每一个图像都由一组像素组成
  • 灰度图像中,每个像素都是0到255之间的标量值,其中0表示“黑色”,255表示“白色”,0到255之间是不同深浅的灰色,接近0较暗,255较亮
    -在这里插入图片描述
  • RGB颜色通道:a list of three values: one for red component;one for green and another for blue
    要在RGB颜色模型中定义颜色,我们需要做的就是定义单个像素中包含的红色、绿色和蓝色的数量
    每个通道至定义在[0,255]之间,我们通常使用8位无符号整数来表示强度。

例如:“白色”——(255, 255, 255):红绿蓝三个通道全部填满
“黑色”——(0, 0, 0)
“红色”——(255, 0, 0)
在这里插入图片描述
在这里插入图片描述

  • 为什么在图像处理中,表示图像通常是numpy数组(height,width,depth)height为什么在width前面?

矩阵表示法:当定义矩阵的维数时,我们总是把它写成行x列。图像中的行数是其高度,而列数是图像的宽度。

  • 图像的长宽比:ratio
    常见的卷积神经网络的图像尺寸包括:3232, 6464, 224224, 227227, 256256, and
    299
    299.

4. Image Classification Basics

语义鸿沟(semantic gap)问题:计算机显示的是像素矩阵,而人类视觉看到的是图片
在这里插入图片描述
利用特征提取量化图像内容

  • Supervised Learning:
    给定训练数据,创建一个训练过程,当模型预测出现错误时,进行修正,当满足停止条件:低错误率或训练的最大迭代次数
    常见的监督学习算法:逻辑回归,支持向量机,随机森林,ANN
  • Unsupervised learning:
    没有与输入数据相关的标签,当模型做出错误的预测时,无法进行修正
    常见的无监督学习算法:PCA主成分分析和K-means聚类
    针对于神经网络,还有 Autoencoders,Self organizing Maps(SOMS). Adaptive resonance theory(自适应共振理论)
  • Semi supervised learning
    半监督学习的流行选择包括标签传播、标签传播、梯形网络和联合学习/联合培训。

小放松:菲波那切数列的实现
在这里插入图片描述

  • 训练集和测试集的选择
  • 在这里插入图片描述
  • 模型评估; 准确率和召回率

5. Datasets for Image Classification

很有意思的MNIST数据集,Hinton把它称作“机器学习中的果蝇”

6. Configuring your development Enviroment

本书用到的计算机视觉的主要编程语言为python ,主要库包括Keras ,Mxnet, OpenCV, scikit-image, scikit-learn, and more

**Keras:**支持TensorFlow 和Theano
Mxnet: a deep learning library that specializes in distributed , multi-machine learning
OpenCV: 对实时图像数据进行处理
Scikit-learn: a collection of algorithms for image processing
scik it-image: an open-sorce python library for machine learning ,cross-validation,and visualization

7. Your First Image Classifier

KNN-分类器:针对“Animals Dataset”,动物数据集包含三个classes: dogs,cats, and panadas with 1000 example images per class. 3000个images
该算法直接依赖于特征向量的距离(在图像例子中,即RGB的像素强度)
在这里插入图片描述
基本假设:在n为空间中,具有相似视觉概念的图像紧密排列在一起
常见的距离度量函数:

  • 欧式距离(L2)在这里插入图片描述
  • Manhattan 距离(L1)
  • 在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值