ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

新しいデータによる予測のための回帰モデルのエクスポート

ワークスペースへのモデルのエクスポート

回帰学習器アプリで対話的に回帰モデルを作成した後で、最適なモデルをワークスペースにエクスポートできます。その後、学習済みのモデルを使用して、新しいデータによる予測を行うことができます。

  1. アプリで、エクスポートするモデルを [履歴] の一覧から選択します。

  2. [回帰学習器] タブの [エクスポート] セクションで、次のエクスポート オプションのいずれかをクリックします。

    • モデルに学習をさせるために使用したデータを含める場合は、[モデルのエクスポート] を選択します。

      回帰モデル オブジェクトが含まれている構造体として、学習済みのモデルをワークスペースにエクスポートします。

    • 学習データを除外するには、[コンパクト モデルのエクスポート] を選択します。このオプションを選択すると、不要なデータを可能な限り削除したモデルがエクスポートされます。一部のモデルでは、これは学習データが含まれていないコンパクトなオブジェクトですが、新しいデータに対して予測を行うために使用できます。

  3. [モデルのエクスポート] ダイアログ ボックスで、エクスポートする変数の名前をチェックし、必要な場合は編集します。次に、[OK] をクリックします。モデルが上書きされないようにするため、エクスポートするモデルの既定名 trainedModel は、エクスポートを行うたびに trainedModel1 などのようにインクリメントされます。

    新しい変数 (trainedModel など) がワークスペースに表示されます。

    エクスポートしたモデルに関する情報がコマンド ウィンドウに表示されます。メッセージを読んで、新しいデータで予測を行う方法を確認します。

メモ

エクスポートした最終的なモデルの学習には、常にデータセット全体が使用されます。使用する検証スキームは、回帰学習器による検証メトリックの計算方法にのみ影響を与えます。

新しいデータでの予測

モデルを回帰学習器からワークスペースにエクスポートするか、アプリで生成したコードを実行すると、新しいデータで予測を行うために使用できる trainedModel という構造体が作成されます。この構造体には、モデル オブジェクトと予測のための関数が格納されます。この構造体を使用すると、主成分分析 (PCA) が含まれているモデルについて予測を行うことができます。

  1. エクスポートしたモデルを使用して、新しいデータ T について予測を行います。

    yfit = trainedModel.predictFcn(T)
    ここで、trainedModel はエクスポートした変数の名前です。

    アプリで使用した学習データと同じデータ型 (テーブルまたは行列) のデータ T を指定します。

    • テーブルを指定する場合は、学習データと同じ予測子名を含めます。predictFcn は、テーブル内の追加変数を無視します。変数の形式および型は、元の学習データと一致しなければなりません。

    • 行列を指定する場合、学習データと同じ予測子の列または行が、同じ順序および形式で格納されていなければなりません。応答変数、アプリでインポートしなかった変数、および他の未使用変数は含めないでください。

    出力の yfit には、各データ点についての予測が含まれています。

  2. エクスポートした構造体のフィールドを確認します。予測を行う方法のヘルプを表示するには、次のように入力します。

    trainedModel.HowToPredict

さらに分析を行うため、エクスポートした構造体からモデル オブジェクトを抽出することもできます。PCA などの特徴変換をアプリで使用する場合は、構造体の PCA フィールドの情報を使用してこの変換を考慮に入れなければなりません。

新しいデータでモデルに学習をさせる MATLAB コードの生成

回帰学習器アプリで対話的に回帰モデルを作成した後で、最適なモデルについて MATLAB® コードを生成できます。このコードは、新しいデータでモデルに学習をさせるために使用できます。

以下を行う MATLAB コードを生成します。

  • 大規模なデータセットでの学習。データのサブセットで学習を行ったモデルをアプリで探索し、選択したモデルに大規模なデータセットで学習をさせるコードを生成する。

  • 他の関数の構文に関する知識を必要としない、モデルに学習をさせるスクリプトを作成する。

  • コードを調べて、プログラムでモデルに学習をさせる方法を学ぶ。

  • アプリでは変更できないオプションを設定するなど、さらに分析を行うためにコードを変更する。

  • 別のデータに対して分析を繰り返し、学習を自動化する。

コードを生成し、そのコードを使用して新しいデータでモデルに学習をさせるには、以下を行います。

  1. アプリの [履歴] の一覧で、コードを生成するモデルを選択します。

  2. [回帰学習器] タブの [エクスポート] セクションで [モデルのエクスポート][コード生成] をクリックします。

    コードがセッションから生成され、ファイルが MATLAB のエディターに表示されます。このファイルには、予測子、応答、モデルの学習方法、および検定方式が含まれています。ファイルを保存します。

  3. モデルに再学習をさせるには、元のデータまたは新しいデータを入力引数で指定してコマンド ラインで関数を呼び出します。新しいデータは、同じ形状でなければなりません。

    生成されたコードの 1 行目から function という単語を除いた部分をコピーし、学習データまたは新しいデータの変数名を反映するように入力引数 trainingData を編集します。

    生成されるコードは、構造体 trainedModel を返します。この構造体には、モデルを回帰学習器からワークスペースにエクスポートすると作成される構造体と同じフィールドが含まれています。

新しいデータによって同じモデルに学習をさせる処理を自動化する方法や、プログラムでモデルに学習をさせる方法については、生成されたコードを確認してください。このコードには、次の処理を行う方法が示されています。

  • 正しい形状になるようにデータを処理する。

  • モデルに学習をさせ、すべてのモデル オプションを指定する。

  • 交差検証を実行する。

  • 統計量を計算する。

  • 検定予測とスコアを計算する。

参考

関数

クラス

関連するトピック