TensorFlow之分类模型-3

news/2024/4/25 6:24:40/文章来源:https://blog.csdn.net/uesowys/article/details/128263267

1 基本概念

2 文本分类与情感分析

3 TF模型仓库的使用

本章节主要使用TensorFlow模型仓库与keras技术框架联合开发对IMDB数据集的机器学习,TensorFlow模型仓库提供模型直接下载使用,链接地址如下所示:

 https://hub.tensorflow.google.cn/

在TF的模型仓库中,包括不同类型用于机器学习的模型,其中包括图像分类模型、文本嵌入层模型、音频模型、视频行为识别模型,这些使用不同的开发语言实现,用户可以根据实际的需求搜素以及下载模型,这些模型可以开箱即用。

准备数据

如上所示,使用pip工具安装TensorFlow的模型仓库的支持工具集、在开发环境中导入开发库。

如上所示,加载IMDB数据集,其中15k数据量用于训练数据集、10k数据量用于验证数据集、25k数据量用于测试数据集。

探索数据

从IMDB数据集中取部分数据样本检查对照原文与标签分类是否正确。

如上所示,共从训练数据中提取10个数据样本,输出其对应的标签分类(情感分类),0表示对电影的负面评价,1表示对电影的正面评价。

构建模型

神经网络包括多个堆栈式的层,因此,构造一个神经网络需要考虑以下三个问题:

  • 如何表示原文

  • 模型需要多少层

  • 每层需要多少单元

IMDB数据样本的输入是语句,对语句的预测是0或者1。因此,最高效的表示原文的方式是使用嵌入式向量集,也就是,在神经网络的第一层中使用已经预训练的文本嵌入向量集,其优点如下所示:

  • 不用开发额外的功能处理文本向量化

  • 嵌入向量层提供机器学习的文本转换能力

  • 嵌入向量层的向量集的长度是固定的,有利于简化文本的处理

TensorFlow的模型仓库提供很多已经预训练的嵌入向量层模型,部分模型如下所示:

  • google/nnlm-en-dim128/2(维度等于128),该模型是NNLM(神经网络语言模型)架构,该架构使用的数据集与google/nnlm-en-dim50/2(维度等于50)使用的数据集相同,但是向量集的维度(嵌入向量集的长度)不同,该模型使用大维度,大维度可以改善神经网络的学习任务,但是,维度越大,则消耗的时间越大

  • google/nnlm-en-dim128-with-normalization/2,该模型类似于google/nnlm-en-dim128/2模型,但是增加文本规范化的处理(删除文本的中的一些特殊字符)

  • google/universal-sentence-encoder/4,该模型使用更大维度(嵌入向量集的长度是512),该模型使用DAN(深度平均网络)对序列向量集编码

如上所示,embedding是嵌入向量层对应的模型在TensorFlow模型仓库中的下载地址,hub_layer是使用模型仓库提供的工具集引用该嵌入向量层模型用于后续的训练,下载的模型中包括已经预训练的向量集,嵌入向量集的维度等于50,展示了train_examples_batch中的三个序列向量元素,每个元素对应一个嵌入向量集。

如上所示,使用模型仓库下载的嵌入向量层作为第一个隐藏层构建一个神经网络模型,该模型的描述如下所示:

1 第一层使用模型仓库下载的已经预训练的嵌入向量模型

2 全连接的稠密层使用16个神经元

3 最后一层全连接收敛到一个单元作为输出

损失函数与优化器

如上所示,使用adam作为优化器,使用binary_crossentropy作为损失函数,对模型编译。

训练模型

如上所示,对10000个数据样本以每批次512进行10次迭代的训练,输出损失值以及准确度。

评估模型

如上所示,使用测试数据集对模型进行评估, 输出accuracy准确度等于0.852,输出loss损失值等于0.360,评估完成可以部署模型与应用模型。

(未完待续)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_233472.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始把 SpringBoot 搬到 K8s 上运行,我用了这几步!

前言 大家好,我是网管。咱们的 K8s 入门和实践,在经历了三篇理论知识的后,相信各位都已经期待许久(可能的吧),就差私信我,你整着理论整半天有啥用,本大人写的程序怎么能放到 K8s 上运…

全网显示 IP 归属地,用上这个开源库,实现也太简单了

细心的小伙伴可能会发现,最近蘑菇新上线了 IP 属地的功能,小伙伴在发表动态、发表评论以及聊天的时候,都会显示自己的 IP 属地信息 动态显示IP属地 在蘑菇群聊中,也 可 以 展 示 IP 属 地,下面是小伙伴们在交流群中显…

Gerb视图支持新表单和旧表单

Gerb视图支持新表单和旧表单 GerbView生产高级软件Companions,但也易于替换、打印和查看HPGL、HPGL/2、Excellon和国际象棋文件。该程序支持RS274D和RS274X。您可以使用此软件将旧格式和标准RS274D转换为具有默认信息的新类型RS274X。Gerbview将致力于展示和绘制您的…

Python 数据库开发实战-Mac系统下通过homebrew安装Redis数据库

此文章的前置条件是 “Mac系统已安装过Homebrew”,如果未安装,可访问 “Mac 安装 homebrew 详细教程” 一文,详细介绍Homebrew的用法。利用 “Homebrew” 对 “Redis” 进行安装管理,那是一个方便啊。 利用 homebrew 安装 Redis …

