学习ONNX交易 - 页 8

 

使用 ONNX 导入神经网络



使用 ONNX 导入神经网络

该视频探讨了开放式神经网络交换 (ONNX) 项目在机器学习中的重要性及其在跨各种工具的模型转换方面的优势。演讲者讨论了手动加载模型或使用自动化工具的挑战,以及 ONNX 如何通过其基于图形的计算模型消除这个问题。演讲者还重点介绍了ONNX在复杂模型手工转换方面的优势以及对不同框架的兼容性。该视频涉及参数化网络模型、ONNX 的结构以及使用该项目时可能出现的潜在挑战。尽管存在这些挑战,演讲者相信 ONNX 将在各公司的大力支持下蓬勃发展。

  • 00:00:00 在本节中,演讲者讨论了 ONNX 在机器学习中的重要性以及手动或通过自动化工具加载模型时面临的困难。演讲者解释说,随着 PyTorch 和 TensorFlow 的引入,大多数模型都是在这些框架中开发的,这使得外部模型很难进入其他框架。转换模型的手动过程既耗时又乏味,因为该过程涉及将权重链接到架构,这不是一件有趣的事情。演讲者随后讨论了神经网络存储库的增长,以及他们如何从版本 12 开始向存储库添加多个模型。他们还介绍了 MobileNet,这是一种于 2018 年推出的图像分类网络,它减少了图像分类网络的大小并运行快点。

  • 00:05:00 部分侧重于参数化网络模型的重要性以及为什么它们在神经网络存储库中是必需的。如果没有参数化,存储库将变得太长且难以导航。它还解释了如何选择非默认模型并给出了 BPE 模型的示例,该模型根据语言将片段标记为词或子词。该部分还强调了手动转换 ONNX 的必要性,因为手动转换复杂模型(如 2019 年 2 月 14 日发布的著名模型)可能具有挑战性。

  • 00:10:00 在本节中,演讲者描述了 GPD2 模型中使用的网络编码器功能的详细信息。此函数具有模型所需的所有预处理,并将字符串转换为标记列表。此外,它还提供位置索引并具有大小为 768 的向量,具体取决于所使用模型的大小。演讲者解释说,手动创建 800-1000 层网络的架构是不可行的,这就是他们需要 ONNX 的原因。使用 ONNX 的优势在于它消除了为每种类型维护单个转换器的需要,并且它有一个模型库,用户可以利用它来有效地导入不同的模型。

  • 00:15:00 在本节中,YouTuber 讨论了开放神经网络交换 (ONNX) 项目的优势和规范。该项目支持从最先进的工具进行模型转换,从而更容易为模型创建选择最佳工具。 ONNX 拥有大量社区合作伙伴,包括大公司,因此可以轻松地在各种工具之间移动模型。该项目提供了许多其他框架所缺少的硬件优化工具和可视化工具。这位 YouTuber 认为,由于该项目得到了多家公司的大力支持,它会继续蓬勃发展。

  • 00:20:00 在本节中,演讲者讨论了 ONNX 的结构,ONNX 是一种基于图形的计算模型,具有在图形外部实现的运算符。图中的每个节点都被引用为一个运算符,并且具有一个或多个必须可跨框架移植的输入和输出。演讲者提供了一个 ONNX 工作原理的示例,演示了一个内部函数,该函数采用协议格式的模型并将其转换为数学关联。该图包含与模型相关的元数据。然后演讲者解释了图如何具有不同的节点,他还花时间讨论了卷积层的属性,卷积层是图的节点之一。最后,他展示了如何获取有关图层维度的信息。

  • 00:25:00 在本节中,演讲者讨论了使用 ONNX 时可能出现的一些问题。当 reshape 运算符没有徽章尺寸时,它可能会出现某些错误,因此需要改进运算符覆盖范围以支持这些类型的情况。演讲者提到,在增加对 RNN 和静态超网络的支持,以及连接版本和形状推理以及模型检查器等其他工具方面,未来还有工作要做。此外,提高运营商覆盖率的工作仍在进行中。不过,演讲者指出,ONNX 正在积极开发中,并得到了各大公司的支持。
 

使用 ONNX 导入和导出神经网络



使用 ONNX 导入和导出神经网络

