数値回帰を利用した需要予測のやり方

Demand forecasting with the regression model

数値回帰を利用した需要予測のやり方

はじめに

このドキュメントは、BLOCKS の機械学習サービスの使い方を解説するチュートリアルです。

BLOCKS の機械学習サービスでは、学習データを使って学習する機能(学習機能)と、予測データを使って予測する機能(予測機能)を分けて提供しています。

学習機能は、モデルジェネレーターサービスと DataEditor サービスのモデル作成機能で提供しています。一方、予測機能は、フローデザイナーサービスの予測ブロックと DataEditor の予測機能で提供しています。

このチュートリアルでは、DataEditor を一切使わずにモデルジェネレーターを使った学習機能と、フローデザイナーを使った予測機能を組み合わせた方法で BLOCKS の機械学習サービスを使います。

DataEditor を使った BLOCKS の機械学習について知りたい方は、「数値回帰を利用した需要予測のやり方(DataEditor 編)」を参照願います。

ここでは、東京都の電力使用量を予測する例(電力使用量の需要予測)を通して、BLOCKS 機械学習サービスの数値回帰タイプの使い方を解説します。

この電力使用量の需要予測では、東京都の気象情報と日中時間(日の出から日の入りまでの時間)から東京都の電力使用量を予測します。

チュートリアル例のイメージ図

BLOCKS 機械学習サービスの数値回帰タイプを利用すると、このような電力使用量の予測の他に、以下のような予測ができます。

  • 店舗への来店者数や商品の販売数
  • 交通機関の利用者数

このチュートリアルを実践すると、上記例も含め大小関係に意味のある数値(販売数であれば 100 個と 200 個では大小に意味がある)を予測する課題(回帰問題)への適用も簡単にできるようになります。

数値回帰のおおまかな流れ

下図は、今回の例における数値回帰のおおまかな流れです。

BLOCKS での数値回帰の流れ図
  1. Microsoft Excel(Excel)を使ってデータを BLOCKS で扱える形式に加工

    • 東京都の気象情報・日中時間・電力使用量をまとめます。
    • まとめたデータをトレーニング用データと予測(検証)用データに分割します。
  2. モデルジェネレーターを使って学習(トレーニング)

    • トレーニング用データ中の気象情報・日中時間と電力使用量の因果関係を学習させます。
    • トレーニング結果として、モデルと呼ばれる学習成果が得られます。
  3. フローデザイナーを使って電力使用量を予測

    • モデルと予測(検証)用データ(気象情報・日中時間)を使って電力使用量を予測します。

この流れは、データが異なっても(別の課題でも)基本的に同じです。

数値回帰を試してみよう

このチュートリアルでは、下図のステップで数値回帰の一連の流れを解説します。

チュートリアルの流れ図

機械学習では、まとまったデータが必要不可欠です。機械学習では、まとまったデータを元に学習を行うことで、予測が可能となります。このため、機械学習においてデータの収集と加工が最初の作業となります(上図左端のステップ)。

なお、チュートリアルを進めるにあたって、BLOCKS 推奨のウェブブラウザー Google Chrome を準備してください。Firefox でも構いませんが、このチュートリアルでは、Google Chrome の使用を前提にしています。

CSV ファイルを準備しよう

まず、数値回帰のトレーニングと予測に必要なデータを準備します。データは、コンマ区切りの CSV ファイル(BOM なし・UTF-8)で用意します。

トレーニング用データは、東京都の日毎の気象情報および日中時間と電力使用量を使用します。

  • 最高気温
  • 最低気温
  • 日照時間
  • 平均湿度
  • 日中時間
  • 電力使用量

トレーニングでは、気象情報および日中時間と電力使用量の間にどのような因果関係があるのかを学習させます。

因子と結果となる値の因果関係を学習する解説図

ここでは、因果関係の原因となる項目(最高気温・最低気温・日照時間・平均湿度・日中時間)のことを「因子」と呼び、因果関係の結果となる項目(電力使用量)のことを「結果となる値」と呼びます。

