首页 >科技周边 >人工智能 >如何使用MobilenEtV2模型进行图像分类?

如何使用MobilenEtV2模型进行图像分类?

Lisa Kudrow
Lisa Kudrow原创
2025-03-04 11:02:09999浏览

Mobilenet是为支持智能手机出现而创建的开源模型。它使用CNN体系结构执行计算机视觉任务,例如图像分类和对象检测。使用此体系结构的模型通常需要大量的计算成本和硬件资源,但是Mobilenet是可以使用移动设备和嵌入的。 多年来,该模型已用于各种现实世界应用。它还具有一些功能,例如使用深度分离卷积减少参数。因此,借助移动设备的硬件资源有限,该技术可以帮助使模型运行。

我们将讨论该模型如何使用预训练的预测类对图像进行深度分类器图像有效地对图像进行分类。

学习目标

了解Mobilenet及其工作原理。

洞悉Mobilenet的架构。
  • >在Mobilenet上推断以执行图像分类。
  • 探索Mobilenet的真实应用。
  • >本文是

> > data Science Blogathon的一部分。 内容表的>> MobileNet

>

>标准共存的工作原理

    >
  • >如何进行深度和点卷积工作?输入图像
  • >>为图像分类加载预训练的模型
  • > input处理
  • output
    • 应用此模型的应用
    • Mobilenet的工作原理
    • > Mobilenet的工作原理是该模型结构中最重要的部分之一。它概述了构建此模型的技术和方法,并使其适应移动设备和嵌入式设备。该模型的设计利用卷积神经网络(CNN)体系结构使其可以在移动设备上运行。 但是,该体系结构的关键部分是使用深度可分离卷积来减少参数的数量。该方法使用两个操作:深度和尖锐的卷积。
    标准共价
  • >标准卷积过程以滤波器(内核)开头;在图像中检测到边缘,纹理或图案之类的图像特征。接下来是将滤清器滑过图像的宽度和高度。每个步骤都涉及元素的乘法和求和。这样的总和给出了一个数字,从而导致特征图的形成。它代表了滤波器检测到的特征的存在和强度。
  • >但是,这具有高计算成本和增加的参数计数,因此需要深度和点的卷积。

    如何使用MobilenEtV2模型进行图像分类?

    深度和尖端卷积如何工作?

    >

    深度卷积将单个过滤器应用于输入通道,而点置则将来自深度卷积的输出结合在一起,从图像创建新特征。

    >因此,这里的区别在于,只要仅应用一个过滤器,乘法任务就减少了,这意味着输出的通道数与输入相同。这导致了弯曲的卷积。

    tbe Pointwise卷积使用1×1滤波器结合或扩展功能。这有助于模型学习在频道功能上分配不同模式以创建新功能映射。这使得旋转卷积能够增加或减少输出特征图中的通道数。 Mobilenet Architecure

    >

    此计算机视觉模型建立在CNN体系结构上,以执行图像分类和对象检测任务。深度可分离卷积的使用是将该模型调整到移动设备和嵌入式设备中,因为它允许建立轻质的深神经网络。

    >这种机制带来了参数计数和延迟的减少,以满足资源约束。该体系结构可实现模型输出的效率和准确性。

    该模型的第二版(MobilenetV2)是通过增强型建造的。 Mobilenet V2引入了一种特殊类型的构建块,称为带有瓶颈的倒残差。这些块有助于减少处理过的通道的数量,从而提高模型。它还包括瓶颈层之间的快捷方式,以改善信息流。它没有在最后一层中使用标准激活函数(relu),而是使用线性激活,该线性激活效果更好,因为该阶段数据的空间大小较低。

    如何运行此模型?

    使用此模型进行图像分类需要几个步骤。该模型使用其内置预测类接收并分类输入图像。让我们深入了解如何运行Mobilenet的步骤:

    导入图像分类的必要库

    >您需要导入一些基本模块以运行此模型。这首先要从变压器库导入图像处理器和图像分类模块。它们分别有助于预处理图像和加载预训练的模型。另外,PIL用于操纵图像,而“请求”允许您从网络中获取图像。

    from transformers import AutoImageProcessor, AutoModelForImageClassification
    from PIL import Image
    import requests

    >加载输入图像

     image = Image.open('/content/imagef-ishfromunsplash-ezgif.com-webp-to-jpg-converter.jpg')

    >从PIL库中使用函数“ Image.open”来从文件路径加载图像,在这种情况下,该图像是从我们本地设备上传的。另一个替代方法是使用其URL获取图像。

    如何使用MobilenEtV2模型进行图像分类?

    >加载图像分类的预训练模型

    下面的代码从MobileNetV2预训练的模型中初始化了“自动ImimageProcessor”过程。该部分在将图像馈送到模型之前处理图像预处理。另外,如第二行所示,代码为图像分类加载相应的MobilenEtv2模型。