该视频演示了如何使用 ONNX 作为机器学习模型的跨平台规范和文件格式,以在不同的神经网络框架之间交换模型。演讲者展示了如何使用 ONNX 通过 Mathematica 和 Keras 导入和导出神经网络,以及如何检查和导入元数据,以及在导出时设置元数据。他们还讨论了 Core ML、PyTorch 和 Wolfram 语言之间模型的导出和导入,以及在转换过程中使用正确偏移量的重要性。演讲者讨论了 ONNX 的未来,包括扩展对导入和导出的支持、改进对导入器具有挑战性的案例,以及允许导出到多个操作员集版本。此外,演讲者还解释了 ONNX 和 MXNet 之间的区别,并提供了有关如何使用内部实用程序检查哪些功能可以导出到 ONNX 的信息。

  • 00:00:00 在本节中,Matteo Salvarezza 和 Maria Sarksyan 介绍了 ONNX,这是一种用于机器学习模型的跨平台规范和文件格式,允许不同的神经网络框架相互交换模型。他们演示了如何使用 ONNX 通过 Mathematica 和 Keras 导入和导出神经网络,展示了如何检查和导入元数据以及如何在导出时设置元数据。然后,他们展示了将 Fortnite 模型从 Mathematica 转换为 Keras,然后再转换为 ONNX,然后再将其导入回 Mathematica。

  • 00:05:00 在本节中,演讲者讨论了将图像分割为白质和灰质以表示人脑不同解剖组织的分割模型。该模型的架构由一个共享单元类型的编码器和不同的解码器组成。演讲者概述了将大脑图像导出为 JPEG 文件、将其导入 Python、运行模型以评估图像以及将分割后的图像导出为 NS 文件以导入回 Mathematica 的过程。该过程涉及使用 OneNext 库并执行额外的检查器,然后导入 ONNX 导出,为 Keras 模型设置输入,进行预测,并将分割图像导出到 NS 文件中。最后,演讲者指出确保图像的导入范围是从零到一并除以 255 的重要性。

  • 00:10:00 在视频的这一部分,演讲者讨论了使用 ONNX 导入和导出神经网络。他们提到了将模型从 Keras 导出到 ONNX,然后再将它们导入回 Mathematica 的可能性。演讲者强调了在转换过程中使用正确偏移量的重要性,并指出某些操作可能需要使用 net surgery 运算符来替换。然后,他们演示了如何使用 ONNX ML 工具包将模型从 Core ML 移动到 ONNX,以及如何将预训练模型及其类导出到 Core ML。视频强调了过程中涉及的步骤很多,并提供了示例供用户自行评估。

  • 00:15:00 在本节中,演讲者解释了如何使用适当的函数从 ONNX 导出到 Core ML,包括均值和方差校正。他们还介绍了将网络从 PyTorch 转换为 ONNX,然后再转换为完整的 Wolfram 语言。该过程涉及使最终格式可用的必要手术,演讲者展示了他们如何获得可用格式并对其进行评估。最后,演讲者演示了通过 ONNX 从 Wolfram 语言到 PyTorch 的最后一步,采用预训练的网络和类并将它们导出。

  • 00:20:00 在视频的这一部分,演讲者讨论了使用 ONNX 导入和导出神经网络。他们解释说,一旦加载了 ONNX 模型,就可以在 PyTorch 中对其进行转换和评估,并使用调整大小、中心裁剪和归一化等转换。评估模型以获得概率最高的三个类别。然后,演讲者继续讨论 ONNX 导入和导出的未来,包括扩展对导入和导出的支持、改进对导入者具有挑战性的案例,以及允许导出到多个运营商集版本。

  • 00:25:00 在本节中,演讲者解释了 ONNX 和 MXNet 之间的区别。 MXNet 是一个完整的神经网络框架,而 ONNX 只是一种用于导出和导入神经网络的文件格式。演讲者还提到有一个名为 ONNX runtime 的单独软件,它充当一个实际的框架。演讲者还提供了有关如何使用内部实用程序检查哪些功能可以导出到 ONNX 的信息。
 

将 Tensorflow 模型转换为 ONNX 格式——人类情绪检测



将 Tensorflow 模型转换为 Onnx 格式 - 人类情绪检测