予測では、モデルを使って未学習の因子から結果となる値を予測します。

キー項目の解説図

予測用データは、「キー項目」と「因子」を使用します。キー項目は、ひとまとまりの予測用データ(1 行分のデータ)を特定するための値です。キー項目は、予測用データ全体でユニークな値でなければなりません。今回は、年月日をキー項目として用います。

これらのデータは、気象庁・国立天文台・東京電力パワーグリッドの各ホームページから入手できます。

日中時間は、国立天文台が提供する日の入りと日の出の時間から算出します。時間の単位は分とします。

このチュートリアルでは、2016 年 4 月 1 日から 2018 年 12 月 31 日までの約 3 年間分のデータを準備し、トレーニング用データと予測用データに分けて使用します。

データの種類 データ量(期間)
トレーニング用データ 2016 年 4 月 1 日から 2018 年 11 月 30 日までの 2 年 8 か月分
予測用データ 2018 年 12 月 1 日から 2018 年 12 月 31 日までの 1 か月分

予測用データは、実運用では未来のデータを使用します。このチュートリアルでは、実運用前の検証段階を想定しています。このため予測用データは、トレーニング結果の確からしさをテストするため、トレーニングには使用していない過去のデータを用います。

因子については、まとめたデータを用意しました。

データ 説明

サンプル気象データ(weather_daytimeminutes_cleansing.csv)

気象庁と国立天文台が提供するデータから東京都の気象情報と日中時間をひとつにまとめたコンマ区切りの CSV ファイルです。このファイルには、2016 年 4 月 1 日から 2018 年 12 月 31 日までの以下のデータが含まれています。

  • 年月日
  • 最高気温
  • 最低気温
  • 日照時間
  • 平均湿度
  • 日中時間

左の欄のリンクをマウスの右ボタンでクリックしてください。表示されるメニューからリンク先を保存する旨の項目をクリックするとダウンロードできます。

warning このデータを利用した一切の行為について気象庁および国立天文台は何ら責任を負いません。

結果となる値の電力使用量は、2 次配布が許可されていないため、東京電力パワーグリッドのダウンロードページ から直接ダウンロードします。

東京電力パワーグリッドのダウンロードページの画面

ダウンロードは、2016 年・2017 年・2018 年のリンク(❶)をそれぞれマウスの右ボタンでクリックしてください。表示されるメニューからリンク先を保存する旨の項目をクリックするとダウンロードできます。いずれもコンマ区切りの CSV ファイルです。ファイル名は、それぞれ juyo-2016.csvjuyo-2017.csvjuyo-2018.csv です。

これで、データがすべて揃いました。これから、これらのデータを BLOCKS で扱えるデータ形式に加工していきます。

データの加工方法は色々ありますが、このチュートリアルでは、Excel で因子と結果となる値をひとつにまとめます(結合)。その後、トレーニング用データと予測用データへ分割します。

データ加工の流れ図

それでは、Excel で因子データと結果となる値をひとつにまとめていきます。形式は以下のように、因子→結果となる値の順に並べます。表の見出しは英数字とアンダースコア(_)で構成します(括弧内の表記が実際の見出し)。

トレーニングデータの加工例

(図をクリックすると拡大表示されます。)

年月日は因子データではありませんが、電力使用量をまとめたり、トレーニング用データと予測用データへ分割する際に必要です。また、予測用データのキー項目としても使います。その際、キー項目は key という名称でなければなならないため、key という表見出しにしています。

ダウンロードしたサンプル気象データ(weather_daytimeminutes_cleansing.csv)を Excel で開きます。

Excel で weather_daytimeminutes_cleansing.csv ファイルを開いた様子

このブックの新しいワークシートに、3 つの電力使用量の CSV ファイルを取り込んでいきます。

ファイル]メニューから[オプション]をクリックします。

レガシーオプションを設定する様子

データ](❶)をクリックし、[テキストから(レガシ)](❷)にチェックを付けて、[OK]ボタンをクリックします。

Excel のバージョンが古い場合は、このステップは不要です。

CSV ファイルを取り込む様子

