自社のニーズに合わせて結果を予測できるカスタム予測モデルを作成し、トレーニングできます。
必要なスキルとデータの種類がわかったところで、次のステップは、トレーニングデータとして投入する値をどのように絞り込み、選択するかを理解することです。
たとえば、Creator を使用してZylker Insuranceというアプリケーションを構築したとします。このアプリにはInsurance Claimというフォームがあり、顧客はこのフォームから保険金請求を送信します。ここで、顧客から提出された保険金請求が正当かどうかを判定したいとします。このように、これは二値予測結果モデルの一種です。
次に、予測モデルにどのような結果を出させたいのか、その結果に影響する要因を考えてみましょう。たとえば、「この保険金請求は正当かどうか?」という問いに対して、次のような質問を検討します。
上記の情報を基に、トレーニングデータとして使用する項目を選定できます。
学習データは、モデルがパターンを見つけ、解釈を行い、予測を導き出すために最初に使用されるデータセットです。モデルに投入するデータを確定したら、データは次の 2 通りの方法で追加できます。アプリケーションのフォーム項目から追加するか、CSV ファイルから追加します。予測モデルでは、1 つ目の方法(フォームから追加)の場合、学習データは基準項目と従属項目で構成され、2 つ目の方法(CSV から追加)の場合は、基準列と従属列で構成されます。
どの方法で学習データを追加すべきか迷うことがあるかもしれません。アプリケーション内に学習データとして使用できる十分なデータがある場合は、フォームの項目を追加し、その項目のデータを学習データとして使用できます。逆に、アプリケーション内に十分なデータがないものの、ファイルとしてデータを保存している場合は、CSV ファイルからデータを追加する後者の方法を選択できます。
ここで最も重要なのは、履歴の結果列ではないデータ/列が、結果に間接的な影響を受けていないかどうかを確認することです。
たとえば、注文が遅延するかどうかを予測したいとします。データには実際の納品日が含まれているかもしれません。この日付は、注文が納品された後にのみ存在します。この列を含めると、モデルの精度は 100 パーセントに近くなってしまいます。しかし、納品日を予測したい注文については、まだ納品されていないため、納品日列には値がありません。正確な結果を得るには、このような列は学習の前に選択解除する必要があります。
アプリケーションの項目に保存されているデータを選択し、学習データとしてモデルに投入できます。
予測モデルでは、ベース項目および従属項目として追加できる項目タイプは、以下のタイプのみがサポートされます。サポートされていない項目タイプがデータ内に含まれている場合、それらは項目選択ページには表示されません。
トレーニングデータとしてアプリケーションの項目を選択する際には、次の2種類の項目データが必要です。
上記の例では、ベース項目は「これは不正請求ですか」となり、従属項目は「顧客期間(月数)」「事故の重大度」「請求合計金額」項目などになります。
トレーニングデータとして使用するデータを選択すると、初期設定では、データ内のすべてのレコードが対象になります。ただし、特定のデータセットに絞って学習や予測を行いたい場合もあります。そのような場合は、特定のデータセット のみを使って予測モデルをトレーニングするための条件を定義し、その条件に基づいてデータをフィルタリングできます。トレーニングに使用するデータに不要な情報が含まれているとわかっている場合は、この手順を利用してデータを絞り込むことができます。
たとえば、ある保険会社が Creator を使用して、保険金請求が不正かどうかを予測するアプリケーションを作成しているとします。これを正確に予測するには、モデルをアプリケーションフォーム内のすべてのデータでトレーニングし、モデルの理解度を高める必要があります。
さらに、この保険会社が「事故日が 2018 年より前の請求は処理しない」と定めているとします。この条件を基準として設定すると、2018 年以降に発生した事故に対する請求のみが不正請求の判定対象として考慮されます。このように条件を利用して、データを適切にフィルタリングできます。
トレーニングデータを選択するもう 1 つの方法は、CSV形式のファイルに保存されているデータを使用する方法です。サポートされていない項目タイプの列がデータに含まれている場合、それらは列選択ページには表示されません。
列の選択
予測モデルでは、CSV からのトレーニングデータとして、次のデータタイプをサポートしています:番号、テキスト、日付、日付-時間。これらのタイプのデータを、ベース列および従属列として追加できます。
これらのデータタイプ以外の不要なデータを含む列は、CSV 予測ではサポートされません。サポートされていない項目タイプの列がデータに含まれている場合、それらは項目選択ページには表示されません。
この CSV で選択した列は、学習用のベース列と従属列として扱われます。
上記の例では、ベース列は「Fraud Claim」であり、従属列は「Months as Customer」「Incident Severity」「Total Claim Amount」項目になります。
学習データを追加したら、モデルの詳細を確認できます。確認できる内容には、モデル名、ベース項目/列、従属項目/列などがあります。必要に応じて、戻ってモデル名、ベース項目/列、従属項目/列を変更できます。変更が不要な場合は、そのままモデルの学習を続行できます。
アプリケーションで予測モデルを実際に使用する前に、期待どおりの結果を出せるように学習させる必要があります。データ項目/列を選択して確認したら、Trainをクリックしてモデルを学習させます。
モデルのトレーニングが完了すると、モデルの詳細、モデルのバージョン、および(存在する場合は)デプロイの詳細を表示できます。モデルは公開およびアプリへのデプロイが可能な状態になります。
モデルは、次の方法で管理できます。
トレーニング後、モデルがどのように動作するかを確認し、トレーニング結果が十分かどうかを判断するためにモデルをテストできます。そのうえで、アプリケーションにデプロイしてください。テストデータをアップロードしてモデルをテストすると、予測結果とともに精度スコアが表示されます。
予測モデルは、テストデータセットの予測結果に基づいて、トレーニング済みモデルの精度スコアを算出します。例えば、データセットに500件のデータがあり、そのうち492件を正しく予測した場合、精度スコアは96パーセントと表示されます。
モデルの学習・テスト・評価が完了したあと、期待した結果が得られない場合は、モデルを編集してパフォーマンスを改善できます。ここでは、モデルの精度スコアを向上させるために試せることをいくつか紹介します。
データクレンジングとは、学習データセットから不正確、不適切な形式、重複、または不十分な情報を削除するプロセスです。2つ以上のデータソースを結合すると、データの重複やラベル付けの誤りが発生しやすくなります。予測結果が一見正確に見えても、データの誤りがあると信頼性が損なわれます。
学習データを投入する前にデータをクレンジングすることは、モデルのパフォーマンスを向上させるうえで非常に重要です。各行のデータについて、入力ミス、数値の欠落、スペルミス、その他のエラーを丁寧に確認することが、誤ったデータをクレンジングする最も効果的な方法です。これにより、モデル学習に明らかに不適切なデータを取り除くことができます。
モデルの学習が完了したら、モデルを公開してユーザーが利用できるようにし、予測を開始できます。 手順はこちら
「導入したばかりで基本操作や設定に不安がある」、「短期間で集中的に運用開始できる状態にしたい」、「運用を開始しているが再度学び直したい」 といった課題を抱えられているユーザーさまに向けた少人数制のオンライントレーニングです。
日々の営業活動を効率的に管理し、導入効果を高めるための方法を学びましょう。