何时使用神经网络?


有关神经网络和深度学习的更详细的解释, 请看这里。其“更深”版本正在图像识别,语音和自然语言处理等诸多领域取得巨大突破。

现在的主要问题是何时使用神经网络?关于这点,你必须记住一些事情:


神经网络需要大量的信息数据来训练



将神经网络想象成一个孩子。它首先观察父母如何走路。然后它才会独立行走,并且每走一步,孩子都会学习如何执行特定的任务。如果你不让它走,它可能永远不会学习如何走路。你可以提供给孩子的“数据”越多,效果就越好。


当你有适当类型的神经网络来解决问题时



每个问题都有自己的难点。数据决定了你解决问题的方式。例如,如果问题是序列生成,递归神经网络更适合,而如果它是一个图像相关的问题,你可能会采取卷积神经网络。


硬件要求对于运行深度神经网络模型是至关重要的



神经网络很早以前就被“发现”了,但是近年来,神经网络一直在发光,这是因为计算能力的强大。如果你想用这些网络解决现实生活中的问题,准备购买一些高性能硬件吧!


                                                                     如何解决神经网络问题



神经网络是一种特殊类型的机器学习(ML)算法。因此,与每个ML算法一样,它遵循数据预处理,模型构建和模型评估等常规ML工作流程。我列出了一个如何处理神经网络问题的待办事项清单:




  • 检查神经网络是否可以提升传统算法。
  • 做一个调查,哪个神经网络架构最适合即将解决的问题。
  • 通过你选择的语言/库来定义神经网络架构。
  • 将数据转换为正确的格式,并将其分成批。
  • 根据你的需要预处理数据。
  • 增加数据以增加规模并制作更好的训练模型。
  • 将数据批次送入神经网络。
  • 训练和监测训练集和验证数据集的变化。
  • 测试你的模型,并保存以备将来使用。

在TensorFlow中实现神经网络

注意:我们可以使用不同的神经网络体系结构来解决这个问题,但是为了简单起见,我们需要实现前馈多层感知器。神经网络的常见的实现如下:


  • 定义要编译的神经网络体系结构。
  • 将数据传输到你的模型。
  • 将数据首先分成批次,然后进行预处理。
  • 然后将其加入神经网络进行训练。
  • 显示特定的时间步数的准确度。
  • 训练结束后保存模型以供将来使用。