データ](❶)→[データの取得](❷)→[従来のウィザード](❸)→[テキストから(レガシ)](❹)の順にクリックします。

Excel のバージョンが古い場合は、[データ]→[外部データの取り込み]→[テキストファイル]をクリックします。

取り込むファイルを指定する様子

juyo-2016.csv ファイル(❶)→[インポート]ボタン(❷)の順にクリックします。

ファイルの何行目から取り込むかを指定する様子

3 行分のヘッダを読み飛ばすため、[取り込み開始行](❶)を 4 に変更し、[次へ]ボタン(❷)をクリックします。

ファイルのフォーマットを指定する様子

読み込むファイルはコンマ(カンマ)区切りの CSV ファイルのため、区切り文字の[カンマ]のチェックボックス(❶)にチェックを入れて、[完了]ボタン(❷)をクリックします。

新規ワークシートにファイルを取り込む様子

電力使用量のデータファイルは、新しいワークシートに取り込みます。このため、データを返す先として[新規ワークシート](❶)をクリックし、更に[OK]ボタン(❷)をクリックします。

1 つ目の電力使用量のデータファイルを取り込んだ様子

2 つ目のファイル juyo-2017.csv を取り込む準備として、アクティブなセルの位置を最終行の次行(A6601 のセル)に移動させます。キーボード操作で、Ctrl + の後に、 を 1 回押します。これで、A6601 のセルがアクティブになります。

アクティブセルを A6601 に変更した様子

先ほどと同じ手順([データ]→[データの取得]→[従来のウィザード]→[テキストから(レガシ)])で、juyo-2017.csv を取り込みます。

データを返す先を指定する様子

ただし、データを返す先の指定では、[既存のワークシート]が選択され、=$A$6601 (❶)となっていることを確認し、[OK]ボタン(❷)をクリックします(異なる場合はこれに合わせます)。

2 つ目の電力使用量のデータファイルを取り込んだ様子

3 つ目のファイル juyo-2018.csv を取り込む準備として、アクティブなセルの位置を最終行の次行(A15361 のセル)に移動させます。キーボード操作で、Ctrl + の後に、 を 1 回押します。これで、A15361 のセルがアクティブになります。

アクティブなセルを A15361 に変更した様子

先ほどと同じ手順([データ]→[データの取得]→[従来のウィザード]→[テキストから(レガシ)])で、juyo-2018.csv を取り込みます。

データを返す先を指定する様子

ただし、データを返す先の指定では、[既存のワークシート]が選択され、=$A$15361 (❶)となっていることを確認し、[OK]ボタン(❷)をクリックします(異なる場合はこれに合わせます)。

3 つ目の電力使用量のデータファイルを取り込んだ様子

これで、3 つの電力使用量のデータファイルがワークシート Sheet1 に取り込めました。データは、日・時・電力使用量の順で並んでいます。

取り込んだ電力使用量のデータを見ると、1 時間毎の電力使用量が記録されています。これに対して、今回のトレーニングデータは、気象情報および日中時間を日毎のデータでまとめています。このため、取り込んだこのデータはそのままでは使えず、電力使用量を日毎のデータに再集計する必要があります。

それでは、ワークシート Sheet1 の電力使用量を日毎のデータにまとめて、ワークシート weather_daytimeminutes_cleansing に記録する手順を紹介します。

ワークシートを切り替えて、セル G1 をクリックする様子

ワークシートを weather_daytimeminutes_cleansing(❶)に切り替えて、セル G1(❷)をクリックし、electricity_usage と電力使用量の見出しを入力します。

セル G2 に計算式を入力する様子

セル G2(❶)をクリックし、=SUMIF(Sheet1!$A:$A,A2,Sheet1!$C:$C) と日毎の電力使用量を求める計算式を入力します。

セル G2 入力後の様子

これで、2016 年 4 月 1 日分の電力使用量が計算されて G2 に入力されました。後は、G3 以降のセルに同様の式を展開するだけです。

計算式を一気に展開する様子

G2 セル(❶)をクリックし、G2 セル右下隅の矩形部分(❷)をダブルクリックします。

