一个简单的深度学习模型,带你深度了解背后原理

全文共4431字,预计学习时长9分钟

深度学习是目前在实际数据科学应用中最流行的模型之一。从图像到文本,再到语音/音乐等领域,它都是一个有效的模型。随着使用量的上升,快速且可扩展地实现深度学习变得至关重要。Tensorflow等深度学习平台的兴起可以帮助简化开发人员的实现方式。

在本文中,我们将学习深度学习的工作原理,并熟悉相关术语,例如反向传播和批量大小。我们将实现一个简单的深度学习模型 - 从理论到scratch实现 - 使用python预定义输入和输出,然后使用Keras和Tensorflow等深度学习平台实现相同的模型。

我们使用Keras和Tensorflow 1.x和2.0编写了这个简单的深度学习模型,该模型具有三种不同级别的复杂性和易编码性。

Scratch的深度学习实现

一个简单的多层感知器有4个输入神经元,隐含层有3个神经元,输出层有1个神经元。我们有三个输入数据样本,用表示,三个期望输出数据样本,用表示。因此,每个输入数据样本都有4个特征。

# Inputs and outputs of the neural net:import numpy as
 npX=np.array([[1.0, 0.0, 1.0, 0.0],[1.0, 0.0, 1.0, 1.0],[0.0, 1.0, 0.0, 
1.0]])yt=np.array([[1.0],[1.0],[0.0]])

该神经网络有4个输入神经元,1个隐含层有3个神经元,输出层有1个神经元

图中 x(m)是X的1个样本,h(m)是x(m) 输入的隐含层输出,Wi和Wh为权重。

神经网络(NN)的目标是为给定输入获得权重和偏差,NN提供期望输出。但是,我们事先并不知道什么是适当的权重和偏差,因此我们需要更新权重和偏差,使得NN、和期望的的输出之间的误差最小化。这种

  • 8
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值