该视频讨论了将预训练的 TensorFlow 模型转换为 ONNX 格式的好处,ONNX 格式提供了一种表示机器学习模型的通用格式,可以使用 ONNX 运行时跨不同的硬件平台进行解释。通过转换模型,开发人员可以在不同的框架中更高效地运行它们,或者更轻松地与其他从业者一起使用它们。该视频演示了使用 ONNX GitHub 存储库上提供的工具和规范将 TensorFlow 和 Keras 模型转换为 ONNX 格式的过程,并强调了 ONNX 格式如何优化模型并减少预测运行时间。 ONNX 模型在 CPU 上的人类情绪检测方面也优于 TensorFlow 模型。

  • 00:00:00 在视频的这一部分,演示者讨论了 ONNX 格式,它代表开放式神经网络交换。由 Microsoft、Facebook 和 AWS 共同开发的 ONNX 标准提供了一种表示机器学习模型的通用格式,可以使用 ONNX 运行时跨不同的硬件平台进行解释。通过将预训练的 TensorFlow 模型转换为 ONNX 格式,开发人员可以将其转换为 PyTorch 等其他框架中的模型,从而使模型能够在不同的框架中更高效地运行或被其他从业者使用。 ONNX 运行时是一个轻量级的模块化推理引擎,使开发人员能够在他们选择的任何硬件平台上运行 ONNX 模型。总的来说,演示者强调了将模型转换为 ONNX 格式的灵活性和易用性,使开发人员可以更轻松地使用他们选择的任何框架,同时确保他们的模型也可以在任何硬件平台上运行。

  • 00:05:00 在本节中,视频介绍了使用 TensorFlow 到 ONNX 工具和 ONNX 运行时将 TensorFlow 模型转换为 ONNX 格式的过程。该视频解释说,虽然最初的 TensorFlow 模型大小接近 1 GB,并且需要相同数量的部署空间,但优化后的 ONNX 版本只有 327 MB。此外,该视频还展示了如何使用 ONNX GitHub 存储库中提供的规范将 Keras 模型转换为 ONNX 格式。最后,视频最后提到可以对转换后的模型进行推理测试。

  • 00:10:00 在本节中,演讲者通过演示在 CPU 上运行的情绪检测模型,解释了如何使用 ONNX 运行时运行 ONNX 模型,从而消除了对 TensorFlow 的需求。首先,演讲者展示了如何指定 CPU 执行提供程序并导入 ONNX 运行时。接下来,演讲者强调了正确指定输出名称的重要性,并使用 NumPy 而不是 TensorFlow 传入了输入图像。提供情绪概率的 ONNX 模型能够检测输入图像中的情绪并更快地产生相同的概率,因为它不需要 TensorFlow。通过导入时间库,演讲者展示了使用 TensorFlow 运行情绪检测模型与使用 ONNX 运行时在速度上的差异。

  • 00:15:00 在视频的这一部分,演示者演示了如何使用 CPU 和 GPU 测量 TensorFlow 和 ONNX 模型的推理时间。带有 GPU 的 TensorFlow 模型运行需要 0.15 秒,而带有 CPU 的 ONNX 模型需要 0.5 秒。然后演示者安装带有 GPU 的 ONNX 运行时并重新启动运行时以考虑 GPU 版本。最后,测量带有 GPU 的 ONNX 模型的推理时间,并将其与 TensorFlow 模型进行比较。

  • 00:20:00 在本节中,视频展示了将 TensorFlow 模型转换为 ONNX 格式的过程,以及它如何优化初始 TensorFlow 模型。 ONNX 格式允许优化模型并减少预测的运行时间。该视频演示了使用 GPU 和 CPU 运行原始 TensorFlow 模型,然后使用 GPU 运行 ONNX 格式,然后用 100 个预测测试两个模型以测量每个预测的平均时间。 ONNX 模型导致单个预测平均花费 23 毫秒,比初始 TensorFlow 模型快六倍。

  • 00:25:00 在本节中,演讲者讨论了 ONNX 模型与 Tensorflow 模型在人类情绪检测方面的性能对比。使用 CPU,ONNX 模型的运行速度大约是 Tensorflow 模型的两倍。演讲者提供了一个具体的例子,说明 0.8 除以 0.35 是用两个模型执行的,Onnx 模型优于 Tensorflow。
 

如何将几乎所有 PyTorch 模型转换为 ONNX 并使用烧瓶提供服务



如何将几乎所有 PyTorch 模型转换为 ONNX 并使用烧瓶提供服务

