(57)【要約】      （修正有）【課題】システム運用において検知された異常操作に関するレポートを出力する異常操作検知装置を提供する。【解決手段】システム運用時の情報システムに対する正常な操作を特定する２以上の正常操作情報に関する２以上の正常操作集合に基づく判断元情報が格納される判断元情報格納部１と、被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を受け付ける受付部２と、判断元情報と、受付部が受け付けた操作集合とを用いて、操作集合に対する異常性に関する情報である異常情報を取得する判断部３２と、異常情報を用いて、異常に関するレポートを構成するレポート構成部３３と、レポートを出力する出力部４とを具備する異常操作検知装置Ａにより、システム運用において検知された異常操作に関するレポートを出力する。【選択図】図１
2020112869.tif 000002
【特許請求の範囲】
【請求項１】
システム運用時の情報システムに対する正常な操作を特定する２以上の正常操作情報に関する２以上の正常操作集合に基づく判断元情報が格納される判断元情報格納部と、
被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を受け付ける受付部と、
前記判断元情報と、前記受付部が受け付けた操作集合とを用いて、当該操作集合に対する異常性に関する情報である異常情報を取得する判断部と、
前記異常情報を用いて、異常に関するレポートを構成するレポート構成部と、
前記レポートを出力する出力部とを具備する異常操作検知装置。
【請求項２】
前記レポート構成部は、
前記異常情報が異常であることを示す箇所であり、前記操作集合の中の箇所が、異常でない箇所と比較して、視覚的に区別可能なレポートであり、前記操作集合を含むレポートを構成する請求項１記載の異常操作検知装置。
【請求項３】
前記受付部は、
被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を、前記被検査者を識別するユーザ識別子と前記情報システムを識別する装置識別子のうちの１以上の識別子に対応付けて、受け付け、
前記レポート構成部は、
前記ユーザ識別子ごと、前記装置識別子ごと、または前記ユーザ識別子と前記前記装置識別子の組ごとに、前記異常情報を統計処理し、統計処理結果を含むレポートを構成する請求項１記載の異常操作検知装置。
【請求項４】
操作された装置の画面の動画である画面動画を構成する２以上のいずれかのフィールドと、前記操作集合に含まれる操作情報とが対応付いており、
前記レポート構成部は、
画面動画の時間軸を示すタイムラインの中の箇所であり、前記異常情報が異常であることを示す箇所であり、前記操作集合の中の箇所が、異常でない箇所と比較して、視覚的に区別可能なタイムラインを含むレポートを構成し、
前記出力部は、
前記画面動画と前記タイムラインとを出力する請求項１記載の異常操作検知装置。
【請求項５】
前記正常操作集合および前記操作情報は、操作により発生したイベントであり、情報システムが発生させるイベントに関する内部イベント情報も含む請求項１から請求項３いずれか一項に記載の異常操作検知装置。
【請求項６】
前記受付部が受け付けた操作集合は、
前記被検査者が前記情報システムに対して、ログインからログアウトまでの１セッションの間に行った２以上の操作の操作情報を有する情報であり、
前記判断部は、
前記受付部が受け付けた操作集合の全体を、前記判断元情報に対して適用し、異常情報を取得する請求項１から請求項５いずれか一項に記載の異常操作検知装置。
【請求項７】
前記受付部が受け付けた操作集合は、
前記被検査者が前記情報システムに対して行った、連続する２以上の操作の操作情報である連続操作情報を有し、
前記判断部は、
前記連続操作情報を、前記判断元情報格納部の２以上の正常操作集合に対して適用し、異常情報を取得する請求項１から請求項６いずれか一項に記載の異常操作検知装置。
【請求項８】
希な操作を特定する操作情報である１以上の希操作情報が格納される希操作情報格納部をさらに具備し、
前記判断部は、
前記受付部が受け付けた操作集合の中に、前記希操作情報格納部の１以上の各希操作情報の存在に関する希操作存在情報を取得し、希操作存在情報を用いて異常情報を取得する請求項１から請求項７いずれか一項に記載の異常操作検知装置。
【請求項９】
前記正常操作集合は、
２以上の正常操作情報から構成される正常操作ベクトルであり、
前記判断部は、
前記受付部が受け付けた操作集合から入力ベクトルを構成し、当該入力ベクトルと前記２以上の正常操作ベクトルとを用いて、異常情報を取得する請求項１から請求項８いずれか一項に記載の異常操作検知装置。
【請求項１０】
前記判断元情報格納部の２以上の各正常操作集合は、２以上のいずれかの手順書に対応しており、
前記判断部は、
前記受付部が受け付けた操作集合に対応する手順書を決定し、当該手順書に対応する２以上の正常操作集合を用いて異常情報を取得する請求項１から請求項９いずれか一項に記載の異常操作検知装置。
【請求項１１】
前記判断部は、
前記受付部が受け付けた操作集合を用いて、手順書を決定する手順書決定手段と、
前記手順書決定手段が決定した手順書に対応する２以上の正常操作集合を前記判断元情報格納部から取得する正常操作集合選択手段と、
前記正常操作集合選択手段が取得した２以上の正常操作集合を用いて異常情報を取得する判断手段とを具備する請求項１０記載の異常操作検知装置。
【請求項１２】
前記判断元情報は、
前記２以上の正常操作集合を用いて、機械学習のアルゴリズムにより構成された学習器であり、
前記判断部は、
前記受付部が受け付けた操作集合を、機械学習のアルゴリズムにより、前記学習器に適用し異常情報を取得する請求項１から請求項１１いずれか一項に記載の異常操作検知装置。
【請求項１３】
システム運用時の情報システムに対する正常な操作を特定する２以上の正常操作情報に関する２以上の正常操作集合に基づく判断元情報が格納される判断元情報格納部と、受付部と、判断部と、レポート構成部と、出力部とにより実現される異常操作検知方法であって、
前記受付部が、被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を受け付ける受付ステップと、
前記判断部が、前記判断元情報と、前記受付ステップで受け付けられた操作集合とを用いて、当該操作集合に対する異常性に関する情報である異常情報を取得する判断ステップと、
前記レポート構成部が、前記異常情報を用いて、異常に関するレポートを構成するレポート構成部と、
前記出力部が、前記レポートを出力する出力ステップとを具備する異常操作検知方法。
【請求項１４】
システム運用時の情報システムに対する正常な操作を特定する２以上の正常操作情報に関する２以上の正常操作集合に基づく判断元情報が格納される判断元情報格納部にアクセス可能なコンピュータを、
被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を受け付ける受付部と、
前記判断元情報と、前記受付部が受け付けた操作集合とを用いて、当該操作集合に対する異常性に関する情報である異常情報を取得する判断部と、
前記異常情報を用いて、異常に関するレポートを構成するレポート構成部と、
前記レポートを出力する出力部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２以上の正常な操作の集合である正常操作集合を用いて、受け付けられた操作集合の異常性を判断し、当該判断結果に関するレポートを出力する異常操作検知装置等に関するものである。
【背景技術】
【０００２】
従来、コンピュータの表示画面及び操作、その他の機器の動作を表示画面の動画像と共に多重化して記録し、監査のための証跡として保存して、不正アクセスや操作及び動作を記録・監視する装置があった（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２９５４８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術においては、システム運用において、入力された操作列の情報を用いて異常操作を検知することが困難、または煩雑であった。さらに、従来技術においては、システム運用において検知された異常操作に関する適切なレポートを出力できなかった。
【課題を解決するための手段】
【０００５】
本第一の発明の異常操作検知装置は、システム運用時の情報システムに対する正常な操作を特定する２以上の正常操作情報に関する２以上の正常操作集合に基づく判断元情報が格納される判断元情報格納部と、被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を受け付ける受付部と、判断元情報と、受付部が受け付けた操作集合とを用いて、操作集合に対する異常性に関する情報である異常情報を取得する判断部と、異常情報を用いて、異常に関するレポートを構成するレポート構成部と、レポートを出力する出力部とを具備する異常操作検知装置である。
【０００６】
かかる構成により、システム運用において検知された異常操作に関する適切なレポートを出力できる。
【０００７】
また、本第二の発明の異常操作検知装置は、第一の発明に対して、レポート構成部は、操作集合の中の箇所であり、異常情報が異常であると判断された異常箇所が、異常でないと判断された正常箇所と比較して、視覚的に区別可能なレポートであり、操作集合を含むレポートを構成する異常操作検知装置である。
【０００８】
かかる構成により、システム運用において検知された異常操作に関するレポートであり、操作集合の中の異常な操作の箇所を明示したレポートを出力できる。
【０００９】
また、本第三の発明の異常操作検知装置は、第一の発明に対して、受付部は、被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を、被検査者を識別するユーザ識別子と情報システムを識別する装置識別子のうちの１以上の識別子に対応付けて、受け付け、レポート構成部は、ユーザ識別子ごと、装置識別子ごと、またはユーザ識別子と装置識別子の組ごとに、異常情報を統計処理し、統計処理結果を含むレポートを構成する異常操作検知装置である。
【００１０】
かかる構成により、システム運用において検知された異常操作に関するレポートであり、ユーザごと、装置ごと、またはユーザと装置の組ごとに統計処理した結果のレポートを出力できる。
【００１１】
また、本第四の発明の異常操作検知装置は、第一の発明に対して、操作された装置の画面の動画である画面動画を構成する２以上のいずれかのフィールドと、操作集合に含まれる操作情報とが対応付いており、レポート構成部は、画面動画の時間軸を示すタイムラインの中の箇所であり、異常情報が異常であることを示す箇所であり、操作集合の中の箇所が、異常でない箇所と比較して、視覚的に区別可能なタイムラインを含むレポートを構成し、出力部は、画面動画とタイムラインとを出力する異常操作検知装置である。
【００１２】
かかる構成により、システム運用において検知された異常操作に関するレポートであり、画面動画の時間軸を示すタイムラインの中に異常の箇所を明示するレポートを出力できる。
【００１３】
また、本第五の発明の異常操作検知装置は、第一から第四いずれか１つの発明に対して、正常操作集合および操作情報は、操作により発生したイベントであり、情報システムが発生させるイベントに関する内部イベント情報も含む異常操作検知装置である。
【００１４】
かかる構成により、システム運用において精度高く異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００１５】
また、本第六の発明の異常操作検知装置は、第一から第五いずれか１つの発明に対して、受付部が受け付けた操作集合は、被検査者が情報システムに対して、ログインからログアウトまでの１セッションの間に行った２以上の操作の操作情報を有する情報であり、判断部は、受付部が受け付けた操作集合の全体を、判断元情報に対して適用し、異常情報を取得する異常操作検知装置である。
【００１６】
かかる構成により、システム運用において適切に異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００１７】
また、本第七の発明の異常操作検知装置は、第一から第六いずれか１つの発明に対して、受付部が受け付けた操作集合は、被検査者が情報システムに対して行った、連続する２以上の操作の操作情報である連続操作情報を有し、判断部は、連続操作情報を、判断元情報格納部の２以上の正常操作集合に対して適用し、異常情報を取得する異常操作検知装置である。
【００１８】
かかる構成により、システム運用において適切に異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００１９】
また、本第八の発明の異常操作検知装置は、第一から第七いずれか１つの発明に対して、希な操作を特定する操作情報である１以上の希操作情報が格納される希操作情報格納部をさらに具備し、判断部は、受付部が受け付けた操作集合の中に、希操作情報格納部の１以上の各希操作情報の存在に関する希操作存在情報を取得し、希操作存在情報を用いて異常情報を取得する異常操作検知装置である。
【００２０】
かかる構成により、システム運用において適切に異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００２１】
また、本第九の発明の異常操作検知装置は、第一から第八いずれか１つの発明に対して、正常操作集合は、２以上の正常操作情報から構成される正常操作ベクトルであり、判断部は、受付部が受け付けた操作集合から入力ベクトルを構成し、入力ベクトルと２以上の正常操作ベクトルとを用いて、異常情報を取得する異常操作検知装置である。
【００２２】
かかる構成により、システム運用において適切に異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００２３】
また、本第十の発明の異常操作検知装置は、第一から第九いずれか１つの発明に対して、判断元情報格納部の２以上の各正常操作集合は、２以上のいずれかの手順書に対応しており、判断部は、受付部が受け付けた操作集合に対応する手順書を決定し、手順書に対応する２以上の正常操作集合を用いて異常情報を取得する異常操作検知装置である。
【００２４】
かかる構成により、システム運用において適切に異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００２５】
また、本第十一の発明の異常操作検知装置は、第十の発明に対して、判断部は、受付部が受け付けた操作集合を用いて、手順書を決定する手順書決定手段と、手順書決定手段が決定した手順書に対応する２以上の正常操作集合を判断元情報格納部から取得する正常操作集合選択手段と、正常操作集合選択手段が取得した２以上の正常操作集合を用いて異常情報を取得する判断手段とを具備する異常操作検知装置である。
【００２６】
かかる構成により、システム運用において適切に異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【００２７】
また、本第十二の発明の異常操作検知装置は、第一から第十一いずれか１つの発明に対して、判断元情報は、２以上の正常操作集合を用いて、機械学習のアルゴリズムにより構成された学習器であり、判断部は、受付部が受け付けた操作集合を、機械学習のアルゴリズムにより、学習器に適用し異常情報を取得する異常操作検知装置である。
【００２８】
かかる構成により、システム運用において精度高く異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【発明の効果】
【００２９】
本発明による異常操作検知装置によれば、システム運用において検知された異常操作に関する適切なレポートを出力できる。
【図面の簡単な説明】
【００３０】
【図１】実施の形態１における異常操作検知装置Ａのブロック図
【図２】同異常操作検知装置Ａの動作例について説明するフローチャート
【図３】同外れ値検知処理の例説明するフローチャート
【図４】同新規時系列特徴検知処理の例について説明するフローチャート
【図５】同希少特徴検知処理の例について説明するフローチャート
【図６】同レポート構成処理の例について説明するフローチャート
【図７】同統計レポート作成処理の例について説明するフローチャート
【図８】同学習処理について、説明するフローチャート
【図９】同判断元情報が蓄積される処理を説明する第一の概念図
【図１０】同判断元情報が蓄積される処理を説明する第二の概念図
【図１１】同異常検知のためのクラスタ選択の処理を説明する概念図
【図１２】同外れ値検知の処理を説明する概念図
【図１３】同新規時系列特徴による検知の処理を説明する概念図
【図１４】同希少特徴による検知の処理を説明する概念図
【図１５】同異常情報の出力例を示す図
【図１６】同異常情報管理表を示す図
【図１７】同レポートの出力例を示す図
【図１８】同レポートの出力例を示す図
【図１９】同レポートの出力例を示す図
【図２０】同コンピュータシステムの概観図
【図２１】同コンピュータシステムのブロック図
【発明を実施するための形態】
【００３１】
以下、異常操作検知装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００３２】
（実施の形態１）
本実施の形態において、ユーザが装置に対して行った２以上の正常な操作の集合である正常操作集合を用いて、受け付けられた操作集合の異常性を判断し、当該判断結果に関するレポートを構成し、出力する異常操作検知装置について説明する。なお、ユーザは、後述する被検査者と言っても良い。
【００３３】
なお、レポートは、例えば、異常であると判断された操作に対応する箇所であり、操作集合の中の箇所が視覚的に分かるレポートである。また、レポートは、例えば、ユーザ識別子と装置識別子のうちの１以上の識別子ごとに、１または２以上の操作集合を統計処理した結果である。また、レポートは、例えば、画面動画の時間軸を示すタイムラインの中の箇所であり、異常情報が異常であることを示す箇所であり、操作集合の中の箇所が、異常でない箇所と比較して、視覚的に区別可能なタイムラインを含むレポートである。
【００３４】
また、操作集合は、ユーザの操作により発生した内部イベントを含んでも良い。また、操作集合は、ログインからログアウトまでの１セッションの操作の集合であることは好適である。
【００３５】
また、本実施の形態において、異常性の検知は、例えば、後述する１セッション単位のログデータの外れ値検知、後述する新規な２以上の連続する操作の検知による判断、希な操作の検知による判断等があり得る。
【００３６】
また、本実施の形態において、正常操作集合は、２以上のいずれかの手順書に対応しており、受け付けられた操作集合に対する手順書に対応する正常操作集合を用いて、異常性を判断し、判断結果を出力する異常操作検知装置について説明する。なお、操作集合は、操作ログと言っても良い。
【００３７】
さらに、本実施の形態において、機械学習のアルゴリズムを用いて、異常性を判断し、判断結果を出力する異常操作検知装置について説明する。
【００３８】
図１は、本実施の形態における異常操作検知装置Ａのブロック図である。異常操作検知装置Ａは、格納部１、受付部２、処理部３、および出力部４を備える。
【００３９】
格納部１は、例えば、判断元情報格納部１１、希操作情報格納部１２、および手順書情報格納部１３を備える。処理部３は、例えば、学習部３１、判断部３２、およびレポート構成部３３を備える。
【００４０】
判断部３２は、例えば、手順書決定手段３２１、正常操作集合選択手段３２２、および判断手段３２３を備える。
【００４１】
格納部１には、各種の情報が格納される。各種の情報とは、例えば、後述する判断元情報、後述する希操作情報、後述する手順書情報、後述する異常情報、画面動画である。画面動画とは、操作された装置の画面の動画である。画面動画は、２以上のフィールドを有する。フィールドは、画面の静止画である。画面動画を構成する２以上のいずれかのフィールドと、操作集合に含まれる操作情報とは、通常、対応付いている。
【００４２】
判断元情報格納部１１には、判断元情報が格納される。判断元情報は、異常性の判断に使用される情報である。判断元情報は、２以上の正常操作集合に基づく情報である。正常操作集合は、２以上の正常操作情報に関する情報である。正常操作情報は、システム運用時の情報システムに対する正常な操作を特定する情報である。正常操作情報は、例えば、コマンド名である。正常操作情報は、例えば、操作対象のウィンドウを識別するウィンドウ識別子（例えば、ウィンドウタイトル、ウィンドウＩＤなど）とユーザがキーボードに入力した情報（例えば、コマンド名、コマンド名と引数［例えば、データベース名、ファイル名、変数名、データ等］）とを含む。正常操作情報は、例えば、ユーザの操作により発生した内部イベントを特定する情報を含む。内部イベントは、例えば、ＯＳが発生させるイベント、アプリケーションが発生させるイベントである。
【００４３】
正常操作集合は、例えば、２以上の正常操作情報から構成されるベクトルである正常操作ベクトルでも良い。正常操作ベクトルは、例えば、２以上の正常操作情報が有する単語（例えば、コマンド名、ファイル名など）の出現頻度を要素として有するベクトルである。正常操作ベクトルは、例えば、２以上の正常操作情報に対して、Bag-of-Wordsを用いてベクトル化した情報である。なお、正常操作集合から正常操作ベクトルを取得するアルゴリズムは問わない。
【００４４】
正常操作集合は、例えば、正常な２以上の操作列を示す２以上の正常操作情報である。正常操作集合は、例えば、情報システムに対する操作ログであり、２以上の正常な命令列であり、例えば、「useradd, mkdir, su, passwd、・・・」、「useradd, passwd, usermod・・・」、「touch, sudo, useradd・・・」である。なお、情報システムとは、コンピュータ、コンピュータ上のアプリケーション、コンピュータシステム等であり、例えば、銀行の情報システムである。また、命令列は、通常、時系列の命令列である。
【００４５】
判断元情報は、２以上の正常操作集合を用いて、機械学習のアルゴリズムにより構成された学習器であっても良い。なお、学習器は、例えば、後述する学習部３１が取得した情報である。
【００４６】
また、各正常操作集合は、例えば、手順書に対応付いている。手順書に対応付いていることは、手順書を識別する手順書識別子に対応付いていることでも良いし、手順書のファイルに対応付いていることでも良い。また、手順書とは、情報システムの運用、情報システムの操作に用いられるドキュメントである。手順書は、マニュアルと言っても良い。また、手順書は、例えば、パッチをシステムに適用する際に参照するパッチ適用手順書、操作のログを取得する際に参照するログ取得手順書、ユーザを追加登録する場合に参照するユーザ追加手順書等である。
【００４７】
また、２以上の各正常操作集合は、操作に使用された１または２以上の手順書に対応づいて、グループ化されて格納されていることは好適である。２以上の各正常操作集合をグループ化する処理は、２以上の正常操作ベクトルをグループ化する処理であり、例えば、ベクトル間の距離を用いて正常操作ベクトルをグループ化する。かかるグループ化の処理は公知技術であるので、詳細な説明を省略する。なお、かかる処理は、処理部３が行うことは好適である。
【００４８】
かかることは、手順書または手順書のグループごとに、正常操作集合を分類することは、以下の操作の特性に基づいており、有効である。つまり、システム運用の現場では手順書を用いた操作が徹底されて行われることが多く、同一の手順書を用いた操作の内容は似る性質がある。その特性を利用し、収集した操作ログ（操作集合）を用いて、当該操作ログに対応する手順書と同一の手順書を用いた新たな操作の内容と比較し、後述するように、異常操作を検知することは有効である。
【００４９】
また、２以上の各正常操作集合は、操作対象のサーバ装置ごとにグループ化されて格納されていても良い。これは、企業におけるサーバ装置は、用途ごとに構築されるケースが多くみられる。そして、サーバ装置ごとに見た場合、行われる業務は、パッチ適用やログ取得等の数種類から１０数種類である場合が多い。かかるシステム運用の特性を利用し、操作対象のサーバ装置ごとに正常操作集合をグループ化し、グループごとに正常操作集合を利用して、後述するように、異常操作を検知することは有効である。なお、サーバ装置ごとにグループ化されている場合、例えば、２以上の各正常操作集合は、サーバ装置を識別するサーバ識別子に対応付いている。なお、サーバ識別子は後述する装置識別子の一例である。
【００５０】
希操作情報格納部１２には、１または２以上の希操作情報が格納される。希操作情報は、希な操作を特定する操作情報である。操作情報は、操作に関する情報である。操作情報は、例えば、操作を特定する命令、使用される情報名（ファイル名、データベース名など）、命令または情報（引数など）を特定するＩＤである。操作情報は、操作により発生する内部イベントでも良い。
【００５１】
希操作情報は、例えば、希な操作を特定する命令である。希操作情報は、例えば、希に使用される情報名でも良い。希操作情報は、例えば、命令または情報（引数など）を特定するＩＤである。希操作情報格納部１２の希操作情報は、例えば、判断元情報格納部１１の２以上の正常操作集合から、後述する処理部３により取得された情報である。
【００５２】
手順書情報格納部１３には、１または２以上の手順書情報が格納される。手順書情報は、手順書に関する情報である。手順書情報は、手順書のファイルでも良いし、手順書のファイルから構成されたベクトルでも良い。手順書情報は、例えば、手順書のファイルに含まれる用語の出現頻度を要素とするベクトルである。手順書情報は、例えば、手順書のファイルをBag-of-Wordsを用いてベクトル化した情報（ベクトル）である。
【００５３】
また、手順書情報格納部１３に、２以上の手順書情報がグループ化されていても良い。つまり、手順書情報格納部１３には、似た２以上の手順書情報がグループ化されていても良い。手順書情報が、例えば、ベクトルである場合、クラスタリングされたベクトルの集合がグループを構成する。なお、似た２以上の手順書情報は、例えば、各手順書情報から構成されたベクトル間の距離の予め決められた条件を満たすほど近いベクトルに対応する２以上の手順書情報である。また、ベクトルの集合を分類し、グループ化する技術は公知技術であるので説明は省略する。また、手順書情報がグループ化されている場合、各グループを代表するベクトルが手順書情報格納部１３に格納されていても良い。グループを代表するベクトルは、例えば、グループに属する１以上のベクトルの平均値のベクトルである。
【００５４】
受付部２は、各種の指示や情報等を受け付ける。各種の指示や情報等とは、例えば、操作集合、判断指示、学習指示、レポート出力指示である。
【００５５】
受付部２は、操作集合と画面動画とを受け付けても良い。かかる場合、画面動画を構成する２以上のいずれかのフィールドと、操作集合に含まれる操作情報とは、通常、対応付いている。
【００５６】
受付部２は、後述するタイムラインの画像の中の一の箇所を指定する箇所指示を受け付けても良い。
【００５７】
操作集合は、被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する情報である。操作集合は、例えば、ログインからログアウトまでの１セッションの操作情報の集合等であるが、予め決められた条件を満たす量の操作の情報の集合でも良い。予め決められた条件を満たす量の操作とは、１時間単位の操作、予め決められた量以上の操作情報等である。なお、被検査者とは、ユーザであり、異常な操作を行ったか否かを検査される者である。また、情報システムとは、例えば、サーバ装置であるが、ユーザが情報等を直接に入力する端末でも良いし、端末とサーバとの組等でも良い。
【００５８】
受付部２は、操作集合を、被検査者を識別するユーザ識別子と情報システムを識別する装置識別子のうちの１以上の識別子に対応付けて、受け付けることは好適である。受付部２は、例えば、１以上の識別子と対に、操作集合を受け付ける。受付部２は、例えば、１以上の識別子と対に、順次、操作情報を受け付ける。
【００５９】
判断指示は、操作集合の異常性に関する判断を行う指示である。判断指示は、操作集合または操作集合を特定する情報を含む。判断指示は、手順書識別子を有しても良い。また、判断指示は、サーバ装置を識別するサーバ識別子を有しても良い。なお、サーバ識別子は、装置識別子でも良い。また、判断指示は、ユーザ識別子を有しても良い。
【００６０】
学習指示は、２以上の正常操作集合を用いて、後述する学習器を構成する指示である。学習指示は、手順書を特定する情報を含んでも良い。手順書を特定する情報は、例えば、手順書識別子、手順書のグループを特定するグループ識別子である。学習指示は、２以上の正常操作集合を含んでも良いし、２以上の正常操作集合を特定する情報（例えば、ファイル名、データベース名など）を含んでも良い。また、学習指示は、１以上の異常操作集合を含んでも良いし、１以上の異常操作集合を特定する情報（例えば、ファイル名、データベース名など）を含んでも良い。
【００６１】
なお、操作集合は、情報システムに対して被験者が行った操作の集合を、情報システムが有する図示しない記録部が取得し、記録した情報である。操作集合は、被検査者が情報システムに対して、ログインからログアウトまでの１セッションの間に行った２以上の操作の操作情報を有する情報であることは好適である。ただし、操作集合は、１セッションの間の一部の期間の操作の操作情報の情報でも良い。
【００６２】
レポート出力指示は、レポートの出力を行うことの指示である。レポート出力指示は、出力するレポートの種類を示す種類情報を有しても良い。種類情報は、例えば、異常箇所明示レポートであることを特定する情報（例えば、「１」）、統計レポートであることを特定する情報（例えば、「２」）である。なお、レポートとは、情報の集合である。レポートは、例えば、ファイルであるが、そのデータ構造は問わない。
【００６３】
異常箇所明示レポートとは、異常情報が異常であると判断された異常箇所が、異常でないと判断された正常箇所と比較して、視覚的に区別可能なレポートである。異常箇所明示レポートは、操作集合を含むことは好適である。
【００６４】
統計レポートとは、ユーザ識別子ごと、装置識別子ごと、またはユーザ識別子と装置識別子の組ごとに、異常情報を統計処理した結果である統計処理結果を含むレポートである。
【００６５】
ここで、受け付けとは、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付け、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付けなどを含む概念である。
【００６６】
処理部３は、各種の処理を行う。各種の処理とは、例えば、学習部３１、判断部３２、レポート構成部３３が行う処理である。各種の処理とは、例えば、受付部２が受け付けた操作情報を格納部１に蓄積する処理である。各種の処理とは、例えば、受付部２が受け付けた操作情報を、ユーザ識別子と装置識別子のうちの１以上の識別子と対にして、格納部１に蓄積する処理である。
【００６７】
処理部３は、例えば、受付部２が箇所指示を受け付けた場合、当該箇所指示に対応する箇所に対する操作情報を取得し、当該操作情報と対になるフィールドを、画面動画を構成するフィールドから決定する。なお、フィールドの決定とは、例えば、当該フィールドの取得、当該フィールドの識別子の取得等である。
【００６８】
学習部３１は、機械学習のアルゴリズムにより、２以上の正常操作集合に対して学習処理を行い、学習器を構成する。
【００６９】
学習部３１は、例えば、受付部２が学習指示を受け付けた場合に、当該学習指示に従って、２以上の正常操作集合に対して学習処理を行い、学習器を構成する。
【００７０】
なお、学習指示が手順書を特定する情報を含んでいる場合、学習部３１は、当該手順書を特定する情報により特定される手順書に対応する２以上の正常操作集合を判断元情報格納部１１から取得し、当該２以上の正常操作集合に対して学習処理を行い、学習器を構成することは好適である。また、学習部３１は、１または２以上のグループごとに、２以上の正常操作集合を判断元情報格納部１１から取得し、当該２以上の正常操作集合に対して学習処理を行い、学習器を構成することは好適である。なお、かかる処理により、手順書ごと、またはグループごとに学習器を構成できる。
【００７１】
また、機械学習のアルゴリズムは、例えば、深層学習、ＳＶＭ、ＳＶＲ、決定木、ランダムフォレスト等であり、問わない。
【００７２】
学習部３１は、例えば、２以上の正常操作集合、または２以上の正常操作集合から取得されるベクトルを、機械学習の処理を行う公知のソフトウェア（例えば、TinySVM，FastText，TensorFlow ，Scikit-learnなど）に引数として与え、当該ソフトウェアを実行することにより、学習器を取得する。
【００７３】
学習部３１は、機械学習のアルゴリズムにより、２以上の正常操作集合（正例）と、２以上の異常操作集合（負例）とを用いて学習処理を行い、学習器を構成しても良い。かかる場合、負例は、予め与えられていることは好適であるが、学習部３１が自動生成しても良い。例えば、学習部３１は、２以上の各正常操作集合から構成される２以上の各ベクトルとの距離が閾値以上の１以上のベクトルを自動生成する。例えば、学習部３１は、２以上の各正常操作集合から構成される２以上のベクトルの平均値のベクトル（２以上のベクトルの要素の平均値を要素とするベクトル）との距離が閾値以上の１以上のベクトルを自動生成する。
【００７４】
判断部３２は、判断元情報と、受付部２が受け付けた操作集合とを用いて、異常情報を取得する。異常情報は、受付部２が受け付けた操作集合に対する異常性に関する情報である。異常情報は、例えば、異常であることを示す情報、正常であることを示す情報、受付部２が受け付けた操作集合の中の異常な箇所を示す箇所情報等である。箇所情報は、例えば、異常な命令列、希操作情報、受付部２が受け付けた操作集合の中の希操作情報を特定する情報である。箇所情報は、例えば、操作集合の中のオフセット、行番号等である。
【００７５】
異常情報は、例えば、上述したグループごとの異常性に関する情報である。異常情報は、例えば、異常性に関するレポートでも良い。
【００７６】
判断部３２は、受付部２が受け付けた操作集合に対応付いている識別子（ユーザ識別子と情報システムを識別する装置識別子のうちの１以上の識別子）に対応付けて、取得した異常情報を蓄積することは好適である。なお、異常情報の蓄積先は、例えば、格納部１であるが、外部の装置等で良く、蓄積先は問わない。
【００７７】
判断部３２は、例えば、受付部２が受け付けた操作集合から入力ベクトルを構成し、入力ベクトルと２以上の正常操作ベクトルとを用いて、異常情報を取得する。なお、入力ベクトルは、操作集合ベクトルと言っても良い。
【００７８】
判断部３２は、例えば、受付部２が受け付けた操作集合に対応する手順書を決定し、手順書に対応する２以上の正常操作集合を用いて異常情報を取得する。
【００７９】
判断部３２は、例えば、受付部２が受け付けた操作集合を、機械学習のアルゴリズムにより、学習器に適用し、異常情報を取得する。なお、かかる異常情報を取得する処理は、例えば、機械学習を実現するソフトウェア（実行モジュール、関数、またはメソッド等）に、操作集合を特定する情報（例えば、操作集合が含まれるファイルのファイル名、操作集合が含まれるファイルのファイルポインタ、操作集合自体等）と学習器を特定する情報（学習器のファイル名、学習器のファイルのファイルポインタ等）とを引数として与え、当該ソフトウェアを実行する処理である。
【００８０】
判断部３２は、例えば、以下の（１）から（３）のうちの１以上の方法で異常を判断する。なお、（１）は外れ値検知、（２）は新規時系列特徴による検知、（３）は希少特徴による検知という。
（１）外れ値検知
【００８１】
外れ値検知とは、異常性の判断対象の操作集合の全体が、正常操作集合に対して、外れているか否かを判断することである。
【００８２】
判断部３２は、例えば、受付部２が受け付けた操作集合の全体を、判断元情報に対して適用し、外れ値に関する異常情報を取得する。
【００８３】
判断部３２は、例えば、受付部２が受け付けた操作集合の全体から構成されるベクトルである操作集合ベクトルと、２以上の各正常操作集合から構成されるベクトルである各正常操作集合ベクトルとの距離を取得し、距離の平均値が閾値以上であるか否かを判断する。判断部３２は、例えば、距離の平均値が閾値以上または閾値より大きい場合は、異常であることを示す異常情報を取得し、距離の平均値が閾値以下または閾値未満である場合は、正常であることを示す異常情報を取得する。
【００８４】
また、判断部３２は、例えば、２以上の各正常操作集合から構成される正常操作集合ベクトルの平均値を取得し、当該平均値と、操作集合の全体から構成される操作集合ベクトルとの距離を取得し、距離が閾値以上であるか否かを判断する。判断部３２は、例えば、距離が閾値以上または閾値より大きい場合は、異常であることを示す異常情報を取得し、距離が閾値以下または閾値未満である場合は、正常であることを示す異常情報を取得する。
【００８５】
判断部３２は、例えば、受付部２が受け付けた操作集合と、判断元情報格納部１１の判断元情報を比較して、ｌｏｆによる外れ値検知を行っても良い。さらに具体的には、判断部３２は、例えば、受付部２が受け付けた操作集合から取得した操作集合ベクトルと、判断元情報格納部１１の２以上の各正常操作集合ベクトルとを比較して、ｌｏｆによる外れ値検知を行っても良い。なお、ｌｏｆによる外れ値検知は公知技術であるので、説明を省略する。
【００８６】
また、判断部３２は、例えば、受付部２が受け付けた操作集合の全体を、上述した学習器に適用し、機械学習のアルゴリズムにより異常情報を取得する。なお、学習器が、異常か正常かを分類する学習器である場合、判断部３２は、受付部２が受け付けた操作集合の全体を、上述した学習器に適用し、機械学習のアルゴリズムにより、異常か正常かを示す異常情報を取得する。異常か正常かを分類する学習器は、例えば、正常な１以上の操作集合（正例）と異常な１以上の操作集合（負例）との両方を、機械学習のアルゴリズムにより学習させた結果であることは好適である。さらに詳細には、異常か正常かを分類する学習器は、例えば、正常な１以上の各操作集合から取得した１以上のベクトル（１以上の正例）と異常な１以上の各操作集合から取得した１以上のベクトル（１以上の負例）との両方を、機械学習のアルゴリズムにより学習させた結果であることは好適である。
（２）新規時系列特徴による検知
【００８７】
新規時系列特徴による検知とは、異常性の判断対象の操作集合の中に、正常操作集合には出現しない、または出現し難い時系列の操作列の存在に関する異常性の検知である。
【００８８】
判断部３２は、連続操作情報を、判断元情報格納部１１の２以上の正常操作集合に対して適用し、異常情報を取得する。なお、連続操作情報とは、時間的に連続する２以上の操作の操作情報である。連続操作情報は、２以上の操作情報を有する。
【００８９】
判断部３２は、例えば、受付部２が受け付けた操作集合から、２または３以上の連続する操作列の情報である１または２以上の操作情報を取得し、取得した操作情報が判断元情報格納部１１の２以上の正常操作集合に含まれるか否かを検知する。そして、判断部３２は、例えば、判断元情報格納部１１の２以上の正常操作集合に含まれない新規な連続操作情報の出現数または出現割合を取得する。そして、判断部３２は、例えば、かかる出現数または出現割合が閾値以上または閾値より大きい場合、異常であることを示す異常情報を取得し、閾値以下または閾値より小さい場合、正常であることを示す異常情報を取得する。なお、判断部３２は、例えば、かかる出現数または出現割合をパラメータとする増加関数を用いて算出した値を異常スコアとして取得しても良い。なお、異常スコアは、異常情報の一例である。また、新規な連続操作情報の出現割合は、例えば、「受付部２が受け付けた操作集合の中の新規な連続操作情報の出現数／受付部２が受け付けた操作集合の中の連続操作情報の数」により算出される。
（３）希少特徴による検知
【００９０】
希少特徴による検知とは、異常性の判断対象の操作集合の中に、正常操作集合には出現しない、または出現し難い操作の存在に関する異常性の検知である。
【００９１】
判断部３２は、受付部２が受け付けた操作集合の中に、希操作情報格納部１２の１以上の各希操作情報の存在に関する希操作存在情報を取得し、希操作存在情報を用いて異常情報を取得する。希操作存在情報とは、例えば、希操作情報の含有率（希操作情報の数／操作情報の数）、希操作情報の存在数、希操作情報が存在するか否かなどである。
【００９２】
手順書決定手段３２１は、受付部２が受け付けた操作集合を用いて、手順書を決定する。手順書決定手段３２１は、例えば、受付部２が受け付けた操作集合からベクトルを構成し、当該ベクトルと、手順書情報格納部１３のベクトルである２以上の各手順書情報との距離を算出し、距離が最も小さい手順書情報に対応する手順書を、採用する手順書として決定する。手順書決定手段３２１は、例えば、受付部２が受け付けた操作集合からベクトルを構成し、当該ベクトルと、手順書情報格納部１３に格納されている各グループのベクトルとの距離を算出し、距離が最も小さいグループに対応する手順書を、採用する手順書として決定する。
【００９３】
手順書決定手段３２１は、受付部２が受け付けた手順書識別子を取得することにより、手順書を決定しても良い。
【００９４】
正常操作集合選択手段３２２は、手順書決定手段３２１が決定した手順書に対応する２以上の正常操作集合を判断元情報格納部１１から取得する。かかる場合、正常操作集合は、手順書に対応付いている。正常操作集合選択手段３２２は、例えば、手順書決定手段３２１が取得した手順書識別子と対になる２以上の正常操作集合を判断元情報格納部１１から取得する。また、正常操作集合選択手段３２２は、受付部２が受け付けた判断指示に含まれるサーバ識別子と対になる２以上の正常操作集合を判断元情報格納部１１から取得しても良い。
【００９５】
判断手段３２３は、正常操作集合選択手段３２２が取得した２以上の正常操作集合を用いて異常情報を取得する。なお、判断手段３２３は、手順書決定手段３２１と正常操作集合選択手段３２２とを有さず、すべての正常操作集合を用いて、異常情報を取得しても良い。
【００９６】
なお、判断手段３２３が２以上の正常操作集合を用いて異常情報を取得する処理は、上述したので、再度の説明を省略する。判断手段３２３が２以上の正常操作集合を用いて異常情報を取得する処理は、例えば、上述した（１）は外れ値検知、（２）は新規時系列特徴による検知、（３）は希少特徴による検知である。
【００９７】
レポート構成部３３は、判断部３２が取得した異常情報を用いて、異常に関するレポートを構成する。
【００９８】
レポート構成部３３は、例えば、操作集合の中の箇所であり、異常情報が異常であると判断された異常箇所が、異常でないと判断された正常箇所と比較して、視覚的に区別可能なレポートであり、操作集合を含むレポートを構成する。つまり、レポート構成部３３は、例えば、判断部３２が取得した異常情報を用いて、異常箇所明示レポートを構成する。判断部３２が取得した異常情報が、受付部２が受け付けた操作集合の中の異常な箇所を示す情報を含む場合、レポート構成部３３は、例えば、当該操作集合の中の異常な箇所を、異常でない箇所と比較して目立つ態様となるようなレポートを構成する。かかるレポートは、操作集合の中の異常な箇所の１以上の各属性値（例えば、文字色、フォント、背景色等）を、正常な箇所の対応する属性値と異なる属性値とした操作集合の情報（例えば、操作集合のファイル）である。
【００９９】
レポート構成部３３は、例えば、判断部３２が取得した異常情報を用いて、統計レポートを構成する。レポート構成部３３は、例えば、判断部３２が取得した異常情報を統計処理し、統計レポートを構成する。
【０１００】
レポート構成部３３は、例えば、ユーザ識別子ごとに異常情報を統計処理し、統計処理結果を含むレポートを構成する。レポート構成部３３は、例えば、一のユーザ識別子と対になる操作集合を用いて取得された１以上の異常情報を統計処理し、統計処理結果を含む統計レポートを構成する。レポート構成部３３は、例えば、一のユーザ識別子と対になる操作集合を用いて取得された１以上の異常情報を用いて、正常操作集合数と異常操作集合数とを取得し、当該正常操作集合数と異常操作集合数とを用いて、正常な操作集合の割合または異常な操作集合の割合を有する統計レポートを取得する。また、レポート構成部３３は、例えば、一のユーザ識別子と対になる操作集合を用いて取得された１以上の異常情報を用いて、正常操作集合数と、異常操作集合数とのうちの１以上の数を有する統計レポートを取得する。なお、正常操作集合数とは、異常であると判断された箇所を含まない操作集合（正常な操作集合）の数である。また、異常操作集合数とは、異常であると判断された箇所を含む操作集合（異常な操作集合）の数である。また、レポート構成部３３は、例えば、一のユーザ識別子と対になる１または２以上の操作集合の異常な操作の箇所の全体に対する割合等を含む統計レポートを構成しても良い。
【０１０１】
レポート構成部３３は、例えば、装置識別子ごとに異常情報を統計処理し、統計処理結果を含むレポートを構成する。なお、装置識別子とは、通常、ユーザがアクセスするサーバの識別子である。装置識別子は、例えば、１または２以上の手順書の識別子と対応付いている。レポート構成部３３は、例えば、一の装置識別子と対になる操作集合を用いて取得された１以上の異常情報を統計処理し、統計処理結果を含む統計レポートを構成する。レポート構成部３３は、例えば、一の装置識別子と対になる操作集合を用いて取得された１以上の異常情報を用いて、正常操作集合数と異常操作集合数とを取得し、当該正常操作集合数と異常操作集合数とを用いて、正常な操作集合の割合または異常な操作集合の割合を有する統計レポートを取得する。また、レポート構成部３３は、例えば、一の装置識別子と対になる操作集合を用いて取得された１以上の異常情報を用いて、正常操作集合数と、異常操作集合数とのうちの１以上の数を有する統計レポートを取得する。また、レポート構成部３３は、例えば、一の装置識別子と対になる１または２以上の操作集合の異常な操作の箇所の全体に対する割合等を含む統計レポートを構成しても良い。
【０１０２】
レポート構成部３３は、例えば、ユーザ識別子と装置識別子の組ごとに、異常情報を統計処理し、統計処理結果を含むレポートを構成する。レポート構成部３３は、例えば、一のユーザ識別子と装置識別子の組（以下、一の組）と対になる操作集合を用いて取得された１以上の異常情報を統計処理し、統計処理結果を含む統計レポートを構成する。レポート構成部３３は、例えば、一の組と対になる操作集合を用いて取得された１以上の異常情報を用いて、正常操作集合数と異常操作集合数とを取得し、当該正常操作集合数と異常操作集合数とを用いて、正常な操作集合の割合または異常な操作集合の割合を有する統計レポートを取得する。また、レポート構成部３３は、例えば、一の組と対になる操作集合を用いて取得された１以上の異常情報を用いて、正常操作集合数と、異常操作集合数とのうちの１以上の数を有する統計レポートを取得する。また、レポート構成部３３は、例えば、一の組と対になる１または２以上の操作集合の異常な操作の箇所の全体に対する割合等を含む統計レポートを構成しても良い。
【０１０３】
レポート構成部３３は、例えば、タイムラインレポートを構成する。タイムラインレポートとは、画面動画の時間軸を示すタイムラインの中の箇所であり、異常情報が異常であることを示す箇所であり、操作集合の中の箇所が、異常でない箇所と比較して、視覚的に区別可能なタイムラインを含むレポートである。レポート構成部３３は、例えば、異常情報が異常であることを示す操作情報に対応する画面動画の箇所を特定し、当該箇所が正常な操作情報に対応する画面動画の箇所と区別可能なタイムラインの画像を構成する。タイムラインとは、画面動画を構成するフィールドの、画面動画全体の中の位置を示す情報であり、例えば、バー状の形状であるが、その形状は問わない。
【０１０４】
出力部４は、レポート構成部３３が構成したレポートを出力する。出力部４は、判断部３２が取得した異常情報を出力しても良い。出力部４は、画面動画とタイムラインとを出力する。出力部４は、タイムラインのみを出力しても良い。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置（例えば、図示しない端末装置）への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【０１０５】
格納部１、判断元情報格納部１１、希操作情報格納部１２、および手順書情報格納部１３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【０１０６】
格納部１等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部１等で記憶されるようになってもよく、通信回線等を介して送信された情報が格納部１等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部１等で記憶されるようになってもよい。
【０１０７】
受付部２は、無線または有線の通信手段で実現されても良い。
【０１０８】
処理部３、学習部３１、判断部３２、レポート構成部３３、手順書決定手段３２１、正常操作集合選択手段３２２、および判断手段３２３は、通常、ＭＰＵやメモリ等から実現され得る。処理部３等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１０９】
出力部４は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部４は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。なお、出力部４は、通信手段で実現されても良い。
【０１１０】
次に、異常操作検知装置Ａの動作例について、図２のフローチャートを用いて説明する。
【０１１１】
（ステップＳ２０１）受付部２は、判断指示を受け付けたか否かを判断する。判断指示を受け付けた場合はステップＳ２０２に行き、判断指示を受け付けなかった場合はステップＳ２０８に行く。
【０１１２】
（ステップＳ２０２）判断部３２は、ステップＳ２０１で判断指示に対応する操作集合を取得する。判断部３２は、例えば、判断指示が有する操作集合を取得する。判断部３２は、操作集合に対応付いているユーザ識別子と装置識別子とをも取得することは好適である。
【０１１３】
（ステップＳ２０３）判断部３２は、ステップＳ２０２で取得した操作集合に対して、外れ値検知処理を行う。外れ値検知処理の例について、図３のフローチャートを用いて説明する。なお、判断部３２は、外れ値検知処理の結果である異常情報を、取得したユーザ識別子と装置識別子とに対応付けて蓄積することは好適である。
【０１１４】
（ステップＳ２０４）判断部３２は、ステップＳ２０２で取得した操作集合に対して、新規時系列特徴による検知処理を行う。新規時系列特徴検知処理の例について、図４のフローチャートを用いて説明する。なお、判断部３２は、新規時系列特徴検知処理の結果である異常情報を、取得したユーザ識別子と装置識別子とに対応付けて蓄積することは好適である。
【０１１５】
（ステップＳ２０５）判断部３２は、ステップＳ２０２で取得した操作集合に対して、希少特徴による検知処理を行う。希少特徴検知処理の例について、図５のフローチャートを用いて説明する。なお、判断部３２は、希少特徴検知処理の結果である異常情報を、取得したユーザ識別子と装置識別子とに対応付けて蓄積することは好適である。
【０１１６】
（ステップＳ２０６）処理部３は、ステップＳ２０３、ステップＳ２０４、およびステップＳ２０５で取得した異常情報のうちの１以上の異常情報を用いて出力する異常情報を構成する。
【０１１７】
（ステップＳ２０７）出力部４は、ステップＳ２０６で構成された異常情報を出力する。ステップＳ２０１に戻る。なお、ここで、出力部４は、例えば、異常情報を格納部１に蓄積する。出力部４は、例えば、異常情報を、ユーザ識別子と装置識別子のうちの１以上の識別子と対にして格納部１に蓄積する。
【０１１８】
（ステップＳ２０８）受付部２は、レポート出力指示を受け付けたか否かを判断する。レポート出力指示を受け付けた場合はステップＳ２０９に行き、レポート出力指示を受け付けなかった場合はステップＳ２１１に行く。
【０１１９】
（ステップＳ２０９）レポート構成部３３は、レポート出力指示に対応する異常情報を用いて、レポートを構成する。かかるレポート構成処理の例について、図６のフローチャートを用いて説明する。
【０１２０】
（ステップＳ２１０）出力部４は、ステップＳ２０９で構成されたレポートを出力する。ステップＳ２０１に戻る。
【０１２１】
（ステップＳ２１１）受付部２は、学習指示を受け付けたか否かを判断する。学習指示を受け付けた場合はステップＳ２１２に行き、学習指示を受け付けなかった場合はステップＳ２０１に戻る。
【０１２２】
（ステップＳ２０９）学習部３１は、学習処理を行う。ステップＳ２０１に戻る。学習処理の例について、図８のフローチャートを用いて説明する。
【０１２３】
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【０１２４】
次に、ステップＳ２０３の外れ値検知処理の例について、図３のフローチャートを用いて説明する。
【０１２５】
（ステップＳ３０１）判断部３２は、カウンタｉに１を代入する。
【０１２６】
（ステップＳ３０２）判断部３２は、ｉ番目の正常操作集合が、判断元情報格納部１１に存在するか否かを判断する。ｉ番目の正常操作集合が存在する場合はステップＳ３０３に行き、存在しない場合はステップＳ３０５に。
【０１２７】
（ステップＳ３０３）判断部３２は、ｉ番目の正常操作集合を判断元情報格納部１１から取得し、ｉ番目の正常操作集合からベクトルを取得する。なお、かかるベクトルは、正常操作ベクトルである。
【０１２８】
（ステップＳ３０４）判断部３２は、カウンタｉを１、インクリメントする。ステップＳ３０２に戻る。
【０１２９】
（ステップＳ３０５）判断部３２は、ステップＳ２０２で取得された操作集合から操作集合ベクトルを取得する。
【０１３０】
（ステップＳ３０６）判断部３２は、ステップＳ３０５で取得した操作集合ベクトルが、ステップＳ３０３で取得した２以上の正常操作ベクトルに対して、外れ値か否かを判断する。外れ値ある場合はステップＳ３０７に行き、外れ値でない場合はステップＳ３０８に行く。なお、外れ値か否かは、例えば、ｌｏｆにより取得される。
【０１３１】
（ステップＳ３０７）判断部３２は、変数「第一異常情報」に「異常」を示す値を代入する。上位処理にリターンする。なお、かかる値は、検査対象の操作集合が外れ値であることを示す。
【０１３２】
（ステップＳ３０８）判断部３２は、変数「第一異常情報」に「正常」を示す値を代入する。上位処理にリターンする。なお、かかる値は、検査対象の操作集合が外れ値でないことを示す。
【０１３３】
次に、ステップＳ２０４の新規時系列特徴検知処理の例について、図４のフローチャートを用いて説明する。
【０１３４】
（ステップＳ４０２）判断部３２は、ステップＳ２０２で取得された操作集合の中でｉ番目の連続操作情報が存在するか否かを判断する。ｉ番目の連続操作情報が存在する場合はステップＳ４０３に行き、ｉ番目の連続操作情報が存在しない場合はステップＳ４０６に行く。
【０１３５】
（ステップＳ４０３）判断部３２は、ステップＳ２０２で取得された操作集合の中からｉ番目の連続操作情報を取得する。なお、判断部３２は、例えば、２以上の操作情報の列である操作集合の中から、カレントの操作情報をずらしながら、ｎ個（ｎは２または３以上の自然数）の連続する操作情報の列である連続操作情報を取得する。なお、ずらす間隔は、通常、１であるが、ｎ等でも良い場合があり得る。
【０１３６】
（ステップＳ４０４）判断部３２は、ステップＳ４０３で取得したｉ番目の連続操作情報の、判断元情報格納部１１の２以上の正常操作集合における出現回数を取得する。
【０１３７】
（ステップＳ４０５）判断部３２は、カウンタｉを１、インクリメントする。ステップＳ４０２に戻る。
【０１３８】
（ステップＳ４０６）判断部３２は、ステップＳ４０４で取得した連続操作情報の出現回数を用いて、第二異常情報を取得する。上位処理にリターンする。
【０１３９】
なお、判断部３２は、例えば、ステップＳ４０４で取得した出現回数が第一の閾値以下または第一の閾値未満（例えば、０）である連続操作情報の数を取得し、当該数が第二の閾値以上または第二の閾値より大きい場合に、変数「第二異常情報」に「異常」を示す値を代入する。また、判断部３２は、例えば、ステップＳ４０４で取得した出現回数が第一の閾値以下または第一の閾値未満（例えば、０）である連続操作情報の数を取得し、当該数が第二の閾値以下または第二の閾値未満である場合に、変数「第二異常情報」に「正常」を示す値を代入する。
【０１４０】
また、判断部３２は、例えば、ステップＳ４０４で取得した出現回数が第一の閾値以下または第一の閾値未満（例えば、０）である連続操作情報の数を取得し、当該数を用いて、検査対象の操作集合における割合を取得し、当該割合が第二の閾値以上または第二の閾値より大きい場合に、変数「第二異常情報」に「異常」を示す値を代入する。また、判断部３２は、例えば、ステップＳ４０４で取得した出現回数が第一の閾値以下または第一の閾値未満（例えば、０）である連続操作情報の割合を取得し、当該割合が第二の閾値以下または第二の閾値未満である場合に、変数「第二異常情報」に「正常」を示す値を代入する。
【０１４１】
また、判断部３２は、例えば、変数「第二異常情報」に「異常」を示す値を代入した元になった連続操作情報の箇所を示す箇所情報を、変数「第二異常情報」に対応付けて、格納部１に蓄積しても良い。なお、箇所情報は、操作集合の中の箇所を特定する情報である。箇所情報は、例えば、行数を示す情報、アドレス、操作集合のファイル内でのオフセット等である。
【０１４２】
次に、ステップＳ２０５の希少特徴検知処理について、図５のフローチャートを用いて説明する。
【０１４３】
（ステップＳ５０１）判断部３２は、初期化処理を行う。初期化処理は、変数「希操作回数」に０を代入する処理を含む。
【０１４４】
（ステップＳ５０２）判断部３２は、取得した操作集合（検査対象の操作集合）の中の各要素の出現回数を取得する。なお、要素は、通常、操作情報である。
【０１４５】
（ステップＳ５０３）判断部３２は、カウンタｉに１を代入する。
【０１４６】
（ステップＳ５０４）判断部３２は、取得した操作集合（検査対象の操作集合）の中に、ｉ番目の要素が存在するか否かを判断する。ｉ番目の要素が存在する場合はステップＳ５０５に行き、ｉ番目の要素が存在しない場合はステップＳ５０９に行く。
【０１４７】
（ステップＳ５０５）判断部３２は、取得した操作集合（検査対象の操作集合）の中のｉ番目の要素を取得する。
【０１４８】
（ステップＳ５０６）判断部３２は、ステップＳ５０５で取得したｉ番目の要素が希操作情報であるか否かを判断する。ｉ番目の要素が希操作情報である場合はステップＳ５０７に行き、ｉ番目の要素が希操作情報でない場合はステップＳ５０８に行く。ｉ番目の要素が希操作情報であるか否かは、例えば、希操作情報格納部１２にｉ番目の要素が存在するか否かにより行う。つまり、判断部３２は、ｉ番目の要素が希操作情報格納部１２に存在する場合は、ｉ番目の要素が希操作情報であると判断する。また、判断部３２は、ｉ番目の要素が判断元情報格納部１１の２以上の正常操作集合に存在する数または割合を算出し、数または割合が閾値以下または閾値より小さい場合に、ｉ番目の要素が希操作情報であると判断する。また、判断部３２は、例えば、希操作情報が出現する箇所を示す箇所情報を、格納部１に蓄積しても良い。箇所情報は、操作集合の中の箇所を特定する情報である。
【０１４９】
（ステップＳ５０７）判断部３２は、変数「希操作回数」を１、インクリメントする。
【０１５０】
（ステップＳ５０８）判断部３２は、カウンタｉを１、インクリメントする。ステップＳ５０４に戻る。
【０１５１】
（ステップＳ５０９）判断部３２は、変数「希操作回数」の値が条件を満たすか否かを判断する。条件を満たす場合はステップＳ５１０に行き、条件を満たさない場合はステップＳ５１１に行く。なお、ここで、判断部３２は、変数「希操作回数」の値が予め決められた条件を満たすほど大きいか否かを判断する。
【０１５２】
（ステップＳ５１０）判断部３２は、変数「第三異常情報」に「異常」であることを示す値を代入する。上位処理にリターンする。変数「第三異常情報」が「異常」であることを示す値である場合、希少な操作が多数行われたことを示す。
【０１５３】
（ステップＳ５１１）判断部３２は、変数「第三異常情報」に「正常」であることを示す値を代入する。上位処理にリターンする。
【０１５４】
次に、ステップＳ２０９のレポート構成処理の例について、図６のフローチャートを用いて説明する。
【０１５５】
（ステップＳ６０１）レポート構成部３３は、異常箇所明示レポートを構成するか否かを判断する。異常箇所明示レポートを構成する場合はステップＳ６０２に行き、異常箇所明示レポートを構成しない場合はステップＳ６０８に行く。なお、レポート構成部３３は、例えば、受け付けられたレポート出力指示に含まれる種類情報が異常箇所明示レポートを示す情報であるか否かを判断する。また、レポート構成部３３は、例えば、受け付けられたレポート出力指示に操作集合を特定する情報が含まれるか否かを判断する。操作集合を特定する情報が含まれる場合は、レポート構成部３３は、異常箇所明示レポートを構成すると判断し、操作集合を特定する情報が含まれない場合は、レポート構成部３３は、異常箇所明示レポートを構成しないと判断する。
【０１５６】
（ステップＳ６０２）レポート構成部３３は、受け付けられたレポート出力指示に対応する操作集合を取得する。なお、例えば、レポート出力指示が操作集合を特定する情報を含む場合、レポート構成部３３は、当該操作集合を特定する情報により特定される操作集合を格納部１から読み出す。また、例えば、レポート構成部３３は、レポート出力指示に含まれる操作集合を取得する。
【０１５７】
（ステップＳ６０３）レポート構成部３３は、カウンタｉに１を代入する。
【０１５８】
（ステップＳ６０４）レポート構成部３３は、ステップＳ６０２で取得した操作集合に対応するｉ番目の箇所情報が格納部１に存在するか否かを判断する。ｉ番目の箇所情報が存在する場合はステップＳ６０５に行き、存在しない場合はステップＳ６０７に行く。
【０１５９】
（ステップＳ６０５）レポート構成部３３は、ステップＳ６０２で取得した操作集合の中のｉ番目の箇所情報が示す箇所の属性値を変更する。
【０１６０】
（ステップＳ６０６）レポート構成部３３は、カウンタｉを１、インクリメントする。ステップＳ６０４に戻る。
【０１６１】
（ステップＳ６０７）レポート構成部３３は、異常箇所明示レポートを取得する。
【０１６２】
（ステップＳ６０８）レポート構成部３３は、統計レポートを構成するか否かを判断する。統計レポートを構成する場合はステップＳ６０９に行き、統計レポートを構成しない場合は上位処理にリターンする。なお、レポート構成部３３は、例えば、受け付けられたレポート出力指示に含まれる種類情報が統計レポートを示す情報であるか否かを判断する。また、レポート構成部３３は、例えば、受け付けられたレポート出力指示にユーザ識別子、装置識別子のうちの１以上の識別子が含まれるか否かを判断する。１以上の識別子が含まれる場合は、レポート構成部３３は、統計レポートを構成すると判断し、１以上の識別子が含まれない場合は、レポート構成部３３は、統計レポートを構成しないと判断する。
【０１６３】
（ステップＳ６０９）レポート構成部３３は、統計レポートを作成する処理を行う。上位処理にリターンする。かかる統計レポート作成処理について、図７のフローチャートを用いて説明する。
【０１６４】
なお、図６のフローチャーにおいて、タイムラインレポートを構成しても良いことは言うまでもない。
【０１６５】
次に、ステップＳ６０９の統計レポート作成処理について、図７のフローチャートを用いて説明する。
【０１６６】
（ステップＳ７０１）レポート構成部３３は、ユーザごとの統計レポートを作成するか否かを判断する。ユーザごとの統計レポートを作成する場合はステップＳ７０２に行き、ユーザごとの統計レポートを作成しない場合はステップＳ７１０に行く。
【０１６７】
（ステップＳ７０２）レポート構成部３３は、カウンタｉに１を代入する。
【０１６８】
（ステップＳ７０３）レポート構成部３３は、操作集合または異常情報に対応付いているｉ番目のユーザ識別子が存在するか否かを判断する。ｉ番目のユーザ識別子が存在する場合はステップＳ７０４に行き、ｉ番目のユーザ識別子が存在しない場合はステップＳ７０９に行く。
【０１６９】
（ステップＳ７０４）レポート構成部３３は、ｉ番目のユーザ識別子と対応付く操作集合または異常情報を用いて、正常操作集合数を取得する。
【０１７０】
（ステップＳ７０５）レポート構成部３３は、ｉ番目のユーザ識別子と対応付く操作集合または異常情報を用いて、異常操作集合数を取得する。
【０１７１】
（ステップＳ７０６）レポート構成部３３は、ステップＳ７０４で取得した正常操作集合数とステップＳ７０５で取得した異常操作集合数とを用いて、統計処理結果（例えば、異常の割合）を取得する。
【０１７２】
（ステップＳ７０７）レポート構成部３３は、ｉ番目のユーザ識別子に対応付けて、ステップＳ７０６で取得した統計処理結果を格納部１に蓄積する。
【０１７３】
（ステップＳ７０８）レポート構成部３３は、カウンタｉを１、インクリメントする。ステップＳ７０３に戻る。
【０１７４】
（ステップＳ７０９）レポート構成部３３は、ユーザごとの統計レポートを取得する。上位処理にリターンする。
【０１７５】
（ステップＳ７１０）レポート構成部３３は、装置ごとの統計レポートを作成するか否かを判断する。装置ごとの統計レポートを作成する場合はステップＳ７１１に行き、装置ごとの統計レポートを作成しない場合はステップＳ７１９に行く。
【０１７６】
（ステップＳ７１１）レポート構成部３３は、カウンタｉに１を代入する。
【０１７７】
（ステップＳ７１２）レポート構成部３３は、操作集合または異常情報に対応付いているｉ番目の装置識別子が存在するか否かを判断する。ｉ番目の装置識別子が存在する場合はステップＳ７１３に行き、ｉ番目の装置識別子が存在しない場合はステップＳ７１８に行く。
【０１７８】
（ステップＳ７１３）レポート構成部３３は、ｉ番目の装置識別子と対応付く操作集合または異常情報を用いて、正常操作集合数を取得する。
【０１７９】
（ステップＳ７１４）レポート構成部３３は、ｉ番目の装置識別子と対応付く操作集合または異常情報を用いて、異常操作集合数を取得する。
【０１８０】
（ステップＳ７１５）レポート構成部３３は、ステップＳ７１３で取得した正常操作集合数とステップＳ７１４で取得した異常操作集合数とを用いて、統計処理結果（例えば、異常の割合）を取得する。
【０１８１】
（ステップＳ７１６）レポート構成部３３は、ｉ番目の装置識別子に対応付けて、ステップＳ７１５で取得した統計処理結果を格納部１に蓄積する。
【０１８２】
（ステップＳ７１７）レポート構成部３３は、カウンタｉを１、インクリメントする。ステップＳ７１２に戻る。
【０１８３】
（ステップＳ７１８）レポート構成部３３は、装置ごとの統計レポートを取得する。上位処理にリターンする。
【０１８４】
（ステップＳ７１９）レポート構成部３３は、組ごとの統計レポートを作成するか否かを判断する。組ごとの統計レポートを作成する場合はステップＳ７２０に行き、組ごとの統計レポートを作成しない場合は上位処理にリターンする。
【０１８５】
（ステップＳ７２０）レポート構成部３３は、カウンタｉに１を代入する。
【０１８６】
（ステップＳ７２１）レポート構成部３３は、操作集合または異常情報に対応付いているｉ番目の組が存在するか否かを判断する。ｉ番目の組が存在する場合はステップＳ７２２に行き、ｉ番目の組が存在しない場合はステップＳ７２７に行く。
【０１８７】
（ステップＳ７２２）レポート構成部３３は、ｉ番目の組と対応付く操作集合または異常情報を用いて、正常操作集合数を取得する。
【０１８８】
（ステップＳ７２３）レポート構成部３３は、ｉ番目の組と対応付く操作集合または異常情報を用いて、異常操作集合数を取得する。
【０１８９】
（ステップＳ７２４）レポート構成部３３は、ステップＳ７２２で取得した正常操作集合数とステップＳ７２３で取得した異常操作集合数とを用いて、統計処理結果（例えば、異常の割合）を取得する。
【０１９０】
（ステップＳ７２５）レポート構成部３３は、ｉ番目の組に対応付けて、ステップＳ７１５で取得した統計処理結果を格納部１に蓄積する。
【０１９１】
（ステップＳ７２６）レポート構成部３３は、カウンタｉを１、インクリメントする。ステップＳ７２１に戻る。
【０１９２】
（ステップＳ７２７）レポート構成部３３は、組ごとの統計レポートを取得する。上位処理にリターンする。
【０１９３】
なお、図７のフローチャートにおいて、レポート構成部３３は、ユーザごとの統計レポート、装置ごとの統計レポート、組ごとの統計レポートのうちの２以上の統計レポートを取得しても良い。
【０１９４】
また、図７のフローチャートにおいて、レポート構成部３３は、取得した統計レポートを格納部１に蓄積することは好適である。
【０１９５】
次に、ステップＳ２０９の学習処理について、図８のフローチャートを用いて説明する。
【０１９６】
（ステップＳ８０１）学習部３１は、カウンタｉに１を代入する。
【０１９７】
（ステップＳ８０２）学習部３１は、ｉ番目の正常操作集合が存在するか否かを判断する。ｉ番目の正常操作集合が存在する場合はステップＳ８０３に行き、ｉ番目の正常操作集合が存在しない場合はステップＳ８０５に行く。
【０１９８】
（ステップＳ８０３）学習部３１は、ｉ番目の正常操作集合から正常操作ベクトルを構成する。
【０１９９】
（ステップＳ８０４）学習部３１は、カウンタｉを１、インクリメントする。ステップＳ８０２に戻る。
【０２００】
（ステップＳ８０５）学習部３１は、カウンタｊに１を代入する。
【０２０１】
（ステップＳ８０６）学習部３１は、ｊ番目の異常操作集合が存在するか否かを判断する。ｊ番目の異常操作集合が存在する場合はステップＳ８０３に行き、ｊ番目の異常操作集合が存在しない場合はステップＳ８０５に行く。
【０２０２】
（ステップＳ８０７）学習部３１は、ｊ番目の異常操作集合から異常操作ベクトルを構成する。
【０２０３】
（ステップＳ８０８）学習部３１は、カウンタｊを１、インクリメントする。ステップＳ８０２に戻る。
【０２０４】
（ステップＳ８０９）学習部３１は、２以上の正常操作ベクトル、および１以上の異常操作ベクトルを用いて、機械学習のアルゴリズムにより学習処理を行い、操作集合が正常か否かを判断するための学習器を構成する。
【０２０５】
（ステップＳ８１０）学習部３１は、ステップＳ８０９で構成された学習器を判断元情報格納部１１に蓄積する。上位処理にリターンする。
【０２０６】
なお、図８のフローチャートにおいて、学習部３１は、手順書ごと、または手順書のグループごと、またはサーバ装置ごとに学習器を構成し、蓄積することは好適である。
【０２０７】
以下、本実施の形態における異常操作検知装置Ａの具体的な動作例について説明する。まず、判断元情報格納部１１に判断元情報が蓄積される２つの具体例（具体例１、具体例２）について説明する。次に、異常検知のためのクラスタ選択の処理を具体例３で説明する。次に、外れ値検知、新規時系列特徴による検知、希少特徴による検知の各々の異常検知を、具体例４、具体例５、具体例６を用いて説明する。次に、異常操作検知装置Ａが異常箇所明示レポートを出力する場合を、具体例７を用いて説明する。また、異常操作検知装置Ａが統計レポートを出力する場合を、具体例８を用いて説明する。さらに、異常操作検知装置Ａがタイムラインレポートを出力する場合を、具体例９を用いて説明する。
【０２０８】
（具体例１）
判断元情報格納部１１に判断元情報が蓄積される具体例１を、図９を参照して説明する。具体例１において、ユーザが、端末装置を用いてサーバ装置にログインし、ログアウトするまでの期間、システム運用のための各種の正常な操作を行った、とする。なお、ユーザは、手順書をもとに作業を実施した、とする。
【０２０９】
そして、図示しない端末装置では、ユーザが手順書をもとに入力した正常な操作の操作情報（例えば、ウィンドウタイトル、およびキーボード入力）を記録し、ログデータ（操作集合）を蓄積した、とする。そして、端末装置から異常操作検知装置Ａにログデータと、サーバ識別子とユーザ識別子とが送信された、とする。なお、ログデータは、正常操作集合であり、１セッション（ログインからログアウトまで）分の操作集合である。また、サーバ識別子は、ユーザが操作したシステムを構成するサーバ装置であり、端末装置に格納されていた、とする。なお、サーバ識別子は、ここでは、装置識別子である。また、ユーザ識別子も端末装置に格納されていた、とする。
【０２１０】
次に、異常操作検知装置Ａの受付部２は、端末装置から正常操作集合とサーバ識別子とユーザ識別子とを受信する。
【０２１１】
次に、異常操作検知装置Ａの処理部３は、正常操作集合を、例えば、Bag-of-Wordsを用いて、ベクトル化し、正常操作集合ベクトルを構成し、サーバ識別子とユーザ識別子とに対応付けて、判断元情報格納部１１に蓄積する。
【０２１２】
また、処理部３は、各サーバ識別子に対応付いている２以上の正常操作集合ベクトルを、クラスタリングする。そして、かかるクラスタリングの結果、各サーバ識別子に対応付いている２以上の正常操作集合ベクトルは、手順書ごとにグループ化される、とする。
【０２１３】
なお、端末装置から異常操作検知装置Ａにログデータと、サーバ識別子と、手順書識別子とユーザ識別子とが送信されても良い。かかる場合、異常操作検知装置Ａの受付部２は、端末装置から正常操作集合とサーバ識別子と手順書識別子とユーザ識別子とを受信する。そして、処理部３は、正常操作集合を、例えば、Bag-of-Wordsを用いて、ベクトル化し、正常操作集合ベクトルを構成し、当該正常操作集合ベクトルを、受信されたサーバ識別子と手順書識別子とユーザ識別子とに対応付けて、判断元情報格納部１１に蓄積する。
【０２１４】
以上の処理が、多数のユーザの操作に対して行われた、とする。すると、異常操作検知装置Ａの判断元情報格納部１１には、２以上の正常操作集合ベクトルが蓄積される。なお、正常操作集合ベクトルは、判断元情報の一例である。
【０２１５】
以上の具体例１の処理の概要を図９に示す。図９では、Bag-of-Wordsにより、正常操作集合に対して単語出現頻度行列化が行われ、例えば、操作情報「ｌｓ」が「３」、「ｐｉｎｇ」が「２」とする正常操作集合ベクトルが構成される。また、正常操作集合ベクトルに対して、サーバ識別子と手順書識別子とに対応するクラスタリングが行われる。また、図９において、一のユーザが複数の手順書に基づいて一のサーバ装置に対して操作を行っているが、一のユーザが複数の手順書に基づいて複数のサーバ装置に対して操作を行っても良いし、複数のユーザが一のサーバ装置に対して操作を行っても良いし、複数のユーザが一の操作を行っても良い。
【０２１６】
（具体例２）
判断元情報格納部１１に判断元情報が蓄積される具体例２を、図１０を参照して説明する。  具体例２において、手順書情報格納部１３に２以上の手順書情報が格納されている、とする。ここで、手順書情報は、例えば、操作の手順が記載されたファイルである。
【０２１７】
そして、処理部３は、２以上の各手順書情報を、例えば、Bag-of-Wordsでベクトル化する。そして、処理部３は、取得した手順書のベクトルを、クラスタリングし、似た手順書の集合を生成し、クラスタリングされた（例えば、手順書のグループ識別子に対応付けられた）手順書のベクトルを手順書情報格納部１３に蓄積する。なお、手順書情報をベクトル化するアルゴリズムは問わない。
【０２１８】
また、具体例２において、ユーザが、システム運用のために、端末装置を用いてサーバ装置にログインし、ログアウトするまでの期間、各種の正常な操作を行った、とする。なお、ユーザは、ある手順書をもとに作業を実施した、とする。
【０２１９】
そして、図示しない端末装置では、ユーザが手順書をもとに入力した正常な操作の操作情報（ウィンドウタイトル、およびキーボード入力）を記録し、ログデータを蓄積した、とする。そして、端末装置から異常操作検知装置Ａにログデータが送信された、とする。なお、ログデータは、正常操作集合であり、１セッション（ログインからログアウトまで）分の操作集合である。
【０２２０】
次に、異常操作検知装置Ａの受付部２は、端末装置から正常操作集合を受信する。
【０２２１】
次に、異常操作検知装置Ａの処理部３は、正常操作集合を、例えば、Bag-of-Wordsを用いて、ベクトル化し、正常操作集合ベクトルを構成し、判断元情報格納部１１に蓄積する。
【０２２２】
次に、処理部３は、取得した正常操作集合ベクトルと、手順書情報格納部１３の手順書のベクトルの集合から、取得した正常操作集合ベクトルに対応する手順書のベクトルの集合を決定する。処理部３は、例えば、手順書のグループごとに、手順書のベクトルの代表値である代表ベクトルを取得し、正常操作集合ベクトルと最も距離が近い代表ベクトルと対応付ける。なお、代表ベクトルは、例えば、手順書の各ベクトルの各要素の平均値からなる要素の集合である。
【０２２３】
以上の処理が、ユーザの多数の操作に対して行われた、とする。すると、異常操作検知装置Ａの判断元情報格納部１１には、２以上の正常操作集合ベクトルが、手順書に対応付いて蓄積される。
【０２２４】
また、２以上の正常操作集合ベクトルは、ユーザ識別子またはサーバ識別子のうちの１以上の識別子に対応付いて、判断元情報格納部１１に蓄積されても良い。かかる場合、異常操作検知装置Ａの受付部２は、正常操作集合とユーザ識別子またはサーバ識別子のうちの１以上の識別子とを端末装置から受信する。
【０２２５】
以上の具体例２の処理の概要を図１０に示す。図１０において、手順書情報からベクトルが構成され、正常操作集合（ログデータ）からベクトルが構成されている。また、手順書のベクトルがクラスタリングされている。さらに、クラスタリングされた手順書のベクトルの集合と、正常操作集合ベクトルの集合とが対応付いている。
【０２２６】
（具体例３）
異常検知のためのクラスタ選択の処理を説明する具体例３を、図１１を参照して説明する。  具体例３において、被験者が、システム運用のために、端末装置を用いてサーバ装置にログインし、ログアウトするまでの期間、手順書Ａに基づいて、各種の操作を行った、とする。
【０２２７】
そして、端末装置では、被験者が手順書Ａをもとに入力した操作の操作情報（ウィンドウタイトル、およびキーボード入力）を記録し、ログデータを蓄積した、とする。そして、端末装置から異常操作検知装置Ａにログデータを含む判断指示が送信された、とする。なお、ログデータは、検査対象の操作集合であり、１セッション（ログインからログアウトまで）分の操作集合である。
【０２２８】
次に、異常操作検知装置Ａの受付部２は、端末装置から操作集合を含む判断指示を受信する。
【０２２９】
判断部３２は、判断指示に対応する操作集合を取得する。次に、判断部３２は、操作集合から、例えば、Bag-of-Wordsを用いて、操作集合ベクトルを構成する。
【０２３０】
次に、判断部３２の手順書決定手段３２１は、当該操作集合ベクトルを用いて、当該操作集合ベクトルに最も近似するベクトル群である、手順書Ａのベクトル群を決定する。
【０２３１】
次に、正常操作集合選択手段３２２は、手順書Ａに対応する２以上の正常操作集合を判断元情報格納部１１から取得する。つまり、正常操作集合選択手段３２２は、手順書Ａによるログの情報を取得する。
【０２３２】
以上の具体例３の処理の概念を示す図は、図１１である。
【０２３３】
（具体例４）
外れ値検知の処理を説明する具体例４を、図１２を参照して説明する。  
【０２３４】
判断部３２は、例えば、具体例３で取得した手順書Ａに対応する２以上の各正常操作集合から正常操作集合ベクトルを取得する。かかる２以上の正常操作集合ベクトル（学習データと言っても良い）は、図１２の１２０１である、とする。なお、図１２の１２０１は、正常ログ群である。
【０２３５】
次に、判断部３２は、端末装置から受信された操作集合から操作集合ベクトルを取得する。かかる操作集合ベクトルは、図１２の１２０２である、とする。なお、図１２の１２０２は、新規ログである。
【０２３６】
そして、判断部３２は、操作集合ベクトル１２０２と２以上の正常操作集合ベクトル１２０１とを比較して、ｌｏｆによる外れ値検知を行い、操作集合ベクトル１２０２は外れ値である、と判断した、とする。
【０２３７】
次に、判断部３２は、変数「第一異常情報」に「異常」を示す値を代入する。そして、判断部３２は、端末装置から受信された操作集合または当該操作集合から取得した操作集合ベクトルに対応付けて、「異常」を示す情報（例えば、「１」）、ユーザ識別子（例えば、「ユーザＡ」）、サーバ識別子（例えば、「サーバＡ」）を蓄積する。なお、かかる場合、端末装置から操作集合とユーザ識別子とサーバ識別子とが送信され、受付部２が当該情報を受信した、とする。
【０２３８】
（具体例５）
新規時系列特徴による検知の処理を説明する具体例５を、図１３を参照して説明する。具体例５において、例えば、判断部３２は、１セッション内のログデータを特徴抽出したものをbigramによる時系列データにする。そして、判断部３２は、過去の学習データには存在しない時系列の特徴数をカウントし、閾値を超えたか否かで異常検知する、とする。
【０２３９】
判断部３２は、例えば、具体例３で取得した手順書Ａに対応する２以上の正常操作集合を取得する。
【０２４０】
次に、判断部３２は、端末装置から受信された新規のログである操作集合の中から、２つの操作情報である連続操作情報を、１つずつ操作情報をずらしながら取得していく。そして、判断部３２は、各連続操作情報が、２以上の正常操作集合の中に出現するか否かを判断する。なお、図１１において、新規のログである操作集合の中の「Ｅ→Ｂ」の連続操作情報は、２以上の正常操作集合の中に出現しない。なお、ここで、端末装置から操作集合に加えて、ユーザ識別子とサーバ識別子のうちの１以上の識別子も受信されている、とする。
【０２４１】
次に、判断部３２は、２以上の正常操作集合の中に出現しなかった連続操作情報の数を算出する。また、判断部３２は、２以上の正常操作集合の中に出現しなかった連続操作情報の箇所を示す箇所情報も取得する。なお、箇所情報は、端末装置から受信された操作集合の中の箇所を示す情報であり、例えば、操作集合内でのオフセット、操作集合内でのレコード番号、または操作集合内での行番号などである。
【０２４２】
次に、判断部３２は、２以上の正常操作集合の中に出現しなかった連続操作情報の数が閾値以上であるか否かを判断する。ここで、判断部３２は、閾値未満である、と判断した、とする。
【０２４３】
次に、判断部３２は、変数「第二異常情報」に「正常」を示す値を代入する。そして、判断部３２は、端末装置から受信された操作集合または当該操作集合から取得した操作集合ベクトルに対応付けて、「正常」を示す情報（例えば、「０」）、ユーザ識別子（例えば、「ユーザＡ」）、およびサーバ識別子（例えば、「サーバＡ」）を蓄積する。なお、ここで、判断部３２は、箇所情報（例えば、オフセット）を異常情報として蓄積しても良い。
【０２４４】
（具体例６）
希少特徴による検知の処理を説明する具体例６を、図１４を参照して説明する。具体例６において、例えば、判断部３２は、１セッション内のログデータを特徴抽出し、過去の学習データに、閾値Ａ以下の数しか存在しない特徴の含有率が閾値Ｂを超えたか否かで異常検知する、とする。なお、特徴は、ここでは、操作情報である。
【０２４５】
まず、判断部３２は、具体例３で取得した手順書Ａに対応する２以上の正常操作集合から各操作情報と出現回数との組の情報を、多数取得する。そして、判断部３２は、出現回数が閾値Ａ以下の操作情報（ここでは「Ｚ」）を希操作情報として、希操作情報格納部１２に蓄積する。
【０２４６】
次に、判断部３２は、端末装置から受信された新規のログである操作集合の中から、順に２以上の各操作情報を取得する。そして、判断部３２は、２以上の各操作情報に対して、希操作情報格納部１２に存在するか否かを判断し、希操作情報格納部１２に存在する希操作情報に該当する操作情報の割（含有率）を算出する。なお、判断部３２は、２以上の各操作情報から、希操作情報に該当する操作情報を検知した場合、当該操作情報の箇所を示す箇所情報を格納部１に蓄積することは好適である。また、判断部３２は、かかる箇所情報と、希操作情報または希操作情報を特定する情報とを対応付けて、格納部１に蓄積することは好適である。
【０２４７】
次に、判断部３２は、含有率が閾値Ｂ以上または閾値Ｂより大きいか否かを判断する。ここで、判断部３２は、含有率が閾値Ｂ以上または閾値Ｂより大きいと判断し、変数「第三異常情報」に「異常」を示す値を代入する。
【０２４８】
そして、処理部３は、例えば、取得した第一異常情報、第二異常情報、第三異常情報のうち、例えば、「異常」であると判断された第一異常情報、第三異常情報とを用いて、出力する異常情報を構成した、とする。
【０２４９】
次に、出力部４は、構成された異常情報を出力する。かかる出力例は、図１５である。図１５において、新規ログが、外れ値であること、および新規ログ内の希少特徴（Ｚ）が明示されている。
【０２５０】
（具体例７）
今、具体例４から具体例６で説明した処理により、図１６に示す異常情報管理表が格納部１に蓄積された、とする。異常情報管理表は、異常情報を管理する表である。異常情報管理表は、「ＩＤ」「操作集合識別子」「ユーザ識別子」「装置識別子」「異常情報」を有する１または２以上のレコードを含む表である。「異常情報」は、「外れ値検知結果」「新規時系列特徴検知結果」「希少特徴検知結果」の属性を有する。
【０２５１】
図１６において、「ＩＤ」はレコードを識別する情報である。「操作集合識別子」は操作集合を識別する情報であり、ここでは、例えば、操作集合が格納されたファイル名である。また、「ユーザ識別子」は操作集合の中の操作情報に対応する操作を行ったユーザの識別子である。また、「装置識別子」は操作集合の中の操作情報に対応する操作が行われたサーバの識別子である。また、「外れ値検知結果」の属性値が「０」である場合は、外れ値検知の結果が「正常」であったことを示す。また、「外れ値検知結果」の属性値が「１」である場合は、外れ値検知の結果が「異常」（外れ値）であったことを示す。また、「新規時系列特徴検知結果」「希少特徴検知結果」は、各々の異常であった箇所のオフセットである。オフセットは、操作集合の中のオフセットである。また、異常であった箇所は、複数存在しても良いことは言うまでもない。なお、ここでは、「新規時系列特徴検知結果」「希少特徴検知結果」にオフセットが記載されている場合、各々新規時系列特徴検知の結果が異常であること、希少特徴検知の結果が異常であることを示す。
【０２５２】
かかる状況において、異常操作検知装置Ａの受付部２は、レポート出力指示を受け付けた、とする。また、かかるレポート出力指示は、操作集合識別子「Ｉ００２」を有し、異常箇所明示レポートを出力する指示である、とする。
【０２５３】
次に、レポート構成部３３は、受け付けられたレポート出力指示に含まれる操作集合識別子「Ｉ００２」により識別される操作集合を格納部１から取得する。また、レポート構成部３３は、操作集合識別子「Ｉ００２」により識別される操作集合から取得された異常情報であり、操作集合識別子「Ｉ００２」と対になる「新規時系列特徴検知結果」「希少特徴検知結果」を取得する。かかる「新規時系列特徴検知結果」「希少特徴検知結果」は、オフセット「８６，２７３，５１９，１０２６・・・」「８２１，２０５６，・・・」である。
【０２５４】
次に、レポート構成部３３は、取得した操作集合の中の上記のオフセットを開始の箇所とする一連の命令の属性値（例えば、文字色）を、異常を示す文字色（例えば、「赤」）に変更する。
【０２５５】
次に、レポート構成部３３は、一部の命令の属性値を変更した操作集合を取得する。かかる操作集合は、異常箇所明示レポートである。
【０２５６】
次に、出力部４は、当該異常箇所明示レポートを出力する。かかるレポートの出力例は、図１７の１７０１である。図１７において、従来は、１７０２に示すような操作ログ（操作集合）の全体である全体ログを監査人がチェックしており、その監査業務の負担が甚大であった。一方、上述したように、異常箇所明示レポートを得ることにより、監査人は、異常を示す属性値の箇所（図１７の１７０３）のみを監査すれば足り、監査業務の負担の大幅な軽減を図ることができる。なお、図１７は、異常箇所明示レポートのイメージを説明する図である。
【０２５７】
（具体例８）
今、具体例４から具体例６で説明した処理により、図１６に示す異常情報管理表が格納部１に蓄積された、とする。
【０２５８】
かかる状況において、異常操作検知装置Ａの受付部２は、レポート出力指示を受け付けた、とする。また、かかるレポート出力指示は、「ユーザ識別子」「装置識別子」の組ごとの統計レポートを構成する指示である、とする。
【０２５９】
次に、レポート構成部３３は、図１６を参照し、組ごとに、「異常が検知された操作集合の数／すべての操作集合の数」を取得する、とする。つまり、レポート構成部３３は、例えば、「（ユーザＡ，サーバＡ）＝２／１００」（ユーザＡ，サーバＡと対になる操作集合が「１００」存在し、かつ「外れ値検知結果」「新規時系列特徴検知結果」「希少特徴検知結果」のいずれかが「０」以外の情報である場合（異常である場合）が「２」であることを示す）を取得した、とする。また、レポート構成部３３は、例えば、「（ユーザＡ，サーバＢ）＝０／１００」（ユーザＡ，サーバＡと対になる操作集合が「１００」存在し、かつ「外れ値検知結果」「新規時系列特徴検知結果」「希少特徴検知結果」のいずれかが「０」以外の情報である場合（異常である場合）が「０」であることを示す）を取得した、とする。その他、レポート構成部３３は、「（ユーザＡ，サーバＣ）＝０／１００」「（ユーザＡ，サーバＥ）＝１／１００」・・・「（ユーザＦ，サーバＥ）＝０／５０」を取得した、とする。
【０２６０】
次に、レポート構成部３３は、取得した上記の情報から、横軸が「装置識別子」、縦軸が「ユーザ識別子」からなる表であり、組ごとの「異常が検知された操作集合の数／すべての操作集合の数」、および各装置識別子ごとの合計、各ユーザ識別子ごと合計を有する表を構成した、とする。なお、かかる表は、統計処理結果であり、統計レポートである。
【０２６１】
次に、出力部４は、構成された統計レポートを出力する。かかる出力例は、図１８である。
【０２６２】
（具体例９）
今、具体例４から具体例６で説明した処理により、図１６に示す異常情報管理表が格納部１に蓄積された、とする。また、格納部１には、例えば、操作集合識別子「Ｉ００２」で識別される操作集合に含まれる操作情報と対応付いているフィールを複数有する画面動画が格納されている、とする。
【０２６３】
かかる状況において、異常操作検知装置Ａの受付部２は、レポート出力指示を受け付けた、とする。また、かかるレポート出力指示は、操作集合識別子「Ｉ００２」を有し、タイムラインレポートを出力する指示である、とする。
【０２６４】
次に、レポート構成部３３は、レポート出力指示が有する操作集合識別子「Ｉ００２」と対になる画面動画を格納部１から取得する。
【０２６５】
次に、レポート構成部３３は、操作集合識別子「Ｉ００２」と対になる「新規時系列特徴検知結果」「希少特徴検知結果」を図１６の表から取得する。そして、レポート構成部３３は、「新規時系列特徴検知結果」のオフセットの値が示す箇所が異常であることを示すタイムラインの画像を構成する。なお、画像のデータ構造は問わない。また、レポート構成部３３は、「希少特徴検知結果」のオフセットの値が示す箇所が異常であることを示すタイムラインの画像を構成する。なお、画像のデータ構造は問わない。そして、レポート構成部３３は、「新規時系列特徴検知結果」のタイムラインの画像、「希少特徴検知結果」のタイムラインの画像を取得する。
【０２６６】
次に、レポート構成部３３は、例えば、画面動画と、「新規時系列特徴検知結果」のタイムラインの画像と、「希少特徴検知結果」のタイムラインの画像とを有するタイムラインレポートを構成する。
【０２６７】
次に、出力部４は、当該タイムラインレポートを出力する。かかるレポートの出力例は、図１９である。図１９において、１９０１は、タイムラインの表示である。１９０２は、「新規時系列特徴検知結果」のタイムラインの画像である。１９０３は、「希少特徴検知結果」のタイムラインの画像である。１９０４は、画面動画である。１９０２、１９０３において、画面動画の全体の中のどの時点（箇所）での異常操作が多いかが、容易に視覚的に理解可能である。
【０２６８】
また、レポート構成部３３は、指示を受け付け得るタイムラインの画像を構成することは好適である。つまり、レポート構成部３３は、指示を受け付けた場合に、処理部３が、当該指示された箇所（時点）に対応する画面動画を取得するようなタイムラインの画像を構成することは好適である。かかる場合、ユーザが１９０２または１９０３のいずれかの箇所をマウス等の指示手段を用いて指示した場合、受付部２は、出力されているタイムラインの画像の中の一の箇所を指定する箇所指示を受け付ける。次に、処理部３は、当該箇所指示に対応する箇所に対する操作情報を取得する。次に、処理部３は、当該取得した操作情報と対になるフィールドを決定する。なお、かかるフィールドは、画面動画の中のフィールドである。そして、出力部４は、当該フィールドを出力する。かかる処理により、例えば、異常操作が行われた箇所の操作画面が直ちに出力でき、異常操作の原因究明に役立つ。
【０２６９】
次に、出力部４は、１９０４の画面動画の領域を、決定されたフィールドにする。なお、出力部４は、当該フィールドから画面動画を再生しても良い。
【０２７０】
以上、本実施の形態によれば、システム運用において検知された異常操作に関する適切なレポートを出力できる。
【０２７１】
また、本実施の形態によれば、システム運用において検知された異常操作に関するレポートであり、操作集合の中の異常な操作の箇所を明示したレポートを出力できる。
【０２７２】
また、本実施の形態によれば、システム運用において検知された異常操作に関するレポートであり、ユーザごと、装置ごと、またはユーザと装置の組ごとに統計処理した結果のレポートを出力できる。
【０２７３】
また、本実施の形態によれば、システム運用において精度高く異常操作を検知でき、かつ異常操作に関するレポートを出力できる。
【０２７４】
また、本実施の形態によれば、システム運用において、異常操作を検知できる。その結果、監査者の労力が削減できる。
【０２７５】
また、本実施の形態によれば、１ログ内での異常度合の高い箇所も特定し、全般的に監査量の削減が期待できる。
【０２７６】
なお、本実施の形態において、主に、１セッション内のログデータを用いて、異常性を検知した。しかし、例えば、異常操作検知装置Ａが、被験者が操作する端末装置から操作情報をリアルタイムに受信し、蓄積された２以上の操作情報に対して異常性を検知する処理を行っても良い。なお、異常操作検知装置Ａが異常性を検知する処理を開始するトリガーは、受信された２以上の操作情報の量が予め決められた条件を満たすほど多くなった場合、または被験者の操作時間が予め決められた条件を満たすほど長くなった場合等が好適である。
【０２７７】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における異常操作検知装置Ａを実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、システム運用時の情報システムに対する正常な操作を特定する２以上の正常操作情報に関する２以上の正常操作集合に基づく判断元情報が格納される判断元情報格納部にアクセス可能なコンピュータを、被検査者が情報システムに対して行った操作を特定する２以上の操作情報を有する操作集合を受け付ける受付部と、前記判断元情報と、前記受付部が受け付けた操作集合とを用いて、当該操作集合に対する異常性に関する情報である異常情報を取得する判断部と、前記異常情報を用いて、異常に関するレポートを構成するレポート構成部と、前記レポートを出力する出力部として機能させるためのプログラムである。
【０２７８】
また、図２０は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の異常操作検知装置Ａ等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図２０は、このコ
【０２７９】
図２０において、コンピュータシステム３００は、ＣＤ−ＲＯＭドライブを含むコンピュータ３０１と、キーボード３０２と、マウス３０３と、モニタ３０４とを含む。
【０２８０】
図２１において、コンピュータ３０１は、ＣＤ−ＲＯＭドライブ３０１２に加えて、ＭＰＵ３０１３と、ＭＰＵ３０１３、ＣＤ−ＲＯＭドライブ３０１２に接続されたバス３０１４と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ３０１５と、ＭＰＵ３０１３に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ３０１６と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク３０１７とを含む。ここでは、図示しないが、コンピュータ３０１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０２８１】
コンピュータシステム３００に、上述した実施の形態の異常操作検知装置Ａ等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ３１０１に記憶されて、ＣＤ−ＲＯＭドライブ３０１２に挿入され、さらにハードディスク３０１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３０１に送信され、ハードディスク３０１７に記憶されても良い。プログラムは実行の際にＲＡＭ３０１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３１０１またはネットワークから直接、ロードされても良い。
【０２８２】
プログラムは、コンピュータ３０１に、上述した実施の形態の異常操作検知装置Ａ等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３００がどのように動作するかは周知であり、詳細な説明は省略する。
【０２８３】
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理（ハードウェアでしか行われない処理）は含まれない。
【０２８４】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０２８５】
また、上記各実施の形態において、一の装置に存在する２以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。
【０２８６】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２８７】
以上のように、本発明にかかる異常操作検知装置は、システム運用において検知された異常操作に関するレポートを出力できるという効果を有し、異常操作検知装置等として有用である。
【符号の説明】
【０２８８】
１  格納部
２  受付部
３  処理部
４  出力部
１１  判断元情報格納部
１２  希操作情報格納部
１３  手順書情報格納部
３１  学習部
３２  判断部
３３  レポート構成部
３２１  手順書決定手段
３２２  正常操作集合選択手段
３２３  判断手段
【図１】
2020112869.tif 000003
【図２】
2020112869.tif 000004
【図３】
2020112869.tif 000005
【図４】
2020112869.tif 000006
【図５】
2020112869.tif 000007
【図６】
2020112869.tif 000008
【図７】
2020112869.tif 000009
【図８】
2020112869.tif 000010
【図９】
2020112869.tif 000011
【図１０】
2020112869.tif 000012
【図１１】
2020112869.tif 000013
【図１２】
2020112869.tif 000014
【図１３】
2020112869.tif 000015
【図１４】
2020112869.tif 000016
【図１５】
2020112869.tif 000017
【図１６】
2020112869.tif 000018
【図１７】
2020112869.tif 000019
【図１８】
2020112869.tif 000020
【図１９】
2020112869.tif 000021
【図２０】
2020112869.tif 000022
【図２１】
2020112869.tif 000023