マイクロソフトがAzureアプリケーションとサービスにオープンソースの機械学習モデルを統合する取り組みを進めています。この記事では、Hugging Faceの機械学習モデルをAzureで利用する利点や、その活用方法について解説します。
最近のAzure Open Source Dayでは、マイクロソフトが自社のオープンソースツールを活用して開発したクラウドネイティブなアプリケーションが紹介されました。このアプリケーションは、迷子になったペットと飼い主を再び結びつけるサービスとして開発され、機械学習を活用して迷子の動物の写真を保護施設やコミュニティサイトの画像と素早く比較します。これは、オープンソースツールを使って複雑なサイトやサービスを構築する例として非常に有益です。
このアプリケーションの中核となるのは、Hugging Faceコミュニティによって開発されたオープンソースの機械学習モデルです。Hugging Faceは、さまざまなツールやサービスをベースに、何千ものモデルやデータセットを開発しています。そのスケールが、Hugging Faceのモデルを自分のコードでインポートして推論を行ったり、自分のサーバで動かしたり、クラウドAPI経由でアクセスする理由となります。
Hugging FaceをAzureで利用するもう一つの理由は、AIを多様なビジネス問題に適用できる点です。マイクロソフトのCognitive Services APIは多くの一般的なAIシナリオをカバーしていますが、それらは企業向けに意見が分かれるマシンラーニングサービスです。そのため、特定のタスクではなく、一般的な用途に設計されており、コードがエッジケースをサポートする必要がある場合、APIに適切な調整を追加するのに多くの作業が必要になります。Hugging FaceのTransformerモデルフレームワークをベースにした40,000以上のモデルが、マイクロソフトだけではなく、より多くのシナリオに対応できるようにカスタマイズされています。また、Hugging FaceのTransformerは、自然言語、音声、コンピュータビジョンを含む様々なタスクに対応しており、例えば画像分類には2000以上のモデル、テキスト分類には18,000近くのモデルが用意されています。
マイクロソフトは最近、AzureでHugging Faceモデルのサポートを開始し、コードで使用できるエンドポイントのセットを提供しています。Hugging Face HubやパイプラインAPIからモデルをインポートし、コミュニティによって構築・テストされたモデルを使用できます。エンドポイント方式を採用することで、すぐに利用可能な状態でモデルが提供されます。