【Tensorflow深度学习】优化算法、损失计算、模型评估、向量嵌入、神经网络等模块的讲解(超详细必看)

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 【Tensorflow深度学习】优化算法、损失计算、模型评估、向量嵌入、神经网络等模块的讲解(超详细必看)

觉得有帮助请点赞关注收藏~~~

一、优化算法

1)Adam算法: 基于一阶或二阶动量(Moments)的随机梯度下降算法,动量是非负超参数,主要作用是调整方向梯度下降并抑制波动。此算法适用于数据量和参数规模较大的场合。

(2)SGD算法: 动量梯度下降算法。

(3)Adagrad算法: 学习率与参数更新频率相关。

(4)Adamax算法:Adam算法的扩展型,词嵌入运算有时优于Adam算法。

(5)Ftrl算法:谷歌发明的算法,适用于大稀疏特征空间的场合。

(6)Nadam算法: 基于Adam算法,使用Nesterov动量。

(7)RMSprop算法:基于梯度平方均值。

(8)Adadelta算法:使用随机梯度下降算法和自适应学习率,避免训练过程中学习率持续劣化以及手动设定问题。

二、损失计算

Tensorflow的keras.losses库中定义了各种损失值得运算类,下面重点介绍常用的几种

(1)CategoricalCrossentropy类: 计算标签和预测值之间的交叉熵损失(Crossentropy Loss)。

(2)SparseCategoricalCrossentropy类: 原理与CategoricalCrossentropy类似。比较适用于有两个及以上标签类别的场景,如果运算基于独热表示标签,更适合使用CategoricalCrossentropy损失。

(3) BinaryCrossentropy类: 类似CategoricalCrossentropy,适用于0或者1二分类的场合。

(4)MeanSquaredError类:计算标签和预测值之间的误差平方均值。

(5)MeanAbsoluteError类:计算标签和预测值之间的绝对误差均值。

(6)Hinge类:计算真实值和预测值之间的铰链损失。

三、模型评估

Tensorflow的keras.metrics库中定义了模型评估指标 下面介绍几种代表性指标

(1)AUC类:代表Area Under The Curve,计算ROC 的曲线下面积。

(2)MeanSquaredError类:计算预测值和真实值的误差平方均值。

(3)MeanAbsoluteError类:计算标签值和预测值的误差绝对均值。

(4)Accuracy类:计算标签值和预测值相同的频率。

(5)CategoricalCrossentropy类: 计算标签和预测值之间的交叉熵。

(6)SparseCategoricalCrossentropy类: 原理与CategoricalCrossentropy类似,比较适用于有两个及以上标签类别的场景

四、向量嵌入

机器学习模型将向量作为输入,因此在将字符串输入模型之前需要将字符串转换为数值向量,也称为词嵌入。词嵌入提供了一种高效表示的方法,其中相似的词具有相似的编码,在处理大型数据集时,通常会看到多维的词嵌入处理,高纬度嵌入可以体现词间的细粒度关系,但需要更多的数据来学习

Embedding(    input_dim, output_dim, embeddings_initializer,    embeddings_regularizer, activity_regularizer,    embeddings_constraint, mask_zero, input_length, **kwargs )

主要参数说明:

input_dim:词语大小;

output_dim:嵌入维度;

embeddings_initializer:嵌入矩阵初始值;

embeddings_regularizer:嵌入矩阵调整函数;

embeddings_constraint:嵌入矩阵限定函数;

mask_zero:布尔值,判断是否零作为填充;

input_length:输入序列长度。

五、神经网络

门控机制基于循环神经网络,门控循环单元网络(GRU)类似于附带遗忘门的长短期记忆网络,但参数比后者少,门控循环单元网络在自然语言处理的部分性能能与长短期记忆网络相似,在较小数据集上的分析效果比较突出 语法定义如下

GRU(units, activation, recurrent_activation,    use_bias, kernel_initializer,recurrent_initializer,    bias_initializer, kernel_regularizer,    recurrent_regularizer, bias_regularizer, activity_regularizer,kernel_constraint, recurrent_constraint, bias_constraint,dropout, recurrent_dropout, return_sequences, return_state,go_backwards, stateful, unroll, time_major,    reset_after, **kwargs)

主要参数说明:

·  units:输出空间维度;

·  Activation:激活函数;

·  recurrent_activation:重复激活函数;

·  use_bias:偏置量标识;

·  kernel_initializer:权重矩阵初始化;

·  dropout:输入的丢弃率,介于0和1之间;

·  go_backwards:逆向处理输入序列。

创作不易  觉得有帮助请点赞关注收藏~~~

相关文章
|
机器学习/深度学习 人工智能 运维
网管不再抓头发:深度学习教你提前发现网络事故
网管不再抓头发:深度学习教你提前发现网络事故
303 2
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
754 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
机器学习/深度学习 人工智能 算法
Wi-Fi老是卡?不如试试让“深度学习”来当网络管家!
Wi-Fi老是卡?不如试试让“深度学习”来当网络管家!
487 68
|
9月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
机器学习/深度学习 数据可视化 算法
PyTorch生态系统中的连续深度学习:使用Torchdyn实现连续时间神经网络
神经常微分方程(Neural ODEs)是深度学习领域的创新模型,将神经网络的离散变换扩展为连续时间动力系统。本文基于Torchdyn库介绍Neural ODE的实现与训练方法,涵盖数据集构建、模型构建、基于PyTorch Lightning的训练及实验结果可视化等内容。Torchdyn支持多种数值求解算法和高级特性,适用于生成模型、时间序列分析等领域。
787 77
PyTorch生态系统中的连续深度学习:使用Torchdyn实现连续时间神经网络
|
12月前
|
机器学习/深度学习 存储 监控
基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
本项目基于深度学习的YOLO框架,成功实现了城市道路损伤的自动检测与评估。通过YOLOv8模型,我们能够高效地识别和分类路面裂缝、井盖移位、坑洼路面等常见的道路损伤类型。系统的核心优势在于其高效性和实时性,能够实时监控城市道路,自动标注损伤类型,并生成损伤评估报告。
654 0
基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
|
11月前
|
机器学习/深度学习 算法 数据库
基于GoogleNet深度学习网络和GEI步态能量提取的步态识别算法matlab仿真,数据库采用CASIA库
本项目基于GoogleNet深度学习网络与GEI步态能量图提取技术,实现高精度步态识别。采用CASI库训练模型,结合Inception模块多尺度特征提取与GEI图像能量整合,提升识别稳定性与准确率,适用于智能安防、身份验证等领域。
|
机器学习/深度学习 人工智能 运维
AI“捕风捉影”:深度学习如何让网络事件检测更智能?
AI“捕风捉影”:深度学习如何让网络事件检测更智能?
580 8
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
害虫识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了12种常见的害虫种类数据集【"蚂蚁(ants)", "蜜蜂(bees)", "甲虫(beetle)", "毛虫(catterpillar)", "蚯蚓(earthworms)", "蜚蠊(earwig)", "蚱蜢(grasshopper)", "飞蛾(moth)", "鼻涕虫(slug)", "蜗牛(snail)", "黄蜂(wasp)", "象鼻虫(weevil)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Djan
865 1
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
机器学习/深度学习 数据采集 算法
基于MobileNet深度学习网络的MQAM调制类型识别matlab仿真
本项目基于Matlab2022a实现MQAM调制类型识别,使用MobileNet深度学习网络。完整程序运行效果无水印,核心代码含详细中文注释和操作视频。MQAM调制在无线通信中至关重要,MobileNet以其轻量化、高效性适合资源受限环境。通过数据预处理、网络训练与优化,确保高识别准确率并降低计算复杂度,为频谱监测、信号解调等提供支持。