其实,我之前有点分不太清这些网络、模型、算法到底是谁是谁,谁又包含谁?就比如说,我导师问我想搞什么,我说我想研究算法,但是我好像又不是特别清楚,算法究竟是个什么玩意?我想做的东西真的是算法吗?
一、网络:
一般指的都是神经网络,层数加大加复杂就是深度学习网络(类似一个个记忆单元通过权重连接而成的一个具有学习和记忆功能的大脑)
- 深度学习网络(单纯一个网络,啥东西都还没塞进去,空空如也)
- 定义:深度学习网络是一种数学模型,由多层互连的神经元组成。
- 结构:通常包括输入层、隐藏层和输出层。
- 功能:用于学习和表示数据中的复杂特征和模式。
- 示例:卷积神经网络(CNN)、循环神经网络(RNN)、transformer等。
二、模型
这里单指由深度学习网络构建的模型,模型其实有很多种,主要看你用的什么模型结构。
比如这里用的是神经网络结构那就是神经网络模型,如果你用的是树结构那就是树模型,如果是什么线性结构那就是线性模型。
- 深度学习模型(其实就是网络+训练后的参数;塞了一堆针对某个问题的学习训练权重,拥有了对某方面的知识)
- 定义:深度学习模型是网络结构与其参数(权重和偏置)的组合。
- 组成:包括网络架构和经过训练的参数。
- 功能:可以接受输入并产生预测或输出。
- 示例:训练好的ResNet-50模型、BERT模型等。
三、算法
而算法,指的是解决问题或执行某项任务的一组有序步骤或规则。是一种规则,一种逻辑方法。在AI领域也就是指的是模型的优化(学习)方法和技术。
- 定义:深度学习算法是用于训练和优化深度学习模型的方法和技术。
- 功能:包括如何更新模型参数、如何处理数据、如何评估模型性能等。
- 范围:涵盖了从数据预处理到模型训练再到模型评估的整个过程。
- 示例:反向传播算法、随机梯度下降(SGD)、Adam优化器等、CGB、XGB。
四、总结
总之,他奶奶的,你现在搞的什么LSTM,什么transformer这都不是什么算法不算法的,你根本没这资格提什么算法;你根本也沾不到什么算法的边,你顶多只能说你是搞深度学习的,单纯套用深度学习网络利用keras这些框架搭建自己的深度学习模型,用于解决一些实际的问题。(顶多调一下参数啥的,这叫优化模型效果,又不是优化算法!优化算法那是直接提升模型的训练速度和训练效果的上限!你这能不能调参到上限都不知道还隔着说自己搞算法算法,no face了兄弟!)
所以,我是做啥的,我是做深度学习的!!!而且是深度学习应用的!!!跟他妈的开发研发算法一点屌关系都没有!