🚀 MobileNet V2
ImageNet-1kで解像度224x224で事前学習されたMobileNet V2モデルです。画像分類タスクに最適です。
🚀 クイックスタート
MobileNet V2は、Mark Sandler、Andrew Howard、Menglong Zhu、Andrey Zhmoginov、Liang-Chieh Chenによる論文 MobileNetV2: Inverted Residuals and Linear Bottlenecks で導入されたモデルです。初めてこのリポジトリ this repository で公開されました。
なお、MobileNet V2をリリースしたチームはこのモデルのモデルカードを作成していないため、このモデルカードはHugging Faceチームによって作成されています。
✨ 主な機能
モデルの説明
元のREADME より引用:
MobileNetsは、さまざまなユースケースのリソース制約を満たすためにパラメータ化された、小型で低レイテンシー、低電力のモデルです。Inceptionなどの他の一般的な大規模モデルと同様に、分類、検出、埋め込み、セグメンテーションなどのタスクに利用できます。MobileNetsは、モバイルデバイスでも効率的に実行できます [...] MobileNetsは、レイテンシー、サイズ、精度のトレードオフを行い、文献上の一般的なモデルと有利に比較されます。
チェックポイントは mobilenet_v2_depth_size という名前で付けられています。例えば mobilenet_v2_1.0_224 の場合、1.0 は深度乗数で、224 はモデルが学習された入力画像の解像度です。
想定用途と制限
この生モデルは画像分類に使用できます。関心のあるタスクでファインチューニングされたバージョンを モデルハブ で探すことができます。
📦 インストール
このセクションでは、必要な依存関係をインストールする方法について説明します。以下のコマンドを使用して、必要なライブラリをインストールできます。
pip install transformers pillow requests torch
💻 使用例
基本的な使用法
以下は、COCO 2017データセットの画像を1,000のImageNetクラスのいずれかに分類する方法の例です。
from transformers import AutoImageProcessor, AutoModelForImageClassification
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
preprocessor = AutoImageProcessor.from_pretrained("google/mobilenet_v2_1.0_224")
model = AutoModelForImageClassification.from_pretrained("google/mobilenet_v2_1.0_224")
inputs = preprocessor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[predicted_class_idx])
⚠️ 重要提示
このモデルは実際には1001のクラスを予測します。つまり、1000のImageNetクラスに加えて、追加の「背景」クラス(インデックス0)も含まれます。
💡 使用建议
現在、特徴抽出器とモデルの両方がPyTorchをサポートしています。
BibTeX引用
@inproceedings{mobilenetv22018,
title={MobileNetV2: Inverted Residuals and Linear Bottlenecks},
author={Mark Sandler and Andrew Howard and Menglong Zhu and Andrey Zhmoginov and Liang-Chieh Chen},
booktitle={CVPR},
year={2018}
}
📄 ライセンス
このモデルは、他のライセンスで提供されています。