web前端期末大作业 html+css+javascript+jquery+bootstarp响应式鲜花售卖网站16页

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

ONES X 华西证券|以需求全流程管控,洞见金融数据价值

近日,ONES 签约全国一流证券金融服务商——华西证券,助推华西证券构建需求全流程管控体系,保障需求任务的上下游衔接与顺畅流转,做到系统内所有数据透明化、线上化、统一化,提高团队协同效率,打破「部门墙」…

ADI Blackfin DSP处理器-BF533的开发详解19:LAN的网口设计

硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP软件 硬件链接 功能介绍 BF533说实话用来做LAN的应用有些许勉强,因为他自己不带网口,要做的话,需要在总线上挂,那…

Stm32旧版库函数1——adxl335 模拟输出量 usart2

主函数: /******************************************************************************* // // 使用单片机STM32F103C8T6 // 晶振:8.00M // 编译环境 Keil uVision4 // 在3.3V的供电环境下,就能运行 // 波特率 19200 串口2 PA2(Tx) P…

Kotlin 基础学习笔记第八章——高阶函数:Lambda作为形参和返回值

一、声明高阶函数 高阶函数定义:高阶函数就是以另一个函数作为参数或者返回值的函数。 在kotlin中,函数可以用lambda或者函数引用来表示。因此,任何以lambda或者函数引用作为参数的函数,或者返回值为lamda或函数应用的函数&#x…

[附源码]计算机毕业设计健身房预约平台Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【MySQL基础】数据库操作语言DML相关操作有那些?

目录 一、什么是DML 二、数据插入insert 三、数据的修改update 四、数据的删除delete 五、delete和truncate有什么不同? 六、DML操作知识构图 七、DML操作练习 💟 创作不易,不妨点赞💚评论❤️收藏💙一下 一、什…

OPT(奥普特)工控机新品上市,产品矩阵再扩大

近日,OPT(奥普特)发布工控机新品,进一步扩展产品矩阵,为制造业数字化转型提供更为全面的机器视觉产品和服务。 OPT(奥普特)上市的工控机共有两大系列,分别是3U桌面式和4U上架式的设…

【代码审计-.NET】基于.NET框架开发的基本特征

目录 一、.NET基本架构 1、基本构成 2、可支持语言 3、封装 4、文件 5、指向解析 6、安全认证 二、工具 1、ILSpyi 2、dnSpy 3、Reflector (网上找的一张图谱) 本博客只面向讲安全相关内容 一、.NET基本架构 1、基本构成 可支持语言&#xf…

PyTorch中学习率调度器可视化介绍

神经网络有许多影响模型性能的超参数。一个最基本的超参数是学习率(LR),它决定了在训练步骤之间模型权重的变化程度。在最简单的情况下,LR值是0到1之间的固定值。 选择正确的LR值是具有挑战性。一方面较大的学习率有助于算法快速收敛,但它也…

[论文阅读] 颜色迁移-梯度保护颜色迁移

[论文阅读] 颜色迁移-梯度保护颜色迁移 文章: [Gradient-Preserving Color Transfer], [代码未公开] 本文目的: 如题所示为梯度保护的颜色迁移方法. 1-算法原理 人类的视觉系统对局部强度差异比强度本身更敏感, 因而, 保持颜色梯度是场景保真度的必要条件, 因而作者认为: 一…

如何批量查询谷歌PR权重是多少?谷歌PR权重怎么批量查询

权重是就是网站在搜索引擎心目中的位置,如果一个网站在搜索引擎心目中的位置高的话,当然容易获得较好的排名,今天不是来跟大家聊如何提升网站权重的,而是教大家如何去看一个网站的权重,做网站的朋友都要知道要做关键词…

数据库面试题1-数据库基本概念、常用SQL语言

题1:什么是数据库 数据库(Database) 是保存有组织的数据的容器(通常是一个文件或一组文件),是通过 数据库管理系统(DataBase- Management System,DBMS) 创建和操纵的容器…

Metal每日分享,波动滤镜/涂鸦滤镜效果

本案例的目的是理解如何用Metal实现图像波动效果滤镜,还可类似涂鸦效果,主要就是对纹理坐标进行正余弦偏移处理; Demo HarbethDemo地址 实操代码 // 波动效果 let filter C7Fluctuate.init(extent: 50, amplitude: 0.003, fluctuate: 2.5…

自动驾驶两大路线对决,渐进式玩家为何更容易得人心?

HiEV消息(文/长海)对自动驾驶赛道而言,2022年的冬天格外冷冽。寒潮袭来,从各家的应变方式看,不同路径的玩家呈现“冰火两重天”,进化的趋势也越来越清晰。 以Waymo为代表、持续研发L4级无人驾驶的跨越式路线…

Python实现房产数据分析与可视化 数据分析 实战

Python库的选择 话说,工欲善其事,必先利其器,虽然我们已经选择Python来完成剩余的工作,但是我们需要考虑具体选择使用Pytho的哪些利器来帮助我们更快更好地完成剩余的工作。 我们可以看一下,在这个任务中&#xff0c…