0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用TensorBoard进行机器学习模型分析

星星科技指导员 来源:嵌入式计算设计 作者:Aekam Parmar 2022-07-01 09:44 次阅读

随着新的神经网络模型定期出现,机器学习正在突飞猛进地发展。

这些模型针对特定数据集进行了训练,并在准确性和处理速度方面得到了证明。开发人员需要在部署之前评估 ML 模型并确保其符合预期的特定阈值和功能。有很多实验可以提高模型性能,在设计和训练模型时,可视化差异变得至关重要。TensorBoard 有助于可视化模型,使分析变得不那么复杂,因为当人们可以看到问题所在时,调试变得更容易。

训练 ML 模型的一般做法

一般的做法是使用预训练的模型并执行迁移学习以针对相似的数据集重新训练模型。在迁移学习期间,首先针对与正在解决的问题相似的问题对神经网络模型进行训练。然后将训练模型中的一个或多个层用于针对感兴趣问题训练的新模型。

大多数情况下,预训练模型采用二进制格式,这使得很难获取内部信息并立即开始处理。从组织的业务角度来看,拥有一些工具来深入了解模型以缩短项目交付时间是有意义的。

有几个可用的选项可以获取模型信息,例如层数和相关参数。模型摘要和模型图是基本选项。这些选项非常简单,考虑到几行实现,并提供了非常基本的细节,如层数、层类型和每层的输入/输出。

但是,模型摘要和模型图对于理解协议缓冲区形式的任何大型复杂模型的每一个细节并不是那么有效。在这样的场景下,使用TensorFlow提供的可视化工具TensorBoard就更有意义了。考虑到它提供的各种可视化选项,例如模型、标量和度量(训练和验证数据)、图像(来自数据集)、超参数调整等,它非常强大。

模型图以可视化自定义模型

当以协议缓冲区的形式接收自定义模型时,此选项特别有用,并且需要在对其进行任何修改或训练之前对其进行理解。如下图所示,在板上可视化了顺序 CNN 的概述。每个块代表一个单独的层,选择其中一个将在右上角打开一个窗口,其中包含输入和输出信息。

poYBAGK-Ug2AE2OmAAFyEMs94_4562.png

如果需要进一步的信息,关于各个块中的内容,可以简单地双击块,这将展开块并提供更多详细信息。请注意,一个块可以包含一个或多个可以逐层扩展的块。在选择任何特定操作后,它还将提供有关相关处理参数的更多信息。

pYYBAGK-UhWALQ-jAAL75d-oP3Q196.png

用于分析模型训练和验证的标量和指标

机器学习的第二个重要方面是分析给定模型的训练和验证。从准确性和速度的角度来看,性能对于使其适用于现实生活中的实际应用非常重要。在下图中,可以看出模型的准确性随着 epochs/迭代次数的增加而提高。如果训练和测试验证不达标,则表明某些事情不正确。这可能是欠拟合或过拟合的情况,可以通过修改层/参数或改进数据集或两者兼而有之来纠正。

poYBAGK-UhyAAV22AAInyzJOjHk378.png

图像数据以可视化数据集中的图像

顾名思义,它有助于可视化图像。它不仅限于可视化数据集中的图像,它还以图像的形式显示混淆矩阵。该矩阵表示检测各个类别的对象的准确性。如下图所示,模特将大衣与套头衫混淆了。为了克服这种情况,建议改进特定类别的数据集,以将可区分的特征提供给模型,以便更好地学习并提高准确性。

pYYBAGK-UiaAd5_xAAKM21-zJYU167.png

超参数调整以实现所需的模型精度

模型的准确性取决于输入数据集、层数和相关参数。在大多数情况下,在初始训练期间,准确度永远不会达到预期的准确度,除了数据集之外,还需要考虑层数、层类型、相关参数。此过程称为超参数调整。

在这个过程中,提供了一系列超参数供模型选择,并结合这些参数运行模型。每个组合的准确性都记录在板上并可视化。它纠正了为超参数的每个可能组合手动训练模型所消耗的精力和时间。

pYYBAGK-Ui6AbK_UAAJ1G3xazbE490.png

分析模型处理速度的分析工具

除了准确性之外,处理速度对于任何模型来说都是同样重要的方面。有必要分析各个块消耗的处理时间,以及是否可以通过一些修改来减少它。Profiling Tool 提供了每个操作在不同时期的时间消耗的图形表示。通过这种可视化,人们可以很容易地查明需要更多时间的操作。一些已知的开销可能是调整输入的大小、从 Python 转换模型代码或在 CPU 而非 GPU 中运行代码。照顾好这些事情将有助于实现最佳性能。

poYBAGK-UjeAbOQSAANTMmENdj0193.png

poYBAGK-Uj6ADMFvAAMKe0tSwRg001.png

总体而言,TensorBoard 是帮助开发和培训过程的绝佳工具。Scalar and Metrics、Image Data 和 Hyperparameter 调优的数据有助于提高准确性,而 profiling 工具有助于提高处理速度。TensorBoard 还有助于减少所涉及的调试时间,否则这肯定是一个很大的时间框架。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10826

    浏览量

    211160
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4702

    浏览量

    128709
  • 机器学习
    +关注

    关注

    66

    文章

    8378

    浏览量

    132415
