Googleがファイル識別AI「Magika」をリリース 使い方を解説
Googleが2024年2月15日に発表した「Magika」は、AI技術を活用したファイルタイプの識別システムです。Googleのディープラーニングモデルを駆使し、バイナリやテキストファイルの種類を高速かつ高精度に判定します。
この記事では、Magikaの概要から使い方まで、詳しく解説します。
Magikaの特徴とは?

AIによる高精度なファイルタイプ識別
元々、Linuxに代表されるlibmagicやfileユーティリティがファイルタイプの判定に広く用いられてきました。
しかし、手作業によるヒューリスティックな方法では、テキストファイルやプログラミング言語ファイルなどの識別が難しい問題がありました。
Magikaは、この問題をAIの力で解決します。わずか1MBのカスタム深層学習モデルを使用し、その処理はCPU上でもミリ秒単位で行えるほど高速です。
高性能で広範なファイルタイプ対応
Magikaは、100を超えるファイルタイプを対象とした100万ファイルのベンチマークによる評価で、既存のツールに比べて約20%の性能向上を達成しています。
とくに、テキストファイルやコードファイル、設定ファイルなどで大きな改善が見られます。
多様な利用環境での活用
Google内では、GmailやDrive、Safe Browsingなどにおけるユーザーの安全を高めるためにMagikaが広範に使用されています。
正確なファイルタイプの識別により、悪意のあるドキュメントをスキャンするシステムでスキャンできるファイル数を11%増やすなど、大きな効果を挙げています。
オープンソースでの提供
Magikaは、GitHub上でApache-2.0ライセンスにもとづきオープンソースとして公開されています。
Pythonライブラリやコマンドラインツールとして利用でき、GPUは不要です。研究者や他のソフトウェア開発者にとってもアクセスしやすいツールとなっています。
Magikaの使い方
Webデモの利用
MagikaはWebデモを通じて、ブラウザー上で簡単にファイルタイプの識別を試せます。インストール不要で利用可能なため、気軽にMagikaの性能を体験できます。
また、速度は低下するものの、TensorFlow.jsを用いたnpmパッケージも提供されています。
インストール
MagikaはPythonパッケージとして提供されており、次のコマンドで簡単にインストールできます。
pip install magikaコマンドラインツールとしての使用
Magikaをコマンドラインツールとして使用する場合、ファイルやディレクトリーを指定して実行します。
$ magika -r ファイルやディレクトリのパスtests_data/README.md: Markdown document (text)tests_data/basic/code.asm: Assembly (code)tests_data/basic/code.c: C source (code)...JSON形式での出力や、MIMEタイプのみを取得するオプションも用意されており、多彩なニーズに対応可能です。
Python APIとしての使用
MagikaはPythonライブラリーとしても提供されています。次の例のように、直接Pythonコード内からファイルタイプを識別できます。
from magika import Magika
m = Magika()res = m.identify_bytes(b"ファイルの内容")print(res.output.ct_label)まとめ
Googleによって開発されたMagikaは、ファイルタイプ識別の精度とスピードを大きく向上させ、多くの分野での利用が期待されます。この画期的なツールを活用し、さまざまなアプリケーションや研究に役立ててみてはいかがでしょうか。
参考
記事をシェア
フォローして最新情報を入手
Googleの優先ソースに追加すると、このサイトの記事をGoogleで見つけやすくなります。また、ぜひXやRSSフィードもフォローしてください。
おすすめ記事
-1.png&w=1080&q=75)
生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。
Webフロントエンドプログラマーとして、TypeScriptを用いたWebアプリやブラウザー拡張機能を制作。Xのシャドウバン検知ツール「Shadowban Scanner」やリンクカード復活ツール「Restore Link Card」を公開し、国内外のメディアで紹介されました。iGEM 2023ではJapan-UnitedチームのWikiを制作してGrand Prizeの獲得に貢献。ブログではXやSNSの最新ニュース、不具合の検証と対処法、フロントエンド開発の知見を発信しています。




![[新しいXチャットへようこそ]というテキストが画面に大きく表示されており、その下には次の3つの説明が表示されている。[エンドツーエンドの暗号化:メッセージは、端末にかかわらずエンドツーエンドで暗号化されています。][最先端のプライバシー:Xを含め、他の人がメッセージを読むことはできません。][パスコードを設定:メッセージを保護するため、4桁のパスコードを設定してください。]これらの説明の下には、[パスコードを作成]という大きなボタンが配置されている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fwelcome-to-new-chat.png&w=1920&q=75)

![[Search Engine Selector]というアプリからの通知のスクリーンショット。[ブラウザと検索サービスを選択]というタイトルで、本文には[ウェブページを表示しリンクを開くアプリと、検索サービスアプリを選択してください]と書かれている。通知の下部には[アプリを選択してください]というボタンが表示されている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fandroid-search-engine-selector-notification.png&w=3840&q=75)



![Slackのスレッド画面のスクリーンショット。左上にウィンドウ、中央にスレッドと返信、下部にメッセージ入力欄。チャンネルは[#codex-docs]](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fcodex-in-slack.png&w=3840&q=75)


