[Machine Learning][Part 8]神经网络的学习训练过程-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

目录

训练过程

一、建立模型

二、建立损失函数 J(w,b):

三、寻找最小损失函数的(w,b)组合

为什么需要激活函数

 激活函数种类

二分法逻辑回归模型

线性回归模型

回归模型


训练过程

一、建立模型

根据需求建立模型从前面神经网络的结果可以知道每一层都有若干个模型在运行因此建立神经网络就需要先根据需求确定计算模型,也就是得到

 逻辑回归模型公式为

上面三层的神经网络的代码实现为 

import tensorflow as tf
from tensorflow.keras import Sequential
from tensorflow.keras.layers import Dense

model = Sequential([
    Dense(units = 25,activation='Sigmoid')
    Dense(units = 25,activation='Sigmoid')
    Dense(units = 25,activation='Sigmoid')
])

二、建立损失函数 J(w,b):

 例如线性回归的

 二分法逻辑回归的损失函数为

 代码实现为

from tensorflow.keras.losses import BinaryCrossentropy
model.compile(loss = BinaryCrossentropy())

三、寻找最小损失函数的(w,b)组合

梯度下降法

 代码实现为循环100次

model.fit(X,y,epochs=100)

为什么需要激活函数

可以看到在建立模型的过程中代码中使用了activation激活函数。

Dense(units = 25,activation='Sigmoid')

如果不用激活函数每一层输出都是上层输入的线性函数无论神经网络有多少层输出都是输入的线性组合这种情况就是最原始的感知机Perceptron。如果使用的话激活函数给神经元引入了非线性因素使得神经网络可以任意逼近任何非线性函数这样神经网络就可以应用到众多的非线性模型中。
 具体的分析这个博主讲的很清楚可以参考学习一下 

深度学习神经网络中为什么需要使用激活函数超详细_神经网络为什么需要激活函数-CSDN博客

 激活函数种类

二分法逻辑回归模型

这种模型输出非0即1可以选择Sigmoid

Dense(units = 25,activation='Sigmoid')

线性回归模型

这种输出可以是各种正负数值可以仍然选用线性激活函数linear activation function

 Dense(units = 25,activation='linear')

回归模型

输出只能是0以及正数可以选择ReLU

   Dense(units = 25,activation='relu')

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6