計算式が展開された様子

これで、3 年分の気象情報・日中時間・電力使用量のデータがひとつのシートにまとまりました。

このまとめたデータからトレーニング用データと予測(検証)用データに分割するため、シートを 2 枚追加します。

シートを追加した様子

この例では、Sheet2Ssheet3 を追加し、分かりやすいようにそれぞれトレーニング用データ予測用データというシート名に変更しています。

それでは、データをまとめたシートからトレーニング用データシートへ、トレーニング用データをコピーします。

トレーニング用データをコピーする様子

データをまとめたシートの B2 セルから G970 セルまでを範囲選択して、コピーします(見出しの行と日付の列は含めない)。

形式を選択して値を貼り付ける様子

コピーしたデータをトレーニング用データシートの A1 セルに、形式を選択して貼り付けます。形式は、値の貼り付けを選択します。

トレーニング用データの貼り付け後の様子

続けて、データをまとめたシートから予測用データシートへ、予測用データをコピーします。

予測用データをコピーする様子

データをまとめたシートの A971 セルから F1001 セルまでを範囲選択して、コピーします(最終列は含めない)。

コピーした予測用データを貼り付ける様子

予測用データには、トレーニング用データと違い見出し(ヘッダー)が必要です。このため、予測用データは、2 行目以降に作成します。

コピーしたデータを予測用シートの A2 セルに、貼り付け(❶)ます。

予測用データの貼り付け後の様子

ヘッダーもデータをまとめたシートから持ってきます。

データをまとめたシートの A1 セルから F1 セルまでを範囲選択して、コピーします。

コピーしたヘッダーを貼り付ける様子

コピーしたヘッダーを予測用シートの A1 セルに、貼り付け(❶)ます。

ヘッダーの貼り付け後の様子

これで、トレーニング用データと予測(検証)用データの準備ができました。これらを CSV ファイルへ出力します。

トレーニング用データシートに切り替えて、F12 キーを押します。

トレーニング用データの CSV ファイルを保存する様子

ファイル名]を predict_electricity_demand_train.csv(❶)に変更し、[保存]ボタン(❷)をクリックします。

保存時の確認画面で OK ボタンをクリックする様子

OK]ボタンをクリックします。

予測用データシートに切り替えて、F12 キーを押します。

予測用データの CSV ファイルを保存する様子

ファイル名]を predict_electricity_demand_test.csv(❶)に変更し、[保存]ボタン(❷)をクリックします。

保存時の確認画面で OK ボタンをクリックする様子

OK]ボタンをクリックします。

この Excel ブックは、名前を付けて保存で、Excel ブック形式で保存してください。保存時の名前は自由に決めて構いません(例:predict_electricity_demand.xlsx)。

これで、データの分割が完了しました。

準備したファイルの形式図

図では分かりやすいように、トレーニング用データにヘッダーを記載していますが、実際のファイルにはヘッダーは含みません。

最後に、これらのファイルを Google Cloud Storage(GCS)へアップロードします。これは、BLOCKS の機械学習が、トレーニング用データ・予測用データの CSV ファイルを GCS から読み取る仕様となっているためです。

ファイルを GCS へアップロードするには、BLOCKS のサポートツール GCS Explorer(beta)を使用します。

ウェブブラウザーで、BLOCKS にログイン します。

GCS Explorer に切り替える様子
  1. グローバルナビゲーション左端の をクリック
  2. GCS Explorer(beta)]をクリック
GCS Explorer でファイルをアップロードする様子
  1. GCP サービスアカウントをクリック
  2. 末尾が -data で終わるバケット名をクリック
  3. ファイルをアップロードする]をクリック
アップロードするファイルを選択する様子
  1. predict_electricity_demand_train.csvpredict_electricity_demand_test.csv を選択
  2. 開く]ボタンをクリック
アップロード結果を GCS Explorer で確認する様子

これで CSV ファイルの準備ができました。

モデルジェネレーターでトレーニングしよう

続いて、準備したトレーニング用データを使って、モデルジェネレーターで学習(トレーニング)を行います。

