ドキュメンテーション

このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

10 行の MATLAB コードによる深層学習の例

この例では、わずか 10 行の MATLAB® コードを使用して、深層学習でライブ Web カメラに映ったオブジェクトを特定する方法を説明します。この例を試して、MATLAB でどれほど簡単に深層学習を始めることができるか確認してください。

  1. 次のコマンドを実行して (ダウンロードが必要な場合あり)、Web カメラに接続し、事前学習済みのニューラル ネットワークを取得します。

    camera = webcam; % Connect to the camera
    net = alexnet;   % Load the neural network

    webcam および alexnet アドオンをインストールする必要がある場合は、各関数からのメッセージに表示されるリンクから、アドオン エクスプローラーを使用して無料のアドオンをダウンロードできます。または、Deep Learning Toolbox Model for AlexNet Network および MATLAB Support Package for USB Webcams を参照してください。

    Deep Learning Toolbox™ Model for AlexNet Network をインストールすると、それを使用してイメージを分類できます。AlexNet は、100 万枚を超えるイメージで学習している事前学習済みの畳み込みニューラル ネットワーク (CNN) で、イメージを 1000 個のオブジェクト カテゴリ (キーボード、マウス、マグ カップ、鉛筆、多くの動物など) に分類できます。

  2. 次のコードを実行し、ライブ イメージを表示して分類します。Web カメラをあるオブジェクトに向けると、Web カメラに表示されているオブジェクトのクラスがニューラル ネットワークによって判断されて報告されます。イメージの分類は、Ctrl+C キーを押すまで続行されます。このコードでは、imresize を使用して、このネットワーク用にイメージをリサイズしています。

    while true
        im = snapshot(camera);       % Take a picture
        image(im);                   % Show the picture
        im = imresize(im,[227 227]); % Resize the picture for alexnet
        label = classify(net,im);    % Classify the picture
        title(char(label));          % Show the class label
        drawnow
    end

    この例では、ネットワークはマグ カップを正しく分類しています。身の回りのオブジェクトで実験して、このネットワークの精度を確認してください。

    この例のビデオを見るには、Deep Learning in 11 Lines of MATLAB Code を参照してください。

    この例を拡張してクラスの確率スコアを表示するコードを取得するには、深層学習を使用した Web カメラ イメージの分類を参照してください。

深層学習の次のステップとして、この事前学習済みのネットワークを他のタスクに使用できます。転移学習または特徴抽出を使用して、自分のイメージ データで新しい分類問題を解決してみましょう。例については、転移学習を使用した短時間での深層学習の開始事前学習済みのネットワークから抽出された特徴を使用した分類器の学習を参照してください。他の事前学習済みのネットワークを試してみるには、事前学習済みの畳み込みニューラル ネットワークを参照してください。

関連するトピック