Forecast」技術検証やってみた4.終わりに1.はじめにこんにちは。新型コロナウイルス感染拡大から早2年半。季節は梅雨となり、じめじめと蒸し暑い時期がやってきますが、ようやくマスク生活も終わりに近づいてきましたね。体調には気を付けて、楽しい夏をお過ごしください。Forecast」を触ってみた内容のコラムを執筆しました。Forecast」を使ってやってみたいと思います。Forecast」と「機械学習」について、簡単におさらいしていきましょう。社のAIデータ解析サービス」です。「機械学習」とは「学習させたいデータを解析し、その結果を学習する技術のこと」で、学習した結果を基に予測や分類をすることができます。Forecastでは「教師あり学習」が利用されています。Forecast」についてより詳しく知りたい方は前回コラムをご覧ください。Forecastを使って今年の桜の開花日予測を行っていきましょう。今回は、前回コラム執筆時に比較的予測精度が低かった3都市(東京・広島・福岡)について予測します。桜の開花日予測には、2~4月の平均気温と最高気温、2/1から桜の開花日までの日数のデータが必要なので、各情報は気象庁のHPから参照しています。一般的に、機械学習の予測精度が低い原因は、主に以下の3つと言われています。1.学習用データの量が少ないこと2.学習用・予測用データの質が低いこと3.予測モデルの作り方が悪いことこの3つの原因について、前回と今回では以下のように変更して予測精度が上がるかを検証していきます。Forecastでは学習用データは最低100データ必要ですが、1952年以前の気象庁の桜の開花日のデータがなかったため、1953年以降のデータを使用します。初めに、「学習用データ」と「予測用データ」を準備します。Forecastで利用している「教師あり学習」は、「学習用データを基に、そのデータがどんなパターンになるかを予測するもの」なので、元となる学習用データは非常に重要です。前述した通り、学習用データのデータ量がそもそも少ない、または、予測したいものに対して全く関係ない値を学習用データとして入力している場合には予測精度が低くなります。学習用データを作成する際は、予測対象に対してどの値が必要なのか、十分検討するようにしましょう!また、学習用データと予測用データのフォーマットは合わせ、予測用データに目的変数を記載しないように注意してください。学習後に予測用データを読み込ませる際には、カラムの設定はできません。今回は開花日までの日数を予測するため、予測用データに「2/1から開花日までの日数」は記載していません。それぞれのデータには、以下の情報が記載されている必要があります。予測させたい対象のこと。目的変数を求めるために必要な情報のこと。データをナンバリングすること。上の3つのデータを記載した学習用データと予測用データは、それぞれ以下のように作成しました。3都市それぞれの学習用データと予測用データを作成していますが、ここでは東京のみ添付します。Forecastに学習用データと予測用データを読み込ませていきます。ここでは一部画面のみ抜粋して紹介しますので、どんな画面が表示され学習されるのかは、前回コラムをご覧ください。プロジェクトを作成します。無事プロジェクトが作成されました。作成されたプロジェクトの目的変数とIndex、説明変数を設定します。「開花日」と「年」は予測に不要のため、非活性にしています。Forecastに読み込ませて学習させていきます。「MAE(平均絶対誤差)」、学習設定を「簡単モード」に設定します。Forecastには12のアルゴリズムが設定されており、学習用データに応じて最適なアルゴリズムを選択することができます。評価指標とは「モデルの性能を評価するための基準のこと」で、4パターンのうち1つを設定することができます。「MAE(平均絶対誤差)」が標準で設定されています。学習設定では、より良くデータをフィッテングするために様々なパラメータを変更することも可能なようで、「簡単モード」「通常モード」「しっかりモード」の3つから選択することができます。学習にかかった時間は約4分でした。次に、学習させたアルゴリズムについてホールドアウト検証を行い、予測モデルを作成していきます。ホールドアウト検証が終わると、検証結果が表示されます。今回は評価指標を「MAE(平均絶対誤差)」に設定したので、「MAEが小さい=誤差が小さい」ということになり、評価指標が良い順にアルゴリズムが並び変えられます。MAEが最も小さく検証結果が良いアルゴリズムは「LightGBM」なので、この予測モデルをデプロイします。「データ予測」画面を開き、予測用データを読み込ませて予測を開始します。予測開始からほんの数秒で出力された予測結果データをダウンロードします。ダウンロードした予測結果データはこのようになりました。広島と福岡の開花日も同様に予測していきます。因みに、広島と福岡の最も精度が高いアルゴリズムは「XGBoost」でした。Forecastで予測した桜の開花日と実際の開花日を比較した結果がこちらです。前回と今回の予測結果は以下の通りです。RAYの予測誤差がより小さいことがわかります。Forecastの技術検証ということで、前回とは少しやり方を変更して、桜の開花日を予測してみました。学習用データと予測モデルの作成を一工夫することで、より予測精度を上げることができたので、AI予測をしているものの精度が低くて悩んでいるという方は、ぜひご参考にしていただければと思います。Forecastだけではなく、弊社ではAI推進も行っておりますので、AIや機械学習に少しでも興味がある方は是非ご連絡いただければと思います。長くなりましたが、最後まで読んでくださり、ありがとうございました!最新情報をお届けします!RPAに関する最新コラムやイベント情報をメールで配信中です。