该视频教程演示了如何将 PyTorch 模型转换为 ONNX 格式并使用 Flask 提供它。演示者首先导入数据集并使用并行数据定义模型,然后加载模型权重并将其导出到 ONNX。该视频展示了如何创建 Flask 端点来为 ONNX 模型提供服务,然后将张量转换为 numpy 数组并从模型中获取输出。演讲者还将 sigmoid 函数应用于模型输出,将其转换为 0 到 1 之间的概率。最后,他们将设备切换到 CPU 进行公平比较,并展示了 API 更快的响应时间。该视频最后指出,有许多方法可以优化 ONNX 模型以提高性能,并邀请观众在评论部分分享他们的反馈。

  • 00:00:00 在本节中,视频讨论了如何将 PyTorch 模型转换为 ONNX 格式以及如何创建 Flask 端点来为其提供服务。该视频使用鸟类情感模型作为基础模型,对最大长度和批量大小参数进行了轻微修改。然后视频介绍了导入必要的依赖项并编写用于转换的主要函数,包括指定输入形状。该视频还介绍了如何保存转换后的模型以及如何创建 Flask 端点来为模型提供服务。

  • 00:05:00 在视频的这一部分,演示者讨论了如何将 PyTorch 模型转换为 ONNX 并使用 Flask 为其提供服务。他们首先导入数据集,然后使用数据并行定义模型。接下来,他们加载模型权重并将模型置于评估模式。它们展示了如何通过查看模型并确定输入是 ID、掩码和令牌类型 ID 来获取输入。然后演示者演示如何将模型导出为 ONNX 格式,指定三个输入名称和输出名称。他们还定义了动态轴,这是一个字典,指定哪些输入或输出具有动态形状。

  • 00:10:00 在本节中,视频展示了如何使用“转换为 ONNX”代码将 PyTorch 模型转换为 ONNX 格式,以使用 Flask 运行模型。 PyTorch 模型首先转换为 ONNX,然后创建一个新文件以从 ONNX 模型进行预测。该视频展示了如何为 ONNX 模型指定会话,演示了可以导入 ONNX 运行时,然后可以将模型加载到推理会话中。该视频解释说不需要输出和将模型发送到设备,并且会返回一些东西。

  • 00:15:00 在视频教程的这一部分中,演讲者演示了如何在 PyTorch 中为 ONNX 输入创建一个简单的字典,这很关键,因为 ONNX 不接受所有张量。该字典由作为名称的键和作为 PyTorch 张量的值组成。要将张量转换为 numpy 错误,使用 'detach' 和 'requires grad' 命令创建一个 to numpy 函数。然后,演讲者展示了如何通过使用相关参数调用 model.run 函数来获取模型的输出。最后,可以直接打印输出或返回以在 Flask 中使用。

  • 00:20:00 在本节中,演示者将 sigmoid 函数应用于 PyTorch 模型的输出,以便将输出转换为 0 到 1 之间的概率。他们演示了如何编写一个简单的 sigmoid 函数,然后将其合并到ONNX 模型的 Flask API。他们还展示了如何在本地主机和端口上启动 API,并演示了如何使用 curl 请求测试 API。最后,与在 GPU 上运行的旧 API 相比,为了公平起见,演示者将设备切换到 CPU,并再次运行 API 以演示更快的响应时间。

  • 00:25:00 在视频的这一部分,演讲者总结了有关如何将 PyTorch 模型转换为 ONNX 并使用 Flask 为它们提供服务的教程。他们比较了看起来相似的新旧请求的时间,并注意到用户可以将更多优化应用于 ONNX 模型以进一步提高其性能。演讲者鼓励观众尝试 ONNX 必须提供的将模型分发到不同环境的可能性,最后感谢观众的观看并邀请他们在评论部分分享他们的建议。
 

如何将 PyTorch 模型转换为 Tensorflow | onnx.ai |机器学习 |数据魔法



如何将 PyTorch 模型转换为 Tensorflow | onnx.ai |机器学习 |数据魔法

