机器学习——深度学习(Deep Learning)

本文探讨了深度学习在机器学习领域的核心地位,详细介绍了有监督学习与无监督学习的区别及应用场景,并解析了深度学习的关键概念与算法,如Deep Belief Networks等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Deep Learning是机器学习中一个非常接近AI的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,最近研究了机器学习中一些深度学习的相关知识,本文给出一些很有用的资料和心得。


Key Words:有监督学习与无监督学习,分类、回归,密度估计、聚类,深度学习,Sparse DBN,


1. 有监督学习和无监督学习


给定一组数据(input,target)为Z=(X,Y)。

有监督学习:最常见的是regression & classification

regression:Y是实数vector。回归问题,就是拟合(X,Y)的一条曲线,使得下式cost function L最小。


classification:Y是一个finite number,可以看做类标号。分类问题需要首先给定有label的数据训练分类器,故属于有监督学习过程。分类问题中,cost function L(X,Y)是X属于类Y的概率的负对数。

,其中fi(X)=P(Y=i | X);


无监督学习:无监督学习的目的是学习一个function f,使它可以描述给定数据的位置分布P(Z)。 包括两种:density estimation & clustering.

density estimation就是密度估计,估计该数据在任意位置的分布密度

clustering就是聚类,将Z聚集几类(如K-Means),或者给出一个样本属于每一类的概率。由于不需要事先根据训练数据去train聚类器,故属于无监督学习。

PCA和很多deep learning算法都属于无监督学习。



2. 深度学习Deep Learning介绍

   Depth 概念:depth: the length of the longest path from an input to an output.

   Deep Architecture 的三个特点:深度不足会出现问题;人脑具有一个深度结构(每深入一层进行一次abstraction,由lower-layer的features描述而成的feature构成,就是上篇中提到的feature hierarchy问题,而且该hierarchy是一个稀疏矩阵);认知过程逐层进行,逐步抽象

   3篇文章介绍Deep Belief Networks,作为DBN的breakthrough


3.Deep Learning Algorithm 的核心思想:

    把learning hierarchy 看做一个network,则

    ①无监督学习用于每一层网络的pre-train;

    ②每次用无监督学习只训练一层,将其训练结果作为其higher一层的输入;

    ③用监督学习去调整所有层

这里不负责任地理解下,举个例子在Autoencoder中,无监督学习学的是feature,有监督学习用在fine-tuning. 比如每一个neural network 学出的hidden layer就是feature,作为下一次神经网络无监督学习的input……这样一次次就学出了一个deep的网络,每一层都是上一次学习的hidden layer。再用softmax classifier去fine-tuning这个deep network的系数。



这三个点是Deep Learning Algorithm的精髓,我在上一篇文章中也有讲到,其中第三部分:Learning Features Hierachy & Sparse DBN就讲了如何运用Sparse DBN进行feature学习。


4. Deep Learning 经典阅读材料:

阐述Deep learning主要思想的三篇文章:
06年后,大批deep learning文章涌现,感兴趣的可以看下大牛Yoshua Bengio的综Learning deep architectures for {AI},不过本文很长,很长……

5. Deep Learning工具—— Theano

     Theano是deep learning的Python库,要求首先熟悉Python语言和numpy,建议读者先看Theano basic tutorial,然后按照Getting Started 下载相关数据并用gradient descent的方法进行学习。

学习了Theano的基本方法后,可以练习写以下几个算法:

有监督学习:

  1. Logistic Regression - using Theano for something simple
  2. Multilayer perceptron - introduction to layers
  3. Deep Convolutional Network - a simplified version of LeNet5


无监督学习:




最后呢,推荐给大家基本ML的书籍:



关于Machine Learning更多的学习资料将继续更新,敬请关注本博客和新浪微博Sophia_qing


References:

1. Brief Introduction to ML for AI

2.Deep Learning Tutorial

3.A tutorial on deep learning - Video




YOLO(You Only Look Once)是一种目标检测算法系列,包括YOLOv1、YOLOv2、YOLOv3、YOLOv4和YOLOv5。这些算法通过将目标检测问题转化为回归问题,从而实现了快速的目标检测。与其他算法相比,YOLO具有以下优点: 1. 速度快:YOLO将整张图片作为输入进行推理,相比于其他算法的滑动窗口或者区域建议的方法,大大减少了计算量,从而可以达到较高的检测速度,最高可达150FPS。 2. 整体推理:YOLO在训练和推理阶段都可以提取整张图片的特征信息,包含特征信息和语义信息。相比之下,其他算法如Fast RCNN在训练和推理时可能会将背景误检测为目标物体,而YOLO的误检率至少低于Fast RCNN的50%。 3. 鲁棒性:YOLO的识别算法经过不断训练学习,对形状、色彩差异大的物体进行检测时,准确率不会有明显的波动,具有较强的鲁棒性。 YOLOv3在前两个版本的基础上进行了改进,引入了Darknet-53作为基础网络结构,并且将原先的一层检测层扩展为13x13、26x26和52x52三个不同尺度的特征图,同时增加了边界框的数量,根据其大小分别在三个特征图上进行预测。 至于RK3399,它是一款嵌入式平台,可以用于运行YOLO目标检测系统。在搭建RK3399目标检测系统时,通常会通过在Windows平台对代码进行编写和修改,然后在Linux虚拟机Ubuntu中将代码交叉编译为嵌入式系统可以运行的文件。在虚拟机中完成对嵌入式平台的相关操作,包括裁剪和移植系统内核、搭建根文件系统以及对检测算法的移植和模型转换。最终,通过交叉编译工具链将整体程序编译为可执行文件,并将RK3399目标检测系统通过HDMI线与显示屏相连。
评论 97
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值