作者:禅与计算机程序设计艺术
1.简介
2019年是深度学习爆炸年,深度学习(deep learning)技术通过训练神经网络模型对数据进行学习,在图像识别、自然语言处理等领域都取得了重大突破。近几年来,基于TensorFlow和Keras的开源深度学习框架逐渐流行起来。本文将以TensorFlow 2.0和Keras作为深度学习的主要工具来阐述深度学习的概念和相关知识。读者阅读本文将了解到以下几个方面:
- 深度学习基本概念与特点
- TensorFlow 2.0及其主要功能模块
- Keras API及其应用场景
- 卷积神经网络CNN及其优化技巧
- 残差网络ResNet及其精髓
- 使用GPU加速训练过程
希望通过本文的讲解,读者能够更好地理解深度学习的基础知识、研究方向和研究方法,从而在实际应用中运用深度学习技术解决实际问题。
2.基本概念术语说明
2.1 神经网络
神经网络(Neural Network,NN)是一种模仿生物神经元群体构造的机器学习模型。它由输入层、隐藏层和输出层组成,并根据复杂的非线性函数(activation function),将输入信号映射到输出层。典型的神经网络包括输入、输出节点和隐藏节点。其中,输入节点负责接收外部信息,输出节点则用于产生输出结果。中间的隐藏节点则用于传递输入信号并将其组合后传递至输出层。
每个隐藏节点都可以接收多个输入信号,这些输入信号可以通过不同的权重(weight)进行调整。每个隐藏节点的输出值通过激活函数(activation function)计算得到,该函数会决定隐藏节