在此视频中,演示者演示了如何使用开放式神经网络交换 (ONNX) 库将 PyTorch 模型转换为 TensorFlow 模型。详细讨论了 ONNX 库的优点和用法,并以创建用于识别手写数字的 PyTorch 模型为例。显示了训练模型并将其转换为 ONNX 格式的过程,然后将其加载到 TensorFlow 中以对样本图像进行预测。生成的 TensorFlow 模型保存为 .pb 文件,展示了如何使用 ONNX 库将任何 PyTorch 模型转换为 TensorFlow。

  • 00:00:00 在本节中,演示者讨论了如何借助开放神经网络交换 (ONNX) 库将 PyTorch 模型转换为 TensorFlow 模型。 ONNX 库是一个开源库,旨在提高业界不同机器学习库之间的兼容性。演示者解释了该库的好处和用法,并演示了如何安装它及其依赖库。创建了一个 PyTorch 模型来识别手写数字,演示者展示了如何使用 ONNX 库训练和测试模型。 PyTorch 模型的代码不详细讨论,因为它不是视频的重点。

  • 00:05:00 在本节中,文字记录讨论了使用神经网络交换 (ONNX) 库将经过训练的 PyTorch 模型转换为 TensorFlow 模型的过程。首先,对 PyTorch 模型进行训练并保存为 mnist.pth 文件。然后将模型转换为 ONNX 格式并加载到 TensorFlow 中以对样本图像进行预测。最后将TensorFlow模型保存为.pb文件。该过程演示了如何使用 ONNX 库将任何 PyTorch 模型转换为 TensorFlow。

  • 00:10:00 此节选没有提供任何相关内容进行总结,因为它仅由演讲者的结束语组成,包括感谢信息和呼吁观众点赞和订阅的行动。演讲者还邀请观众提问并提供视频中使用的代码和资源的链接。
 

如何将 Tensorflow 模型/tflite 模型转换为 ONNX



如何将 Tensorflow 模型/tflite 模型转换为 ONNX 以将其导入 unity

tf2onnx 通过命令行或 Python API 将 TensorFlow(tf-1.x 或 tf-2.x)、tf.keras 和 tflite 模型转换为 ONNX。

https://github.com/onnx/tensorflow-onnx

 

将 Pytorch(pytorch lightning)模型转换为批量大小可变的 onnx 模型



将 Pytorch(pytorch lightning)模型转换为批量大小可变的 ONNX 模型

在本教程中,我们将学习如何将 Pytorch(pytorch lightning)模型转换为具有可变/动态批量大小的 ONNX 模型。

 

PyTorch ONNX 导出支持 - Lara Haidar,Microsoft



PyTorch ONNX 导出支持 - Lara Haidar,Microsoft

来自 Microsoft 的 Lara Haidar 解释了 PyTorch ONNX 模型导出功能的优势,允许模型从研究转移到生产并在各种硬件上运行。她表示 ONNX 运行时已经变得非常流行,现在有数百万台设备在使用它并取得了显着的性能提升。此外,ONNX 导出支持现在包括模型覆盖、性能优化和后端支持方面的改进,以确保模型可以在具有不同后端的各种版本上运行。最后,Lara 鼓励用户测试导出的模型并分享反馈以进一步增强功能。

 

296 - 将 keras 训练模型转换为 ONNX 格式 - 图像分类示例



296 - 将 keras 训练模型转换为 ONNX 格式 - 图像分类示例

该视频教程涵盖了将 Keras 训练的图像分类模型转换为 ONNX 格式以进行部署的过程。演讲者展示了如何使用 Keras 创建模型、编译模型并将其保存为 H5 文件,然后再将其转换为 ONNX 格式。他们提供了有关如何导入 ONNX 转换所需的库、如何加载保存的 H5 模型以及如何使用一行代码将其转换为 ONNX 格式的分步指南。然后演示者演示如何在 ONNX 运行时会话中使用生成的 ONNX 模型,展示如何使用 ONNX 在图像分类示例中预测类别,并比较使用 ONNX 和 Keras 进行预测的概率。演讲者强调了使用 ONNX 进行部署的有效性和优势,并指出将现有 HDF 文件转换为 ONNX 的简单性。

  • 00:00:00 在本节中,演讲者讨论了将 Keras 训练模型转换为 ONNX 格式的过程,专门用于图像分类。他们解释说,ONNX 是一种中间格式,可以将以 H5 等各种文件格式保存的模型转换为在不同的运行时(如 ONNX 运行时)上工作。演讲者引导听众使用Keras创建一个简单的图像分类模型,将其保存为H5文件,然后将其转换为ONNX格式。然后,他们比较了两种格式的准确性,并讨论了可以添加到 ONNX 模型中的各种优化。除了 ONNX 运行时和 H5 Pi 之外,演讲者还强调为 Keras 安装必要的库以执行推理。

  • 00:05:00 在本节中,演示者讨论了用于训练和测试模型的数据集,其中包括分配给训练的 50,000 个小图像和分配给测试的 10,000 个小图像。图像大小为 32 x 32 x 3,他通过将值缩放到 0 到 1 之间对其进行归一化。接下来,演示者将整数编码值转换为分类值,并定义一个具有卷积层、批量归一化、dropout 和 softmax 的模型激活返回 10 个值,代表每个类别的概率。最后,他使用随机梯度下降优化器编译模型并跟踪精度指标,同时最小化分类交叉熵的损失函数。演示者还演示了使用提前停止回调在 10 个 epoch 后终止训练过程。

  • 00:10:00 在本节中,演讲者解释了他们如何使用 Keras 训练模型并将其保存为 H5 格式,然后再将其转换为 ONNX 格式。它们展示了如何加载保存的模型、导入 ONNX 转换所需的库,以及使用将 Keras 模型转换为 ONNX 格式所需的单行代码。然后,他们展示了如何在 ONNX 运行时会话中使用生成的 ONNX 模型,并比较速度以展示使用 ONNX 进行部署的优势。

  • 00:15:00 在本节中,演讲者解释了如何使用 ONNX 在图像分类示例中预测类别。首先,他们展示了如何从模型中获取输入和输出名称。然后,他们演示了如何扩展维度以使图像为推理做好准备。定义基本事实后,他们运行预测并使用 argmax 计算预测的类别。最后,他们绘制结果并使用 ONNX 和 Keras 比较预测。概率几乎相同,证明了 ONNX 对图像分类任务的有效性。

  • 00:20:00 在本节中,演讲者演示了将经过训练的 Keras 模型成功转换为用于图像分类的 ONNX 格式。显示了各种测试图像的概率结果,模型在训练 50 个 epoch 后取得了优异的结果。演讲者指出,将现有的 HDF 文件转换为 ONNX 是一个简单的过程,并暗示即将推出的图像分割教程。
 

