首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Keras和VGG培训:为什么我在model.predict_generator之后“丢失”了培训和验证示例

Keras是一个开源的深度学习框架,它提供了简单易用的API,可以方便地构建和训练神经网络模型。VGG是一种经典的卷积神经网络模型,它在图像分类任务中取得了很好的效果。

在使用Keras进行模型训练时,通常会将数据分为训练集和验证集,用于训练模型和评估模型性能。而model.predict_generator是Keras中用于生成预测结果的函数,它可以根据给定的数据生成模型的预测结果。

然而,在使用model.predict_generator函数之后,你提到"丢失"了培训和验证示例。这可能是因为在使用该函数时,你没有正确地设置相关参数或者没有正确地处理生成的预测结果。

为了解决这个问题,你可以检查以下几个方面:

  1. 参数设置:确保你正确地设置了model.predict_generator函数的参数,包括生成器(generator)、样本数量(steps)、批次大小(batch_size)等。这些参数需要根据你的数据集和模型进行适当的设置。
  2. 结果处理:在生成预测结果后,你需要正确地处理这些结果。你可以将预测结果与真实标签进行比较,计算模型的准确率或其他评估指标。你还可以将预测结果可视化,以便更好地理解模型的性能。
  3. 模型保存:如果你希望在训练和验证示例之后继续使用模型,你需要将模型保存到磁盘上。Keras提供了model.save函数,可以将模型保存为HDF5文件格式,以便后续加载和使用。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

慎用预训练深度学习模型

您是否期望引用0.945%的验证精度为Keras Xception模型,如果您正在使用您的新x射线数据集,首先,您需要检查您的数据与模型所训练的原始数据集(在本例中为ImageNet)有多相似。...例如: 1# VGG16 2keras.applications.vgg16.preprocess_input# InceptionV3 3keras.applications.inception_v3...Max Woolf提供了一个优秀的基准测试项目,该项目发现CNTK和Tensorflow之间的准确性是相同的,但CNTK在LSTMs和多层感知(MLPs)方面更快,而Tensorflow在CNNs和embeddings...Expedia的首席数据科学家Vasilis Vryniotis首先发现了Keras中冷冻批次标准化层的问题: Keras当前实现存在的问题是,当冻结批处理规范化(BN)层时,它在培训期间继续使用小批处理统计信息...我相信当BN被冻结时,更好的方法是使用它在训练中学习到的移动平均值和方差。为什么?由于同样的原因,在冻结层时不应该更新小批统计数据:它可能导致较差的结果,因为下一层的训练不正确。

1.7K30

独家 | 教你使用Keras on Google Colab(免费GPU)微调深度神经网络

本文将指导您如何使用Google上的Keras微调VGG-16网络。 简介 在CPU上训练深度神经网络很困难。...如何在Colab上上传和使用自定义数据集。 如何在前景分割域中微调Keras预训练模型(VGG-16)。 现在,让我们开始! 1....假设您已经压缩了上面的培训集,比如说CDnet2014.zip,并上传到Google Drive中与myNotebook.ipynb相同的目录。...验证集的最大精度高于98%。还不错,对吧?现在,让我们暂停一下。让我们比较使用和不使用GPU的训练速度(如果需要,可以跳过此比较并跳转到测试部分)。...只需使用25个vanilla网络的例子,我们就可以在测试集+验证集上达到98.94%的精度。请注意,由于训练示例的随机性,您可能会得到与我相似的结果(不完全相同但只有很小的精度差异)。

3.5K10
  • 数据融合:多模态图像融合技术在安全监控中的应用

    多模态图像融合技术是数据融合的一种重要形式,它结合了不同类型的图像数据,如可见光图像、红外图像、雷达图像等,以获取更全面的监控信息。...可见光图像提供了丰富的颜色和纹理信息,而红外图像则能够穿透一些常见的遮挡物,提供不同的视角和信息。...import cv2import numpy as npfrom tensorflow.keras.applications import VGG16from tensorflow.keras.applications.vgg16...用户培训和反馈对监控系统的用户进行培训,介绍多模态图像融合技术的原理和应用,并收集用户的反馈意见,根据反馈持续改进系统性能和用户体验。...beta, 0.0)# 显示融合后的图像cv2.imshow('Blended Image', blended_image)cv2.waitKey(0)cv2.destroyAllWindows()我正在参与

    62410

    图像中的裂纹检测

    ,在我们的数据中显示了不同类型的墙体裂缝,其中一些对我来说也不容易识别。...在最后一步,我们将利用分类器学到的知识来提取有用的信息,这将有助于我们检测异常情况。对于这个类任务,我们选择在Keras中重载VGG16来完成它。...如果小伙伴可以使用GPU,则培训非常简单。COLAB为我们提供了加快这一过程所需的武器。我们还使用了Keras提供的简单数据生成器进行图像增强。 最终,我们能够达到0.90的整体精度,还不错!...,在该图像中,我已在分类为裂纹的测试图像上绘制了裂纹热图。...在裂纹图像中显示异常 03. 总结 在这篇文章中,我们为异常识别和定位提供了一种机器学习解决方案。所有这些功能都可以通过实现单个分类模型来访问。

    7810

    图像中的裂纹检测

    ,在我们的数据中显示了不同类型的墙体裂缝,其中一些对我来说也不容易识别。...在最后一步,我们将利用分类器学到的知识来提取有用的信息,这将有助于我们检测异常情况。对于这个类任务,我们选择在Keras中重载VGG16来完成它。...如果小伙伴可以使用GPU,则培训非常简单。COLAB为我们提供了加快这一过程所需的武器。我们还使用了Keras提供的简单数据生成器进行图像增强。 最终,我们能够达到0.90的整体精度,还不错! ?...,在该图像中,我已在分类为裂纹的测试图像上绘制了裂纹热图。...在裂纹图像中显示异常 03. 总结 在这篇文章中,我们为异常识别和定位提供了一种机器学习解决方案。所有这些功能都可以通过实现单个分类模型来访问。

    1.4K40

    基于计算机视觉的裂纹检测方案

    ,在我们的数据中显示了不同类型的墙体裂缝,其中一些对我来说也不容易识别。...在最后一步,我们将利用分类器学到的知识来提取有用的信息,这将有助于我们检测异常情况。对于这个类任务,我们选择在Keras中重载VGG16来完成它。...如果小伙伴可以使用GPU,则培训非常简单。COLAB为我们提供了加快这一过程所需的武器。我们还使用了Keras提供的简单数据生成器进行图像增强。 最终,我们能够达到0.90的整体精度,还不错! ?...,在该图像中,我已在分类为裂纹的测试图像上绘制了裂纹热图。...在裂纹图像中显示异常 03. 总结 在这篇文章中,我们为异常识别和定位提供了一种机器学习解决方案。所有这些功能都可以通过实现单个分类模型来访问。

    57520

    关于深度学习系列笔记十三(使用预训练的卷积神经网络)

    VGG16架构,它是一种简单而又广泛使用的卷积神经网络架构。 使用预训练网络有两种方法:特征提取(feature extraction)和微调模型(fine-tuning)。...通过VGG16架构训练得到的验证精度达到了约90%,比上一节从头开始训练的小型模型效果要好得多。...from keras.applications import VGG16 from keras.utils.vis_utils import plot_model #下载VGG16模型训练数据 conv_base...该参数决定了返回的标签数组的形式, "categorical"会返回2D的one-hot编码标签,"binary"返回1D的二值标签."...sparse"返回1D的整数标签,如果为None则不返回任何标签, 生成器将仅仅生成batch数据, 这种情况在使用model.predict_generator()和model.evaluate_generator

    70320

    基于 Keras 对深度学习模型进行微调的全面指南 Part 2

    第一部分阐述微调背后的动机和原理,并简要介绍常用的做法和技巧。本部分将详细地指导如何在 Keras 中实现对流行模型 VGG,Inception 和 ResNet 的微调。...为什么选择 Keras ? Keras 是建立在 Theano 或 TensorFlow 之上的一个极简的神经网络库。该库允许开发人员快速地将想法原型化。...Keras 微调 我已经实现了基于 Keras 的微调启动脚本,这些脚本存放在这个 github 页面中。...该模型在验证集上达到了 7.5% 的前 5 错误率,这使得他们在竞赛中获得了第二名。 VGG16 模型示意图: ? 可以在 vgg16.py 中找到用于微调 VGG16 的脚本。...按照上面列出的微调方法,结合数据预处理、数据增强和模型集成,我们团队在竞赛中获得了前 4% 的名次。 本文详细介绍了我们使用的方法和经验。 如果你有任何问题或想法,请随时留下评论。

    1.7K30

    神奇的Batch Normalization 仅训练BN层会发生什么

    这是最初的解释,但后来的工作发现了相互矛盾的证据,否定了这一假设。简而言之,如果训练VGG网络(1)不使用BN,(2)使用BN和(3)使用BN加上人工协方差平移。...最初将学习率设置为0.01,然后在第80和120个阶段将其设置为0.001和0.0001。这样是一个初始的想法,我发现这太具体了。...在论文中,图2显示他们达到了〜70,〜75和〜77%的验证精度。考虑到作者进行了一些调整,使用了自定义的培训方式并采用了数据增强,这似乎非常合理,并且与我的发现一致,从而证实了这一假设。...除了准确性之外,作者还研究了γ和β参数的直方图,发现该网络学会了通过将γ设置为接近零的值来抑制每个BN层中所有激活的三分之一。 讨论 此时,您可能会问:为什么要做这些?...第三,这种调查使我们对模型的运行方式有了更深入的了解。 我认为这本身并没有实际应用。没有人会冻结所有网络层而只保留BN层。但是,这可能会激发不同的培训时间表。

    94810

    神经网络太臃肿?教你如何将神经网络减小四分之一

    但是,在具有400万参数的神经网络中,这12个数字根本不重要。这样,我相信网络可以通过一些再培训从29.9%中恢复过来。...对于这个项目,如果对一个样本进行再培训使精度回到65%左右,我就很满意了。因为,我们重新训练的样本仅为全套训练集大小的0.4%。...压缩最后的卷积层 在压缩第一层之后,我认为在分类层之前尝试压缩最后一个卷积层是会很不错。...在压缩conv_pw_13层之后,验证分数下降到60.7%(top1)和82.9%(top5)。...每次我使用不同的训练样本,只是为了确保结果模型不会过拟合。在逐点层10和12之后,我做了conv_pw_11。在做压缩的图层的选择时,我只是随意地选择的。

    1.2K70

    有关艺术画作分类的 Kaggle 比赛经验分享

    在这个项目中,我将使用迁移学习和深度学习框架Keras对kaggle数据集中的不同艺术作品图像进行分类。 你将学到什么!...使用Keras库进行分类任务 使用keras进行迁移学习 数据增强 ? 我们开始吧! #1 ? 首先导入所有的依赖项。 #2 ? 加载了训练和验证集以及艺术图像的类别。...还设置了一些hyper参数,以便在培训和加载模型时使用。 #3 ? 按类别将训练图像进行可视化。 #4 ? 将来自不同类的一些图像进行可视化。 #5 ? 使用for循环创建训练数据和测试数据。...在我们完成模型架构之后,我们还必须在培训之前编译模型。 #9 ? 这使用数据增强创建一个生成器。...调用“predict()”来获得预测,然后创建一个分类报告和混淆矩阵,以查看模型做得有多好! #13 ? 使用“plot_model()”来获得模型架构的图像,我将在下面显示。

    54250

    『深度应用』一小时教你上手训练MaskRCNN·Keras开源实战(Windows&Linux)

    此开源代码:这是在Python 3,Keras和TensorFlow上实现Mask R-CNN。该模型为图像中对象的每个实例生成边界框和分割蒙版。...MS COCO的培训代码 MS COCO的预训练重量 Jupyter笔记本可以在每一步都可视化检测管道 ParallelModel类用于多GPU培训 评估MS COCO指标(AP) 您自己的数据集培训示例...如果您使用Docker,则已验证代码可以在 此Docker容器上运行。...3.2 对您自己的数据集进行培训 首先阅读关于气球颜色飞溅样本的博客文章。它涵盖了从注释图像到培训再到在示例应用程序中使用结果的过程。...Dataset 此类提供了一种使用任何数据集的一致方法。它允许您使用新数据集进行培训,而无需更改模型的代码。它还支持同时加载多个数据集,如果要检测的对象在一个数据集中并非全部可用,则此选项非常有用。

    2K20

    1小时上手MaskRCNN·Keras开源实战 | 深度应用

    此开源代码:这是在 Python 3,Keras 和 TensorFlow 上实现 Mask R-CNN 。该模型为图像中对象的每个实例生成边界框和分割蒙版。...MS COCO的培训代码 MS COCO的预训练重量 Jupyter笔记本可以在每一步都可视化检测管道 ParallelModel类用于多GPU培训 评估MS COCO指标(AP) 您自己的数据集培训示例...培训和评估代码在samples/coco/coco.py。...engineering.matterport.com/splash-of-color-instance-segmentation-with-mask-r-cnn-and-tensorflow-7c761e238b46) 它涵盖了从注释图像到培训再到在示例应用程序中使用结果的过程...Dataset 此类提供了一种使用任何数据集的一致方法。它允许您使用新数据集进行培训,而无需更改模型的代码。它还支持同时加载多个数据集,如果要检测的对象在一个数据集中并非全部可用,则此选项非常有用。

    1.7K20

    AI 技术讲座精选:​通过学习Keras从零开始实现VGG网络

    为什么以 VGG 作为起步?...在您首次试验之前略过示例部分。回到论文,更加仔细地进行阅读。着重阅读结构配置部分。开始编码网络结构。您将需要认真阅读 Keras 文件的网络层部分。...注意:我仅仅建议您略过示例部分,以免您看到构建 VGG 网络的具体代码。始终建议您阅读示例,因为您可能从这些示例中学到该文件其他部分不涵括的知识。...如果您遇到困难,可以查看一下 Keras 文件中的示例。 练习 3 将您的结果与与 Keras 构建的 VGG 做对比。检查您网络的参数数量是否与 Keras 的参数数量相同。...在其中一个配置中,我们还使用 1 × 1 的卷积层,它可以看作是输入通道的一个线性转化(在非线性转化之后)。

    92991

    人工智能的 hello world:在 iOS 实现 MNIST 数学识别MNIST: http:yann.lecun.comexdbmnist目标步骤

    手写数字的 MNIST 数据库具有6万个示例的培训集和1万个示例的测试集。它是由 NIST 提供的更大集合的子集。数字已按大小规范化, 并以固定大小的图像为中心。...我们需要在我们的机器上设置一个工作环境来培训、测试和转换自定义的深层学习模式, CoreML 模型。我使用 python 虚拟环境 virtualenvwrapper。...您已经设计了您的第一个 CoreML 模型。使用此信息, 您可以使用 Keras 设计任何自定义模型, 并将其转换为 CoreML 模型。...iOS 应用程序: 这里的大部分内容都集中在应用程序开发上, 我只会解释一些重要的事情。...我添加了两个名为 "新建" 和 "运行" 的BarBttonItem, 其名称代表其功能。

    1.9K80

    别磨叽,学完这篇你也是图像识别专家了

    不过,在预训练的模型(VGG16、VGG19、ResNet50、Inception V3 与 Xception)完全集成到Keras库之前(不需要克隆单独的备份),我的教程已经发布了,通过下面链接可以查看集成后的模型地址...我也用Theano后端测试了这个脚本,并确认可以使用Theano。 安装TensorFlow/Theano和Keras后,点击底部的源代码+示例图像链接就可下载。...所有其他预测标签,包括 “海滨”,“独木舟”,“桨”和“防波堤”都是相关的,在某些情况下也是绝对正确的。 对于Inception网络的另一个例子,我给办公室的沙发拍摄了照片: ?...几个月前,当我打完《巫师 III》(The Wild Hunt)这局游戏之后,我给显示器照了这个照片。...总结 简单回顾一下,在今天的博文中,我们介绍了在Keras中五个卷积神经网络模型: VGG16 VGG19 ResNet50 Inception V3 Xception 此后,我演示了如何使用这些神经网络模型来分类图像

    2.7K70

    使用用测试时数据增强(TTA)提高预测结果

    # evaluate model _, acc = model.evaluate(testX, testY, verbose=0) print(acc) 下面列出了完整的示例,它可以在几分钟内轻松地在...所选择的模型配置已经开始过度拟合,可以从正则化和进一步调优的使用中受益。然而,这为演示测试时增强提供了一个很好的起点。...为了平衡模型性能的估计,我们可以更改示例,多次重新运行模型的拟合和评估,并报告测试数据集上得分分布的平均值和标准偏差。...不仅有许多可选择的扩展方法和每种方法的配置选项,而且在一组配置选项上适合和评估模型的时间可能会花费很长时间,即使适合快速的GPU。 相反,我建议对模型进行一次调整并将其保存到文件中。...在上一节中,我使用这种方法来选择测试时间的增加,发现7个示例比3个或5个更好,而且随机缩放和随机移动似乎会降低模型的精度。

    3.4K20

    深度学习下的医学图像分析(三)

    在本文中,我们将使用Keras和Theano,重点关注深度学习的基本原理。本文将展示两个例子——其中一个例子使用Keras进行基本的预测分析,另外一个使用VGG进行图像分析。...在本文中,我们将讨论Keras并且展示两个示例——其中一个使用Keras完成简单的预测性分析任务,另一个进行图像分析。 何为Keras?...在这个示例中,我们的Y变量与R和M一样是分类对象,使用标签编码器,我们将这些字母变量转换为了1或0。 ? Scikit-learn的标签编码器 之后,我们创建了一个使用Keras的模型: ?...在本文提到的示例中,我会在我的iMac电脑上运行代码。 ? 基本的设置 Jeremy Howard提供了一个Python实用文件,帮助我们获取已封装的基础函数。我们要做的第一步就是使用这个实用文件。...第五步:将图像和代码文件汇总 为了汇总这些图像和文件,我推荐的方法如下图: ? 总结: 阅读到这里,就证明你就已经采纳了我们在上一篇文章中讨论的理论,并做了一些实际的编程。

    1.3K50
    领券