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