297 - 将 keras 训练模型转换为 ONNX 格式 - 语义分割


297 - 将 keras 训练模型转换为 ONNX 格式 - 语义分割

本视频重点介绍将 keras 训练模型转换为 ONNX 格式,以对线粒体的电子显微镜图像进行语义分割。演示者提供了有关如何裁剪和加载图像、使用数据增强技术、定义用于训练和验证的生成器、训练和保存模型的详细步骤。该视频还介绍了使用 tf2onnx.convert 库将模型转换为 ONNX 格式以及使用 ONNX 模型进行预测。演示者重点介绍了训练和转换的最佳实践,并提供了指向他们之前关于多类分割的视频的链接。教程结束时,演示者表示这是 ONNX 系列的结尾,他们将在下一个视频中关注其他主题。

  • 00:00:00 在本节中,演示者在之前的视频的基础上展示了如何将 Keras 训练模型的权重保存到 ONNX 并使用转换后的模型执行推理。这一次,他们提供了有关如何训练语义分割模型并将其保存到 ONNX 的步骤。他们使用线粒体的电子显微镜数据集,其中有原始图像和标记图像。演示者展示了如何将图像裁剪成合适的大小,将它们加载到神经网络中,并使用简单的单元模型进行二值分割。他们解释了简单单元模型的工作原理,并提供了指向他们之前视频的链接,在这些视频中他们解释了用于多类语义分割的更复杂的神经网络。

  • 00:05:00 在本节中,作者讨论了将 165 张图像的小数据集划分为 12 张图像以进行训练的过程。他们应用 patchify 库将图像和蒙版分成 256x256 像素的较小块。他们还讨论了一些随机图像作为“健全性检查”,以确保图像和面具准确排列。作者使用高度偏移范围、剪切范围和缩放范围等数据增强技术来概括结果。他们还提到如何确保随机变换不是真正随机的,以及如何使用相同的种子在图像和蒙版中生成变换以保持相同的随机性。最后,作者定义了将用于训练和验证的生成器,并且种子是固定的以保持一致性。

  • 00:10:00 在本节中,演讲者准备使用最佳实践训练用于语义分割的单元模型,并将图像和掩码生成器合二为一。在开始训练模型之前,他们继续定义批量大小和每个时期的步数,应用 0.5 的阈值将概率输出转换为二进制输出。尽管该模型可以使用更多的训练图像,但它在图像分割方面做得还不错。然后演讲者保存 H5 文件并继续使用 TF2 到 onnx 库将其转换为 onnx。

  • 00:15:00 在本节中,视频介绍了如何使用 tf2onnx.convert 将 Keras 训练模型转换为 ONNX 格式。加载模型后,可以在将其保存为 .onnx 文件之前添加优化。此外,该视频还演示了在运行时会话中使用 ONNX 模型进行预测,显示与 Keras 模型相同的结果。视频最后指出本教程是 ONNX 系列的结尾,演示者将在下一个视频中关注其他主题。