preprocessor = AutoImageProcessor.from_pretrained("google/mobilenet_v2_1.0_224")
model = AutoModelForImageClassification.from_pretrained("google/mobilenet_v2_1.0_224")

>输入处理

此步骤是将预处理图像转换为适合Pytorch的格式的地方。然后,它通过模型传递以生成输出逻辑,将使用SoftMax将其转换为概率。

inputs = preprocessor(images=image, return_tensors="pt")
 
outputs = model(**inputs)
logits = outputs.logits

>输出

 # model predicts one of the 1000 ImageNet classes
predicted_class_idx = logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[predicted_class_idx])

>此代码从模型的输出(logits)中找到具有最高预测分数的类,并从模型的配置中检索其相应的标签。然后打印预测的类标签。

>

这是输出:

如何使用MobilenEtV2模型进行图像分类?

这是指向Colab文件的链接。

应用此模型

Mobilenet在各种现实生活案例中找到了应用程序。它已在包括医疗保健在内的各个领域使用。以下是此模型的一些应用:

>

    >在共同大流行期间,Mobilenet被用来将胸部X射线分为三种:正常,互联和病毒性肺炎。结果也具有很高的精度。
  • > MobilenetV2在检测两种主要形式的皮肤癌中也有效。这项创新在无法负担该模型的稳定互联网连接的领域中,这是重要的。> 在农业中,该模型对于检测番茄作物的叶片疾病也至关重要。因此,使用移动应用程序,该模型可以帮助检测10种常见的叶片疾病。
  • 您也可以在此处检查模型:链接
  • >
  • 总结
  • Mobilenet是Google研究人员的大师班的结果,它将高度计算成本的模型降低到移动设备而不会干扰其效率。该模型建立在构建结构上,该体系结构允许仅从移动应用程序中创建图像分类和检测。医疗保健和农业的用例是该模型能力的证据。
钥匙外卖

>关于该模型的工作方式,从体系结构到应用程序有一些讨论点。以下是本文的一些亮点:

>
  • 增强的体系结构:Mobilenet的第二版带有MobilenetV2中的倒残差和瓶颈层。这种发展提高了效率和准确性,同时保持轻巧的性能。
  • >有效的移动优化:该模型用于移动和嵌入式设计的设计意味着它可以提供低计算资源,同时提供有效的性能。
  • >现实世界应用:Mobilenet已成功用于医疗保健(例如Covid-19和皮肤癌检测)和农业(例如,检测农作物中的叶片疾病)。
>本文所示的媒体不归Analytics Vidhya拥有,并由作者自行决定使用。

常见问题 > Q1。是什么使MobilenetV2与其他CNN模型不同? MobileNetV2使用可分开的卷积和倒残差,与传统CNN相比,它对移动和嵌入式系统的效率更高。

Q2。 Mobilenetv2可以用于实时应用吗? 

ans。 MobilenetV2用于低延迟和实时图像分类任务,使其适用于移动设备和边缘设备。与较大的模型相比,Mobilenetv2的精确度如何?  ans。尽管MobilenetV2已优化以提高效率,但它保持了较高的型号的高度精度,这使其成为移动AI应用程序的强大选择。与较大的模型相比,Mobilenetv2的精度如何?尽管MobileNetV2已优化以提高效率,但它保持了较高的型号的高度精度,这使其成为移动AI应用程序的强大选择。

以上是如何使用MobilenEtV2模型进行图像分类?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn