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

一头栽进了tensorflow lite的巨坑里

移动端的图片识别的教程也很多,大多数都脱胎于Google的教程《TensorFlow for Poets》和《TensorFlow for Poets 2: Android》。...参考上面提到的教程,将基本功能实现出来还算顺利。然而,等代码build出来,安装到手机上一测试,拿一张狗狗的图片识别,结果的top 1概率都是0.0 ~ 0.02之间,使用训练的图片测试也是如此。...将我训练出来的mobilenet模型放到TensorFlow for Poets 2: Android的示例代码中,工作正常,虽然准确率不高,但至少top 1的概率大于0.4。可以确认模型没有问题。...确认代码,基本上复制的TensorFlow for Poets 2: Android示例代码,不可能出现问题。 到了这一步,就非常郁闷了,于是上网搜索,看有没有和我碰到同样问题的。...果然,有个哥们在stackoverflow上提了一个问题:Accuracy score of inceptionV3 tflite model is not good as of retrained_graph.pb

1.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    机器学习-使用TensorFlow for Poets训练图像分类器

    要通过TensorFlow for Poets训练一个图像分类器,我们只需要提供一样东西 ——训练数据。也就是一个有很多图像的图像目录: ?...我们有了训练数据后我们就可以开始训练分类器了,我们会使用TensorFlow来做这一步。...也就是跟上一次记录相比最接近的一次,区别在于神经网络可以学习很多复杂的函数,在这个编码实验室里TensorFlow for Poets会在幕后为你负责准备并训练神经网络,这并不意味着TensorFlow...在TensorFlow for Poets里我们以Inception为基础,然后使用一个叫做再次训练的功能来调试使其更好地分辨我们的图像。...也让我们重新定义Inception之前学习的一些参数,这样我们就可以用很少的训练数据创建一个高精准度的分类器,现在训练结束了: ? 当我们有了一个训练好的分类器后, 我们就可以测试它了。

    1.2K20

    图像分类任务中,Tensorflow 与 Keras 到底哪个更厉害?

    在tensorflow-for-poets-2文件夹中,有一个名为scripts的文件夹,它包含重新训练模型所需的一切。retrain.py有一种特殊的裁剪和缩放图像的方式,非常酷。...,批量大小为10,数据分割为80%训练集,20%测试集。 哇哦。我们完成了训练并得到了约91%的测试准确率,损失为0.38。该模型已保存为一个inception.model文件,可以再次加载并测试。...从0开始以及灵活性: 上述模型是在相同的数据集上训练的,我们看到相比于tensorflow,Keras需要更多的时间进行训练。...除此之外,由于tensorflow是一个低级库,因此它是有道理的。 训练时间和处理能力: 上述模型是在相同的数据集上训练的,我们看到相比于tensorflow,Keras需要更多的时间进行训练。...TensorFlow调试器快照 (来源:TensorFlow文档) Tensorflow甚至支持线程和队列来异步训练大型张量!这为TPU提供了更好,更快的处理速度。

    91820

    TF-Slim ImageNet数据集制作

    的高层API,类似layers,主要可以用来快速的设计、评估模型,有着类似keras般的语法 Tensorflow models包含一个Slim的图像分类库,可以微调、训练、使用预训练模型来对图像进行分类...models 准备数据集 训练/微调/直接使用 文档已经写的很清楚了,照着做基本是没问题的,以下步骤来自文档教程: 安装 安装TensorFlow (>1.0) 克隆models(https://github.com...比较特殊的是ImageNet数据集,官方也提供了教程,做下来发现还是有问题,后续提供解决方案 训练 可以从头开始训练(比如使用ImageNet)、加载预训练模型直接分类、网络微调三种....的数据(全是JPEG图片) 可以使用我的脚本一步完成: 假设数据存放在models/research/slim/ImageNet-ori目录下,TFRecord文件的输出目录是models/research...注意下路径就行了,我本机测试没问题. ---- 参考博客 用tensorflow训练imagenet数据准备

    1.8K20

    如何极大效率地提高你训练模型的速度?

    然后我们将权重固定到最后一层,并在我们训练新数据时让该层中的权重发生变化。 如图所示,我们保持红色连接固定,现在只重新训练最后一层绿色连接。 转移效率 转移学习的两个主要好处: 1....import Model InceptionV3已经在ImageNet数据上进行了训练,该数据包含1000个不同的对象,其中很多我发现它们非常古怪。...实际上,预训练的InceptionV3就是这样认可的。...现在我们知道InceptionV3至少可以确认我正在吃什么,让我们看看我们是否可以使用基础数据表示重新训练并学习新的分类方案。 如上所述,我们希望冻结模型的前n-1层,然后重新训练最后一层。...最后,当我们在第一个猫训练图像上运行此模型时(使用Tensorflow非常方便的内置双线性重新缩放功能): ? 图6:一只可爱的猫......对你有好处! 该模型预测猫有94%的置信度。

    2.2K50

    模型训练太慢?来试试用这个方法提速吧!

    然后我们将权重固定到最后一层,并在我们训练新数据时让该层中的权重发生变化。 如图所示,我们保持红色连接固定,现在只重新训练最后一层绿色连接。 转移效率 转移学习的两个主要好处: 1....import Model InceptionV3 已经在 ImageNet 数据上进行了训练,该数据包含 1000 个不同的对象,其中很多我发现它们非常古怪。...实际上,预训练的InceptionV3就是这样认可的。...现在我们知道 InceptionV3 至少可以确认我正在吃什么,让我们看看我们是否可以使用基础数据表示重新训练并学习新的分类方案。 如上所述,我们希望冻结模型的前 n-1 层,然后重新训练最后一层。...最后,当我们在第一个猫训练图像上运行此模型时(使用 Tensorflow 非常方便的内置双线性重新缩放功能): ? 图6:一只可爱的猫......对你有好处! 该模型预测猫有 94% 的置信度。

    3.3K11

    cc++:判断数据(stream)是否为JPEG图像快速而准确的方法

    JPEG标准仅仅定义了codec部分, 也就是图片如何压缩为字节流以及重新解码为图片的过程. 标准没有涉及到文件的存储格式....JFIF或Exif,来判断是否为JPEG图像是不严谨的,会造成错判和漏判。...下面的check_jpg函数根据JPEG 标准,通过顺序遍历 JPEG 标记,以最终是否找到SOF0,SOF2标记来判断是否为JPEG格式(SOF0,SOF2是图像数据起始标记,一个JPEG图像至少有一个.../* 当前标记的数据长度(不含标记本身) */ uint16_t payload = 1; /* 设置为0或1用于指定当前JPEG 标记是否有附加数据*/ switch(...image*/ } if(payload){ /*读取 JPEG 标记之后的附加数据长度字段,根据这个字段的值移动文件游标位置跳到下一个 JPEG

    1.2K10

    TensorFlow-Slim图像分类库

    TensorFlow-Slim图像分类库 TF-slim是用于定义,训练和评估复杂模型的TensorFlow(tensorflow.contrib.slim)的新型轻量级高级API。...它还包含用于下载标准图像数据集的代码,将其转换为TensorFlow的TFRecord格式,并可以使用TF-Slim的数据读取和队列程序进行读取。...每个tf.Example proto包含ImageNet图像(JPEG编码)以及其他数据,如类别标签和边界信息等等。 我们为下载和转换ImageNet数据到TFRecord格式提供了单独的脚本。...如果然后要将结果模型与您自己的或预先训练的检查点一起用作mobile model,则可以运行freeze_graph以使用以下内容将变量内嵌为常量: bazel build tensorflow/python...我想使用不同的图片尺寸训练模型: 预处理功能全部以高度和宽度为参数。

    2.5K60

    TensorFlow官方力推、GitHub爆款项目:用Attention模型自动生成图像字幕

    如果你在 Colab上面运行,那么TensorFlow的版本需要大于等于1.9。 在下面的示例中,我们训练先训练较少的数据集作为例子。在单个P100 GPU上训练这个样本大约需要2个小时。...我们将使用MS-COCO数据集来训练我们的模型。...此数据集包含的图像大于82,000个,每个图像都标注了至少5个不同的字幕。 下面的代码将自动下载并提取数据集。 注意:需做好提前下载的准备工作。 该数据集大小为13GB!!!...首先,我们需要将图像按照InceptionV3的要求转换格式: 调整图像大小为(299,299) 使用preprocess_input方法将像素放置在-1到1的范围内(以匹配用于训练InceptionV3...下面我们提供了一种方法,你可以使用我们刚训练过的模型为你自己的图像添加字幕。 请记住,它是在相对少量的数据上训练的,你的图像可能与训练数据不同(因此出来的结果可能会很奇怪,做好心理准备呦!)。

    1K20

    业界 | TensorFlow基准:图像分类模型在各大平台的测试研究

    每一个模型所使用的配置为: ? 结果 ? 用合成数据集训练 ? 用真实数据集训练 ?...在真实数据和 8 块 GPU 上训练 AlexNet 在上表中是没有数据的,因为其最大溢出了输入管线(input pipeline)。 其他结果 这一部分结果都是在批量大小为 32 的情况下得到的。...除了表格中所列举的批量大小,InceptionV3 和 ResNet-50 还使用批量大小为 32 进行过测试。这些结论显示在「其他结果」部分。 ?...除了表格中所列举的批量大小,InceptionV3 和 ResNet-50 还使用批量大小为 32 进行过测试。这些结论显示在「其他结果」部分。 ? 每一个模型所使用的配置: ? 结果 ?...除了表格中所列举的批量大小,InceptionV3 和 ResNet-50 还使用批量大小为 32 进行过测试。这些结论显示在「其他结果」部分。 ? 用于每一个模型的配置 ?

    1.4K60

    Auto-Tinder-训练AI玩打火机刷卡游戏

    下载一堆附近人的图像 编写简单的鼠标单击分类器来标记我们的图像 开发一个使用tensorflow对象检测API的预处理器以仅裁剪图像中的人物 训练Inceptionv3(一种深度卷积神经网络),以学习分类数据...对于第二部分,将 Tensorflow对象检测API与mobilenet网络体系结构一起使用,在可可数据集上进行了预训练,该数据集还包含“人”的标签。...步骤6:重新训练inceptionv3并编写分类器 对于重新训练部分,将仅将tensorflows retrain.py 脚本与inceptionv3模型一起使用。...训练过程的结果是“ tf / training_output / retrained_graph.pb”文件中的重新训练的inceptionV3模型。...然后使用重新训练的图和标签将分类张量流图打开为张量流会话。然后获取附近的人员并进行可能性预测。

    1.6K20

    如何使用注意力模型生成图像描述?

    训练模型的数据量相对较小,因此只用了一个 P100 GPU,训练模型大约需要两个小时。...,不要在预训练的时候添加注意力机制; 在网络中训练完成以后,将缓存的字典文件输出为 pickle 文件并且保存到本地磁盘。...在本教程的实验中,我们从 InceptionV3 模型的下卷积层中提取特征,特征向量的大小为 (8, 8, 2048); 需要把这个形状拉伸到 (64, 2048); 把这个向量输入到 CNN 编码器(...但是需要注意,这个模型用的数据相对较少,假设你的图片和训练集区别太大,可能会出现比较奇怪的结果。...已经可以训练一个基于注意力机制的图片描述模型,而且你也可以尝试对不同的图像数据集进行实验。

    2.8K30

    AIDog改造手记:使用TensorFlow 2.0

    - 官方文档 经过这些研究,确定在微信小程序中使用TensorFlow是可行的,接下来,我准备将AIDog小程序改造一番,主要改造两点: 将训练模型的python脚本改造为使用TensorFlow 2.0...,有现成的分类模型可以借用,采用迁移学习,在新的数据集上重新训练模型。...接下来一行语句 base_model.trainable = False 表示基础模型中的参数不参与训练,其实这也容易理解,模型已经在ImageNet数据集上进行训练,学会了从图像提取特征,这是在超大规模数据集上训练出的参数...如果你希望Inception模型某些层参与训练,以更好的匹配新的数据集,你也可以这样写: # Unfreeze all layers of InceptionV3 base_model.trainable...如果想要用到TensorFlow新出的Eager模式,就必须要使用Dataset API来读取数据。 图像数据文件按照9:1的比例划分为训练数据集和验证数据集。

    93920

    使用深度学习和OpenCV的早期火灾检测系统

    为了平衡效率和准确性,考虑到目标问题和火灾数据的性质对模型进行了微调。我们将使用三个不同的数据集来训练我们的模型。 创建定制的CNN架构 我们将使用TensorFlow API Keras构建模型。...首先,我们创建用于标记数据的ImageDataGenerator。[1]和[2]数据集在这里用于训练。最后,我们将提供980张图像用于训练和239张图像用于验证。我们也将使用数据增强。...创建定制的InceptionV3模型 这次我们将使用不同的数据集[3],其中包含室外和室内火灾图像。...我们已经在该数据集中训练了我们之前的CNN模型,结果表明它是过拟合的,因为它无法处理这个相对较大的数据集和从图像中学习复杂的特征。...我们开始为自定义的InceptionV3创建ImageDataGenerator。数据集包含3个类,但对于本文,我们将仅使用2个类。它包含用于训练的1800张图像和用于验证的200张图像。

    1.6K11

    【免费教学】Tensorflow Lite极简入门

    ,当然,TensorFlow Lite上也可以部署用自己的数据集定制化训练的模型。...假如你已经得到了一个“够用”的模型了,而且你也没有源代码或者数据来重新进行训练,那么就使用当前的模型吧,没有任何问题。但如果你有源代码和数据,直接使用 TOCO 工具进行模型转化将会是最好的选择。...Lite 兼容的公开模型 视频中提到的兼容性指南的链接为: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib...第二部分,如何将第一部分生成的模型构建成一个 APK: https://codelabs.tensorflowers.cn/codelabs/tensorflow-for-poets-2/index.html...模型中的 Operator 被重新加载为 TfLiteNode,它包含输入输出的 Tensor 索引值。

    1.3K20

    Caffe2推出才几天,就被谷歌TensorFlow吊打了

    合成与实际数据训练的比较 NVIDIA® Tesla® P100 (图片翻译:训练:InceptionV3模型(Tesla® P100);训练:ResNet-50模型(Tesla® P100))...其他结果 下面都是批处理大小为32的训练结果。...除了表中列出的批处理大小外,在批处理大小为32的情况下我们还对InceptionV3模型和ResNet-50模型分别进行了测试,其结果详见本节的“其他结果”部分。...结果 训练合成数据的结果 训练实际数据的结果 其他结果 下面都是批量大小为32的训练结果。...除了表中列出的批量大小外,在批处理大小为32的情况下我们还对InceptionV3模型和ResNet-50模型分别进行了测试,其结果见本节的“其他结果”部分。

    1.3K60

    使用深度学习和OpenCV的早期火灾探测系统

    将实现并查看其输出和限制,并创建一个定制的InceptionV3模型。为了平衡效率和准确性,考虑目标问题和火灾数据的性质对模型进行了微调。将使用三个不同的数据集来训练模型。...数据集的链接在本文结尾处可用。进入编码部分。 1.创建定制的CNN架构 将使用TensorFlow API Keras构建模型。首先创建用于标记数据的ImageDataGenerator。...2.创建定制的InceptionV3模型 这次将使用不同的数据集[3],其中包含室外和室内火灾图像。...已经在该数据集中训练了以前的CNN模型,结果是它过拟合,因为它无法处理这个相对较大的数据集,无法从图像中学习复杂的特征。 开始为自定义的InceptionV3创建ImageDataGenerator。...在上面的代码中,应用了2种数据增强技术水平翻转和缩放。 从Keras API导入InceptionV3模型。将在InceptionV3模型的顶部添加图层,如下所示。

    1.1K10

    Google机器学习笔记 4-5-6 分类器

    根据训练数据调整函数参数 从我们发现规律的方法中,找到model 比如一条划分两类点的线就是一个分类器的model,调整参数就能得到我们想要的分类器: ?...Image Classifier with TensorFlow for Poets 目标 区分图片之间的差异 工具 TensorFlow for Poets 高度封装 效果奇佳 只需要目录中的图片和目录名字作为...label,不需要预设feature 数据 找出图片中五种花的差异 下载地址:http://download.tensorflow.org/example_images/flower_photos.tgz...如果你想要用其他的图片类型,你只需要创建一个新的文件夹,放入对应类型的100张以上的图片 不需要像Iris数据集那样有预设的feature 分类器 TensorFlow TensorFlow擅长于Deep...TensorFlow·Skflow·Example TensorFlow处理Iris问题 TensorFlow直接识别文件夹图片 耗时大概20分钟 基于Inception训练分类器retrain Transfer

    75490

    TensorFlow学习笔记--自定义图像识别

    以VGG16为例,它的结构为5部分卷积层共13层(conv1 ~ conv5)和3层的全连接层(fc6 ~ fc8),一共16层,因此被称为VGG16。...下载TensorFlow Slim 源代码 下载TensorFlow Slim 是Google提供的图像分类工具。.../inception_v3.ckpt 预训练模型保存的位置 –checkpoint_exclude_scopes=InceptionV3/Logits,InceptionV3/AuxLogits 恢复预训练模型时不回复这两层...,上方的为只训练末端的损失数,下方为训练所有层的损失函数。...三、总结 首先简要介绍了微调神经网络的基本原理,接着详细介绍了如何使用 TensorFlow Slim 微调预训练模型,包括数据准备、定义新的 datasets 文件、训练、 验证 、 导出模型井测试单张图片等

    75810
    领券