JP2014164618A - 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム - Google Patents
頻出パターン抽出装置、頻出パターン抽出方法及びプログラム Download PDFInfo
- Publication number
- JP2014164618A JP2014164618A JP2013036332A JP2013036332A JP2014164618A JP 2014164618 A JP2014164618 A JP 2014164618A JP 2013036332 A JP2013036332 A JP 2013036332A JP 2013036332 A JP2013036332 A JP 2013036332A JP 2014164618 A JP2014164618 A JP 2014164618A
- Authority
- JP
- Japan
- Prior art keywords
- item
- cluster
- file
- frequent pattern
- central
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000605 extraction Methods 0.000 title claims abstract description 93
- 239000000284 extract Substances 0.000 claims abstract description 14
- 238000000034 method Methods 0.000 claims description 49
- 230000001419 dependent effect Effects 0.000 claims description 13
- 238000005065 mining Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 19
- 238000004364 calculation method Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 4
- 238000009795 derivation Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- MKIMSXGUTQTKJU-UHFFFAOYSA-N Propamocarb hydrochloride Chemical compound [Cl-].CCCOC(=O)NCCC[NH+](C)C MKIMSXGUTQTKJU-UHFFFAOYSA-N 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 239000012467 final product Substances 0.000 description 2
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】複数のユーザが協調して複数のファイルを操作して作業を行う場合において、より汎用的なワークフローの抽出を実現する。
【解決手段】ワークフローの中心となる中心ファイルクラスタを抽出する中心クラスタ抽出部3273と、中心ファイルクラスタと同じワークフローに含まれる従属ファイルクラスタを特定する従属クラスタ特定部3275と、中心ファイルクラスタに属するファイルと従属ファイルクラスタに属するファイルにおける操作履歴に基づいて各ユーザにおける中心ファイルクラスタ及び従属ファイルクラスタの操作シーケンスの集合を抽出するシーケンス抽出部3276と、シーケンス抽出部3276で抽出した操作シーケンスの集合に基づいてワークフローとなる頻出パターンを抽出する頻出パターン抽出部3277を備える。
【選択図】図3
【解決手段】ワークフローの中心となる中心ファイルクラスタを抽出する中心クラスタ抽出部3273と、中心ファイルクラスタと同じワークフローに含まれる従属ファイルクラスタを特定する従属クラスタ特定部3275と、中心ファイルクラスタに属するファイルと従属ファイルクラスタに属するファイルにおける操作履歴に基づいて各ユーザにおける中心ファイルクラスタ及び従属ファイルクラスタの操作シーケンスの集合を抽出するシーケンス抽出部3276と、シーケンス抽出部3276で抽出した操作シーケンスの集合に基づいてワークフローとなる頻出パターンを抽出する頻出パターン抽出部3277を備える。
【選択図】図3
Description
本発明は、複数のアイテムにおける各アイテムに対する各ユーザの操作履歴から時系列の頻出パターンを抽出する頻出パターン抽出装置及び頻出パターン抽出方法、並びに、当該頻出パターン抽出方法をコンピュータに実行させるためのプログラムに関する。
従来から、ユーザのアイテム操作履歴を解析して、特徴的な頻出パターンを抽出し、その抽出したパターンを利用して、ユーザの操作効率を向上させるような手法が多く提案されている。例えば、Webのアクセスログを解析し、ページAを見た後には、ページFをよく見るなどのパターンを抽出することで、ページAを見たユーザに対して、次にページFを見ることを推薦するような技術がある。
また、オフィスにおけるユーザのファイル操作履歴を分析して、作業の流れ(ワークフロー)を抽出する手法も提案されている。
例えば、下記の特許文献1では、プリンタや複写機などの画像処理装置で行われた処理についての画像情報を含む履歴を用いて業務手順を推定する手法が提案されている。この手法の特徴的なところは、文書画像の特徴量の類似度によりフォーム判定を行い、蓄積された多数の文書画像のログを、同一種類の帳票ひな型ごとの集合に分類することである。その結果「フォームAの帳票は、中村(課員)が印刷して押印した後スキャンし、次に鈴木(課長)が押印の後コピーし、最後に田中(部長)が押印の後スキャンする」というようなワークフローが抽出できる。
また、例えば、下記の特許文献2では、オフィスでの文書に対する操作の履歴から、分岐を含むワークフローを生成する手法が提案されている。この手法は、文書単位で操作履歴レコードをノードとして時系列に並べたものをツリーとし、ツリー間で一部が共通の属性(ファイル名や、操作者、操作種別など)を含むノード同士を結合していくことで、分岐や結合を含んだワークフローを抽出している。
Agrawal, R. and Srikant, R., "Fast Algorithms for Mining Association Rules", Proceedings of the 20th VLDB Conference, 1994, p487-499
J. Pei, J. Han, B. Mortazavi-Asl, Q. Checn, U. Dayal, and M.C. Hsu, "PrefixSpan: Mining sequential patterns efficiently by prefix-projected pattern growth", Proceedings of ICDE, 2001, p215-224
Jian Pei, Haixun Wang, Jian Liu, Ke Wang, Jianyong Wang, and Philip S. Yu, "Discovering Frequent Closed Partial Orders from Strings", IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. 18, NO. 11, NOVEMBER 2006, p1467-1481
しかしながら、上述した従来手法には、下記の2つの課題がある。
まず、1つ目の課題は、単一の文書(単一のアイテム)だけに限られたワークフローしか抽出できないことである。特許文献1も特許文献2も、単一の文書毎に操作履歴をまとめることで、その文書に対して、どういうユーザが、どのような順で、どういった操作を行っていくのかを推定している。しかしながら、オフィスでのワークフローは、複数の文書(複数のアイテム)を扱って複数のユーザが協調して行うようなものも多く、上述した従来手法ではこのようなワークフローを抽出することができない。
2つ目の課題は、複数のユーザが並行して作業を行うようなワークフローを抽出できないことである。例えば、Aさんが作業した後には、BさんとCさんは独立して並行に作業を行うことができ、BさんとCさんの作業が両方完了した後には、Dさんが作業を開始できるようなワークフローである。特許文献2では、分岐や結合を含むワークフローを扱えるが、ここで言う分岐や結合は、我々の言う並行作業での分岐や結合とは異なる。特許文献2では、分岐はIF−THENルールであり、例えば、見積もり依頼書を作成するワークフローにおいて、見積もり物品の種別に応じて、次のフローである依頼先の担当者を切り替えるようなワークフローである。つまり、実際の作業の流れは***であり、我々の言う複数のユーザが独立して並行に行うような作業の流れではなく、そのようなワークフローを抽出することはできない。
すなわち、上述した従来手法では、上述した2つの課題のために、複数のユーザが協調して複数のアイテムを操作して作業を行う場合において、限定的なワークフローしか抽出することができない。
本発明は、上述した従来手法による課題に鑑みてなされたものであり、複数のユーザが協調して複数のアイテムを操作して作業を行う場合において、より汎用的なワークフローの抽出を実現する仕組みを提供することを目的とする。
本発明の頻出パターン抽出装置は、複数のアイテムにおける各アイテムに対する各ユーザの操作履歴から時系列の頻出パターンを抽出する頻出パターン抽出装置であって、前記複数のアイテムにおける各アイテム間の類似度に基づいて、前記複数のアイテムを複数のアイテムクラスタにクラスタリングするクラスタリング手段と、前記複数のアイテムクラスタの中から、前記頻出パターンの中心となる中心アイテムクラスタを抽出する中心クラスタ抽出手段と、前記複数のアイテムクラスタの中から、前記中心アイテムクラスタと同じ前記頻出パターンに含まれる従属アイテムクラスタを特定する従属クラスタ特定手段と、前記中心アイテムクラスタに属するアイテムと前記従属アイテムクラスタに属するアイテムにおける操作履歴に基づいて、前記各ユーザにおける前記中心アイテムクラスタおよび前記従属アイテムクラスタの操作シーケンスの集合を抽出するシーケンス抽出手段と、前記シーケンス抽出手段で抽出した操作シーケンスの集合に基づいて、前記頻出パターンを抽出する頻出パターン抽出手段とを有する。
また、本発明は、上述した頻出パターン抽出装置による頻出パターン抽出方法、及び、当該頻出パターン抽出方法をコンピュータに実行させるためのプログラムを含む。
また、本発明は、上述した頻出パターン抽出装置による頻出パターン抽出方法、及び、当該頻出パターン抽出方法をコンピュータに実行させるためのプログラムを含む。
本発明によれば、複数のユーザが協調して複数のアイテムを操作して作業を行う場合において、ユーザが独立して並行に作業を行うようなパターンも含めて、より汎用的なワークフローの抽出を実現することができる。これにより、このワークフローを用いて、ユーザのアイテム操作をナビゲートするなど、作業の効率を向上させることが可能となる。
以下に、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。
本発明の実施形態では、アイテムとして、フォルダ(またはディレクトリ)構造を持つファイルを対象とする。なお、本実施形態では、アイテムとしてファイルを対象としているが、本発明においては、これに限定されるものではない。
図1は、本発明の実施形態に係る頻出パターン抽出システムの装置構成の一例を示す模式図である。
頻出パターン抽出システムは、クライアントサーバモデルとして実現される。具体的に、本実施形態に係る頻出パターン抽出システムは、図1に示すように、ネットワーク101、端末A102、端末B103、端末C104、及び、ファイル管理サーバー105を備えて構成されている。
頻出パターン抽出システムは、クライアントサーバモデルとして実現される。具体的に、本実施形態に係る頻出パターン抽出システムは、図1に示すように、ネットワーク101、端末A102、端末B103、端末C104、及び、ファイル管理サーバー105を備えて構成されている。
端末A102、端末B103、端末C104、及び、ファイル管理サーバー105は、ネットワーク101を介して接続されており、それぞれ相互間で各種の情報の授受を実行する。ユーザは、それぞれ、端末A102、端末B103、端末C104上の専用のクライアントツールを用いて、ファイルの登録、閲覧、削除などのファイル操作を行う。
図2は、図1に示す各装置の内部構成の一例を示すブロック図である。
図1に示す各装置は、図2に示すように、制御部201、バス202、メモリ部203、大規模記憶部204、表示部205、入力部206、出力部207、及び、ネットワーク接続部208を有して構成されている。
図1に示す各装置は、図2に示すように、制御部201、バス202、メモリ部203、大規模記憶部204、表示部205、入力部206、出力部207、及び、ネットワーク接続部208を有して構成されている。
制御部201は、例えばCPU等で構成されており、当該装置における動作を統括的に制御する。
バス202は、制御部201、メモリ部203、大規模記憶部204、表示部205、入力部206、出力部207、及び、ネットワーク接続部208を相互に通信可能に接続する。制御部201は、バス202を介して、当該装置の各部(203〜208)を制御することにより、当該装置における動作を統括的に制御する。
メモリ部203は、例えば、RAMやROM等で構成される電子的な記憶装置である。制御部201は、このメモリ部203に記憶されたプログラムやデータに従って動作し、バス202を介して接続された当該装置の各部を制御する。
大規模記憶部204は、例えば、ハードディスクや光学ディスク等で構成される記憶装置である。
表示部205は、本システムを使用するユーザに対し、文書や画像等を表示するディスプレイ装置である。
入力部206は、例えば、表示部205の表示内容に連動した指示等を入力するためのマウス、スティック、パッド等のポインティングデバイスである。なお、タッチパネル機能付きディスプレイ等、表示部205と入力部206を兼ねる装置を用いてもよい。
出力部207は、例えば、電子データを紙に出力するプリンタデバイス等である。
ネットワーク接続部208は、電子データを装置外から取り込んだり、或いは、電子データを装置外に送信したりするためのネットワークインターフェースである。
なお、図2に示す201〜208は、PC等の汎用コンピュータ単体として構成してもよいし、或いは、MFP等の電子機器内に構築してもよい。また、互いに接続された複数のコンピュータやサーバー、及び、ディスプレイやPDA等の周辺機器の集合によって構築してもよい。
図3は、図1に示すファイル管理サーバー105内に構築されるファイル管理システム320の機能構成の一例を示すブロック図である。なお、図3において、ユーザ端末310は、端末A102、端末B103或いは端末C104に相当し、クライアントツールが構築されている。ファイル管理システム320が構築されるファイル管理サーバー105は、本発明の実施形態に係る頻出パターン抽出装置(複数のアイテムにおける各アイテムに対する各ユーザの操作履歴から時系列の頻出パターンを抽出する頻出パターン抽出装置)を構成する。
ファイル管理システム320は、操作取得部321、ファイル管理部322、データベース323、操作履歴管理部324、操作履歴データベース325、情報送信部326、及び、ワークフロー抽出部327を有して構成されている。
なお、本実施形態では、ファイル管理システム320の中にワークフロー抽出機能を有するワークフロー抽出部327を構成しているが、本発明においてはこの形態に限定されるものではない。例えば、ファイル管理機能とワークフロー抽出機能とをそれぞれ単体で構築してもよいし、ワークフロー抽出機能を、ファイル管理システム320とは別の他のシステムに組み込む形で実施してもよい。また、本実施形態では、ファイル管理システム320をクライントサーバモデルで実施しているが、本発明においてはこの形態に限定されるものではなく、例えばクライアント単体でも実施可能である。
ここで、図3に示す各構成部(321〜327)と、図2に示す各構成部との対応関係の一例について説明する。
例えば、図2に示す制御部201及びメモリ部203に記憶されているプログラム、並びに、ネットワーク接続部208から、図3に示す操作取得部321及び情報送信部326が構成される。
また、例えば、図2に示す制御部201及びメモリ部203に記憶されているプログラムから、図3に示すファイル管理部322、操作履歴管理部324及びワークフロー抽出部327が構成される。
また、例えば、図2に示す大規模記憶部204から、データベース323及び操作履歴データベース325が構成される。
例えば、図2に示す制御部201及びメモリ部203に記憶されているプログラム、並びに、ネットワーク接続部208から、図3に示す操作取得部321及び情報送信部326が構成される。
また、例えば、図2に示す制御部201及びメモリ部203に記憶されているプログラムから、図3に示すファイル管理部322、操作履歴管理部324及びワークフロー抽出部327が構成される。
また、例えば、図2に示す大規模記憶部204から、データベース323及び操作履歴データベース325が構成される。
操作取得部321は、ユーザ端末310上のクライアントツールから入力されたファイル操作情報を取得する。そして、操作取得部321は、取得したファイル操作情報を、ファイル管理部322や操作履歴管理部324に送信する。
ファイル管理部322は、操作取得部321から送信されたファイル操作情報を受け取り、ファイル操作情報に基づきデータベース323と連携して所定のファイル操作処理を行う。ここで言うファイル操作とは、例えば、ファイルの新規登録や、オープン、コピー、削除、また、フォルダに対する操作などを指し、その処理内容は一般的なファイル管理システムと同様である。この処理結果の情報は、情報送信部326を通じて、ユーザ端末310に送られ、ユーザ端末310上のクライアントツールに表示される。
データベース323は、ファイル管理システム320で管理するファイルやフォルダの情報や、ファイル管理システム320を利用するユーザのユーザ情報などを格納する。ユーザ情報としては、ユーザ名やユーザIDなどのユーザ単体の情報だけではなく、ユーザが所属するグループや、グループに所属しているユーザのリストなどのユーザグループに関する情報も含む。
操作履歴管理部324は、操作取得部321から送信されたファイル操作情報を受け取り、操作履歴データベース325にファイル操作履歴としてファイル操作情報を格納して管理する。
操作履歴データベース325は、操作履歴管理部324からのファイル操作情報をファイル操作履歴として格納する。
図4は、本発明の実施形態を示し、図3に示す操作履歴データベース325にファイル操作履歴として格納されるファイル操作情報の一例を示す図である。
図4において、ログID401は、ファイル操作情報を一意に識別するための符号である。時間402は、ファイル操作が行われた時間情報を表す。ユーザID403は、ファイル操作を行ったユーザを識別するための符号である。ファイルID404は、操作対象のファイルを識別するための符号である。操作イベント405は、実行されたファイル操作イベントの種類を表す。この図4に示すファイル操作情報は一例であり、これに限定されるわけではない。以降、説明を簡単にするためにファイルに対する操作は省略することがあるが、実際にはファイルとその操作はセットとして扱われ、ファイル操作が一致するとは、ファイルとその操作の両方が一致することを指している。
図4において、ログID401は、ファイル操作情報を一意に識別するための符号である。時間402は、ファイル操作が行われた時間情報を表す。ユーザID403は、ファイル操作を行ったユーザを識別するための符号である。ファイルID404は、操作対象のファイルを識別するための符号である。操作イベント405は、実行されたファイル操作イベントの種類を表す。この図4に示すファイル操作情報は一例であり、これに限定されるわけではない。以降、説明を簡単にするためにファイルに対する操作は省略することがあるが、実際にはファイルとその操作はセットとして扱われ、ファイル操作が一致するとは、ファイルとその操作の両方が一致することを指している。
ここで、再び、図3の説明に戻る。
情報送信部326は、ファイル管理部322からの情報をユーザ端末310に送信する。
情報送信部326は、ファイル管理部322からの情報をユーザ端末310に送信する。
ワークフロー抽出部327は、ワークフローを抽出する処理を行う。ここで言うワークフローとは、ある目的を達成するための作業の流れを指し、ユーザとファイル操作をノードとしたグラフ構造で表せられるものである。
図7は、本発明の実施形態を示し、図3に示すワークフロー抽出部327が抽出対象とするワークフローの一例を示す図である。
図7において、ノード701は、ユーザAがFC1(File Cluster 1)に含まれるファイルに対して操作を行うことを表している。ここで、FC1(708)は、図7に示すように、File1とFile6が属するファイルクラスタである。このように、ワークフローの各ノードをファイル操作ではなく、ファイルクラスタに対する操作として表現するのは、同じワークフローでも、その都度扱うファイルが異なる場合が多いためである。例えば、見積書を作成するワークフローの場合、顧客毎に作成する見積書ファイルは異なるため、1つのワークフローとして表すには、それら顧客毎の見積書ファイルをまとまりとして扱う必要がある。つまり、FC1(708)では、File1やFile6がそれぞれ別の顧客に対する見積書を表し、FC1(708)はそれらの見積書の集合を表す。このようなファイルをファイルクラスタとして置き換えることをファイルの抽象化と呼ぶことにする。
図7において、ノード701は、ユーザAがFC1(File Cluster 1)に含まれるファイルに対して操作を行うことを表している。ここで、FC1(708)は、図7に示すように、File1とFile6が属するファイルクラスタである。このように、ワークフローの各ノードをファイル操作ではなく、ファイルクラスタに対する操作として表現するのは、同じワークフローでも、その都度扱うファイルが異なる場合が多いためである。例えば、見積書を作成するワークフローの場合、顧客毎に作成する見積書ファイルは異なるため、1つのワークフローとして表すには、それら顧客毎の見積書ファイルをまとまりとして扱う必要がある。つまり、FC1(708)では、File1やFile6がそれぞれ別の顧客に対する見積書を表し、FC1(708)はそれらの見積書の集合を表す。このようなファイルをファイルクラスタとして置き換えることをファイルの抽象化と呼ぶことにする。
図7において、分岐702は、作業の分岐を表し、ノード701の作業が完了した後に、ノード703やノード704の作業が独立して並行に行えることを表している。つまり、図7の例では、ユーザAがFC1への操作を行った後に、ユーザBやユーザCがFC1への操作を並行して行うことを表している。この際、ユーザBの操作とユーザCの操作には順番がなく、どちらが先に操作を行ってもよいし、これらの操作を同時に行ってもよい。
図7において、結合705は、作業の結合を表す。結合705には、同期や非同期があり、同期とは、結合前の作業が全て完了したときのみ結合後の作業を行えるものであり、非同期とは、結合前の作業の一部が完了すれば結合後の作業を行えるものである。例えば、図7の例では、結合705が同期だとすると、ユーザBとユーザCによるFC1への操作がどちらも完了したときに、ノード706においてユーザDがFC2に対する操作を行えることになる。
図7において、ノード706は、ユーザDがFC2(File Cluster 2)に属するファイルに対して操作を行うことを表している。ここで、FC2(709)は、図7に示すように、File2とFile8が属するファイルクラスタである。
図7において、ノード707は、ユーザEがFC1に属するファイルに対して操作を行うことを表している。
このように、本発明の実施形態におけるワークフローは、複数のユーザが複数のアイテムを操作し、かつ、各ユーザが独立して並行に操作を行うような分岐・結合パターンを含んでいることが特徴である。
ここで、再び、図3の説明に戻る。
ワークフロー抽出部327は、図3に示すように、類似度計算部3271、クラスタリング部3272、中心クラスタ抽出部3273、共起確率計算部3274、従属クラスタ特定部3275、シーケンス抽出部3276、及び、頻出パターン抽出部3277を有して構成されている。
ワークフロー抽出部327は、図3に示すように、類似度計算部3271、クラスタリング部3272、中心クラスタ抽出部3273、共起確率計算部3274、従属クラスタ特定部3275、シーケンス抽出部3276、及び、頻出パターン抽出部3277を有して構成されている。
次に、ワークフロー抽出部327によるワークフロー抽出処理(頻出パターン抽出処理)について説明する。
図5及び図6は、本発明の実施形態を示し、図3に示すワークフロー抽出部327によるワークフロー抽出処理の処理手順の一例を示すフローチャートである。このフローチャートの処理は、図2に示す制御部201がメモリ部203に記憶されているプログラムを実行することにより行われる。より具体的には、このフローチャートの処理は、図3に示すワークフロー抽出部327の各構成部(3271〜3277)により行われる。
図5及び図6は、本発明の実施形態を示し、図3に示すワークフロー抽出部327によるワークフロー抽出処理の処理手順の一例を示すフローチャートである。このフローチャートの処理は、図2に示す制御部201がメモリ部203に記憶されているプログラムを実行することにより行われる。より具体的には、このフローチャートの処理は、図3に示すワークフロー抽出部327の各構成部(3271〜3277)により行われる。
なお、図5及び図6のフローチャートの説明においては、図8に示すファイル操作情報の例を用いて説明を行う。この際、説明を簡単にするために、ファイル操作については省略している。
図8は、本発明の実施形態を示し、図3に示す操作履歴データベース325にファイル操作履歴として格納されるファイル操作情報の一例を示す図である。この図8には、ログID、時間、ユーザID及びファイルIDについてのファイル操作情報が示されている。
また、図11は、本発明の実施形態を示し、図8に示すファイル操作情報について、ファイル別にユーザのファイル操作を時系列にマッピングした一例を示す図である。図11において、例えば、イベント1101は、ユーザAがファイル1(File1)に対して操作を行ったことを示している。その後、ファイル1は、イベント1102においてユーザBによって操作されていることが分かる。
図8は、本発明の実施形態を示し、図3に示す操作履歴データベース325にファイル操作履歴として格納されるファイル操作情報の一例を示す図である。この図8には、ログID、時間、ユーザID及びファイルIDについてのファイル操作情報が示されている。
また、図11は、本発明の実施形態を示し、図8に示すファイル操作情報について、ファイル別にユーザのファイル操作を時系列にマッピングした一例を示す図である。図11において、例えば、イベント1101は、ユーザAがファイル1(File1)に対して操作を行ったことを示している。その後、ファイル1は、イベント1102においてユーザBによって操作されていることが分かる。
ここで、まず、図5のフローチャートの説明を行う。
ステップS501において、ワークフロー抽出部327の類似度計算部3271は、ファイルを抽象化するために、データベース323内の全てのファイル間の類似度の計算を行う。ここで、ファイル間の類似度としては、一般的に良く用いられる文書に含まれる単語の類似性を指標とするのではなく、作業におけるファイルの利用目的が似ているものを類似度が高いと見なす指標を用いるのがよい。例えば、そのような指標として、次のようなものが利用できる。
・ファイルの派生関係
・ファイルの構造情報(XML構造)
・ファイルの共起頻度情報
・ファイルの属性情報
それぞれの指標における類似度は、必要に応じて単体で用いても、複数を組み合わせて用いてもよく、また、これらに限定されるものではない。それぞれの指標におけるファイル間の類似度の計算方法について以下に詳しく説明する。
ステップS501において、ワークフロー抽出部327の類似度計算部3271は、ファイルを抽象化するために、データベース323内の全てのファイル間の類似度の計算を行う。ここで、ファイル間の類似度としては、一般的に良く用いられる文書に含まれる単語の類似性を指標とするのではなく、作業におけるファイルの利用目的が似ているものを類似度が高いと見なす指標を用いるのがよい。例えば、そのような指標として、次のようなものが利用できる。
・ファイルの派生関係
・ファイルの構造情報(XML構造)
・ファイルの共起頻度情報
・ファイルの属性情報
それぞれの指標における類似度は、必要に応じて単体で用いても、複数を組み合わせて用いてもよく、また、これらに限定されるものではない。それぞれの指標におけるファイル間の類似度の計算方法について以下に詳しく説明する。
まず、「ファイルの派生関係」によるファイル間の類似度について説明する。
例えば、あるテンプレートがあり、そのテンプレートをコピーして作成したファイルAと、ファイルBがあったとき、ファイルAとファイルBは同じ目的の作業に使用された可能性が高いと考えられる。このような考えから、ファイルの派生関係を利用してファイル間の類似度を定義することができる。単純な方法では、例えば、コピー関係にあるファイルを図7のように木構造で表すと、自分自身との類似度を1とし、自分から離れていく毎に減衰係数を類似度に掛けることにより他のファイルとの類似度を求めることができる。
図9は、本発明の実施形態を示し、ファイルのコピー関係によるファイル間の類似度の一例を示す図である。図9(a)に示すコピー関係の場合、減衰係数を0.9としたときの各ファイル間の類似度は、図9(b)に示す通りになる。例えばFileAAAは、FileAをコピーして作成したファイルFileAAをコピーして作成したファイルなので、FileAとFileAAAとの間の類似度は、1×0.9×0.9=0.81となる。
例えば、あるテンプレートがあり、そのテンプレートをコピーして作成したファイルAと、ファイルBがあったとき、ファイルAとファイルBは同じ目的の作業に使用された可能性が高いと考えられる。このような考えから、ファイルの派生関係を利用してファイル間の類似度を定義することができる。単純な方法では、例えば、コピー関係にあるファイルを図7のように木構造で表すと、自分自身との類似度を1とし、自分から離れていく毎に減衰係数を類似度に掛けることにより他のファイルとの類似度を求めることができる。
図9は、本発明の実施形態を示し、ファイルのコピー関係によるファイル間の類似度の一例を示す図である。図9(a)に示すコピー関係の場合、減衰係数を0.9としたときの各ファイル間の類似度は、図9(b)に示す通りになる。例えばFileAAAは、FileAをコピーして作成したファイルFileAAをコピーして作成したファイルなので、FileAとFileAAAとの間の類似度は、1×0.9×0.9=0.81となる。
次いで、「ファイルの構造情報(XML構造)」によるファイル間の類似度について説明する。
近年、文書ファイルは、独自形式からXML形式に替わってきているものが多い。XML形式では、文書内容にタグ付けがしてあり、文書の構造と内容とを分離して処理し易い点が特徴である。そこで、文書ファイル間で文書内容には因らず、文書構造が似たものを容易に探すことが可能である。例えば、同じテンプレートから作成されたファイルAとファイルBとは文書内容は異なるが、同じテンプレートから引き継いだ文書構造は似ているため、文書構造による類似度は有効な指標となる。
近年、文書ファイルは、独自形式からXML形式に替わってきているものが多い。XML形式では、文書内容にタグ付けがしてあり、文書の構造と内容とを分離して処理し易い点が特徴である。そこで、文書ファイル間で文書内容には因らず、文書構造が似たものを容易に探すことが可能である。例えば、同じテンプレートから作成されたファイルAとファイルBとは文書内容は異なるが、同じテンプレートから引き継いだ文書構造は似ているため、文書構造による類似度は有効な指標となる。
次いで、「ファイルの共起頻度情報」によるファイル間の類似度について説明する。
例えば、FileAは、FileB及びFileCと一緒に使用される確率が高いとし、また別のFileXも、FileB及びFileCと一緒に使用される確率が高いとき、FileAとFileXは同じ目的の作業において使用のされた方が似ていると推定することができる。このような考え方から、ファイルの共起頻度情報を用いてファイル間の類似度を定義できる。類似度の単純な算出方法としては、2つのファイル間で共通している共起ファイル数を、それぞれのファイルの共起ファイル数の平均で割るなどすればよい。なお、共通している共起ファイルとは、同一のファイルだけを指すわけではなく、類似したファイルを含むようにしてもよい。
例えば、FileAは、FileB及びFileCと一緒に使用される確率が高いとし、また別のFileXも、FileB及びFileCと一緒に使用される確率が高いとき、FileAとFileXは同じ目的の作業において使用のされた方が似ていると推定することができる。このような考え方から、ファイルの共起頻度情報を用いてファイル間の類似度を定義できる。類似度の単純な算出方法としては、2つのファイル間で共通している共起ファイル数を、それぞれのファイルの共起ファイル数の平均で割るなどすればよい。なお、共通している共起ファイルとは、同一のファイルだけを指すわけではなく、類似したファイルを含むようにしてもよい。
次いで、「ファイルの属性情報」によるファイル間の類似度について説明する。
ファイル間の類似度を計算する上で有効な情報として、ファイル名やパス名などがある。同じ目的の作業ではファイル名に共通性が見られ、一部分が異なっていることが多い。そのような例として、例えば、会議の議事録などは、ファイル名の違いが日付であったり、また、何かの調査だったりするとファイル名の違いはユーザ名だったりする。このようにファイル名に共通性が見られるものを、ファイル間の類似度が高いとすればよい。例えば、fileAとfileBのファイル名による類似度をsim(fileA,fileB)として、単純には、以下の(1)式のように定義できる。
ファイル間の類似度を計算する上で有効な情報として、ファイル名やパス名などがある。同じ目的の作業ではファイル名に共通性が見られ、一部分が異なっていることが多い。そのような例として、例えば、会議の議事録などは、ファイル名の違いが日付であったり、また、何かの調査だったりするとファイル名の違いはユーザ名だったりする。このようにファイル名に共通性が見られるものを、ファイル間の類似度が高いとすればよい。例えば、fileAとfileBのファイル名による類似度をsim(fileA,fileB)として、単純には、以下の(1)式のように定義できる。
(1)式において、len(fileA)は、fileAのファイル名の長さを表し、min(len(fileA),len(fileB))は、fileAのファイル名の長さとfileBのファイル名の長さのうちの短い方の長さを表す。また、(1)式において、LCS(fileA,fileB)は、fileAのファイル名とfileBのファイル名の最長共通部分列(Longest Common Subsequence:LCS)を表す。ここで、部分列(Subsequence)は、系列のいくつかの要素を取り出してできた系列のことである。2つの系列の共通の部分列を共通部分列(Common Subsequence)と呼ぶ。共通部分列のうち、最も長いものを最長共通部分列(Longest Common Subsequence:LCS)と呼ぶ。
また、ファイル名による類似度の他の例として、編集距離と呼ばれる、情報理論において2つの文字列がどの程度異なっているかを示す数値を用いることもできる。具体的には、文字の挿入や削除、置換によって、1つの文字列を別の文字列に変形するのに必要な手順の最小回数として与えられる。
また、ファイル名による類似度の他の例として、編集距離と呼ばれる、情報理論において2つの文字列がどの程度異なっているかを示す数値を用いることもできる。具体的には、文字の挿入や削除、置換によって、1つの文字列を別の文字列に変形するのに必要な手順の最小回数として与えられる。
以上、4つの指標について説明したが、ファイル間の類似度として、そのうち1つを用いてもよいし、また、任意の複数の指標を組み合わせる形で用いてもよい。また、ここで挙げた指標は一例であり、それ以外でも、作業におけるファイルの利用目的が似ているものを類似度が高いと見なす指標であればよい。
ここで、再び、図5の説明に戻る。
ステップS501の処理が終了すると、ステップS502に進む。
ステップS502に進むと、ワークフロー抽出部327のクラスタリング部3272は、ステップS501による計算処理により得られた、複数のファイルにおける各ファイル間(各アイテム間)の類似度を用いて、ファイルをクラスタリングする処理を行う。即ち、ここでは、データベース323内に格納されている複数のファイル(複数のアイテム)を複数のファイルクラスタ(複数のアイテムクラスタ)にクラスタリングする処理を行う。ここで、クラスタリングの手法としては、階層型と非階層型との2つに大別されるが、ここでは、クラスタの数を予め定める必要のない階層型クラスタリングの手法を用いる。階層型クラスタリングの代表的な手法に、最短距離法、最長距離法、群平均法、ウォード法などがあるが、本実施形態においてはどれを用いてもよい。本ステップでは、結果として、作業におけるファイルの使用のされ方が似ているものをグループとしてまとめたものをファイルクラスタとして出力する。なお、ファイルクラスタは1つ以上のファイルのまとまりであり、類似するファイルが1つもないファイルでも、それ単体でファイルクラスタとする。
ステップS501の処理が終了すると、ステップS502に進む。
ステップS502に進むと、ワークフロー抽出部327のクラスタリング部3272は、ステップS501による計算処理により得られた、複数のファイルにおける各ファイル間(各アイテム間)の類似度を用いて、ファイルをクラスタリングする処理を行う。即ち、ここでは、データベース323内に格納されている複数のファイル(複数のアイテム)を複数のファイルクラスタ(複数のアイテムクラスタ)にクラスタリングする処理を行う。ここで、クラスタリングの手法としては、階層型と非階層型との2つに大別されるが、ここでは、クラスタの数を予め定める必要のない階層型クラスタリングの手法を用いる。階層型クラスタリングの代表的な手法に、最短距離法、最長距離法、群平均法、ウォード法などがあるが、本実施形態においてはどれを用いてもよい。本ステップでは、結果として、作業におけるファイルの使用のされ方が似ているものをグループとしてまとめたものをファイルクラスタとして出力する。なお、ファイルクラスタは1つ以上のファイルのまとまりであり、類似するファイルが1つもないファイルでも、それ単体でファイルクラスタとする。
図10は、本発明の実施形態を示し、図8に示すファイル操作情報におけるファイルを階層型クラスタリングした一例を示す図である。図10に示す例では、FC1はファイル1及びファイル6が属するファイルクラスタ、FC4はファイル4のみが属するファイルクラスタ、FC5はファイル5のみが属するファイルクラスタ、FC2はファイル2及びファイル8が属するファイルクラスタ、FC3はファイル3及びファイル7が属するファイルクラスタである。
続いて、ステップS503において、ワークフロー抽出部327の中心クラスタ抽出部3273は、ステップS502で得られた複数のファイルクラスタの中から、ワークフローの中心となる中心ファイルクラスタ(中心アイテムクラスタ)を抽出する処理を行う。ここで、ワークフローの中心となるファイルとは、ワークフローの中で複数のユーザに操作されるファイルや、そのワークフローの最終成果物となるようなファイルであり、そのようなファイルを多く含むファイルクラスタを、中心ファイルクラスタとして抽出する。例えば、中心クラスタ抽出部3273は、各ファイルの利用情報(各ファイルを利用するユーザ数、及び、各ファイルの利用方法(例えば上述したワークフローの最終成果物として利用する等)のうちの少なくとも1つの情報を含む)に基づいて、中心ファイルクラスタを抽出する処理を行う。
ここでは、各ファイルを利用するユーザ数に基づいて、中心ファイルクラスタを抽出する場合について説明を行う。
この場合、まず、ファイル毎に、編集などのファイル操作を行ったユーザ数を抽出し、ファイルクラスタ単位で、その中に含まれるファイルの前記ユーザ数を平均する。そして、その平均値が規定の値以上のファイルクラスタをワークフローの中心となる中心ファイルクラスタとして抽出する。例えば、図8に示す例では、FC1は、その中に含まれるファイル1とファイル6のどちらも4人のユーザから操作されており、そのユーザ数の平均は4人である。例えば、前記既定の値を3人とすると、FC1は、ワークフローの中心となる中心ファイルクラスタとして抽出されることになる。この場合、図8に示す例では、FC1のみが中心ファイルクラスタとして抽出されることになるが、本実施形態においてはこれに限定されるものではない。本実施形態においては、前記規定の値以上の全てのファイルクラスタが中心ファイルクラスタとしての抽出対象である。
この場合、まず、ファイル毎に、編集などのファイル操作を行ったユーザ数を抽出し、ファイルクラスタ単位で、その中に含まれるファイルの前記ユーザ数を平均する。そして、その平均値が規定の値以上のファイルクラスタをワークフローの中心となる中心ファイルクラスタとして抽出する。例えば、図8に示す例では、FC1は、その中に含まれるファイル1とファイル6のどちらも4人のユーザから操作されており、そのユーザ数の平均は4人である。例えば、前記既定の値を3人とすると、FC1は、ワークフローの中心となる中心ファイルクラスタとして抽出されることになる。この場合、図8に示す例では、FC1のみが中心ファイルクラスタとして抽出されることになるが、本実施形態においてはこれに限定されるものではない。本実施形態においては、前記規定の値以上の全てのファイルクラスタが中心ファイルクラスタとしての抽出対象である。
ステップS503の処理が終了すると、図5に示すフローチャートにおける処理が終了する。
次いで、図5のステップS503で抽出した中心ファイルクラスタ毎に、図6に示すフローチャートによりワークフロー(頻出パターン)を抽出する。
まず、ステップS601において、ワークフロー抽出部327の共起確率計算部3274は、中心ファイルクラスタ(中心アイテムクラスタ)と、その他のファイルクラスタ(その他のアイテムクラスタ)との共起確率を計算する処理を行う。通常、AとBの共起確率とは、A∩B/A∪Bであるが、ここでは、Aを中心ファイルクラスタに固定し、Bをその他のファイルクラスタとし、A∩B/Bを、中心ファイルクラスタとその他のファイルクラスタとの共起確率とする。2つのファイルクラスタが共起したかどうかの条件は、いろいろと考えられる。例えば、ファイルクラスタの操作が行われた時刻の前後2時間を、そのファイルクラスタへの操作時間とし、その操作時間に重なりがある場合に2つのファイルクラスタは共起しているとしてもよい。他には、固定時間、例えば3時間毎にファイル操作履歴を区切ることでセッションを作成し、そのセッションの中に含まれているファイルクラスタ同士は共起をしているとしてもよい。ここで例として挙げた2時間や3時間はパラメータであり、任意に決めることができる。
ここでは、図8に示すファイル操作情報を用いて、中心ファイルクラスタであるFC1と、当該中心ファイルクラスタを除くその他のファイルクラスタとの共起確率の計算例について説明する。
図12は、本発明の実施形態を示し、図8に示すファイル操作情報について、ファイルクラスタ別にユーザのファイル操作を時系列にマッピングした一例を示す図である。
イベント1201やイベント1202は、ユーザAが行った元々別のファイルへの操作であるが、ファイルを抽象化することで、同軸上のイベントとして考えることができる。このようにすることで、同じ作業としてのファイルの共起性の発見し易さが向上する。ここでは、ファイルクラスタの共起を、操作時刻から前後2時間の時間帯で重なりがあることとすると、FC2ではイベント1211及び1212の2つの操作があり、2つともFC1の操作と共起しているので、共起確率は2/2=1.0となる。同様にして、FC5では、イベント1221、1222、1223及び1224の4つの操作があり、このうちのイベント1221及び1224の2つだけがFC1と共起しているので、共起確率は2/4=0.5となる。同様に、FC3及びFC4も、それぞれ、0.5及び0.3と共起確率が計算される。
図12は、本発明の実施形態を示し、図8に示すファイル操作情報について、ファイルクラスタ別にユーザのファイル操作を時系列にマッピングした一例を示す図である。
イベント1201やイベント1202は、ユーザAが行った元々別のファイルへの操作であるが、ファイルを抽象化することで、同軸上のイベントとして考えることができる。このようにすることで、同じ作業としてのファイルの共起性の発見し易さが向上する。ここでは、ファイルクラスタの共起を、操作時刻から前後2時間の時間帯で重なりがあることとすると、FC2ではイベント1211及び1212の2つの操作があり、2つともFC1の操作と共起しているので、共起確率は2/2=1.0となる。同様にして、FC5では、イベント1221、1222、1223及び1224の4つの操作があり、このうちのイベント1221及び1224の2つだけがFC1と共起しているので、共起確率は2/4=0.5となる。同様に、FC3及びFC4も、それぞれ、0.5及び0.3と共起確率が計算される。
ここで、再び、図6の説明に戻る。
ステップS601の処理が終了すると、ステップS602に進む。
ステップS602に進むと、ワークフロー抽出部327の従属クラスタ特定部3275は、ステップS601による計算処理により得られた共起確率を用いて、中心ファイルクラスタ(中心アイテムクラスタ)と同じワークフローに属する従属ファイルクラスタ(従属アイテムクラスタ)を特定する処理を行う。例えば、単純に所定の値以上の共起確率を持つファイルクラスタとすればよい。図8に示すファイル操作情報の例において、前記所定の値を0.7(7割ぐらいの確率で一緒に扱われる)とすると、FC2が、中心ファイルクラスタであるFC1と同じワークフローに属する従属ファイルクラスタとして特定される。図12において、一見すると、FC5もFC1と一緒に扱われやすいように見えるが、FC5は全体的に現れるため、特別、FC1と一緒に扱われやすいわけではない。
ステップS601の処理が終了すると、ステップS602に進む。
ステップS602に進むと、ワークフロー抽出部327の従属クラスタ特定部3275は、ステップS601による計算処理により得られた共起確率を用いて、中心ファイルクラスタ(中心アイテムクラスタ)と同じワークフローに属する従属ファイルクラスタ(従属アイテムクラスタ)を特定する処理を行う。例えば、単純に所定の値以上の共起確率を持つファイルクラスタとすればよい。図8に示すファイル操作情報の例において、前記所定の値を0.7(7割ぐらいの確率で一緒に扱われる)とすると、FC2が、中心ファイルクラスタであるFC1と同じワークフローに属する従属ファイルクラスタとして特定される。図12において、一見すると、FC5もFC1と一緒に扱われやすいように見えるが、FC5は全体的に現れるため、特別、FC1と一緒に扱われやすいわけではない。
続いて、ステップS603において、ワークフロー抽出部327のシーケンス抽出部3276は、ワークフローの候補となる、アイテムクラスタの操作シーケンスであるファイルクラスタ操作シーケンスの集合を抽出する処理を行う。ここで、ワークフローの候補となるファイルクラスタ操作シーケンスは、ワークフローの中心となる中心フィルクラスタに含まれるファイル毎に抽出されるものである。そして、本ステップでは、そのファイルを中心とした作業をファイル操作シーケンスとして抽出した後、ファイルをファイルクラスタへ置き換えることで、ファイルクラスタ操作シーケンスとする。
ここで、図8に示すファイル操作情報の例を用いて、具体的な処理について説明する。
まず、ワークフローの中心となる中心ファイルクラスタであるFC1と、そのワークフローに属する従属ファイルクラスタであるFC2とに含まれるファイルの操作履歴を取りだす。
まず、ワークフローの中心となる中心ファイルクラスタであるFC1と、そのワークフローに属する従属ファイルクラスタであるFC2とに含まれるファイルの操作履歴を取りだす。
図13は、本発明の実施形態を示し、図8に示すファイル操作情報について、FC1及びFC2に属するファイル別にユーザのファイル操作を時系列にマッピングした一例を示す図である。
図13において、ファイル1とファイル6がFC1に属するものであり、ファイル2とファイル8がFC2に属するものである。そして、中心ファイルクラスタであるFC1に属するファイル毎に、そのファイルと共起関係にあるファイルを含めたファイル操作シーケンスを抽出する。ここで、ファイルの共起とは、ファイルクラスタの共起と同様に操作時刻から前後2時間の時間帯で重なりがあることとする。もちろん、2時間は任意のパラメータであり、また、共起の定義はこれに限らない。
図13において、ファイル1とファイル6がFC1に属するものであり、ファイル2とファイル8がFC2に属するものである。そして、中心ファイルクラスタであるFC1に属するファイル毎に、そのファイルと共起関係にあるファイルを含めたファイル操作シーケンスを抽出する。ここで、ファイルの共起とは、ファイルクラスタの共起と同様に操作時刻から前後2時間の時間帯で重なりがあることとする。もちろん、2時間は任意のパラメータであり、また、共起の定義はこれに限らない。
図14は、本発明の実施形態を示し、ファイル操作シーケンス及びファイルクラスタ操作シーケンスの一例を示す図である。
ここで、図14(a)は、上述した抽出処理により抽出されたファイル操作シーケンスの一例である。図14(a)において、シーケンス1はファイル1との共起関係に応じて抽出され、シーケンス2はファイル6との共起関係に応じて抽出されたものである。次いで、抽出したファイル操作シーケンスのファイルを再びファイルクラスタへとファイルの抽象化を行うことで、図14(b)に示すファイルクラスタ操作シーケンスを得る。このファイルクラスタ操作シーケンスの1つ1つが、ある1つの作業の流れを表しており、目的が類似する作業の流れを集めることで、それら作業の典型的なパターンであるワークフローを抽出できる。
ここで、図14(a)は、上述した抽出処理により抽出されたファイル操作シーケンスの一例である。図14(a)において、シーケンス1はファイル1との共起関係に応じて抽出され、シーケンス2はファイル6との共起関係に応じて抽出されたものである。次いで、抽出したファイル操作シーケンスのファイルを再びファイルクラスタへとファイルの抽象化を行うことで、図14(b)に示すファイルクラスタ操作シーケンスを得る。このファイルクラスタ操作シーケンスの1つ1つが、ある1つの作業の流れを表しており、目的が類似する作業の流れを集めることで、それら作業の典型的なパターンであるワークフローを抽出できる。
ここで、再び、図6の説明に戻る。
ステップS603の処理が終了すると、ステップS604に進む。
ステップS604に進むと、ワークフロー抽出部327の頻出パターン抽出部3277は、ステップS604の抽出処理により抽出されたファイルクラスタ操作シーケンスの集合から、ワークフローを抽出する処理を行う(頻出パターンを抽出する処理を行う)。
ステップS603の処理が終了すると、ステップS604に進む。
ステップS604に進むと、ワークフロー抽出部327の頻出パターン抽出部3277は、ステップS604の抽出処理により抽出されたファイルクラスタ操作シーケンスの集合から、ワークフローを抽出する処理を行う(頻出パターンを抽出する処理を行う)。
以下に、ステップS604の処理の詳細について説明する。
ここまでの処理により、抽出されたファイルクラスタ操作シーケンスの集合は、目的が類似する作業の流れの集合となっている。そして、ここで抽出するワークフローは、抽出されたファイルクラスタ操作シーケンスの集合を入力とし、頻出する「Closed Partial Orders」として抽出する。「Closed Partial Orders」とは、系列データの集合から、シーケンシャルパターンマイニングと呼ばれる手法により抽出された頻出する部分系列データ集合を要約する形で得られるものである。
ここまでの処理により、抽出されたファイルクラスタ操作シーケンスの集合は、目的が類似する作業の流れの集合となっている。そして、ここで抽出するワークフローは、抽出されたファイルクラスタ操作シーケンスの集合を入力とし、頻出する「Closed Partial Orders」として抽出する。「Closed Partial Orders」とは、系列データの集合から、シーケンシャルパターンマイニングと呼ばれる手法により抽出された頻出する部分系列データ集合を要約する形で得られるものである。
シーケンシャルパターンマイニングは、以下のように定義される処理である。
I={i1,i2,…,in}を、アイテム集合とする。集合Iの空でない部分集合をエレメントと言う。また、ある閾値ξ>0が与えられたとき、集合Iにおいてξ回以上現れるアイテムを頻出アイテムと言う。エレメントの順序列をシーケンスと言う。さらに、シーケンスα=(a1,a2,…,an)とシーケンスβ=(b1,b2,…,bn)に対して、a1⊆bj1,a2⊆bj2,…,an⊆bjnとなる整数1<j1<j2<…<jn<mがあるとき、αをβのサブシーケンスと言い、α⊆βと表記する。シーケンスidのsidとシーケンスsのタプル(sid,s)の集合であるS={(sid1,s1),(sid2,s2),…,(sidn,sn)}をシーケンスデータベースと呼ぶ。さらに、系列αの系列データベースSにおけるサポートとは、S中の全ての系列のうち、系列αを含むタプルの数と定義される。閾値ξ(最小サポート値と呼ぶ)以上の個数の(sid,s)に含まれているシーケンスをシーケンシャルデータベースにおけるシーケンシャルパターンと言う。シーケンシャルパターンマイニングとは、シーケンスデータベースSと最小サポート値ξが与えられたときに、Sにおけるシーケンシャルパターンを全て見つけることである。代表的なシーケンシャルパターマイニングの手法としては、上記の非特許文献1に示すAprioriアルゴリズムや、上記の非特許文献2に示すPrefixSpanなどがある。
I={i1,i2,…,in}を、アイテム集合とする。集合Iの空でない部分集合をエレメントと言う。また、ある閾値ξ>0が与えられたとき、集合Iにおいてξ回以上現れるアイテムを頻出アイテムと言う。エレメントの順序列をシーケンスと言う。さらに、シーケンスα=(a1,a2,…,an)とシーケンスβ=(b1,b2,…,bn)に対して、a1⊆bj1,a2⊆bj2,…,an⊆bjnとなる整数1<j1<j2<…<jn<mがあるとき、αをβのサブシーケンスと言い、α⊆βと表記する。シーケンスidのsidとシーケンスsのタプル(sid,s)の集合であるS={(sid1,s1),(sid2,s2),…,(sidn,sn)}をシーケンスデータベースと呼ぶ。さらに、系列αの系列データベースSにおけるサポートとは、S中の全ての系列のうち、系列αを含むタプルの数と定義される。閾値ξ(最小サポート値と呼ぶ)以上の個数の(sid,s)に含まれているシーケンスをシーケンシャルデータベースにおけるシーケンシャルパターンと言う。シーケンシャルパターンマイニングとは、シーケンスデータベースSと最小サポート値ξが与えられたときに、Sにおけるシーケンシャルパターンを全て見つけることである。代表的なシーケンシャルパターマイニングの手法としては、上記の非特許文献1に示すAprioriアルゴリズムや、上記の非特許文献2に示すPrefixSpanなどがある。
図15は、本発明の実施形態を示し、シーケンシャルパターマイニングを説明するための図である。
例えば、図15(a)に示すようなシーケンスデータベースが与えられたとき、シーケンシャルパターンマイニングを適用することにより、図15(b)に示すように4つのシーケンシャルパターンが抽出される。しかしながら、これはシーケンスデータベースから読み取れる本来のパターンが断片化されたものとなっている。シーケンスデータベースから読み取れる本来のパターンとは、図15(c)に示すようなもので、アイテムAの後には、アイテムBとアイテムCが現れ、その次にアイテムDが現れ、最後にアイテムEとアイテムFが現れるというものである。この図15(c)に示すようなパターンは、「Closed Partial Orders」と呼ばれ、この「Closed Partial Orders」を抽出する方法は、既にいくつか提案されている。例えば、上記の非特許文献3に示す方法などがある。
例えば、図15(a)に示すようなシーケンスデータベースが与えられたとき、シーケンシャルパターンマイニングを適用することにより、図15(b)に示すように4つのシーケンシャルパターンが抽出される。しかしながら、これはシーケンスデータベースから読み取れる本来のパターンが断片化されたものとなっている。シーケンスデータベースから読み取れる本来のパターンとは、図15(c)に示すようなもので、アイテムAの後には、アイテムBとアイテムCが現れ、その次にアイテムDが現れ、最後にアイテムEとアイテムFが現れるというものである。この図15(c)に示すようなパターンは、「Closed Partial Orders」と呼ばれ、この「Closed Partial Orders」を抽出する方法は、既にいくつか提案されている。例えば、上記の非特許文献3に示す方法などがある。
図16は、本発明の実施形態を示し、図6のステップS604において抽出されるワークフローの一例を示す図である。具体的に、図16は、図6のステップS603で抽出された図14(b)に示すファイルクラスタ操作シーケンスの集合から、抽出される「Closed Partial Orders」を示している。この「Closed Partial Orders」は、目的が類似する作業の流れの集合から抽出された典型的な操作パターンであるワークフローとなる。図16には、ノード1601〜ノード1605が示されている。そして、ワークフロー抽出部327の処理により、図8に示すファイル操作情報から、図7に示すワークフローが最終的に抽出される。
ステップS604の処理が終了すると、図6に示すフローチャートにおける処理が終了する。
本発明の実施形態では、中心ファイルクラスタに属するファイルと従属ファイルクラスタに属するファイルにおける操作履歴に基づいて操作シーケンスの集合を抽出し、当該操作シーケンスの集合に基づいてワークフローとなる頻出パターンを抽出している。
かかる構成によれば、複数のユーザが協調して複数のファイルを操作して作業を行う場合において、ユーザが独立して並行に作業を行うようなパターンも含めて、より汎用的なワークフローの抽出を実現することができる。これにより、このワークフローを用いて、ユーザのアイテム操作をナビゲートするなど、作業の効率を向上させることが可能となる。例えば、ワークフローを可視化して業務の見直しに役立てたり、ワークフローシステム構築の参考にしたり、ユーザのファイル操作をナビゲートするファイル推薦に用いたりするなど、幅広く利用可能である。
かかる構成によれば、複数のユーザが協調して複数のファイルを操作して作業を行う場合において、ユーザが独立して並行に作業を行うようなパターンも含めて、より汎用的なワークフローの抽出を実現することができる。これにより、このワークフローを用いて、ユーザのアイテム操作をナビゲートするなど、作業の効率を向上させることが可能となる。例えば、ワークフローを可視化して業務の見直しに役立てたり、ワークフローシステム構築の参考にしたり、ユーザのファイル操作をナビゲートするファイル推薦に用いたりするなど、幅広く利用可能である。
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。
即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。
また、本発明は、以下の処理を実行することによっても実現される。
即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。
なお、上述した本発明の実施形態は、いずれも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
310 ユーザ端末、320 ファイル管理システム、321 操作取得部、322 ファイル管理部、323 データベース、324 操作履歴管理部、325 操作履歴データベース、326 情報送信部、327 ワークフロー抽出部、3271 類似度計算部、3272 クラスタリング部、3273 中心クラスタ抽出部、3274 共起確率計算部、3275 従属クラスタ特定部、3276 シーケンス抽出部、3277 頻出パターン抽出部
Claims (8)
- 複数のアイテムにおける各アイテムに対する各ユーザの操作履歴から時系列の頻出パターンを抽出する頻出パターン抽出装置であって、
前記複数のアイテムにおける各アイテム間の類似度に基づいて、前記複数のアイテムを複数のアイテムクラスタにクラスタリングするクラスタリング手段と、
前記複数のアイテムクラスタの中から、前記頻出パターンの中心となる中心アイテムクラスタを抽出する中心クラスタ抽出手段と、
前記複数のアイテムクラスタの中から、前記中心アイテムクラスタと同じ前記頻出パターンに含まれる従属アイテムクラスタを特定する従属クラスタ特定手段と、
前記中心アイテムクラスタに属するアイテムと前記従属アイテムクラスタに属するアイテムにおける操作履歴に基づいて、前記各ユーザにおける前記中心アイテムクラスタおよび前記従属アイテムクラスタの操作シーケンスの集合を抽出するシーケンス抽出手段と、
前記シーケンス抽出手段で抽出した操作シーケンスの集合に基づいて、前記頻出パターンを抽出する頻出パターン抽出手段と
を有することを特徴とする頻出パターン抽出装置。 - 前記中心クラスタ抽出手段は、前記複数のアイテムにおける各アイテムの利用情報に基づいて、前記複数のアイテムクラスタの中から前記中心アイテムクラスタを抽出することを特徴とする請求項1に記載の頻出パターン抽出装置。
- 前記利用情報は、前記各アイテムを利用するユーザ数および前記各アイテムの利用方法のうちの少なくとも1つの情報を含むことを特徴とする請求項2に記載の頻出パターン抽出装置。
- 前記中心アイテムクラスタと、前記複数のアイテムクラスタのうちの前記中心アイテムクラスタを除くその他のアイテムクラスタとの共起確率を計算する共起確率計算手段を更に有し、
前記従属クラスタ特定手段は、前記共起確率計算手段で計算した共起確率に基づいて、前記従属アイテムクラスタを特定することを特徴とする請求項1乃至3のいずれか1項に記載の頻出パターン抽出装置。 - 前記シーケンス抽出手段は、前記中心アイテムクラスタに属するアイテムと前記従属アイテムクラスタに属するアイテムとの共起関係を利用して、前記操作シーケンスの集合を抽出することを特徴とする請求項1乃至4のいずれか1項に記載の頻出パターン抽出装置。
- 前記頻出パターン抽出手段は、前記シーケンス抽出手段で抽出した操作シーケンスの集合から、シーケンシャルパターンマイニングにより抽出された頻出する部分系列データ集合を要約する形で得られたパターンを前記頻出パターンとして抽出することを特徴とする請求項1乃至5のいずれか1項に記載の頻出パターン抽出装置。
- 複数のアイテムにおける各アイテムに対する各ユーザの操作履歴から時系列の頻出パターンを抽出する頻出パターン抽出装置による頻出パターン抽出方法であって、
前記複数のアイテムにおける各アイテム間の類似度に基づいて、前記複数のアイテムを複数のアイテムクラスタにクラスタリングするクラスタリングステップと、
前記複数のアイテムクラスタの中から、前記頻出パターンの中心となる中心アイテムクラスタを抽出する中心クラスタ抽出ステップと、
前記複数のアイテムクラスタの中から、前記中心アイテムクラスタと同じ前記頻出パターンに含まれる従属アイテムクラスタを特定する従属クラスタ特定ステップと、
前記中心アイテムクラスタに属するアイテムと前記従属アイテムクラスタに属するアイテムにおける操作履歴に基づいて、前記各ユーザにおける前記中心アイテムクラスタおよび前記従属アイテムクラスタの操作シーケンスの集合を抽出するシーケンス抽出ステップと、
前記シーケンス抽出ステップで抽出した操作シーケンスの集合に基づいて、前記頻出パターンを抽出する頻出パターン抽出ステップと
を有することを特徴とする頻出パターン抽出方法。 - 複数のアイテムにおける各アイテムに対する各ユーザの操作履歴から時系列の頻出パターンを抽出する頻出パターン抽出装置による頻出パターン抽出方法をコンピュータに実行させるためのプログラムであって、
前記複数のアイテムにおける各アイテム間の類似度に基づいて、前記複数のアイテムを複数のアイテムクラスタにクラスタリングするクラスタリングステップと、
前記複数のアイテムクラスタの中から、前記頻出パターンの中心となる中心アイテムクラスタを抽出する中心クラスタ抽出ステップと、
前記複数のアイテムクラスタの中から、前記中心アイテムクラスタと同じ前記頻出パターンに含まれる従属アイテムクラスタを特定する従属クラスタ特定ステップと、
前記中心アイテムクラスタに属するアイテムと前記従属アイテムクラスタに属するアイテムにおける操作履歴に基づいて、前記各ユーザにおける前記中心アイテムクラスタおよび前記従属アイテムクラスタの操作シーケンスの集合を抽出するシーケンス抽出ステップと、
前記シーケンス抽出ステップで抽出した操作シーケンスの集合に基づいて、前記頻出パターンを抽出する頻出パターン抽出ステップと
をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013036332A JP2014164618A (ja) | 2013-02-26 | 2013-02-26 | 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013036332A JP2014164618A (ja) | 2013-02-26 | 2013-02-26 | 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014164618A true JP2014164618A (ja) | 2014-09-08 |
Family
ID=51615149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013036332A Pending JP2014164618A (ja) | 2013-02-26 | 2013-02-26 | 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014164618A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016111417A (ja) * | 2014-12-03 | 2016-06-20 | 株式会社リコー | ネットワークシステム、電子機器、電子機器管理方法及び電子機器管理プログラム |
JP2018181177A (ja) * | 2017-04-20 | 2018-11-15 | 株式会社日立製作所 | 業務プロセス分析装置、業務プロセス分析方法、および、業務プロセス分析プログラム |
JP2019036224A (ja) * | 2017-08-21 | 2019-03-07 | 富士ゼロックス株式会社 | 情報処理装置及び情報処理プログラム |
JP2019133556A (ja) * | 2018-02-02 | 2019-08-08 | フューチャー株式会社 | 移行単位分析装置、移行単位分析方法及び移行単位分析プログラム |
CN112100370A (zh) * | 2020-08-10 | 2020-12-18 | 淮阴工学院 | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 |
WO2021084664A1 (ja) * | 2019-10-30 | 2021-05-06 | 日本電信電話株式会社 | 抽出装置、抽出方法及び抽出プログラム |
-
2013
- 2013-02-26 JP JP2013036332A patent/JP2014164618A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016111417A (ja) * | 2014-12-03 | 2016-06-20 | 株式会社リコー | ネットワークシステム、電子機器、電子機器管理方法及び電子機器管理プログラム |
JP2018181177A (ja) * | 2017-04-20 | 2018-11-15 | 株式会社日立製作所 | 業務プロセス分析装置、業務プロセス分析方法、および、業務プロセス分析プログラム |
JP2019036224A (ja) * | 2017-08-21 | 2019-03-07 | 富士ゼロックス株式会社 | 情報処理装置及び情報処理プログラム |
JP6996159B2 (ja) | 2017-08-21 | 2022-01-17 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及び情報処理プログラム |
JP2019133556A (ja) * | 2018-02-02 | 2019-08-08 | フューチャー株式会社 | 移行単位分析装置、移行単位分析方法及び移行単位分析プログラム |
WO2021084664A1 (ja) * | 2019-10-30 | 2021-05-06 | 日本電信電話株式会社 | 抽出装置、抽出方法及び抽出プログラム |
JPWO2021084664A1 (ja) * | 2019-10-30 | 2021-05-06 | ||
JP7226582B2 (ja) | 2019-10-30 | 2023-02-21 | 日本電信電話株式会社 | 抽出装置、抽出方法及び抽出プログラム |
CN112100370A (zh) * | 2020-08-10 | 2020-12-18 | 淮阴工学院 | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 |
CN112100370B (zh) * | 2020-08-10 | 2023-07-25 | 淮阴工学院 | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9262714B2 (en) | Frequent pattern extraction apparatus frequent pattern extraction method and program | |
US20200160297A1 (en) | Tracking processed machine data | |
US10929173B2 (en) | Design-time information based on run-time artifacts in a distributed computing cluster | |
US10909151B2 (en) | Distribution of index settings in a machine data processing system | |
US10558651B2 (en) | Search point management | |
JP6047017B2 (ja) | パターン抽出装置および制御方法 | |
US9135306B2 (en) | System for forensic analysis of search terms | |
CN102239458B (zh) | 可视化数据元素之间的关系 | |
US8037107B2 (en) | Document transfer assisting system, monitor apparatus, document transfer assisting apparatus, method and computer readable recording medium | |
JP2014164618A (ja) | 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム | |
KR20100037040A (ko) | 시간-기반 행위 정보의 수집 및 제공 | |
JP2008052570A (ja) | 操作履歴管理システム | |
US10769121B2 (en) | Evolving data archives | |
US11556592B1 (en) | Storage estimate generation | |
JP2007193685A (ja) | 人脈情報表示プログラム、該プログラムを記録した記録媒体、人脈情報表示装置、および人脈情報表示方法 | |
JP6080649B2 (ja) | レコメンド装置、レコメンド方法及びプログラム | |
Vahedian et al. | Weighted random walk sampling for multi-relational recommendation | |
CN115221337A (zh) | 数据编织处理方法、装置、电子设备及可读存储介质 | |
JP2005242904A (ja) | 文書群分析装置、文書群分析方法、文書群分析システム、プログラムおよび記録媒体 | |
JP2008065784A (ja) | ワークフロー管理システム | |
EP4002152A1 (en) | Data tagging and synchronisation system | |
CN107958022A (zh) | 一种万维网日志挖掘的方法 | |
Kuijpers et al. | Indexing continuous paths in temporal graphs | |
US20130036131A1 (en) | File Object Browsing and Searching Across Different Domains | |
Mertens et al. | DMISTA: Conceptual Data Model for Interactions in Support Ticket Administration. |