(57)【要約】  運用中の機械学習モデルの判断妥当性をタイムリーに判定できる判定システム、判定方法及びプログラムを提供する。不正注文判定装置（１２）は、推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る推定処理を実行する。モデル生成装置（２２）は、入力データに含まれる複数の要素のうちの一部と、当該入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行する。モデル生成装置（２２）は、学習の実行後の第２の機械学習モデルの出力に基づいて、第１の機械学習モデルの判断妥当性を判定する。
2020026302.tif 000002
【特許請求の範囲】
【請求項１】
推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る前記推定処理を実行する推定処理実行手段と、
前記入力データに含まれる複数の要素のうちの一部と、前記入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行する学習実行手段と、
前記学習の実行後の前記第２の機械学習モデルの出力に基づいて、前記第１の機械学習モデルの判断妥当性を判定する判定手段と、
を含むことを特徴とする判定システム。
【請求項２】
前記学習実行手段は、さらに、前記入力データに含まれる複数の要素と、前記入力データについての既知の結果データと、に基づいて、第３の機械学習モデルの学習を実行し、
前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素を前記学習の実行後の前記第３の機械学習モデルに入力した際の出力に基づいて、当該新たな前記入力データに係る前記推定処理を実行する、
ことを特徴とする請求項１に記載の判定システム。
【請求項３】
前記学習実行手段は、さらに、前記入力データに含まれる複数の要素と、前記入力データについての既知の結果データと、に基づいて、第３の機械学習モデルの学習を実行し、
前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素を、当該新たな前記入力データに応じて決定される前記第１の機械学習モデル又は前記第３の機械学習モデルのいずれかに入力した際の出力に基づいて、当該新たな前記入力データに係る前記推定処理を実行する、
ことを特徴とする請求項１に記載の判定システム。
【請求項４】
前記第２の機械学習モデルの出力におけるトレンドの強さを特定するトレンド特定手段、をさらに含み、
前記学習実行手段は、さらに、前記入力データに含まれる複数の要素と、前記入力データについての既知の結果データと、に基づいて、第３の機械学習モデルの学習を実行し、
前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素を前記学習の実行後の前記第３の機械学習モデルに入力した際の出力を示す値と当該複数の要素を前記第１の機械学習モデルに入力した際の出力を示す値とを前記トレンドの強さに応じた重みで重み付けした値に基づいて、当該新たな前記入力データに係る前記推定処理を実行する、
ことを特徴とする請求項１に記載の判定システム。
【請求項５】
前記判定手段は、前記学習の実行後の前記第３の機械学習モデルの出力と、当該第３の機械学習モデルへの入力の一部を前記第２の機械学習モデルに入力した際の当該第２の機械学習モデルの出力と、の違いに基づいて、前記第１の機械学習モデルの判断妥当性を判定する、
ことを特徴とする請求項２から４のいずれか一項に記載の判定システム。
【請求項６】
前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素のうちの一部を第４の機械学習モデルに入力した際の出力に基づいて、当該新たな前記入力データに係る前記推定処理を実行する、
ことを特徴とする請求項１に記載の判定システム。
【請求項７】
前記判定手段は、前記学習の実行前の前記第２の機械学習モデルの出力と、前記学習の実行後の前記第２の機械学習モデルの出力と、の違いに基づいて、前記第１の機械学習モデルの判断妥当性を判定する、
ことを特徴とする請求項１から６のいずれか一項に記載の判定システム。
【請求項８】
推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る前記推定処理を実行するステップと、
前記入力データに含まれる複数の要素のうちの一部と、前記入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行するステップと、
前記学習の実行後の前記第２の機械学習モデルの出力に基づいて、前記第１の機械学習モデルの判断妥当性を判定するステップと、
を含むことを特徴とする判定方法。
【請求項９】
推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る前記推定処理を実行する手順、
前記入力データに含まれる複数の要素のうちの一部と、前記入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行する手順、
前記学習の実行後の前記第２の機械学習モデルの出力に基づいて、前記第１の機械学習モデルの判断妥当性を判定する手順、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定システム、判定方法及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、ユーザの操作と同種の操作種別の不正判定スコアの履歴に基づき当該操作の不正度合いを判定することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６２０４６３７号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
発明者らは、機械学習モデルを用いて電子商取引システムに送信される注文が不正なものである可能性を推定するシステムを検討している。【０００５】
このようなシステムではユーザビリティの観点から注文に対するレスポンスタイムを抑えることが求められる。一方で不正注文であるか否かの判定基準が頻繁に変わることは望ましくない。また、不正注文のトレンドが一過性のものであることが考えられ、このような場合に、トレンドが変化する都度判定基準を変えるのはよくない。このことを踏まえ、発明者らは、運用中の機械学習モデルに対し新たな学習データによる追加の学習を随時実行することはせずに、学習内容が固定された機械学習モデルをある程度の期間は継続して用いて、注文が不正なものである可能性を推定しようとしている。【０００６】
しかしこの場合、不正注文に関する最新のトレンドが運用中の機械学習モデルには反映されず、当該機械学習モデルの判断妥当性が低下するおそれがある。そのため、この判断妥当性の低下に応じて適時に何らかの対応ができるよう、運用中の機械学習モデルの判断妥当性をタイムリーに判定できることが望ましい。【０００７】
ここで運用中の機械学習モデルのコピーに対して新たな学習データによる学習を実行し、学習が行われた当該コピーの出力に基づいて、運用中の機械学習モデルの判断妥当性を判定することが考えられる。例えば、運用中の機械学習モデルと学習済のコピーとで出力の傾向に差が生じた場合に、運用中の機械学習モデルの判断妥当性が低下したと判定することが考えられる。【０００８】
しかし運用中の機械学習モデルのコピーに入力されるデータの要素数が多い場合は少数の要素に関して発生したトレンドに対する出力の反応が鈍く、学習が行われたコピーの出力に基づいて運用中の機械学習モデルの判断妥当性をタイムリーに判定できないことがある。【０００９】
ここで特許文献１に記載されている技術を用いても、運用中の機械学習モデルの判断妥当性をタイムリーに判定できない。【００１０】
また以上のことは、注文が不正なものである可能性の推定に限らず、機械学習モデルを用いた推定処理を行う場面において一般的にあてはまる。【００１１】
本発明は、上記課題に鑑みてなされたものであって、その目的の一つは、運用中の機械学習モデルの判断妥当性をタイムリーに判定できる判定システム、判定方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明に係る判定システムは、推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る前記推定処理を実行する推定処理実行手段と、前記入力データに含まれる複数の要素のうちの一部と、前記入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行する学習実行手段と、前記学習の実行後の前記第２の機械学習モデルの出力に基づいて、前記第１の機械学習モデルの判断妥当性を判定する判定手段と、を含む。【００１３】
本発明の一態様では、前記学習実行手段は、さらに、前記入力データに含まれる複数の要素と、前記入力データについての既知の結果データと、に基づいて、第３の機械学習モデルの学習を実行し、前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素を前記学習の実行後の前記第３の機械学習モデルに入力した際の出力に基づいて、当該新たな前記入力データに係る前記推定処理を実行する。【００１４】
あるいは、前記学習実行手段は、さらに、前記入力データに含まれる複数の要素と、前記入力データについての既知の結果データと、に基づいて、第３の機械学習モデルの学習を実行し、前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素を、当該新たな前記入力データに応じて決定される前記第１の機械学習モデル又は前記第３の機械学習モデルのいずれかに入力した際の出力に基づいて、当該新たな前記入力データに係る前記推定処理を実行する。【００１５】
あるいは、前記第２の機械学習モデルの出力におけるトレンドの強さを特定するトレンド特定手段、をさらに含み、前記学習実行手段は、さらに、前記入力データに含まれる複数の要素と、前記入力データについての既知の結果データと、に基づいて、第３の機械学習モデルの学習を実行し、前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素を前記学習の実行後の前記第３の機械学習モデルに入力した際の出力を示す値と当該複数の要素を前記第１の機械学習モデルに入力した際の出力を示す値とを前記トレンドの強さに応じた重みで重み付けした値に基づいて、当該新たな前記入力データに係る前記推定処理を実行する。【００１６】
ここで、前記判定手段は、前記学習の実行後の前記第３の機械学習モデルの出力と、当該第３の機械学習モデルへの入力の一部を前記第２の機械学習モデルに入力した際の当該第２の機械学習モデルの出力と、の違いに基づいて、前記第１の機械学習モデルの判断妥当性を判定してもよい。【００１７】
また、本発明の一態様では、前記推定処理実行手段は、前記第１の機械学習モデルが妥当でないと判定された場合は、新たな前記入力データに含まれる複数の要素のうちの一部を第４の機械学習モデルに入力した際の出力に基づいて、当該新たな前記入力データに係る前記推定処理を実行する。【００１８】
また、本発明の一態様では、前記判定手段は、前記学習の実行前の前記第２の機械学習モデルの出力と、前記学習の実行後の前記第２の機械学習モデルの出力と、の違いに基づいて、前記第１の機械学習モデルの判断妥当性を判定する。【００１９】
また、本発明に係る判定方法は、推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る前記推定処理を実行するステップと、前記入力データに含まれる複数の要素のうちの一部と、前記入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行するステップと、前記学習の実行後の前記第２の機械学習モデルの出力に基づいて、前記第１の機械学習モデルの判断妥当性を判定するステップと、を含む。【００２０】
また、本発明に係るプログラムは、推定処理の対象である入力データに含まれる複数の要素を第１の機械学習モデルに入力した際の出力に基づいて、当該入力データに係る前記推定処理を実行する手順、前記入力データに含まれる複数の要素のうちの一部と、前記入力データについての既知の結果データと、に基づいて、第２の機械学習モデルの学習を実行する手順、前記学習の実行後の前記第２の機械学習モデルの出力に基づいて、前記第１の機械学習モデルの判断妥当性を判定する手順、をコンピュータに実行させる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態に係る不正注文判定システムの全体構成の一例を示す図である。
【図２】本発明の一実施形態における動作の一例を示す図である。
【図３】注文データの一例を示す図である。
【図４】学習データの一例を示す図である。
【図５】評価データの一例を示す図である。
【図６】推定結果データの一例を示す図である。
【図７】結果管理データの一例を示す図である。
【図８】不正確認画面の一例を示す図である。
【図９】学習データの一例を示す図である。
【図１０】本発明の一実施形態に係るモデル生成装置２２に記憶される機械学習モデルの構成の一例を示す図である。
【図１１】本発明の一実施形態に係るモデル生成装置で実装される機能の一例を示す機能ブロック図である。
【図１２】対応データのデータ構造の一例を示す図である。
【図１３】トレンドデータのデータ構造の一例を示す図である。
【図１４】本発明の一実施形態に係るスコア値決定装置で実装される機能の一例を示す機能ブロック図である。
【図１５】本発明の一実施形態に係るモデル生成装置において行われる処理の流れの一例を示すフロー図である。
【発明を実施するための形態】
【００２２】
以下、本発明の一実施形態について、図面を参照しながら説明する。
【００２３】
図１は、本発明の一実施形態に係る不正注文判定システム１の全体構成の一例を示す図である。図１に示すように、本実施形態に係る不正注文判定システム１には、不正注文判定装置１２、特徴抽出装置１４、スコア値決定装置１６、評価データ生成装置１８、学習データ管理装置２０、モデル生成装置２２、モデル記憶装置２４、が含まれる。これらの装置はインターネット等のコンピュータネットワーク２６に接続されており、互いに通信可能になっている。
【００２４】
また、不正注文判定システム１は、コンピュータネットワーク２６を介して電子商取引システム１０にも互いに通信可能に接続されている。ここで電子商取引システム１０は、本実施形態では例えば、ユーザからの商品およびサービスの注文や発送、決済などの要求を処理するコンピュータシステムである。
【００２５】
不正注文判定装置１２は、本実施形態では例えば、電子商取引システム１０に送信される商品やサービスの注文が、不正なものであるか否かを判定するコンピュータである。また本実施形態に係る不正注文判定装置１２では、注文が不正である可能性の高さを示す推定結果データの生成も行われる。本実施形態に係る不正注文判定装置１２には、プロセッサ１２ａ、記憶部１２ｂ、通信部１２ｃ、表示部１２ｄ、及び、操作部１２ｅが含まれている。
【００２６】
特徴抽出装置１４は、本実施形態では例えば、電子商取引システム１０に送信される商品やサービスの注文に対応付けられる特徴を抽出するコンピュータである。本実施形態に係る特徴抽出装置１４には、プロセッサ１４ａ、記憶部１４ｂ、及び、通信部１４ｃが含まれている。
【００２７】
スコア値決定装置１６は、本実施形態では例えば、電子商取引システム１０に送信される商品やサービスの注文が不正なものである可能性に対応付けられるスコア値を決定するコンピュータである。本実施形態に係るスコア値決定装置１６には、プロセッサ１６ａ、記憶部１６ｂ、及び、通信部１６ｃが含まれている。
【００２８】
評価データ生成装置１８は、本実施形態では例えば、不正注文判定装置１２での推定結果データの生成に用いられる評価データを生成するコンピュータである。本実施形態に係る評価データ生成装置１８には、プロセッサ１８ａ、記憶部１８ｂ、及び、通信部１８ｃが含まれている。
【００２９】
学習データ管理装置２０は、本実施形態では例えば、モデル生成装置２２が生成する機械学習モデルの学習に用いられる学習データを管理するコンピュータである。本実施形態に係る学習データ管理装置２０には、プロセッサ２０ａ、記憶部２０ｂ、及び、通信部２０ｃが含まれている。
【００３０】
モデル生成装置２２は、本実施形態では例えば、学習データ管理装置２０で管理される学習データを用いた機械学習モデルの学習を実行するコンピュータである。学習データを用いた学習が実行された機械学習モデル（学習済モデル）は、モデル記憶装置２４に記憶される。本実施形態に係るモデル生成装置２２には、プロセッサ２２ａ、記憶部２２ｂ、及び、通信部２２ｃが含まれている。
【００３１】
本実施形態に係る機械学習モデルは例えばランダムフォレストによって実装されている。なお、本実施形態に係る機械学習モデルの実装は特に問わず、ランダムフォレスト以外のアルゴリズムによって当該機械学習モデルが実装されても構わない。
【００３２】
モデル記憶装置２４は、本実施形態では例えば、モデル生成装置２２が生成する学習済モデルを記憶するコンピュータである。スコア値決定装置１６は、モデル記憶装置２４に記憶される学習済モデルを取得して、当該学習済モデルを用いてスコア値を決定する。本実施形態に係るモデル記憶装置２４には、プロセッサ２４ａ、記憶部２４ｂ、及び、通信部２４ｃが含まれている。
【００３３】
プロセッサ１２ａ，１４ａ，１６ａ，１８ａ，２０ａ，２２ａ，２４ａは、それぞれ、例えばＣＰＵ等のプログラム制御デバイスである。またプロセッサ１２ａ，１４ａ，１６ａ，１８ａ，２０ａ，２２ａ，２４ａは、それぞれ、不正注文判定装置１２、特徴抽出装置１４、スコア値決定装置１６、評価データ生成装置１８、学習データ管理装置２０、モデル生成装置２２、モデル記憶装置２４にインストールされているプログラムに従って動作する。
【００３４】
記憶部１２ｂ，１４ｂ，１６ｂ，１８ｂ，２０ｂ，２２ｂ，２４ｂは、それぞれ、例えばＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブなどである。
【００３５】
通信部１２ｃ，１４ｃ，１６ｃ，１８ｃ，２０ｃ，２２ｃ，２４ｃは、それぞれ、例えばネットワークボードや無線ＬＡＮモジュールなどといった通信インタフェースである。
【００３６】
表示部１２ｄは、例えば液晶ディスプレイや有機ＥＬディスプレイ等のディスプレイである。
【００３７】
操作部１２ｅは、例えばマウス、キーボード、タッチパッドなどといった、操作入力に応じた入力データをプロセッサ１２ａに出力するユーザインタフェースである。
【００３８】
ここで本実施形態における動作の一例を、図２を参照しながら説明する。
【００３９】
本実施形態では例えば、電子商取引システム１０に送信される注文が発生すると、図３に例示する注文データが電子商取引システム１０から不正注文判定装置１２に送信される（図２（１）参照）。
【００４０】
注文データは、例えば電子商取引システム１０に送信される商品やサービスの注文を示すデータである。図３に示すように、注文データには、注文ＩＤ、ユーザＩＤ、ＩＰアドレスデータ、送付先データ、クレジットカード番号、商品ＩＤ、価格データ、数量データ、などが含まれている。
【００４１】
注文ＩＤは、例えば注文データが示す注文の識別情報である。ユーザＩＤは、例えば当該注文データが示す注文を行った、電子商取引システム１０のユーザの識別情報である。ＩＰアドレスデータは、例えばユーザが注文を行った端末のＩＰアドレスを示すデータである。送付先データは、例えば注文された商品やサービスの送付先の住所等を示すデータである。クレジットカード番号データは、例えば当該注文の決済に用いられるクレジットカード番号を示すデータである。商品ＩＤは、例えば注文された商品やサービスの識別情報である。価格データは、例えば注文された商品やサービスの価格を示すデータである。数量データは、例えば注文された商品やサービスの数量を示すデータである。
【００４２】
以下、図３に示す注文ＩＤが００２００５０である注文データに対応付けられる注文についての、不正なものであるか否かの判定や、当該注文が不正なものである可能性の推定について説明する。また、図３に示す注文ＩＤが００２００５０である注文データを、以下、ターゲット注文データと呼ぶこととする。
【００４３】
不正注文判定装置１２は、ターゲット注文データを特徴抽出装置１４に送信する（図２（２）参照）。
【００４４】
特徴抽出装置１４は、例えば、ターゲット注文データと、特徴抽出装置１４に記憶されている過去の注文データと、に基づいて、当該ターゲット注文データに対応付けられる特徴を表す特徴ベクトルを生成する。ここでターゲット注文データから抽出される予め定められた属性の値と特徴抽出装置１４に記憶されている過去の注文データにおける当該属性の値との比較結果を表すデータが生成されてもよい。またこの場合、特徴抽出装置１４に記憶されている過去の注文データのうちから、ターゲット注文データとユーザＩＤが同じである注文データが特定されてもよい。そしてターゲット注文データから抽出される予め定められた属性の値と、特定された注文データにおける当該属性の値との比較結果を表すデータが生成されてもよい。そしてターゲット注文データの値、及び、当該比較結果を表すデータに基づいて、当該ターゲット注文データに対応付けられる特徴ベクトルが生成されるようにしてもよい。
【００４５】
そしてターゲット注文データに含まれる注文ＩＤに関連付けられた、当該ターゲット注文データに対応付けられる特徴ベクトルが、特徴抽出装置１４からスコア値決定装置１６に送信される（図２（３）参照）。また当該特徴ベクトルは、特徴抽出装置１４から学習データ管理装置２０にも送信される（図２（４）参照）。また特徴抽出装置１４から学習データ管理装置２０への特徴ベクトルの送信はスコア値決定装置１６への特徴ベクトルの送信とは非同期で実行されてもよい。
【００４６】
そしてスコア値決定装置１６が、特徴抽出装置１４から受信した特徴ベクトルを学習済モデルに入力した際の出力に基づいて、当該特徴ベクトルに対応付けられるスコア値、すなわち、ターゲット注文データに対応付けられるスコア値を決定する。ここで例えば、不正なものである可能性が高い注文であるほど高いスコア値が決定されるようにしてもよい。また決定されるスコア値は実数値であってもよい。また学習済モデルがスコア値自体を出力してもよい。
【００４７】
図４は、ターゲット注文データに対応付けられる特徴ベクトルが入力される学習済モデルが学習済である学習データの一例を示す図である。図４に示すように、学習データには、例えば、注文ＩＤと、特徴ベクトルと、結果データと、が含まれている。
【００４８】
学習データに含まれる注文ＩＤとしては、例えば注文データの注文ＩＤが設定される。また学習データに含まれる特徴ベクトルとしては、当該注文データに基づいて生成される特徴ベクトルが設定される。そして学習データに含まれる結果データは、当該注文データに対応付けられる注文が不正注文であるか否かの判定結果を示すデータである。本実施形態では例えば、不正注文であると判定された注文についての結果データの値として１が設定され、不正注文でないと判定された注文についての結果データの値として０が設定される。なお後述のように本実施形態では、結果データの値は、不正注文判定装置１２により決定されるか、又は、不正注文判定装置１２の操作者により設定される。
【００４９】
なお図４に示す学習データに含まれるすべての要素が機械学習モデルの学習に用いられる必要はない。例えば、学習データに含まれる特徴ベクトルが入力データとして用いられ、当該学習データに含まれる結果データが教師データとして用いられる教師あり学習が実行されてもよい。この場合は、注文ＩＤは機械学習モデルの学習には用いられないこととなる。
【００５０】
そしてスコア値決定装置１６は、ターゲット注文データに含まれる注文ＩＤに関連付けられた、ターゲット注文データに対応付けられるスコア値を、特徴抽出装置１４に送信する（図２（５）参照）。
【００５１】
そして特徴抽出装置１４が、スコア値決定装置１６から受信した、ターゲット注文データに含まれる注文ＩＤに関連付けられたスコア値を不正注文判定装置１２に送信する（図２（６）参照）。なお、スコア値決定装置１６が決定するスコア値の範囲が０以上１以下であってもよい。そしてこの場合に、特徴抽出装置１４は当該スコア値を１０００倍して不正注文判定装置１２に送信してもよい。この場合、不正注文判定装置１２が受信するスコア値は０以上１０００以下となる。
【００５２】
そして不正注文判定装置１２は、受信したスコア値と、図５に例示する、評価データ生成装置１８により生成される評価データと、に基づいて、図６に例示する、ターゲット注文データに対応付けられる推定結果データを生成する。
【００５３】
図５は、評価データ生成装置１８により生成される評価データの一例を示す図である。図５に示す評価データには、スコアデータと、不正レベルデータと、が含まれている。ここで評価データに含まれるスコアデータは、例えば、スコア値を示すデータである。そして評価データに含まれる不正レベルデータは、例えば当該スコア値の注文データに対応付けられる注文が不正である可能性の高さを示すデータである。なお図５に示す不正レベルデータの値は、百分率により表現されている。また図５に示す評価データは、複数のスコア値のそれぞれに対応付けられる。
【００５４】
本実施形態では、図５に示す評価データは、不正注文判定装置１２に記憶されている。そして不正注文判定装置１２は、注文データについて決定されたスコア値と、不正注文判定装置１２が記憶している評価データと、に基づいて、推定結果データを生成する。
【００５５】
図６に示す推定結果データには、例えば、注文ＩＤと、不正レベルデータと、が含まれる。ここでは例えば、注文ＩＤが００２００５０であるターゲット注文データに対応付けられるスコア値が７００であることとする。ここで、図５に示す評価データにおいて値が７００であるスコアデータに対応付けられる不正レベルデータの値は８５％である。そのためこの場合は、注文ＩＤとして００２００５０が設定される推定結果データに含まれる不正レベルデータの値として８５％が設定される。このようにして本実施形態では、ターゲット注文データに対応付けられる注文が不正である可能性の高さが推定されることとなる。
【００５６】
本実施形態では例えば、図５に示す評価データにおけるスコアデータに対応付けられる不正レベルデータの値は、評価データ生成装置１８によって、図７に例示する結果管理データに基づいて決定される。図７に示すように、結果管理データには、例えば、注文ＩＤと、スコアデータと、結果データと、が含まれている。
【００５７】
本実施形態では例えば、不正注文判定装置１２において、注文データに対応付けられる結果管理データが生成される。結果管理データに含まれる注文ＩＤとして、当該注文データの注文ＩＤが設定される。また当該結果管理データに含まれるスコアデータの値として、当該注文データに対応付けられるスコア値が設定される。また当該結果管理データに含まれる結果データの値として、当該注文データに対応付けられる注文が不正注文であるか否かの判定結果を示す値が設定される。本実施形態では例えば、ある注文ＩＤを含む学習データに含まれる結果データの値と当該注文ＩＤを含む結果管理データに含まれる結果データの値とは同じになる。
【００５８】
なお図７には、既に学習済モデルが学習済である学習データに対応付けられる結果管理データも、当該学習済モデルが未学習である学習データに対応付けられる結果管理データも示されている。具体的には例えば、注文ＩＤが００２０００１以降の結果管理データは、未学習である学習データに対応付けられるものである。
【００５９】
評価データ生成装置１８では、例えば、スコアデータの値が特定のスコア値（例えば７００）であり結果データの値が１である結果管理データの数を、スコアデータの値が当該スコア値（例えば７００）である結果管理データの総数で割った値が算出される。そして算出された値を百分率で表現した値が、評価データにおいて当該スコア値に対応付けられる不正レベルデータの値として設定される。
【００６０】
なお、不正レベルデータの値の算出方法は上述の方法には限定されない。例えば、スコアデータの値が特定のスコア値（例えば７００）以上であり結果データの値が１である結果管理データの数を、スコアデータの値が当該スコア値（例えば７００）以上である結果管理データの総数で割った値が算出されてもよい。また例えば、スコアデータの値が特定のスコア値（例えば７００）以下であり結果データの値が１である結果管理データの数を、スコアデータの値が当該スコア値（例えば７００）以下である結果管理データの総数で割った値が算出されてもよい。そしてこのようにして算出された値が、評価データにおいて当該スコア値に対応付けられる不正レベルデータの値として設定されてもよい。
【００６１】
上述のように、図７に示す結果管理データには、スコア値の決定に用いられる学習済モデルが学習済である学習データに対応付けられるものも、未学習である学習データに対応付けられるものもある。そして本実施形態では不正レベルデータの値の算出において、学習済モデルでは未学習である学習データに対応付けられる結果データの値が加味されることとなる。
【００６２】
なお、未学習である学習データに対応付けられる結果管理データのみに基づいて不正レベルデータの値が算出されてもよい。また、未学習である学習データに対応付けられる結果管理データ及び学習済である学習データに対応付けられる結果管理データの両方に基づいて不正レベルデータの値が算出されてもよい。
【００６３】
そして不正注文判定装置１２で、ターゲット注文データが不正注文であるか否かの判定が実行される。本実施形態では例えば、以下で説明するように、リスト判定、ルール判定、及び、レベル判定という３段階の判定によって、ターゲット注文データに対応付けられる注文が不正注文であるか否かの判定が実行される。そして本実施形態では例えば、判定の結果に基づいて、ターゲット注文データに対応付けられる結果データが生成される。
【００６４】
本実施形態では例えば、まず、ターゲット注文データの属性の値（例えばユーザＩＤ）が、不正注文判定装置１２に記憶されているホワイトリスト又はブラックリストに含まれているか否かが判定される（リスト判定）。ここでホワイトリストは、例えば、不正でない注文として判定される注文データの属性の値のリストである。またブラックリストは、例えば、不正である注文として判定される注文データの属性の値のリストである。ここでホワイトリストに含まれると判定された場合は、値として０が設定された、ターゲット注文データに対応付けられる結果データが生成される。一方、ブラックリストに含まれると判定された場合は、値として１が設定された、ターゲット注文データに対応付けられる結果データが生成される。
【００６５】
ターゲット注文データの属性の値（例えばユーザＩＤ）がホワイトリストにもブラックリストにも含まれていないと判定された場合は、ターゲット注文データが予め定められた不正注文に関するルールに合致するか否かが判定される（ルール判定）。ここで例えば、１時間以内に同一のユーザから１００以上の異なるＩＰアドレスからの注文が発生していることが特定される場合に、値として１が設定された、ターゲット注文データに対応付けられる結果データが生成されるようにしてもよい。
【００６６】
ここでルール判定においてもターゲット注文データに対応付けられる結果データの値が決定されないことがある。この場合は、ターゲット注文データに対応付けられる推定結果データに含まれる不正レベルデータの値に基づく判定が行われる（レベル判定）。
【００６７】
図８は、レベル判定に用いられる不正確認画面３０の一例を示す図である。図８に示す不正確認画面３０は、本実施形態では例えば、不正注文判定装置１２の操作者の要求に応じて生成され、不正注文判定装置１２の表示部１２ｄに表示される。本実施形態では例えば、リスト判定及びルール判定の段階を経ても対応付けられる結果データの値が決定されなかった注文データについて、当該注文データに対応付けられる推定結果データに含まれる不正レベルデータの値が参照される。
【００６８】
そしてリスト判定及びルール判定の段階を経ても対応付けられる結果データの値が決定されなかった注文データのそれぞれに対応付けられる注文画像３２が配置された不正確認画面３０が生成される。ここで注文データに対応付けられる注文画像３２には、当該注文データに含まれる注文ＩＤと、上述のようにして参照された、当該注文データに対応付けられる不正レベルデータの値とが示されている。
【００６９】
また注文データに対応付けられる注文画像３２には、当該注文データに対応付けられる不正レベルデータの値に応じた態様の要確認度画像３４が配置されている。本実施形態では例えば、複数のレベルのうちから、不正レベルデータの値に対応付けられるレベルが決定される。ここで例えば、不正レベルデータの値が８０％〜１００％である場合は、レベルは５と決定される。同様に、不正レベルデータの値が６０％〜８０％、４０％〜６０％、２０％〜４０％、０％〜２０％である場合は、それぞれ、レベルは４〜１と決定される。そして決定されるレベルに応じた態様の要確認度画像３４が配置される。ここで例えば、決定されるレベルに応じた色の要確認度画像３４が配置されてもよい。例えば、レベルの値が大きい程、要確認度画像３４の色が濃くなってもよい。また例えば、レベルの値が大きい程、要確認度画像３４の明るさが暗くなってもよい。
【００７０】
このような不正確認画面３０が表示されるようにすることで、不正注文判定装置１２の操作者は、各注文について、不正であるか否かをどの程度丁寧に確認すべきかを一目で判断することができる。また不正確認画面３０は、不正注文判定装置１２の操作者が、注文が不正であるか否かを確認する優先順位を検討する際の指標として活用できる。
【００７１】
なお対応付けられる不正レベルデータの値に基づいて決定されるレベルの値が所定の閾値以下である注文データに対応付けられる注文画像３２は、不正確認画面３０に配置されないよう制御されてもよい。そして値として０が設定された、当該注文データに対応付けられる結果データが生成されるようにしてもよい。例えば、上述の閾値が２である場合、対応付けられる不正レベルデータの値が４０％以下である注文データについては、当該注文データに対応付けられる注文画像３２が不正確認画面３０に配置されないよう制御されてもよい。そして値として０が設定された、当該注文データに対応付けられる結果データが生成されてもよい。
【００７２】
また対応付けられる不正レベルデータの値に基づいて決定されるレベルの値が所定の閾値以上である注文データに対応付けられる注文画像３２は、不正確認画面３０に配置されないよう制御されてもよい。そして値として１が設定された、当該注文データに対応付けられる結果データが生成されるようにしてもよい。例えば、上述の閾値が４である場合、対応付けられる不正レベルデータの値が６０％以上である注文データについては、当該注文データに対応付けられる注文画像３２が不正確認画面３０に配置されないよう制御されてもよい。そして値として１が設定された、当該注文データに対応付けられる結果データが生成されてもよい。
【００７３】
なお上述の閾値が所定のタイミングで、あるいは、所定の時間間隔で変更されるようにしてもよい。
【００７４】
そして操作者は、注文画像３２に対応付けられる注文を行ったユーザの個人情報の照会などによって、当該注文が不正であるか否かについての確認を行い、その結果を示す値を操作部１２ｅから入力する。すると本実施形態ではこのようにして入力された値が設定された、注文データに対応付けられる結果データが生成される。
【００７５】
そしてターゲット注文データの注文ＩＤに関連付けられた、ターゲット注文データに対応付けられる結果データは、不正注文判定装置１２から電子商取引システム１０に送信される（図２（７）参照）。
【００７６】
電子商取引システム１０は、このようにして送信される結果データに基づいて、所定の処理を実行する。ここで例えば電子商取引システム１０は、ターゲット注文データに対応付けられる結果データの値が０である場合は、ターゲット注文データに対応付けられる注文については正規注文として注文処理を進めてもよい。また例えば、電子商取引システム１０は、ターゲット注文データに対応付けられる結果データの値が１である場合は、ターゲット注文データに対応付けられる注文については発注を停止するようにしてもよい。
【００７７】
注文された商品等の発送は通常１営業日以内で行われることから、ユーザビリティの低下を防ぐため、結果データの値の設定は、注文の発生から１日以内に行われることが望ましい。
【００７８】
また不正注文判定装置１２は、ターゲット注文データに対応付けられる結果データに基づいて、ターゲット注文データに対応付けられる結果管理データを生成する。ここでは例えば、上述のように、当該結果管理データに含まれる注文ＩＤとしては、ターゲット注文データの注文ＩＤが設定される。また当該結果管理データに含まれるスコアデータの値として、ターゲット注文データに対応付けられるスコア値が設定される。また当該結果管理データに含まれる結果データの値として、ターゲット注文データに対応付けられる結果データの値が設定される。
【００７９】
そしてこのようにして生成される、ターゲット注文データに対応付けられる結果管理データが、不正注文判定装置１２から評価データ生成装置１８に送信される（図２（８）参照）。そして評価データ生成装置１８は、不正注文判定装置１２から受信した結果管理データを記憶する。このようにして、ターゲット注文データに対応付けられる結果データが、以後の評価データの生成に用いられることとなる。
【００８０】
また評価データ生成装置１８は、ターゲット注文データの注文ＩＤに関連付けられた、ターゲット注文データに対応付けられる結果管理データを、学習データ管理装置２０に送信する（図２（９）参照）。
【００８１】
また評価データ生成装置１８は、記憶している結果管理データに基づいて評価データを生成する。ここで評価データ生成装置１８は、所定の時間間隔で評価データを生成してもよい。また例えば評価データ生成装置１８は、新たな結果管理データが記憶される度、あるいは、所定数の新たな結果管理データが記憶される度に、評価データを生成してもよい。
【００８２】
そして評価データ生成装置１８は、生成された評価データを不正注文判定装置１２に送信する（図２（１０）参照）。そして、不正注文判定装置１２は、記憶している評価データを、受信した評価データに更新する。評価データの更新が行われた後は、更新された評価データに基づいて推定結果データが生成されることとなる。
【００８３】
学習データ管理装置２０は、特徴抽出装置１４から受信する特徴ベクトル（図２（４）参照）と、評価データ生成装置１８から受信する結果管理データ（図２（９）参照）と、に基づいて、学習データを生成して記憶する。例えば、ターゲット注文データに対応付けられる特徴ベクトルとターゲット注文データに対応付けられる結果管理データとに基づいて、ターゲット注文データに対応付けられる学習データが生成される。ここで例えば、注文ＩＤと、当該注文ＩＤに関連付けられている特徴ベクトルと、当該注文ＩＤに関連付けられている結果管理データと、を含む学習データが生成されてもよい。
【００８４】
そして生成された学習データは、学習データ管理装置２０からモデル生成装置２２に送信される（図２（１１）参照）。
【００８５】
そしてモデル生成装置２２は、学習データ管理装置２０から受信した学習データを用いた機械学習モデルの学習を実行する。ここで例えば、所定の期間（例えば１ヶ月）に相当する学習データをすべて受信した際に、これらの学習データを用いた機械学習モデルの学習が実行されるようにしてもよい。
【００８６】
例えば、図４に示されている学習データは、第１の期間に相当する学習データである。そして図９に、当該第１の期間の次の期間である第２の期間に相当する学習データを示す。図９に示す学習データには、注文ＩＤが００２０００１以降である、機械学習モデルが未学習である学習データが示されている。第２の期間に相当する学習データのなかには、注文ＩＤが００２００５０であるターゲット注文データに対応付けられる学習データも含まれている。
【００８７】
ここでモデル生成装置２２は、例えば、第２の期間に相当する学習データをすべて受信した際に、図９に示す学習データを用いた機械学習モデルの学習を実行してもよい。このようにして、図９に示す未学習の学習データも学習済モデルに反映されることとなる。なお、第１の期間に相当する学習データを学習済である機械学習モデルが第２の期間に相当する学習データをさらに学習するようにしてもよい。また第１の期間に相当する学習データを学習済である機械学習モデルとは関係なく、所定の初期状態の機械学習モデルが第２の期間に相当する学習データをさらに学習するようにしてもよい。
【００８８】
そしてモデル生成装置２２は、スコア値決定装置１６において運用中である、注文が不正なものである可能性の推定に用いられている機械学習モデルの判断妥当性を判定する。運用中の機械学習モデルの判断妥当性を判定する処理については後述する。
【００８９】
そしてモデル生成装置２２は、運用中の機械学習モデルが妥当でないと判定された場合は、学習が実行された機械学習モデルを、モデル記憶装置２４に送信する（図２（１２）参照）。
【００９０】
スコア値決定装置１６は、モデル記憶装置２４に新たな機械学習モデルが記憶された否かを監視している。そしてスコア値決定装置１６がモデル記憶装置２４に新たな機械学習モデルが記憶されたことを検出すると、スコア値決定装置１６は、当該新たな機械学習モデルをモデル記憶装置２４から取得する（図２（１３）参照）。そしてスコア値決定装置１６は、運用中の機械学習モデルを変更する。
【００９１】
以下、運用中の機械学習モデルの判断妥当性を判定する処理について説明する。
【００９２】
図１０は、本実施形態に係るモデル生成装置２２に記憶される機械学習モデルの構成の一例を示す図である。図１０に示すように、本実施形態に係るモデル生成装置２２には、待機モデル４０と、ｎ個の評価モデル４４（評価モデル４４（１）〜評価モデル４４（ｎ））を含む評価モデル群４２と、が記憶される。
【００９３】
本実施形態では例えば、モデル生成装置２２が学習データ管理装置２０から受信した学習データに基づいて、待機モデル４０の学習が実行される。待機モデル４０の学習においては、例えば、当該学習データに含まれる特徴ベクトルが待機モデル４０に入力される入力データとして用いられる。また、当該学習データに含まれる結果データが待機モデル４０からの出力と比較される教師データとして用いられる。
【００９４】
また本実施形態では当該学習データに基づいて、評価モデル４４の学習も実行される。評価モデル４４の学習においては、例えば、当該学習データに含まれる特徴ベクトルに含まれる複数の要素のうちの、当該評価モデル４４に対応付けられる一部が、当該評価モデル４４に入力される入力データとして用いられる。また、当該学習データに含まれる結果データが当該評価モデル４４の出力と比較される教師データとして用いられる。
【００９５】
ここで評価モデル４４（１）〜評価モデル４４（ｎ）のそれぞれには、特徴ベクトルに含まれる複数の要素のうちの互いに異なる一部が入力される。なお、評価モデル４４に入力される要素の数や評価モデル４４にどの要素が入力されるかについては、評価モデル４４ごとに予め定められている。なお評価モデル４４に、要素を１つしか持たない特徴ベクトル（特徴量）が入力されてもよい。
【００９６】
以下、評価モデル４４に入力される特徴ベクトル（又は特徴量）を、サブセットデータと呼ぶこととする。
【００９７】
そして本実施形態では例えば、評価モデル４４（１）〜評価モデル４４（ｎ）のそれぞれについての、上述の学習の実行後の評価モデル４４の出力に基づいて、スコア値決定装置１６において運用中である機械学習モデルの判断妥当性を判定する。なお当該判定の際に評価モデル４４に入力されるサブセットデータは、評価モデル４４の学習の際に入力されたものでもよいし評価モデル４４の学習の際に入力されたものとは異なるものであってもよい。
【００９８】
ここで例えば、学習の実行後の待機モデル４０の出力と、当該待機モデル４０への入力の一部を学習の実行後の評価モデル４４に入力した際の出力と、の違いに基づいて、運用中の機械学習モデルの判断妥当性が判定されるようにしてもよい。
【００９９】
例えば、ある特徴ベクトルを待機モデル４０に入力した際の出力が示すスコア値が所定値以上であるか否かと、当該特徴ベクトルの一部を評価モデル４４に入力した際の出力が示すスコア値が所定値以上であるか否かが異なるか否かが特定されてもよい。そして異なる場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。
【０１００】
また例えば、ある特徴ベクトルを待機モデル４０に入力した際の出力が示すスコア値と、当該特徴ベクトルの一部を評価モデル４４に入力した際の出力が示すスコア値と、の差が特定されてもよい。そして当該差を示す値が所定値以上である場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。
【０１０１】
また例えば、学習の実行前の評価モデル４４の出力と、学習の実行後の評価モデル４４の出力と、の違いに基づいて、運用中の機械学習モデルの判断妥当性が判定されるようにしてもよい。例えば、あるサブセットデータを学習の実行前の評価モデル４４に入力した際の出力が示すスコア値と、当該サブセットデータを学習の実行後の評価モデル４４に入力した際の出力が示すスコア値と、の差が特定されてもよい。そして当該差を示す値が所定値以上である場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。また例えば、予め定められているデータ群を学習の実行前の評価モデル４４に入力した際の出力の分布と当該データ群を学習の実行後の評価モデル４４に入力した際の出力の分布との違いに基づいて、運用中の機械学習モデルの判断妥当性が判定されるようにしてもよい。
【０１０２】
運用中の機械学習モデルが妥当でないと判定されると、例えば、待機モデル４０が上述のようにモデル記憶装置２４に送信される。
【０１０３】
ここでスコア値決定装置１６は、上述のように、モデル記憶装置２４に待機モデル４０が記憶されたことを検出して当該待機モデル４０をモデル記憶装置２４から取得する。以下、運用中の機械学習モデルを旧モデルと呼び、モデル記憶装置２４から取得された待機モデル４０を新モデルと呼ぶこととする。スコア値決定装置１６は、例えば、新モデルをモデル記憶装置２４から取得すると、スコア値の決定に用いられている学習済モデルを旧モデルから新モデルに変更する。
【０１０４】
ここで運用中の機械学習モデルが旧モデルから新モデルに変更されなくてもよい。例えば、新たな入力データに含まれる複数の要素を、当該新たな入力データに応じて決定される旧モデル又は新モデルのいずれかに入力した際の出力に基づいて、当該新たな入力データに対応するスコア値が決定されてもよい。
【０１０５】
例えば、ある評価モデル４４にサブセットデータを入力した際の出力に基づいて、運用中の機械学習モデルが妥当でないと判定されたとする。この場合、当該サブセットデータが新たな入力データに含まれる場合は、新モデルに入力した際の出力に基づいてスコア値が決定されてもよい。また例えば、当該サブセットデータが新たな入力データに含まれていない場合は、旧モデルに入力した際の出力に基づいてスコア値が決定されてもよい。
【０１０６】
また例えば、評価モデル４４の出力におけるトレンドの強さが特定されるようにしてもよい。
【０１０７】
ここで例えば互いに異なる複数の特徴ベクトルについて、当該特徴ベクトルを待機モデル４０に入力した際の出力が示すスコア値と、当該特徴ベクトルの一部であるサブセットデータを評価モデル４４に入力した際の出力が示すスコア値と、の差が特定されてもよい。そして複数の特徴ベクトルについて特定される差の最大値や平均値などといった代表値が、トレンドの強さを示す値として用いられてもよい。
【０１０８】
また例えば互いに異なる複数のサブセットデータについて、当該特徴ベクトルの一部であるサブセットデータを評価モデル４４に入力した際の出力が示すスコア値が特定されてもよい。そして複数のサブセットデータについて特定されるスコア値の最大値や平均値などといった代表値が、トレンドの強さを示す値として用いられてもよい。
【０１０９】
そして新たな入力データを新モデルに入力した際の出力を示す値と旧モデルに入力した際の出力を示す値とを、上述のトレンドの強さに応じた重みで重み付けした値がスコア値として用いられるようにしてもよい。ここで例えばトレンドの強さを示す値が大きいほど新モデルに入力した際の出力を示す値に対する重みが重くなるようにしてもよい。
【０１１０】
また例えば、ある評価モデル４４の出力に基づいて、運用中の機械学習モデルが妥当でないと判定された場合に、トレンドが発生しにくい所定の要素が入力される評価モデル４４が新たな機械学習モデルとしてモデル記憶装置２４に送信されてもよい。以下、当該評価モデル４４を代替評価モデルと呼ぶこととする。そしてスコア値決定装置１６は、代替評価モデルを新たな機械学習モデルとして用いて、新たな入力データに基づくスコア値の算出を実行してもよい。
【０１１１】
なおここで代替評価モデルに入力される要素としては、一般的な購入者と当該購入者との間における購入金額や購入量の相違の程度を示すデータや、普段と今回のアクセスにおける当該購入者の購入金額や購入量の相違の程度を示すデータなどが挙げられる。なお、待機モデル４０に入力された特徴ベクトルからサブセットデータを除いた残りが入力される評価モデル４４が代替評価モデルとして用いられてもよい。
【０１１２】
そしてこの場合、上述のトレンドの強さが所定の強さよりも強い状況が所定時間継続した際に、運用中の機械学習モデルが代替評価モデルから上述の新モデルに変更されてもよい。また上述のトレンドの強さが所定の強さよりも弱い状況が所定時間継続した際に、運用中の機械学習モデルが代替評価モデルから旧モデルに変更されるようにしてもよい。
【０１１３】
また例えば、評価モデル４４の出力に基づいて、運用中の機械学習モデルが妥当でないと判定されるまでは、不正レベルデータを用いずにスコア値に基づいて注文が不正なものである可能性が推定されてもよい。そして運用中の機械学習モデルが妥当でないと判定された際には、運用中の機械学習モデルが旧モデルから新モデルに変更されるまでの間、不正レベルデータを用いて注文が不正なものである可能性が推定されてもよい。
【０１１４】
本実施形態に係る不正注文判定システム１では、不正注文に関する最新のトレンドが運用中の機械学習モデルには反映されず、当該機械学習モデルの判断妥当性が低下するおそれがある。そのため、判断妥当性の低下に応じて適時に何らかの対応ができるよう、運用中の機械学習モデルの判断妥当性をタイムリーに判定できることが望ましい。
【０１１５】
ここで新たな学習データによる学習が行われた待機モデル４０の出力に基づいて、運用中の機械学習モデルの判断妥当性を判定することが考えられる。例えば運用中の機械学習モデルと待機モデル４０とで出力の傾向に差が生じた場合に、運用中の機械学習モデルの判断妥当性が低下したと判定することが考えられる。
【０１１６】
しかし待機モデル４０に入力される特徴ベクトルの要素数が多い場合は少数の要素に関して発生したトレンドに対する出力の反応が鈍く、待機モデル４０の出力に基づいて運用中の機械学習モデルの判断妥当性をタイムリーに判定できないことがある。
【０１１７】
そこで本実施形態では上述のようにして、入力される要素の数が待機モデル４０よりも少ない評価モデル４４の出力に基づいて、運用中の機械学習モデルの判断妥当性を判定できるようにした。このようにして本実施形態によれば、運用中の機械学習モデルの判断妥当性をタイムリーに判定できることとなる。
【０１１８】
また、本実施形態に係る不正注文判定システム１では、学習済モデルの学習のために入力されていない入力データの値が加味されないスコア値と、上述の評価データに基づいて、不正レベルデータの値が決定される。ここで評価データは、学習済モデルの学習のために入力されていない入力データの値が加味されたものであり、その結果、不正レベルデータの値も学習済モデルの学習のために入力されていない入力データの値が加味されたものとなる。そして本実施形態に係る不正注文判定システム１では、学習済モデルの学習のために入力されていない入力データの値が加味された不正レベルデータを含む推定結果データに基づいて、注文が不正なものである可能性の推定が行われる。
【０１１９】
本実施形態に係る不正注文判定システム１では最新の不正の傾向を反映させるため、機械学習モデルの更新がリアルタイムで行われることが望ましい。しかし機械学習モデルの更新が必ずしもリアルタイムなものとならないことがある。例えば教師データの手入力を行う必要がある場合や、人手による確認を行った上で学習データを機械学習モデルに学習させる場合には、機械学習モデルの更新は不可避的にリアルタイムなものとはならない。
【０１２０】
このように機械学習モデルの学習と当該機械学習モデルを用いた推定との間にタイムラグがある場合、不正な注文であると推定すべき注文が不正なものでないと推定されることや、不正な注文でないと推定すべき注文が不正なものであると推定されることがある。例えば、学習の際には不正である可能性が低かった注文の属性が、状況が変化して不正である可能性が高い注文の属性となることがある。
【０１２１】
また例えば、ある地域での注文を学習した機械学習モデルを他の地域での注文が不正なものである可能性の推定に用いる場合に、不正である可能性の高い注文の傾向や同じスコア値が表す意味が地域間で異なることがある。
【０１２２】
本実施形態に係る不正注文判定システム１では上述のように、学習済モデルの学習のために入力されていない入力データの値が反映されたデータに基づく推定が行われる。そのため本実施形態に係る不正注文判定システム１では、以上で説明したような、機械学習モデルの学習の際の状況と当該機械学習モデルを用いた推定の際の状況との違いに適応できることとなる。
【０１２３】
また例えば、電子商取引システム１０に２４時間休みなしに大量の注文が送信されるようなことがある。このような場合に、不正注文判定システム１の処理能力が足りず、機械学習モデルの学習をリアルタイムで行いながら並行して当該機械学習モデルを用いて注文が不正なものである可能性を推定することが困難なことがある。本実施形態に係る不正注文判定システム１では、このような場合でも電子商取引システム１０に２４時間休みなしに大量の注文のそれぞれについて当該注文が不正なものである可能性を推定できる。
【０１２４】
また本実施形態に係る不正注文判定システム１では、学習済の機械学習モデルを様々な地域に展開する場合などでも、不正レベルデータの値という統一された基準により、不正注文である可能性の評価を統一的に行うことができる。
【０１２５】
なお本発明は、注文が不正なものであるか否かの推定に限らず、機械学習モデルを用いた推定を行う場面において一般的に適用可能である。
【０１２６】
なお評価データは、図５に示すものに限定されない。例えば、不正注文判定装置１２がターゲット注文データに対応付けられるスコア値を評価データ生成装置１８に送信してもよい。そして評価データ生成装置１８が、スコア値の受信に応じて、記憶されている結果管理データに基づいて、当該スコア値に対応付けられる不正レベルデータの値を算出してもよい。そして評価データ生成装置１８が、受信したスコア値と、値が算出された不正レベルデータと、を含む評価データを不正注文判定装置１２に送信してもよい。そして不正注文判定装置１２が、ターゲット注文データの注文ＩＤと受信した評価データに含まれる不正レベルデータの値を含む推定結果データを生成してもよい。このように、ターゲット注文データに対応付けられるスコア値の決定に応じて、当該スコア値の評価データが生成されるようにしてもよい。
【０１２７】
また例えば、評価データが、不正レベルに対応付けられるスコア値の範囲や、不正レベルが違うものとなるスコア値の閾値を示すものであってもよい。
【０１２８】
例えば、結果データの値が１である結果管理データの数を結果管理データの総数で割った値が、０％〜２０％、２０％〜４０％、４０％〜６０％、６０％〜８０％、８０％〜１００％となるスコア値の範囲が、それぞれ第１範囲〜第５範囲として特定されてもよい。そして第１範囲〜第５範囲の値を示す評価データが生成されてもよい。例えばスコア値が４２０であり結果データの値が１である結果管理データの数をスコア値が４２０である結果管理データの総数で割った値が、０．６（６０％）であるとする。また例えばスコア値が６８０であり結果データの値が１である結果管理データの数をスコア値が６８０である結果管理データの総数で割った値が、０．８（８０％）であるとする。この場合に、４２０以上６８０以下が第４範囲の値として示されている評価データが生成されてもよい。
【０１２９】
そしてこの場合、例えば、ターゲット注文データについて決定されるスコア値が第１範囲である場合に、不正レベルデータの値として１が設定された、ターゲット注文データに対応付けられる推定結果データが生成されてもよい。同様に、決定されるスコア値が第２範囲、第３範囲、第４範囲、第５範囲である場合に、それぞれ、不正レベルデータの値として２、３、４、５が設定された、ターゲット注文データに対応付けられる推定結果データが生成されてもよい。
【０１３０】
また例えば、結果データの値が１である結果管理データの数を結果管理データの総数で割った値が２０％、４０％、６０％、８０％、となるスコア値が、それぞれ第１閾値〜第４閾値として算出されてもよい。そして第１閾値〜第４閾値を示す評価データが生成されてもよい。例えば上述のように、スコア値が４２０であり結果データの値が１である結果管理データの数をスコア値が４２０である結果管理データの総数で割った値が、０．６（６０％）であるとする。また例えばスコア値が６８０であり結果データの値が１である結果管理データの数をスコア値が６８０である結果管理データの総数で割った値が、０．８（８０％）であるとする。この場合は、４２０が第３閾値として示されており、６８０が第４閾値として示されている評価データが生成されてもよい。
【０１３１】
そしてこの場合、例えば、ターゲット注文データについて決定されるスコア値が第１閾値未満である場合に、不正レベルデータの値として１が設定された、ターゲット注文データに対応付けられる推定結果データが生成されてもよい。同様に、決定されるスコア値が第１閾値以上、第２閾値以上、第３閾値以上、第４閾値以上である場合に、それぞれ、不正レベルデータの値として２、３、４、５が設定された、ターゲット注文データに対応付けられる推定結果データが生成されてもよい。
【０１３２】
そして不正レベルデータの値に応じた要確認度画像３４が配置された注文画像３２を含む不正確認画面３０が表示されるようにしてもよい。
【０１３３】
また結果データの値が、１又は０の二値のうちのいずれかが設定されるものである必要はない。結果データの値が、例えば０〜９などといった多値のうちのいずれかが設定されるものであってもよい。この場合、推定結果データが、当該多値のそれぞれについて、結果データの値が当該値となる可能性の分布を示すデータであってもよい。また例えば、結果データの値が実数値であってもよい。この場合、推定結果データが確率密度関数などといった可能性の分布を示すデータであってもよい。
【０１３４】
また以上の説明では、不正注文であるか否かの判定が実行される前に、すべての注文データについて、当該注文データに対応付けられるスコア値の決定、及び、当該注文データに対応付けられる不正レベルデータを含む推定結果データが行われている。しかし、不正注文であるか否かの判定が実行される前に、すべての注文データについて、当該注文データに対応付けられるスコア値の決定が行われる必要はない。また、不正注文であるか否かの判定が実行される前に、すべての注文データについて、当該注文データに対応付けられる不正レベルデータを含む推定結果データが行われる必要もない。
【０１３５】
例えば、スコア値決定装置１６が、リスト判定においてもルール判定においても対応付けられる結果データの値が決定されない注文データのみについて、当該注文データに対応付けられるスコア値を決定してもよい。また評価データ生成装置１８が、リスト判定においてもルール判定においても対応付けられる結果データの値が決定されない注文データのみについて、当該注文データに対応付けられる推定結果データを生成してもよい。
【０１３６】
また例えば、注文データに対応付けられるスコア値が所定値以下（例えば５０以下）である場合は、当該注文データに対応付けられる推定結果データが生成されないようにしてもよい。そしてこの場合に、値として０が設定された、当該注文データに対応付けられる結果データが生成されてもよい。また例えば、注文データに対応付けられるスコア値が所定値以上（例えば９５０以上）である場合は、当該注文データに対応付けられる推定結果データが生成されないようにしてもよい。そしてこの場合に、値として１が設定された、当該注文データに対応付けられる結果データが生成されてもよい。
【０１３７】
またリスト判定、ルール判定、及び、レベル判定という３段階の判定によって、ターゲット注文データに対応付けられる注文が不正注文であるか否かの判定が実行される必要はない。例えば、リスト判定とルール判定、リスト判定とレベル判定、又は、ルール判定とレベル判定という２段階の判定によって、ターゲット注文データに対応付けられる注文が不正注文であるか否かの判定が実行されてもよい。また例えば、リスト判定、ルール判定、ルール判定のいずれか１つのみによって、ターゲット注文データに対応付けられる注文が不正注文であるか否かの判定が実行されてもよい。またターゲット注文データに対応付けられる注文が不正注文であるか否かの判定において、リスト判定、ルール判定、及び、レベル判定以外の方法による判定が含まれるようにしてもよい。
【０１３８】
以下、運用中の機械学習モデルの判断妥当性の判定を中心に、本実施形態に係るモデル生成装置２２、及び、スコア値決定装置１６の機能並びに本実施形態に係るモデル生成装置２２で実行される処理についてさらに説明する。
【０１３９】
図１１は、本実施形態に係るモデル生成装置２２で実装される機能の一例を示す機能ブロック図である。なお、本実施形態に係るモデル生成装置２２で、図１１に示す機能のすべてが実装される必要はなく、また、図１１に示す機能以外の機能が実装されていても構わない。
【０１４０】
図１１に示すように、本実施形態に係るモデル生成装置２２は、機能的には例えば、待機モデル４０、評価モデル４４（１）〜評価モデル４４（ｎ）を含む評価モデル群４２、学習データ受信部５０、学習実行部５２、対応データ生成部５４、対応データ記憶部５６、トレンド特定部５８、判定部６０、モデル送信部６２、を含んでいる。
【０１４１】
待機モデル４０、評価モデル４４（１）〜評価モデル４４（ｎ）を含む評価モデル群４２、対応データ記憶部５６は、記憶部２２ｂを主として実装される。学習データ受信部５０、モデル送信部６２は、通信部２２ｃを主として実装される。学習実行部５２、対応データ生成部５４、トレンド特定部５８、判定部６０は、プロセッサ２２ａを主として実装される。
【０１４２】
以上の機能は、コンピュータであるモデル生成装置２２にインストールされた、以上の機能に対応する指令を含むプログラムをプロセッサ２２ａで実行することにより実装されてもよい。また、このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介してモデル生成装置２２に供給されてもよい。
【０１４３】
待機モデル４０は、本実施形態では例えば、推定処理の対象である入力データに含まれる複数の要素が入力され、当該入力に応じた出力を行う機械学習モデルである。ここで待機モデル４０は例えばスコア値を出力してもよい。
【０１４４】
評価モデル群４２に含まれる評価モデル４４（１）〜評価モデル４４（ｎ）は、本実施形態では例えば、推定処理の対象である入力データに含まれる複数の要素のうちの互いに異なる一部が入力され、当該入力に応じた出力を行う機械学習モデルである。ここで評価モデル４４は例えばスコア値を出力してもよい。
【０１４５】
学習データ受信部５０は、本実施形態では例えば、学習データ管理装置２０から学習データを受信する。
【０１４６】
学習実行部５２は、本実施形態では例えば、推定処理の対象である入力データに含まれる複数の要素と、当該入力データについての既知の結果データと、に基づいて、待機モデル４０の学習を実行する。ここで待機モデル４０の学習において、学習データ受信部５０が受信する学習データの特徴ベクトルに含まれる複数の要素が待機モデル４０に入力される入力データとして用いられてもよい。また、当該学習データに含まれる結果データが待機モデル４０からの出力と比較される教師データとして用いられてもよい。
【０１４７】
また学習実行部５２は、本実施形態では例えば、推定処理の対象である入力データに含まれる複数の要素のうちの一部の要素であるサブセットデータと、当該入力データについての既知の結果データと、に基づいて、評価モデル４４の学習を実行する。評価モデル４４の学習において、学習データ受信部５０が受信する学習データの特徴ベクトルに含まれる複数の要素のうち、当該評価モデルに対応付けられる一部の要素であるサブセットデータが、当該評価モデル４４に入力される入力データとして用いられてもよい。また、当該学習データに含まれる結果データが当該評価モデル４４の出力と比較される教師データとして用いられてもよい。
【０１４８】
ここで学習実行部５２は、複数の評価モデル４４（評価モデル４４（１）〜評価モデル４４（ｎ））の学習を実行してもよい。評価モデル４４（１）〜評価モデル４４（ｎ）の学習において、当該学習データの特徴ベクトルに含まれる複数の要素のうちの互いに異なる一部であるサブセットデータがそれぞれ評価モデル４４（１）〜評価モデル４４（ｎ）に入力されてもよい。そして評価モデル４４（１）〜評価モデル４４（ｎ）のいずれの学習においても、当該学習データに含まれる結果データが評価モデル４４の出力と比較される教師データとして用いられてもよい。
【０１４９】
対応データ生成部５４は、本実施形態では例えば、学習実行部５２による学習の実行後の待機モデル４０や評価モデル４４における入力と出力との対応を示す対応データを生成する。そして対応データ生成部５４は、生成した対応データを、対応データ記憶部５６に記憶させる。
【０１５０】
ここで対応データ生成部５４は、様々なデータを学習の実行後の待機モデル４０や評価モデル４４に入力して、当該データと当該データに応じた出力との対応を示す対応データを生成してもよい。またここで待機モデル４０や評価モデル４４に入力されるデータは、学習の際に入力されたものでもよいし学習の際に入力されたものとは異なるものであってもよい。
【０１５１】
図１２は、対応データのデータ構造の一例を示す図である。図１２に示すように、対応データには、例えば、機械学習モデルの識別情報であるモデルＩＤ、当該機械学習モデルへの入力を示す入力データ、当該入力に応じた出力を示す出力データ、対応データの生成日時を示す日時データ、が含まれる。ここで出力データは、例えば上述のスコア値を示すデータであってもよい。また例えば、学習実行部５２による学習と、対応データ生成部５４による複数の対応データの生成と、が交互に行われてもよい。この場合、学習実行部５２による学習の実行に応じて実行される対応データの生成処理により生成される複数の対応データには、同じ値の日時データが設定されてもよい。
【０１５２】
対応データ記憶部５６は、本実施形態では例えば、対応データ生成部５４が生成する対応データを記憶する。
【０１５３】
トレンド特定部５８は、本実施形態では例えば、評価モデル４４の出力におけるトレンドの強さを特定する。ここでトレンド特定部５８は、トレンドの強さを示すトレンドデータを生成して対応データ記憶部５６に記憶してもよい。またトレンド特定部５８は、対応データに対応付けられるトレンドデータを生成して対応データ記憶部５６に記憶してもよい。図１３は、トレンドデータのデータ構造の一例を示す図である。図１３に示すように、トレンドデータには、例えば、機械学習モデルの識別情報であるモデルＩＤ、当該機械学習モデルにおけるトレンドの強さを示す強さデータ、当該トレンドの強さに寄与した入力を示すトレンド入力データ、日時を示す日時データが含まれる。
【０１５４】
ここで例えば、あるモデルＩＤとある値の日時データを含む複数の対応データに基づいて、１個のトレンドデータが生成されるようにしてもよい。ここでは例えば、モデルＩＤがａであり日時データの値がｂである複数の対応データに基づいて、トレンドデータが生成されることとする。この場合、生成されるトレンドデータに含まれるモデルＩＤとしてａが設定され、当該トレンドデータに含まれる日時データの値としてｂが設定されてもよい。
【０１５５】
また日時データの値がｂである複数の対応データに基づいて、互いに異なる複数の特徴ベクトルについて、待機モデル４０の出力が示すスコア値とモデルＩＤがａである評価モデル４４に入力した際の出力が示すスコア値との差が特定されてもよい。ここでは例えば、特徴ベクトルに含まれる複数の要素を待機モデル４０に入力した際の出力が示すスコア値と、当該複数の要素の一部であるサブセットデータをモデルＩＤがａである評価モデル４４に入力した際の出力が示すスコア値と、の差が特定されてもよい。そして複数の特徴ベクトルについて特定される差の最大値が、当該トレンドデータに含まれる強さデータの値として設定されてもよい。また特定される差が最大値となる場合における評価モデル４４への入力であるサブセットデータの値が当該トレンドデータに含まれるトレンド入力データの値として設定されてもよい。なお複数の特徴ベクトルについて特定される差の最大値に限らず、差の平均値などといった最大値以外の代表値が、トレンドデータに含まれる強さデータの値として設定されてもよい。
【０１５６】
あるいは、日時データの値がｂである複数の対応データに基づいて、互いに異なる複数のサブセットデータについて、当該サブセットデータをモデルＩＤがａである評価モデル４４に入力した際の出力が示すスコア値が特定されてもよい。そして複数のサブセットデータについて特定されるスコア値の最大値が、当該トレンドデータに含まれる強さデータの値として設定されてもよい。また特定される差が最大値となる場合における評価モデル４４への入力であるサブセットデータの値が当該評価モデル４４の識別情報をモデルＩＤとして含むトレンドデータに含まれるトレンド入力データの値として設定されてもよい。なお複数のサブセットデータについて特定されるスコア値の最大値に限らず、スコア値の平均値などといった最大値以外の代表値が、トレンドデータに含まれる強さデータの値として設定されてもよい。
【０１５７】
判定部６０は、本実施形態では例えば、学習の実行後の評価モデル４４の出力に基づいて、運用中の機械学習モデルの判断妥当性を判定する。
【０１５８】
また判定部６０は、評価モデル４４（１）〜評価モデル４４（ｎ）のそれぞれについて、当該評価モデル４４の出力に基づいて、運用中の機械学習モデルの判断妥当性を判定してもよい。そして運用中の機械学習モデルが妥当でないとの判定の基礎となった評価モデル４４が存在する場合は、判定部６０は、当該評価モデル４４を寄与評価モデルとして決定し、当該評価モデル４４における入力を寄与要素として決定してもよい。
【０１５９】
例えば判定部６０は、学習の実行後の待機モデル４０の出力と、当該待機モデル４０への入力の一部を評価モデル４４に入力した際の当該評価モデル４４の出力と、の違いに基づいて、運用中の機械学習モデルの判断妥当性を判定してもよい。
【０１６０】
ここで判定部６０は例えば、ある特徴ベクトルを待機モデル４０に入力した際の出力が示すスコア値が所定値以上であるか否かを示す値ｖ１を特定してもよい。また判定部６０は、当該特徴ベクトルの一部を評価モデル４４に入力した際の出力が示すスコア値が所定値以上であるか否かを示す値ｖ２を特定してもよい。そして値ｖ１と値ｖ２とが異なる場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。
【０１６１】
ここで互いに異なる複数の特徴ベクトルについて値ｖ１と値ｖ２とが特定されるようにしてもよい。そして値ｖ１と値ｖ２とが異なるものの数が所定数以上である場合や、値ｖ１と値ｖ２とが異なるものの割合を示す値が所定値以上である場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。
【０１６２】
また判定部６０は例えば、ある特徴ベクトルを待機モデル４０に入力した際の出力が示すスコア値と、当該特徴ベクトルの一部を評価モデル４４に入力した際の出力が示すスコア値と、の差を特定してもよい。そして当該差を示す値が所定値以上である場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。ここで互いに異なる複数の特徴ベクトルについて上述の差が特定されるようにしてもよい。そして差を示す値が所定値以上であるものの数が所定数以上である場合や、差を示す値が所定値以上であるものの割合を示す値が所定値以上である場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。
【０１６３】
また判定部６０は、学習の実行前の評価モデル４４の出力と、学習の実行後の当該評価モデル４４の出力と、の違いに基づいて、運用中の機械学習モデルの判断妥当性を判定してもよい。
【０１６４】
例えば、判定部６０は、あるサブセットデータを学習の実行前の評価モデル４４に入力した際の出力が示すスコア値と、当該サブセットデータを学習の実行後の評価モデル４４に入力した際の出力が示すスコア値と、の差を特定してもよい。そして当該差を示す値が所定値以上である場合に、判定部６０は、運用中の機械学習モデルが妥当でないと判定してもよい。また例えば、判定部６０は、複数のサブセットデータを学習の実行前の評価モデル４４に入力した際の出力が示すスコア値の分布と、当該サブセットデータを学習の実行後の評価モデル４４に入力した際の出力が示すスコア値の分布と、を特定してもよい。そして当該分布の違いを表す値が所定値以上である場合に、判定部６０は、運用中の機械学習モデルが妥当でないと判定してもよい。
【０１６５】
また判定部６０は、上述の対応データやトレンドデータに基づいて、運用中の機械学習モデルの判断妥当性を判定してもよい。例えば最新のトレンドデータに含まれる強さデータが示す強さを示す値が所定値以上である場合に、運用中の機械学習モデルが妥当でないと判定されるようにしてもよい。
【０１６６】
モデル送信部６２は、本実施形態では例えば、モデル生成装置２２に記憶されている機械学習モデルをモデル記憶装置２４に送信する。ここでモデル送信部６２は、例えば、待機モデル４０をモデル記憶装置２４に送信してもよい。モデル記憶装置２４は、モデル生成装置２２から送信された機械学習モデルを受信すると当該機械学習モデルを記憶する。ここで判定部６０が運用中の機械学習モデルが妥当でないと判定した際に、モデル送信部６２が、モデル生成装置２２に記憶されている機械学習モデルをモデル記憶装置２４に送信してもよい。
【０１６７】
またモデル送信部６２は、機械学習モデルに寄与評価モデル及び寄与要素を表す寄与データを関連付けてモデル記憶装置２４に送信してもよい。
【０１６８】
またモデル送信部６２は、判定部６０が運用中の機械学習モデルが妥当でないと判定したか否かに関係なく、トレンドデータの生成に応じて当該トレンドデータをスコア値決定装置１６に送信してもよい。
【０１６９】
またモデル送信部６２は、上述の代替評価モデルをモデル記憶装置２４に送信してもよい。
【０１７０】
図１４は、本実施形態に係るスコア値決定装置１６で実装される機能の一例を示す機能ブロック図である。なお、本実施形態に係るスコア値決定装置１６で、図１４に示す機能のすべてが実装される必要はなく、また、図１４に示す機能以外の機能が実装されていても構わない。
【０１７１】
図１４に示すように、本実施形態に係るスコア値決定装置１６は、機能的には例えば、学習済モデル記憶部７０、入力データ受信部７２、スコア値決定部７４、スコア値送信部７６、学習済モデル監視部７８、学習済モデル登録部８０、を含んでいる。
【０１７２】
学習済モデル記憶部７０は、記憶部１６ｂを主として実装される。入力データ受信部７２、スコア値送信部７６は、通信部１６ｃを主として実装される。学習済モデル監視部７８、学習済モデル登録部８０は、プロセッサ１６ａ及び通信部１６ｃを主として実装される。スコア値決定部７４は、プロセッサ１６ａを主として実装される。
【０１７３】
以上の機能は、コンピュータであるスコア値決定装置１６にインストールされた、以上の機能に対応する指令を含むプログラムをプロセッサ１６ａで実行することにより実装されてもよい。また、このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介してスコア値決定装置１６に供給されてもよい。
【０１７４】
学習済モデル記憶部７０は、本実施形態では例えば、スコア値決定装置１６において運用中である、推定の対象である入力データに係る推定に用いられる機械学習モデルを記憶する。本実施形態では例えば、当該機械学習モデルに基づいて、入力データ受信部７２が受信する入力データのスコア値が決定される。
【０１７５】
入力データ受信部７２は、本実施形態では例えば、入力データを特徴抽出装置１４から受信する。例えば上述の例では、注文データに対応付けられる特徴ベクトルが、入力データ受信部７２が受信する入力データに相当する。
【０１７６】
スコア値決定部７４は、本実施形態では例えば、入力データ受信部７２が受信する入力データを、学習済モデル記憶部７０に記憶されている機械学習モデルに入力した際の出力に基づいて、当該入力データのスコア値を決定する。
【０１７７】
本実施形態では、決定されるスコア値に基づいて、不正注文判定装置１２が、当該入力データに係る推定処理、例えば、当該入力データに対応付けられる注文が不正なものである可能性の推定処理を実行することとなる。
【０１７８】
スコア値送信部７６は、本実施形態では例えば、スコア値決定部７４が決定する入力データのスコア値を特徴抽出装置１４に送信する。このスコア値は、例えば、特徴抽出装置１４を経由して、不正注文判定装置１２に送信されることとなる。
【０１７９】
学習済モデル監視部７８は、本実施形態では例えば、モデル記憶装置２４に新たな機械学習モデルが記憶されたか否かを監視する。
【０１８０】
学習済モデル登録部８０は、本実施形態では例えば、モデル記憶装置２４に新たな機械学習モデルが記憶されたことを検出した際に、当該新たな機械学習モデルをモデル記憶装置２４から取得する。そして学習済モデル登録部８０は、取得する新たな機械学習モデルを学習済モデル記憶部７０に記憶させる。
【０１８１】
運用中の機械学習モデルは上述の旧モデルに相当し、学習済モデル登録部８０により新たに学習済モデル記憶部７０に記憶された待機モデル４０は上述の新モデルに相当する。
【０１８２】
新モデルが新たに学習済モデル記憶部７０に記憶された際に、スコア値決定部７４は、運用中の機械学習モデルを旧モデルから新モデルに変更してもよい。この場合、不正注文判定装置１２は、新たな入力データに含まれる複数の要素を新モデルに入力した際の出力に基づいて、当該新たな入力データに係る推定処理を実行することとなる。
【０１８３】
また新モデルが新たに学習済モデル記憶部７０に記憶された際に、スコア値決定部７４は、新たな入力データに含まれる複数の要素を、旧モデル又は新モデルのいずれかに入力した際の出力に基づいて、当該新たな入力データに対応するスコア値を決定してもよい。ここで当該新たな入力データに応じて上述の複数の要素を旧モデルに入力するか新モデルに入力するかが決定されてもよい。この場合、不正注文判定装置１２は、新たな入力データに含まれる複数の要素を、当該新たな入力データに応じて決定される旧モデル又は新モデルのいずれかに入力した際の出力に基づいて、当該新たな入力データに係る推定処理を実行することとなる。
【０１８４】
ここで例えば、スコア値決定部７４は、新モデルに関連付けられて送信される寄与データが示す寄与要素を特定してもよい。そして当該寄与要素が新たな入力データに含まれる場合は、スコア値決定部７４は、新モデルに入力した際の出力に基づいてスコア値を決定してもよい。また当該寄与要素が新たな入力データに含まれていない場合は、スコア値決定部７４は、旧モデルに入力した際の出力に基づいてスコア値を決定してもよい。
【０１８５】
また新モデルが新たに学習済モデル記憶部７０に記憶された際に、スコア値決定部７４が、上述のトレンドの強さに基づいて、スコア値を決定してもよい。例えばスコア値決定部７４は、新たな入力データを新モデルに入力した際の出力を示す値と、新たな入力データを旧モデルに入力した際の出力を示す値とを、上述のトレンドの強さに応じた重みで重み付けした値をスコア値として用いるようにしてもよい。この場合、不正注文判定装置１２は、トレンドの強さに応じた重みで重み付けした値であるスコア値に基づいて、当該新たな入力データに係る推定処理を実行することとなる。
【０１８６】
この場合例えば、スコア値決定部７４は、トレンドデータの受信に応じて、寄与評価モデルの識別情報を含む最新のトレンドデータに含まれる強さデータが示すトレンドの強さを特定してもよい。そしてスコア値決定部７４は、新モデルに入力した際の出力を示す値と、旧モデルに入力した際の出力を示す値とを、特定された強さに応じた重みで重み付けした値をスコア値として用いてもよい。ここで例えば、トレンドの強さと重みとは予め対応付けられており、トレンドの強さに基づいて重みが一意に決定されるようにしてもよい。
【０１８７】
またここで例えば、スコア値決定部７４は、運用中の機械学習モデルを旧モデルから代替評価モデルに変更してもよい。この場合、不正注文判定装置１２は、新たな入力データに含まれる複数の要素のうちの一部を代替評価モデルに入力した際の出力に基づいて、新たな入力データに係る推定処理を実行することとなる。
【０１８８】
そしてトレンドデータに基づいて、寄与評価モデルの識別情報をモデルＩＤとして含むトレンドデータに含まれる強さデータが示すトレンドの強さが所定の強さよりも強い値を示す状況が所定時間継続したことが特定されたとする。例えば、所定回数にわたるトレンドデータの受信において、寄与評価モデルの識別情報をモデルＩＤとして含むトレンドデータに含まれる強さデータが示すトレンドの強さが所定の強さよりも強い値を示す状況が継続したことが特定されたとする。この場合は、スコア値決定部７４は、運用中の機械学習モデルを代替評価モデルから新モデルに変更してもよい。
【０１８９】
また上述のトレンドの強さを示す値が所定の強さよりも弱い値を示す状況が所定時間継続したことが特定されたとする。例えば、所定回数にわたるトレンドデータの受信において、寄与評価モデルの識別情報をモデルＩＤとして含むトレンドデータに含まれる強さデータが示すトレンドの強さが所定の強さよりも弱い値を示す状況が継続したことが特定されたとする。この場合は、スコア値決定部７４は、運用中の機械学習モデルを代替評価モデルから旧モデルに変更してもよい。
【０１９０】
また例えば、上述のように、運用中の機械学習モデルが妥当でないと判定されるまでは、不正注文判定装置１２は、不正レベルデータを用いずにスコア値に基づいて注文が不正なものである可能性を推定してもよい。そして運用中の機械学習モデルが妥当でないと判定された際には、モデル生成装置２２が推定処理の変更指示を不正注文判定装置１２に送信してもよい。そして当該変更指示の受信に応じて、不正注文判定装置１２は、運用中の機械学習モデルが旧モデルから新モデルに変更されるまでの間は、不正レベルデータを用いて注文が不正なものである可能性を推定するようにしてもよい。
【０１９１】
以下、本実施形態に係るモデル生成装置２２で実行される処理の流れの一例を、図１５に示すフロー図を参照しながら説明する。
【０１９２】
まず、学習実行部５２が、所定の期間に相当する学習データをすべて受信するまで待機する（Ｓ１０１）。
【０１９３】
所定の期間に相当する学習データをすべて受信したことが確認されると、学習実行部５２が、当該所定の期間に相当する学習データに基づいて、待機モデル４０、及び、評価モデル４４（１）〜評価モデル４４（ｎ）の学習を実行する（Ｓ１０２）。
【０１９４】
そして対応データ生成部５４が、様々なデータを待機モデル４０、及び、評価モデル４４（１）〜評価モデル４４（ｎ）に入力することによって、当該入力と当該入力に応じた出力との対応を示す対応データを生成する（Ｓ１０３）。ここで待機モデル４０に対応付けられる対応データが複数生成されてもよい。また１つの評価モデル４４に対応付けられる対応データが複数生成されてもよい。また１回のＳ１０３に示す処理で生成される複数の対応データには同じ値の日時データが設定されてもよい。
【０１９５】
そしてトレンド特定部５８が、Ｓ１０３に示す処理で生成された対応データに基づいて、トレンドデータを生成する（Ｓ１０４）。ここで例えば待機モデル４０、評価モデル４４（１）〜評価モデル４４（ｎ）のそれぞれに対応付けられるトレンドデータが生成されてもよい。
【０１９６】
そして判定部６０が、Ｓ１０３に示す処理で生成された対応データに基づいて、運用中の機械学習モデルの判断妥当性を判定する（Ｓ１０５）。ここでは例えば、スコア値決定装置１６に記憶されている機械学習モデルの判断妥当性が判定される。なおここでトレンドデータに基づいて判断妥当性が判定されてもよい。またここで例えば、評価モデル４４（１）〜評価モデル４４（ｎ）のそれぞれについて、当該評価モデル４４の識別情報をモデルＩＤとして含む対応データに基づいて、スコア値決定装置１６に記憶されている機械学習モデルの判断妥当性が判定されてもよい。
【０１９７】
運用中の学習済モデルが妥当であると判定された際には（Ｓ１０５：Ｙ）、Ｓ１０１に示す処理に戻る。
【０１９８】
運用中の学習済モデルが妥当でないと判定された際には（Ｓ１０５：Ｎ）、モデル送信部６２は、待機モデル４０をモデル記憶装置２４に送信して（Ｓ１０６）、Ｓ１０１に示す処理に戻る。この場合、例えば運用中の機械学習モデルが妥当でないと判定される基礎となった評価モデル４４が寄与評価モデルとして決定され、当該評価モデル４４に入力される要素が寄与要素として決定されてもよい。そしてモデル送信部６２は、当該寄与評価モデル及び当該寄与要素を表す寄与データが関連付けられた待機モデル４０をモデル記憶装置２４に送信してもよい。
【０１９９】
なお上述のように、運用中の学習済モデルが妥当であると判定されるか否かに関係なく、Ｓ１０５に示す処理の後に、モデル送信部６２は、Ｓ１０４に示す処理で生成されたトレンドデータをスコア値決定装置１６に送信してもよい。
【０２００】
またＳ１０６に示す処理でモデル送信部６２は、代替評価モデルについてもモデル記憶装置２４に送信するようにしてもよい。
【０２０１】
なお、Ｓ１０１に示す処理に戻る度に、待機モデル４０や評価モデル４４（１）〜評価モデル４４（ｎ）が所定の初期状態にリセットされてもよい。また、Ｓ１０１〜Ｓ１０６に示す処理が実行されても待機モデル４０や評価モデル４４（１）〜評価モデル４４（ｎ）が所定の初期状態にリセットされなくてもよい。そして例えばＳ１０２に示す処理の実行タイミングが到来する度に、待機モデル４０、及び、評価モデル４４（１）〜評価モデル４４（ｎ）が、新たな学習データを追加で学習するようにしてもよい。
【０２０２】
なお、本発明は上述の実施形態に限定されるものではない。
【０２０３】
例えば、不正注文判定装置１２、特徴抽出装置１４、スコア値決定装置１６、評価データ生成装置１８、学習データ管理装置２０、モデル生成装置２２、モデル記憶装置２４で実装されている機能のうちの一部又は全部が、１の装置で実装されてもよい。また不正注文判定装置１２、特徴抽出装置１４、スコア値決定装置１６、評価データ生成装置１８、学習データ管理装置２０、モデル生成装置２２、又は、モデル記憶装置２４で実装されている機能が複数の装置で実装されてもよい。
【０２０４】
また、上記の具体的な文字列や数値及び図面中の具体的な文字列や数値は例示であり、これらの文字列や数値には限定されない。
【図１】
2020026302.tif 000003
【図２】
2020026302.tif 000004
【図３】
2020026302.tif 000005
【図４】
2020026302.tif 000006
【図５】
2020026302.tif 000007
【図６】
2020026302.tif 000008
【図７】
2020026302.tif 000009
【図８】
2020026302.tif 000010
【図９】
2020026302.tif 000011
【図１０】
2020026302.tif 000012
【図１１】
2020026302.tif 000013
【図１２】
2020026302.tif 000014
【図１３】
2020026302.tif 000015
【図１４】
2020026302.tif 000016
【図１５】
2020026302.tif 000017
【国際調査報告】
2020026302.tif 000018
2020026302.tif 000019
2020026302.tif 000020
2020026302.tif 000021