【零基础入门深度学习学习笔记】——机器学习和深度学习综述

第一章:零基础入门深度学习

第一节 机器学习和深度学习综述
第二节 使用Python和Numpy构建神经网络模型

机器学习和深度学习综述

  • 第一章:零基础入门深度学习
  • 前言
  • 一、人工智能、机器学习、深度学习是什么?
    • 1. 人工智能:
    • 2.机器学习:
    • 3.深度学习:
  • 二、机器学习的研究方法
    • 1.机器学习的实现
    • 2.机器学习模型三要素
      • 2.1 模型假设
      • 2.2 评价函数
      • 2.3 优化算法
  • 三 深度学习背景知识
    • 1 神经网络的基本概念
    • 2 深度学习的发展历程
    • 3 研究方向
  • 总结


前言

深度学习这么多年一直是比较热火的一个主题,最近几年人力资源和社会保障部公布的新一批职业中也为其做了新的定义,但是真到了学习这门技术的时候,又会遇上很多比较迷惑的地方,导致入门后会走很多弯路,博主有幸在本科期间把所有弯路走了个遍,出来找实习的时候也正式认清了自己的底细。因此今年在找工作前,借助手边的《深度学习零基础实践》这本书,再结合自己之前的学习经验,在此对之前所学的知识重新进行一次梳理。整个过程不会再赘述一些繁杂对能力提升没什么意义的概念,因此不会使用特别标准的官方表达,尽可能挑拣一些硬货,整体节奏会偏快一些。

一、人工智能、机器学习、深度学习是什么?

1. 人工智能:

研发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。在PaperWithCode网站上也可以看到,IT领域的人工智能延伸出了数以千计的研究内容,但是很多问题本质上还是为了实现人工智能最初的那个想法。

2.机器学习:

是当前比较有效的一种实现人工智能的方式,专门研究计算机怎样模拟或实现人类的学习行为,整个过程能力还是可以进化的。

3.深度学习:

是机器学习算法中最热门的一个分支。和机器学习最主要的差别还是在于所建立的假设(模型)的复杂程度。

二、机器学习的研究方法

1.机器学习的实现

机器学习的实现主要分为两步:训练和预测,也可以说是归纳和演绎
  • 归纳(训练):从具体的案例(数据集)中抽象出数据或者当前环境下的一般规律,以高中曾经学习过的线性回归为例,就是为了从一定数量的样本中学习到输出Y和输入X的关系。即学习出y=wx+b中的w和b。
  • 演绎(预测):使用之前归纳得到的规律对具体的案例(测试集)进行演绎,简单来说就是在新的环境(数据集)下验证之前归纳得到的规律是有效的。

2.机器学习模型三要素

2.1 模型假设

机器学习的实现过程中要找到一个能描述当前场景下规律的模型,漫无目的的找是不可能的,所以就要先假定一个空间范围圈出可能的规律,接下来的过程中就是在可能的规律中找出最优的,即确定模型的参数w。
简单来说,就是借助前人留下的理论,有目的地去找可能的规律。

2.2 评价函数

评价衡量之前找到的规律的函数,主要依仗这个函数来衡量当前找到的规律能不能很好地拟合到观测样本,将拟合的最小化作为优化目标。
简单来说,就是评价之前找到的规律靠不靠谱。

2.3 优化算法

设置了评价指标后,就可以在假设圈定的范围内,将使得评价指标最好,即损失函数最小还最拟合已有样本的规律找出来,找寻的方法即为优化算法。

简单来说,就是寻找规律的过程中可以使用的特殊手段。

三 深度学习背景知识

1 神经网络的基本概念

之前提到深度学习和机器学习最根本的不同在于假设,也就是定义出模型的复杂程度,而神经网络,就是研究者们借鉴人脑神经元的结构,设计出的用于找寻规律的算法模型。超过三层的非线性神经网络都可以称为深度神经网络,理论上足够深的网络可以拟合任何任何复杂的问题。其中还有一些小的概念需要清楚,这里尽量浓缩一下,不了解这些东西,后面阅读相关资料也会很吃力。
  • 1.1 神经元:神经网络中的每个节点称为神经元,在它里面,将所有输入加权求和,然后将结果经过一个非线性函数(激活函数、损失函数、目标函数,都是一个概念),让神经元计算具备非线性的能力。
  • 1.2 多层连接: 大量神经元按照不同的层次排布,形成多层的结构,连接起来就是神经网络。
  • 1.3 前向计算: 从输入计算输出的过程,顺序从前到后。
  • 1.4 计算图:以图形化的方式展现神经网络的计算逻辑。
  • 1.5 深度学习框架:是Python第三方库的一种,如Pytorch、Tensorflow、PaddlePaddle等,是前人写好的实现神经网络用的工具箱套件,里面跟乐高一样,组装和使用神经网络的一些零件和工具。
  • 1.6 Pycharm:进行Python编程的图形化界面,内部不携带Python环境,只是功能性很强而且相对比较好看的界面。
  • 1.7 Anaconda:Python语言出来后,除了Python自己的os等库函数,很多人也自己写了一些新的第三方库,基本都在pypi.org中可以查到,为了方便使用,Anaconda将其中最常用的一些第三方库进行了打包,方便使用。
  • 1.8 Jupyter Notebook(Notebook):它是Anaconda安装包所携带的一个编程图形化界面,在Colab,Kaggle、AIStudio等地方做出了这个东西的很多衍生物。它的本质也是界面。

2 深度学习的发展历程

枯燥的历史八卦这里就不再进行了,1940年首次提出神经元的结构开始,前人在不断的总结和发展的过程中将深度学习发展到了现在的地步,感兴趣的可以自己了解其中历史。对于这一部分历史,大多都是前人替后辈铺好的路、踩过的坑、以及发展过程中一些问题的记录。这些前人积累的经验值也在不断地浓缩总结,学习的过程对于自己的能力提升也有帮助,可以耐心看看西瓜书一类的书籍,没什么好总结的,很多资料和公开课已经做很成熟了。之后的历史,还要我们这一辈自己书写。

3 研究方向

这里总结一下自己目前了解到的一些主流研究方向,有往安卓端进行部署的轻量级模型的研究,还有追求模型通用性的研究,还有在专一领域进行深入挖掘的研究,还有一些将深度学习和应用场景进行AI+X赋能的应用级研究等。而到2022年的现在,很多问题的发展还不算特别成熟。最根源的能力还是在算法能力,计算思维等东西的锻炼上,尤其是本科生,可以把基础打好了,再追求更高层面的东西,若本科出身本就一般,更不要去追求触及太宽泛的东西,极容易翻车。

总结

深度学习发展过程中前人留下很多可以直接继承的经验,耐心掌握,然后再找自己的路不迟。

你可能感兴趣的:(深度学习入门,深度学习,学习,机器学习)