观看李宏毅老师的《一天搞懂深度学习》有感:
1.什么是深度学习?
深度学习是机器学习的一部分。机器学习的目标是什么?可以看下图:
根据老师的说法,机器学习的目的就是找到这样一个函数,将外部事物(声音,图片,文字)等特征事务(token)作为参数,传入这个函数中。机器运行这个函数,得到一个较好的结果;
2.怎么去找这个“函数”?
现在有很多的框架能够让人们来使用。比如:
设定一些参数,让框架去运行,从而得到最优解(偏差值最小)的一个函数;
3.深度学习的步骤
我们可以简单概括深度学习的步骤:
1.准备训练数据(数据集,或者说training data)
2.找到一系列的函数。
3.将训练数据作为参数放入这些函数
4.将通过训练的函数筛选出来。
5.准备测试数据集(测试数据)。
6.将测试数据集作为参数选择出来的函数。
7.选择偏差值最小的函数,作为最终输出。
4.神经元(Neuron)
通过多年的探索,最后发现人的神经网络架构很适合机器学习。
神经网络是由许多的神经元组成,每个神经元的反应,取决与外部的特征以及本身对这个特征的反应权重。
解析上图:
红色部分:外部特征
灰色数字:是当前神经元对外部特征的反应权重。如果权重高,证明我对这个特征反应强烈,识别度就更高。
绿色部分:用来平衡神经元的反应公式
蓝色部分:激活函数,可以设定该神经元什么时候被激活。
最右边:激活神经元之后得到的结果。这个值就是该神经元对外部特征的反应值,0~1之间,越大表明反应越激烈,识别度越高。
5.神经网络(Neural Network)
神经网络是由多个神经元组成。因为单个神经元的功能非常单一,越复杂的功能,神经网络结构越复杂。
6.卷积神经网络(CNN)与循环神经网络(RNN)
卷积神经网络一般用于图片识别,循环神经网络一般用于文本类(chatGPT)。
7.小测试(基于pythorch 的mnist数据集手写数字识别)
a.下载anaconda,Download Now | Anaconda
b.打开Anaconda Prompt
c.安装环境python环境
参考:https://zhuanlan.zhihu.com/p/684652174
d.环境搭好后打开Jupyter Notebook(这是一个可以集成python环境的平台,可以搭建不同版本的环境)
e.新建Notebook,并选择刚才搭建的环境
8.写代码
这部分网上的参考代码很多,请自行搜索。
写好之后,运行。
运行结果:
9.之后可以自己在网上找一些图片,然后导入进去。
要注意导入的图片一般都是RGB的格式,需要进行转换。