关于神经网络的一些思考与感受 原创

发布于 2025-1-26 13:32
浏览
0收藏

“ 神经网络模型并不是通用模型,不同的问题需要设计不同的神经网络模型,千万不要想着一个模型打天下 ”

神经网络作为当前人工智能领域最炙手可热的技术,其技术原理也相对比较复杂;而在学习神经网络的过程中也面临着很多问题和感受,因此这里就简单记录一下。

关于神经网络

从本质上来说,所谓的神经网络就是一个模拟人类大脑的数学模型;而为了解决不同的问题,技术专家们也设计了多种不同的神经网络模型,比如RNN,CNN以及Transformer等模型,以及基于这些模型的变种。

不同的神经网络模型擅长解决不同领域的具体问题;比如CNN——卷积神经网络就比较适合处理图像任务;Transformer擅长处理自然语言问题。

关于神经网络的一些思考与感受-AI.x社区

当然,受限于目前的技术问题,还没有一种通用的神经网络模型能够解决所有问题;因此,根据不同的任务就只能设计不同的神经网络模型;以上三种神经网络架构只是目前市面上比较常见的,比较通用的神经网络架构;并且在处理具体任务时,不同的网络架构也可以嵌套使用。

其次,从技术的实现角度来说,目前市面上有两大技术框架;一个是谷歌公司开发的Tensorflow框架,以及Meta公司开发的PyTorch框架。

当然,神经网络最重要的是其实现思想,所以使用什么语言,以及什么技术都可以根据自己的喜好进行选择;而不论是Tensorflow还是pyTorch框架,只是方便技术人员的开发;使得技术人员不需要所有东西都从0开始。简单来说就是,你用这两个框架也可以,不用这两个框架也可以。

关于神经网络的一些思考与感受-AI.x社区

神经网络的实现流程:

要想设计和实现一个能够解决具体问题的神经网络模型,需要经过以下几个步骤:

  • 明确任务目标,即你想设计一个具备什么功能的神经网络模型
  • 构建模型 即使用什么架构,以及具体的神经网络结构,就是神经网络的具体实现
  • 数据准备 收集任务目标所需要的训练数据集和测试数据集等
  • 模型训练 验证与测试使用等

神经网络的实现比较复杂,不但要设计神经网络的输入输出,还要设计神经网络有哪些层,每层的功能实现是什么样的;并且,由于神经网络主要以向量格式为主,因此还需要对训练数据进行处理,比如构建词汇表,分词,向量化等操作。

而一个神经网络的好坏,一是看神经网络模型的设计;二就是训练数据的质量;因此,要想训练一个神经网络就需要收集大量的高质量的训练数据。而数据收集到之后还不能直接使用,还需要经过清洗,格式化等操作。

目前神经网络模型除了受限于算力问题之外,还一个非常严重的问题就是训练数据的问题;传说openAI在训练GPT-4时已经把能找到的所有数据都用完了。

受限于自己的基础问题,虽然从网上找了一些博客手动实现一个神经网络模型;但到现在也没想明白,为什么这些数据在神经网络里七颠八倒之后,就能够学习到数据的规律。

关于神经网络的一些思考与感受-AI.x社区

总之,学习神经网络最重要的不是看理论,最好的方式就是自己手动实践,根据自己的实际问题,去设计和实现一个神经网络;这样你就能明白神经网络到底是怎么运作的。

在使用神经网络解决实际问题的过程中,切记不可指望一个神经网络模型就能套用到所有问题中,那是不可能的;基本上每个问题都需要设计一个不同的神经网络;区别可能就是有些相似度比较高的问题,可能在现有的神经网络模型上进行适当的调整与修改。


本文转载自公众号AI探索时代 作者:DFires

原文链接:​​https://mp.weixin.qq.com/s/KSeBhEjeL9g8NCz-Vi5HiQ​

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
收藏
回复
举报
回复
相关推荐