まず、モデルジェネレーターを準備します。

モデルジェネレーターに切り替える様子
  1. グローバルナビゲーション左端の をクリック
  2. モデルジェネレーター]をクリック

モデルジェネレーターがひとつもない場合は、「モデルジェネレーターとは」の画面が表示されます。

モデルジェネレーターとはの画面

この画面が表示された場合は、[利用開始]ボタン(❶)をクリックします。

モデルジェネレーターがひとつ以上ある場合は、作成済みのモデルジェネレーターの一覧が表示されます。

モデルジェネレーター一覧画面

この画面が表示された場合は、[追加]ボタン(❶)をクリックします。

数値回帰タイプを選択する様子
  1. 数値回帰タイプ]をクリック
  2. 次へ]ボタンをクリック
名前を入力する様子
  1. 名前を入力(例:電力の需要予測
  2. 次へ]ボタンをクリック

無料トライアルおよびセルフサービスプランの場合は、画面の案内に沿って以下のステップを進めてください。

  1. GCP サービスアカウントの設定
  2. ストレージの設定
トレーニングデータの形式を設定する様子

この画面で、トレーニング用データの形式を設定します。

項目を追加する]ボタン(❶)を 5 回クリックして、結果となる値を除く項目名を入力します。

入力する項目名は、以下のとおりです。型と型別指定は、そのままとします。

  1. high_temperature
  2. low_temperature
  3. sunlight_hours
  4. average_humidity
  5. daytime_minutes
トレーニングデータの形式を設定した様子
  1. 次へ]ボタンをクリック
設定内容の確認画面
  1. 完了]ボタンをクリック
最終確認画面で OK をクリックする様子
  1. OK]ボタンをクリック

これで、トレーニングの準備ができました。早速、トレーニングしていきます。

トレーニング詳細画面
  1. トレーニング開始]ボタンをクリック
トレーニング名を設定する様子
  1. トレーニング名を入力(例:1回目のトレーニング
  2. をクリック
トレーニング用データを選択する様子
  1. -data で終わるバケット名の をクリック
  2. predict_electricity_demand_train.csv をクリック
  3. 選択]ボタンをクリック
トレーニングを開始する様子
  1. 開始]ボタンをクリック

トレーニングに必要な設定は他にもいくつかありますが、今回は標準値のまま進めます。トレーニングに必要な設定項目について詳しくは、モデルジェネレーターヘルプの「トレーニング開始」を参照してください。

トレーニング状況を確認する様子

トレーニングが始まり、トレーニングの状況が画面内で確認できます。

トレーニングの所要時間は、4 時間ほどです(時間はサーバー側の状況により前後)。しばらくお待ちください。

トレーニングが終了した様子

トレーニングが成功で終わると、トレーニング一覧の当該トレーニングのステータスが成功に変わります。

このトレーニングのモデルを予測で使用するためには、このトレーニングのモデルを予測で使用することを明示する必要があります。モデルジェネレーターでは、この行為を適用と呼びます。

トレーニング結果を本番用に適用する様子
  1. をクリック
  2. 適用対象から[本番用]をクリック
  3. 適用]ボタンをクリック

適用対象について詳しくは、モデルジェネレーターヘルプの「トレーニングを一覧する」のアクションの項を参照してください。

もし、トレーニングが失敗する場合は、再度トレーニングを実行してみてください。トレーニング失敗の理由の確認方法については、「操作中にエラーとなったら」を参考にしてください。

フローデザイナーで予測しよう

フローデザイナーを準備しよう

予測は、フローデザイナーで行います。フローデザイナーのフローテンプレート作成機能を活用すると、簡単に予測ができます。このチュートリアルでは、このフローテンプレートを使った方法を解説します。

フローデザイナーを開く様子
  1. グローバルナビゲーション左端の をクリック
  2. フローデザイナー]をクリック
フローデザイナーとはの画面
  1. 利用開始]ボタンをクリック