收藏 人收藏

    评论

    相关推荐

    什么是机器学习?通过机器学习方法能解决哪些问题?

    计算机系统自身的性能”。事实上,由于“经验”在计算机系统中主要以数据的形式存在,因此机器学习需要设法对数据进行分析学习,这就使得它逐渐成为智
    的头像 发表于 11-16 01:07 238次阅读
    什么是<b class='flag-5'>机器</b><b class='flag-5'>学习</b>?通过<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法能解决哪些问题?

    AI大模型与深度学习的关系

    AI大模型与深度学习之间存在着密不可分的关系,它们互为促进,相辅相成。以下是对两者关系的介绍: 一、深度学习是AI大模型的基础 技术支撑 :深度学习
    的头像 发表于 10-23 15:25 378次阅读

    使用AI大模型进行数据分析的技巧

    使用AI大模型进行数据分析的技巧涉及多个方面,以下是一些关键的步骤和注意事项: 一、明确任务目标和需求 在使用AI大模型之前,首先要明确数据分析的任务目标,这将直接影响
    的头像 发表于 10-23 15:14 443次阅读

    AI大模型与传统机器学习的区别

    多个神经网络层组成,每个层都包含大量的神经元和权重参数。 传统机器学习模型规模相对较小,参数数量通常只有几千到几百万个,模型结构相对简单。 二、训练数据需求 AI大
    的头像 发表于 10-23 15:01 372次阅读

    使用IBIS模型进行时序分析

    电子发烧友网站提供《使用IBIS模型进行时序分析.pdf》资料免费下载
    发表于 10-21 10:00 0次下载
    使用IBIS<b class='flag-5'>模型</b><b class='flag-5'>进行</b>时序<b class='flag-5'>分析</b>

    构建语音控制机器人 - 线性模型机器学习

    轮子并识别音频信号,但它仍然无法通过语音命令控制或按预定义路径行驶。 线性控制模型 首先要解决的问题是实现直线驱动。为此,我们使用线性模型来控制提供给车轮的电压。使用线性模型适合对汽车系统进行
    的头像 发表于 10-02 16:31 174次阅读
    构建语音控制<b class='flag-5'>机器</b>人 - 线性<b class='flag-5'>模型</b>和<b class='flag-5'>机器</b><b class='flag-5'>学习</b>

    【《时间序列与机器学习》阅读体验】+ 时间序列的信息提取

    之前对《时间序列与机器学习》一书进行了整体浏览,并且非常轻松愉快的完成了第一章的学习,今天开始学习第二章“时间序列的信息提取”。 先粗略的翻
    发表于 08-14 18:00

    【「时间序列与机器学习」阅读体验】+ 简单建议

    这本书以其系统性的框架和深入浅出的讲解,为读者绘制了一幅时间序列分析机器学习融合应用的宏伟蓝图。作者不仅扎实地构建了时间序列分析的基础知识,更巧妙地展示了
    发表于 08-12 11:21

    【《大语言模型应用指南》阅读体验】+ 基础知识学习

    的信息,提供更全面的上下文理解。这使得模型能够更准确地理解复杂问题中的多个层面和隐含意义。 2. 语义分析 模型通过训练学习到语言的语义特征,能够识别文本中的命名实体、句法结构和语义关
    发表于 08-02 11:03

    【《大语言模型应用指南》阅读体验】+ 基础篇

    这个程序不需要程序员编写,而是由计算机自动生成。因此,人工编程方法依赖程序员思考的规则,而自动编程是计算机算法通过分析数据自行创建规则。 作者通过类比学生准备高考的过程来说明机器学习的过程,如下图: 此
    发表于 07-25 14:33

    【《大语言模型应用指南》阅读体验】+ 俯瞰全书

    上周收到《大语言模型应用指南》一书,非常高兴,但工作项目繁忙,今天才品鉴体验,感谢作者编写了一部内容丰富、理论应用相结合、印刷精美的著作,也感谢电子发烧友论坛提供了一个让我了解大语言模型机器
    发表于 07-21 13:35

    Al大模型机器

    和迭代来不断改进自身性能。它们可以从用户交互中学习并根据反馈进行调整,以提高对话质量和准确性。可定制性与整合性: AI大模型机器人可以根据特定需求
    发表于 07-05 08:52

    机器学习在数据分析中的应用

    随着大数据时代的到来,数据量的爆炸性增长对数据分析提出了更高的要求。机器学习作为一种强大的工具,通过训练模型从数据中学习规律,为企业和组织提
    的头像 发表于 07-02 11:22 545次阅读

    名单公布!【书籍评测活动NO.35】如何用「时间序列与机器学习」解锁未来?

    设备的运行状况,生成各种维度的报告。 同时,通过大数据分析机器学习技术,可以对业务进行预测和预警,从而协助社会和企业进行科学决策、降低成本
    发表于 06-25 15:00

    如何使用TensorFlow构建机器学习模型

    在这篇文章中,我将逐步讲解如何使用 TensorFlow 创建一个简单的机器学习模型
    的头像 发表于 01-08 09:25 917次阅读
    如何使用TensorFlow构建<b class='flag-5'>机器</b><b class='flag-5'>学习</b><b class='flag-5'>模型</b>