1、深度学习简介
深度学习是机器学习的一个分支,简单来说就是通过人工神经网络,强行在业务的 输入 和 输出 之间,暴力耦合一个出一个数学模型。
1.1 深度学习特点
1、由于是暴力耦合出来的模型,自然模型可解释性很差,如果模型要准确,就需要非常大量的数据进行训练。
因此,如果客户说,我们的数据比较少,那就不能用深度学习来做,选择更符合客户业务场景的传统机器学习算法来做(比如 支持向量机,随机森林,卡尔曼滤波,等等)
2、简捷,应用场景多,只要数据量到位了,啥都可以用深度学习来做,效果也非常好。比起去学一堆其他机器学习算法,舒服多了。
1.2 深度学习框架
我的博客 主要介绍Pytorch
2、神经网络 和 神经元
2.1 神经网络
第一节已经介绍了,深度学习就是通过人工神经网络,强行在业务的 输入 和 输出 之间,暴力耦合一个出一个数学模型。
神经网络就是 一系列 线性 和 非线性 的函数,一般线性函数放在前面,即y=wx+b ;非线性函数(就是什么Sigmoid,tanh,Rule等等)根据业务场景不同(是做分类? 还是做 回归拟合?),放在最后。
神经网络就是不停的在数据 正向,反向 传播过程中,去修改线性方程的 权重系数,直到损失最低。简单说,就是不停调整 w,b。解出最优的w和b,模型就训练完成了,即可以用来预测或者分类了。
值得注意的是:“深度学习” 的神经网络,比传统“机器学习”的神经网络,更长,更深
2.2 神经元
神经网络里面的每个节点,都是神经元。最终成型的暴力数学模型,就是所有神经元共同作用的结果。简单来说,每个神经元,就是一个 z=wx+b,几百万的 z=wx+b 就能暴力出想要的输出啦。
3.激活函数
激活函数在神经网络的最后一层,直接决定系统输出一个值(做预测),还是多个值(做分类)。用户需要根据业务场景来选择使用什么激活函数。你是要做分类问题,二分类?多分类? 还是做拟合回归?
常见激活函数如下:
具体该用什么,在业务场景下多做实验.
4. Pytorch
深度学习框架非常多,我的博客采用比较流行的Pytorch深度学习框架
安装方法:直接通过百度去 Pytorch 官网 Start Locally | PyTorch
安装前置条件:
(1)装好了 python3.x
(2)装好了 Conda(这个类似java的Maven,能够快速帮你装好需要的第三方库以及库要正确运行需要配套的依赖)
详细步骤:
(1)进入官网,选择好环境
复制 安装命令 conda install pytorch....... nvidia
(2)进入Anaconda Prompt
复制安装命令 进小黑窗 回车,等待,即可安装完成