既にフローデザイナーを作成している場合は、フローデザイナーの一覧画面が表示されます。その場合は、既存のフローデザイナーの名前をクリックして、以降の作業を進めてください。もし無料トライアル以外をお使いで、新たにフローデザイナーを作成できるライセンス枠がある場合は、フローデザイナー一覧画面の左上にある[追加]ボタンをクリックしてください。

フローデザイナーを作成する様子
  1. フローデザイナーの名前を入力(例:チュートリアル
  2. 作成]ボタンをクリック
作成したフローデザイナーを開く様子
  1. チュートリアル]をクリック
予測フローを作成しよう

新しいタブでフローデザイナーが開きます。引き続き、フローテンプレート作成機能を使って、数値回帰の予測を行うフローを作成します。

フローテンプレート機能を実行する様子
  1. フローテンプレート作成]ボタンをクリック
数値回帰予測のフローテンプレートを作成する様子
  1. 数値回帰予測]をクリック
  2. 次へ]ボタンをクリック
フロー名を入力する様子
  1. 電力の需要予測 と入力
  2. 次へ]ボタンをクリック
予測ブロックを設定する様子
  1. 電力の需要予測(数値回帰タイプ)]をクリック
  2. オンライン予測]をクリック
  3. 次へ]ボタンをクリック
予測用データを設定する様子
  1. Google Cloud Storage(GCS)]をクリック
  2. をクリック
予測用データを選択する様子
  1. をクリック
  2. predict_electricity_demand_test.csv をクリック
  3. 選択]ボタンをクリック
予測用データを設定した様子
  1. 次へ]ボタンをクリック
予測結果の出力先を設定する様子
  1. Google Cloud Storage(GCS)]をクリック
  2. 表示されている URL に続けて predict_electricity_demand_results.csv を追加入力
  3. 次へ]ボタンをクリック

この設定で予測結果は、GCS 上の predict_electricity_demand_results.csv ファイルに出力されます。

フローを配置する様子
  1. 配置]ボタンをクリック

作成されたフローが下図の赤枠部分に配置されます。

フローを保存する様子
  1. 保存]ボタンをクリック
予測フローを実行して予測をしよう

これで、予測の準備ができました。早速、予測を試してみます。

フローを実行する様子
  1. フロー先頭の[電力の需要予測]ブロック右端の をクリック
  2. フローの実行]をクリック

予測の実行状況を確認するために、フローの実行ログを確認します。

ログを見る様子
  1. ログを見る]をクリック
ログのステータスが実行中であることをを確認する様子

画面下部に、ログパネルが表示されます。ログパネル左側のログリストのステータスでフローの実行状況が確認できます。フローの実行中は、[実行中](❶)の表示になります。実行が終わるまで、しばらく待ちます。

ログのステータスが成功であることをを確認する様子

フローの実行が正常に終了すると、ログリストのステータスが[成功](❶)に変わります。これで予測は完了です。

予測結果を確認しよう

予測結果は、GCS 上に CSV ファイルとして出力されています。CSV ファイルをダウンロードして、Excel で内容を確認します。

別タブにある BLOCKS の画面(フローデザイナーの一覧画面)に切り替えます。

  1. グローバルナビゲーション左端の をクリック
  2. GCS Explorer(beta)]をクリック
ファイルをダウンロードする様子
  1. predict_electricity_demand_results.csv ファイル先頭のチェックボックスにチェックを入れる
  2. ファイルをダウンロードする]をクリック
ファイル名をクリックする様子
  1. predict_electricity_demand_results.csvをクリック
ファイルを保存する様子
  1. 保存]ボタンをクリック
ダウンロード画面を閉じる様子
  1. 閉じる]ボタンをクリック

これで、予測結果の CSV ファイルがダウンロードできました。早速、Excel で開いて確認してみます。

予測結果の CSV ファイルを Excel で開いて確認する様子

各列の意味は、以下のとおりです。

意味
key

予測用データのキー項目です。

output

キー毎の予測用データに対応する予測結果(電力使用量)です。

この予測では、2018 年 12 月 1 日から 2018 年 12 月 31 日までの過去のデータを使用しました。電力使用量の実績値と比較して予測の精度を確認してみます。

電力使用量の実績値を追加した様子

最終列(C 列)に、CSV ファイルを準備したときに保存した Excel ブックから、2018 年 12 月 1 日から 2018 年 12 月 31 日までの電力使用量の実績値を貼り付けます。

折れ線グラフを挿入する様子
  1. 挿入]をクリック
  2. [折れ線 / 面グラフの挿入]アイコンをクリック
  3. [マーカー付き折れ線]アイコンをクリック
折れ線グラフで予測結果の精度を確認する様子

これでグラフが表示されました。予測値と実績値は、概ね似たような値を取っていることがわかります。

問題は、この予測精度は良いのか悪いのかという点です。これは、この電力の需要予測の利用シーンによって異なります。このチュートリアルでは、明確な利用シーンを想定していないため、この結果についてこれ以上言及できません。

数値回帰の評価について詳しくは、弊社ブログ記事「精度の評価と評価指標について(回帰編)」を参考にしてください。

操作中にエラーとなったら

トレーニングや予測時にエラーが発生した場合は、以下に紹介する方法で、エラー情報が収集できます。

モデルジェネレーターの場合は、トレーニング詳細画面の「エラー内容」で確認できます。以下に、モデルジェネレーターでのエラー内容の確認方法を紹介します。

トレーニング詳細画面を表示する様子
  1. ステータスが[失敗]と表示されているトレーニングのトレーニング名をクリック
エラー内容を確認する様子
  1. エラーログ]をクリック
  2. エラーログをコピーする]をクリック(問い合わせをする場合)

フローデザイナーの場合は、先に紹介したログパネルで確認できます。

フローデザイナーのログパネルでのエラー内容を確認する様子

エラー部分が赤字で表示されます。

エラーの原因を特定するには、エラー部分を中心に前後のメッセージも含めて読み解くと良いです(フローデザイナーは、[エラーログの詳細を表示]チェックボックスをチェック)。

エラーが発生し、何度リトライしても失敗するようであれば、グローバルナビゲーション右端のユーザーアイコンをクリックして表示される[お問い合わせ]からエラー内容をテキストファイル化したファイルを添付してお問い合わせください。エラー内容をテキストファイル化する場合は、赤字のエラー部分だけではなく、すべてのエラーメッセージを含めてください(フローデザイナーは、[エラーログの詳細を表示]チェックボックスをチェック)。

フローデザイナーでエラーが発生する場合は、フローをエクスポートした JSON ファイルも添付してください。

お問い合わせについて詳しくは、基本操作ガイドの「お問い合わせ」を参考にしてください。

まとめ

このように BLOCKS を使うと、データを準備するだけで、機械学習の専門的な知識は必要なく簡単に数値回帰が利用できます。ただし、データの準備に際し、留意点があります。準備するコンマ区切りの CSV ファイルは、BOM なし・UTF-8 にしてください。これ以外だと、BLOCKS で扱うことができません。

BOM なし・UTF-8 について詳しくは、弊社ブログの「MAGELLAN BLOCKSを利用する上で文字コードのお話し」を参考にしてください。

なお、トレーニングの精度について評価はしませんでしたが、因子を見直すことで改善の余地はあると思われます。

例えば、企業が休みの休日は電力使用量が平日よりも少なくなる可能性があります。また、季節によっても電力使用量の度合いは異なってくるでしょう。これらのことから、月や曜日を因子として追加することで、トレーニングの精度はより良くなる可能性があると思われます。

今回のチュートリアルの応用課題として、データの準備段階でこれらの因子を追加して試してみてはいかがでしょうか。

機械学習を使ってビジネスの課題を解決するには、チュートリアル同様にまずデータ収集から始めます。社内にある既存のデータを集めたり、新たにアンケートを採ってデータを集めたり、データを購入することもあります。更にそれらデータを精査し、データを選別したり、不正なデータを除去するなどのデータ加工の作業も必要です。このデータ収集と加工作業が、機械学習のステップの大半を占めると言っても過言ではありません。