(57)【要約】 【課題】会計データに含まれる異常を的確かつ効率よく検知する。【解決手段】財務分析装置１は、会計データの第１期間内の各勘定科目の各変動値を要素とする第１ベクトルを生成する第１ベクトル生成部と、複数の第１期間を含む第２期間内における複数の第１ベクトルに基づいて第１期間内における複数の勘定科目の各変動値を推定する推定部と、変動値と実際の変動値との残差を検出する残差検出部と、残差に相関する値が閾値を超える特定の第１期間における特定の勘定科目の変動値を抽出する異常候補特定部と、特定の第１期間内の各仕訳の複数の勘定科目の各変動値を要素とする第２ベクトルを行方向に並べた第２行列を生成する仕訳限定部と、第２行列から、残差に相関する値が閾値を超える勘定科目を含む仕訳を抽出する仕訳抽出部と、抽出された仕訳に含まれる異常を検知する異常検知部と、異常が検知された仕訳を抽出する異常仕訳抽出部と、を備える。【選択図】図１
2019067086.tif 000002
【特許請求の範囲】
【請求項１】
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成する第１ベクトル生成部と、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定する推定部と、
前記推定部で推定された変動値と実際の変動値との残差を検出する残差検出部と、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定する異常候補特定部と、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成する仕訳限定部と、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出する仕訳抽出部と、
前記仕訳抽出部で抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知する異常検知部と、
前記異常検知部にて異常が検知された仕訳を抽出する異常仕訳抽出部と、を備える、財務分析装置。
【請求項２】
前記第１ベクトル生成部は、前記複数の勘定科目の借方および貸方別の各変動値を、列方向に並べた前記第１ベクトルを生成し、
前記推定部は、前記複数の勘定科目の借方および貸方別の各変動値を推定する、請求項１に記載の財務分析装置。
【請求項３】
前記推定部は、前記複数の勘定科目の各変動値の誤差の二乗と、前記複数の勘定科目のそれぞれに対応付けられる複数の回帰係数の絶対値の合計との和を最小化することにより、前記複数の勘定科目の各変動値を推定する、請求項１または２に記載の財務分析装置。
【請求項４】
前記残差検出部で検出された前記残差を正規化する正規化部を備え、
前記異常候補特定部は、前記正規化部で前記残差を正規化した値と前記閾値とを比較する、請求項１乃至３のいずれか一項に記載の財務分析装置。
【請求項５】
複数の第１期間を含む第２期間内における複数の前記第１ベクトルを行方向に並べた第１行列を生成する第１行列生成部を備え、
前記推定部は、前記第１行列に基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定し、
前記仕訳限定部は、各仕訳ごとに生成された前記第２ベクトルを行方向に並べた第２行列を生成し、
前記仕訳抽出部は、前記第２行列から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出する、請求項１乃至４のいずれか一項に記載の財務分析装置。
【請求項６】
前記仕訳抽出部は、前記第２行列から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出し、抽出された仕訳に含まれる各勘定科目の変動値を列方向に並べた第３ベクトルを生成し、生成された前記第３ベクトルを行方向に並べた第３行列を生成し、
前記異常検知部は、前記仕訳抽出部で抽出された前記第３ベクトル内の少なくとも一つの勘定科目に異常があるか否かを判断する、請求項１乃至５のいずれか一項に記載の財務分析装置。
【請求項７】
前記第１ベクトル生成部は、変動のない勘定科目の値をゼロとする前記第１ベクトルを生成し、
前記仕訳限定部は、各仕訳に含まれない勘定科目の変動値をゼロとする前記第２ベクトルを生成し、
前記仕訳抽出部は、各仕訳に含まれる勘定科目のみの変動値を含む前記第３ベクトルを生成する、請求項６に記載の財務分析装置。
【請求項８】
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成するステップと、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定するステップと、
前記推定された変動値と実際の変動値との残差を検出するステップと、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定するステップと、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成するステップと、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出するステップと、
前記抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知するステップと、
前記異常が検知された仕訳を抽出するステップと、を備える、財務分析方法。
【請求項９】
コンピュータに、
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成するステップと、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定するステップと、
前記推定された変動値と実際の変動値との残差を検出するステップと、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定するステップと、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成するステップと、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出するステップと、
前記抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知するステップと、
前記異常が検知された仕訳を抽出するステップと、を実行させるための財務分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＩ（Artificial intelligence）技術を利用した財務分析装置、財務分析方法及び財務分析プログラムに関する。
【背景技術】
【０００２】
機械学習やディープラーニングなどのＡＩ技術が様々な分野で利用されている。例えば、特許文献１には、テキストデータをトピックに類型化して把握し、類型化されたトピックと他の属性情報との関係構造を学習して、トピックが変化したときの属性情報の変化や、属性情報が変化したときのトピックの変化を定量的に得る技術が開示されている。この技術を利用することで、業務改善を行うべき点や利用客のニーズ等を抽出することができる。
【０００３】
上述した特許文献１の技術を会計監査に適用し、これまで活用しきれていなかった様々な文書に含まれるテキストデータをトピックに変換して、財務情報と同じ変数として扱うことで、会計上のリスク評価を行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許６０８５８８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、企業の帳簿データは、企業の規模にもよるが、膨大な場合があり、その中から不正の兆候を見つけるのは容易ではない。上述した特許文献１には、膨大な帳簿データの中から不正の兆候を効率よく見つける具体的な手法については、何ら開示されていない。
【０００６】
本発明が解決しようとする課題は、会計データに含まれる異常を的確かつ効率よく検知可能な財務分析装置、財務分析方法及び財務分析プログラムを提供するものである。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明の一態様では、会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成する第１ベクトル生成部と、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定する推定部と、
前記推定部で推定された変動値と実際の変動値との残差を検出する残差検出部と、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定する異常候補特定部と、
前記第２期間内の前記特定の第１期間に計上された前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成する仕訳限定部と、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出する仕訳抽出部と、
前記仕訳抽出部で抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知する異常検知部と、
前記異常検知部にて異常が検知された仕訳を抽出する異常仕訳抽出部と、を備える、財務分析装置が提供される。
【０００８】
前記第１ベクトル生成部は、前記複数の勘定科目の借方および貸方別の各変動値を、列方向に並べた前記第１ベクトルを生成し、
前記推定部は、前記複数の勘定科目の借方および貸方別の各変動値を推定してもよい。
【０００９】
前記推定部は、前記複数の勘定科目の各変動値の誤差の二乗と前記複数の勘定科目のそれぞれに対応付けられる複数の回帰係数の絶対値の合計との和を最小化することにより、前記複数の勘定科目の各変動値を推定してもよい。
【００１０】
前記残差検出部で検出された前記残差を正規化する正規化部を備え、
前記異常候補特定部は、前記正規化部で前記残差を正規化した値と前記閾値とを比較してもよい。
【００１１】
複数の第１期間を含む第２期間内における複数の前記第１ベクトルを行方向に並べた第１行列を生成する第１行列生成部を備え、
前記推定部は、前記第１行列に基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定し、
前記仕訳限定部は、各仕訳ごとに生成された前記第２ベクトルを行方向に並べた第２行列を生成し、
前記仕訳抽出部は、前記第２行列から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出してもよい。
【００１２】
前記仕訳抽出部は、前記第２行列から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出し、抽出された仕訳に含まれる各勘定科目の変動値を列方向に並べた第３ベクトルを生成し、生成された前記第３ベクトルを行方向に並べた第３行列を生成し、
前記異常検知部は、前記仕訳抽出部で抽出された前記第３ベクトル内の少なくとも一つの勘定科目に異常があるか否かを判断してもよい。
【００１３】
前記第１ベクトル生成部は、変動のない勘定科目の値をゼロとする前記第１ベクトルを生成し、
前記仕訳限定部は、各仕訳に含まれない勘定科目の変動値をゼロとする前記第２ベクトルを生成し、
前記仕訳抽出部は、各仕訳に含まれる勘定科目のみの変動値を含む前記第３ベクトルを生成してもよい。
【００１４】
本発明の他の一態様では、会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成するステップと、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定するステップと、
前記推定された変動値と実際の変動値との残差を検出するステップと、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定するステップと、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成するステップと、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出するステップと、
前記抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知するステップと、
前記異常が検知された仕訳を抽出するステップと、を備える、財務分析方法が提供される。
【００１５】
本発明の一態様では、コンピュータに、
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成するステップと、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定するステップと、
前記推定された変動値と実際の変動値との残差を検出するステップと、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定するステップと、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成するステップと、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出するステップと、
前記抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知するステップと、
前記異常が検知された仕訳を抽出するステップと、を実行させるための財務分析プログラムが提供される。
【発明の効果】
【００１６】
本発明によれば、会計データに含まれる異常を的確かつ効率よく検知することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態による財務分析装置の概略構成を示す機能ブロック図。
【図２】図１の財務分析装置のハードウェア構成の一例を示す図。
【図３】図１の財務分析装置の全体的な処理動作の一例を示すフローチャート。
【図４】ＴＢの具体例を示す図。
【図５】売掛金の変動に関連する勘定科目の変動と回帰係数の一例を示す図。
【図６】貸方の売掛金の変動との関連性の高い勘定科目の一覧と、各勘定科目の回帰係数の値との一例を示す図。
【図７】日次推定グラフの一例を示す図。
【図８】閾値を超えた残差を数値として表したマトリックスを示す図。
【図９】売掛金の月次変動額の一例を示すグラフ。
【図１０】仕訳ベクトルと仕訳行列の一例を示す図。
【図１１】仕訳行列の一具体例を示す図。
【図１２】異常検知処理の処理結果を模式的に示す図。
【図１３】異常検知処理の処理結果の一具体例を示す図。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明の実施の形態について説明する。なお、本件明細書と添付図面においては、理解のしやすさと図示の便宜上、一部の構成部分を省略、変更または簡易化して説明および図示しているが、同様の機能を期待し得る程度の技術内容も、本実施の形態に含めて解釈することとする。
【００１９】
図１は本発明の一実施形態による財務分析装置１の概略構成を示す機能ブロック図である。図１の財務分析装置１は、後述するように、ハードウェアおよびソフトウェアの少なくとも一方を利用して構成されるものである。図１の財務分析装置１は、第１ベクトル生成部２と、第１行列生成部３と、推定部４と、残差検出部５と、異常候補特定部６と、仕訳限定部７と、仕訳抽出部８と、異常検知部９と、異常仕訳抽出部１０とを備えている。
【００２０】
第１ベクトル生成部２は、会計データの第１期間内における複数の勘定科目の変動値を要素とする第１ベクトルを生成する。第１期間とは、例えば一日または一月である。より具体的な一例では、第１ベクトル生成部２は、残高資産表（ＴＢ：Trial Balance）の日次（月次）変動を、それぞれの勘定科目の借方と貸方別に集計し、これを要素に含む第１ベクトルを生成する。以下では、第１ベクトルをＴＢ変動ベクトルと呼ぶこともある。よって、ＴＢ変動ベクトルは、例えば、現預金、商品、買掛金、資本金、売上高、売上原価等の複数の勘定科目の変動値（変動金額）を要素として含んでいる。
【００２１】
第１行列生成部３は、複数の第１期間を含む第２期間内における複数の第１ベクトルを行方向に並べた第１行列を生成する。第１行列の各行は、例えば日付の異なる第１ベクトルである。以下では、第１行列を日次（月次）の貸借別のＴＢ変動行列と呼ぶこともある。第２期間は、第１期間の整数倍の期間の長さを有し、例えば、３ヶ月、半年、一年などである。
【００２２】
推定部４は、第１行列に基づいて、第２期間内の個々の第１期間内における複数の勘定科目の各変動値を推定する。これにより、例えば、日次（月次）ごとに、各勘定科目の貸借別の変動値が推定される。以下では、推定された変動値を予測値と呼ぶこともある。推定部４は、後述するように、例えば所定の変動モデルに基づいて各勘定科目の変動値を推定する。具体的な一例として、推定部４は、第１行列（ＴＢ変動行列）に基づいて、複数の勘定科目の各変動値の誤差の二乗と、複数の勘定科目のそれぞれに対応付けられる複数の回帰係数の絶対値の合計との和を最小化することにより、複数の勘定科目の各変動値を推定する。
【００２３】
残差検出部５は、推定部４で推定された変動値（予測値）と実際の変動値（実績値）との残差を検出する。例えば、残差検出部５は、日次（月次）ごとに、各勘定科目の貸借別の残差を検出する。
【００２４】
異常候補特定部６は、残差に相関する値が所定の閾値を超える特定の第１期間における特定の勘定科目の変動値を抽出する。残差に相関する値とは、残差検出部５で検出された残差そのものでもよいし、残差を正規化した値でもよい。閾値の値は任意であり、残差に相関する値に応じて、適切な値を定めればよい。異常候補特定部６で抽出された特定の第１期間における特定の勘定科目の変動値は、異常の候補となる。ここで、異常とは、通常の取引傾向では想定できない勘定科目の動きを意味し、不正な会計処理が行われた疑いがある場合やそうでない場合も含まれる。
【００２５】
仕訳限定部７は、異常候補特定部６で抽出された第２期間内の特定の第１期間について会計データの仕訳を特定し、各仕訳についての複数の勘定科目の各変動値を要素とする第２ベクトルを生成し、生成された第２ベクトルを行方向に並べた第２行列を生成する。以下では、第２ベクトルを仕訳ベクトルと呼び、第２行列を仕訳行列と呼ぶこともある。仕訳行列の各行が仕訳ベクトルである。例えば、仕訳限定部７は、異常候補特定部６で抽出された特定の日に発生した全仕訳について、それぞれ仕訳ベクトルを生成し、異なる仕訳の仕訳ベクトルを行方向に並べた仕訳行列を生成する。
【００２６】
仕訳抽出部８は、第２行列（仕訳行列）から、残差に相関する値が閾値を超える勘定科目を含む仕訳を抽出する。仕訳行列に含まれる仕訳の中には、残差に相関する値が閾値を超える勘定科目を含む仕訳以外の仕訳も含まれているため、仕訳抽出部８は、仕訳行列から、残差に相関する値が閾値を超える勘定科目を含む仕訳のみを抽出する。より具体的には、仕訳抽出部８は、残差に相関する値の正負を考慮に入れずに、残差に相関する値の絶対値が閾値を超える勘定科目を含む仕訳を抽出する。残差に相関する値の正負を考慮に入れると、正負２種類の閾値が必要となり、残差が上振れした場合と下振れした場合の２通りの勘定科目を区別して仕訳を抽出することになって、処理が複雑化する。仕訳抽出部８は、残差が上振れしたか、下振れしたかを区別することなく、残差に相関する値の絶対値が閾値を超える勘定科目を含む仕訳をまとめて抽出するため、仕訳抽出部８の処理負担を軽減できる。
【００２７】
異常検知部９は、仕訳抽出部８で抽出された仕訳に含まれる少なくとも一つの勘定科目に含まれる異常を検知する。異常検知部９は、後述するように、ｋ近傍法やＬＯＦ（Local Outlier Factor）法などを用いて異常検知を行う。異常検知部９は、例えば異常度という数値化した値を出力する。異常度の数値が大きければ、異常の疑いが大きいことを示す。異常仕訳抽出部１０は、異常検知部９にて異常が検知された仕訳を抽出する。異常検知部９から異常度が出力された場合には、異常仕訳抽出部１０は、異常度を所定の閾値と比較し、異常度が閾値よりも大きい勘定科目を含む仕訳を抽出する。
【００２８】
図２は図１の財務分析装置１のハードウェア構成の一例を示す図である。図２は、ネットワーク１１に接続された複数のパーソナルコンピュータ（以下、ＰＣ）１２と、同じくネットワーク１１に接続されたファイルサーバ１３とを備えるネットワークシステム１４の概略構成を示している。会計データは、定期的または不定期的に、ファイルサーバ１３に蓄積される。複数のＰＣ１２のうち少なくとも一台が、例えば特定のコンピュータプログラムを実行することにより、図１の財務分析装置１の処理動作を行うことができる。あるいは、複数のＰＣ１２のうち少なくとも一台が図１の財務分析装置１の処理動作を行うハードウェアを例えば拡張ボードのような形態で備えていてもよい。なお、図１の財務分析装置１のハードウェア構成は、図２に示したものには限定されず、例えばスタンドアローン型の一台のＰＣ１２やワークステーションで図１の財務分析装置１の処理動作を行ってもよい。
【００２９】
図３は図１の財務分析装置１の全体的な処理動作の一例を示すフローチャートである。まず、第１ベクトル生成部２は、日次（月次）の残高資産表（ＴＢ）の日次（月次）変動を、それぞれの勘定科目の借方と貸方別に集計し、日次（月次）貸借別のＴＢ変動ベクトルを生成する（ステップＳ１）。
【００３０】
図４はＴＢの具体例を示す図である。図４のＴＢ１は、２０１６／４／１の事業活動を反映させる前の残高資産表である。ＴＢ２は、２０１６年４月の仕訳リストである。仕訳リストには、１ヶ月分の全仕訳が掲載されている。ＴＢ２の同一日（例えば、４／１）の各勘定科目の変動額（残高）を借方と貸方に分けて列記したものが、ＴＢ変動ベクトルであり、日毎の事業活動を表している。例えば、２０１６／４／１のＴＢ変動ベクトルは、（７０，３０，５０，…，７０，３０，５０，…）である。図４のＴＢ３は、ＴＢ１に２０１６／４／１の事業活動を反映させた２０１６／４／２での残高資産表である。このように、日次の事業活動をその前日の残高資産表に反映させることで、次の日の残高資産表が求まる。この処理を日毎に繰り返していき、残高資産表が日毎に更新される。ＴＢ４は、２０１６年４月の１ヶ月間の各勘定科目の変動額の総計値を借方と貸方に分けて列記したものである。ＴＢ１にＴＢ４を足し合わせることで、ＴＢ５に示す２０１６／４／３０での残高資産表が得られる。
【００３１】
図３のステップＳ１の処理が終わると、次に、第１行列生成部３は、日次（月次）の貸借別のＴＢ変動ベクトルを合成して、日次（月次）の貸借別のＴＢ変動行列を生成する（ステップＳ２）。ＴＢ変動行列は、日付の異なるＴＢ変動ベクトルを各行に並べたものである。なお、ＴＢ変動行列を生成することなく、複数の日付分の複数のＴＢ変動ベクトルを後述するステップＳ３に渡してもよい。
【００３２】
次に、推定部４は、貸借ごとに、各勘定科目の日次（月次）の変動モデルを推定する（ステップＳ３）。変動モデルは、各勘定科目ごとに、関連がありそうな他の勘定科目を機械的に抽出するモデルである。このようなモデルを構築する手法として、スパースモデリング手法を用いることができる。スパースモデリング手法では、勘定科目ごとに説明力のある一部の変数のみを自動的に抽出する。スパースモデリング手法の代表的なものとして、Lasso（Least Absolute Shrinkage and Selection Operator）がよく用いられる。
【００３３】
通常の回帰分析では、以下の（１）式の回帰式における誤差ベクトルεの各要素εiの二乗の合計値Σεi2を最小化するように回帰係数ベクトルβを求める。なお、Ｙは目的変数ベクトル、Ｘは説明変数行列である。
Ｙ＝Ｘβ＋ε    …（１）
【００３４】
図５は、売掛金の変動Ｙ002が、回帰係数β1の現預金の変動Ｘ001と、回帰係数β3の商品の変動Ｘ003と、回帰係数β4の買掛金の変動Ｘ004と、回帰係数β5の資本金の増減Ｘ005と、回帰係数β6の売上高Ｘ006と、回帰係数β7の売上原価Ｘ007とに関連している例を示している。図５の売掛金の変動Ｙ002は、ベクトル表記をしない場合には、以下の（２）式の回帰式で表すことができる。（２）式の左辺側は勘定科目の借方、貸方どちらかの変動にしてもよいし、両者の純額にしてもよい。また（２）式の右辺側には、被説明変数として用いた項を除いた全ての勘定科目の借方と貸方の両方の項を設けてもよいし、借方と貸方のいずれか一方の勘定科目の項を設けてもよい。
Ｙ002＝β1×Ｘ001＋β3×Ｘ003＋β4×Ｘ004
＋β5×Ｘ005＋β6×Ｘ006＋β7×Ｘ007＋ε                  …（２）
【００３５】
回帰式が（２）式で表される場合、この式中の誤差ε（回帰式で求めた値と実際の値の差）の二乗が最小になるように各回帰係数β1〜β7を求める。
【００３６】
これに対して、Lassoでは、以下の（３）式の値Ｓλ(β)を最小化する回帰係数βを求める。なお、λは複雑性指数である。
Ｓλ(β)＝λΣj|βj|＋Σiεi2    …（３）
【００３７】
Lassoでは、通常の回帰分析のように、推定値（推定された変動値）の誤差ε2を最小化するのではなく、誤差ε2と回帰係数βの絶対値の合計との和が最小となるように正則化項を加えることにより、関連性が低い勘定科目の回帰係数βがゼロと推定されやすくなり、多数の勘定科目の中から関連性の高い勘定科目だけを機械的に抽出できる。
【００３８】
このように、図３のステップＳ３の変動モデルの推定では、各勘定科目の借方計上金額と、貸方計上金額とをそれぞれ分けて、各勘定科目の借方変動、貸方変動ごとに回帰係数βiと説明変数Ｘiを設定して、（３）式のＳλ(β)を最小化するのに必要な勘定科目と回帰係数βiが抽出されると、抽出された各勘定科目の変動Ｘiと回帰係数βiを（２）式に代入して予測値を求める（ステップＳ４）。この予測値は、各勘定科目の貸方と借方のそれぞれについての変動値を推定した値である。
【００３９】
図６は、貸方の売掛金の変動との関連性の高い勘定科目の一覧と、各勘定科目の回帰係数βiの値との一例を示す図である。図６の例では、貸方の売掛金の変動は、受取手形と、前受金と、売掛金と、当座預金と、買掛金と、繰延税金資産と、期末仕掛品棚卸高と、外注加工費との関連性が高いことを示している。
【００４０】
図３のステップＳ４で予測値が求まると、次に、異常候補特定部６は、予測値と実績値の残差に相関する値が閾値を超えた特定の日付における特定の勘定科目を抽出する（ステップＳ５）。ここでは、残差そのものを閾値と比較してもよいが、残差を正規化して標準偏差を計算し、計算された標準偏差と閾値とを比較してもよい。以下では、残差を閾値と比較する例を説明する。
【００４１】
図７は日次推定グラフの一例を示す図である。図７の日次推定グラフは、売掛金の貸方変動の推定値（破線）と実績変動値（実線）を示している。図７の横軸は日付、縦軸は変動値（単位は百万円）である。図７からわかるように、売掛金の貸方変動の推定値（予測値）は、実績変動値と大部分の日付において一致しているが、いくつかの日付では差違があり、この差違が残差に相当する。図７のような日次推定グラフは、各勘定科目の貸借ごとに別個に生成される。
【００４２】
図８は閾値を超えた残差を数値として表したマトリックスを示す図である。このマトリックスの各行は、それぞれ異なる日付の各勘定科目の残差に相関する値を示している。図８のマトリックス内の数値は、予測値と実績値の残差を正規化して標準偏差で何σ離れているかを示している。この値が大きいほど、その日にその勘定科目に非経常的な動きがあったと考えられる。その一方で、非経常的であっても必ずしも不正とは言えず、単純にまれにしか起こらない会計事象である可能性もある。
【００４３】
図９は売掛金の月次変動額の一例を示すグラフである。図９の破線はLassoを用いて予測した売掛金の月次変動額、実線は売掛金の実際の月次変動額を示している。図９に示すように、Lassoによる分析では、勘定科目間の関連性を大きく捉えて変動モデルを推定するため、実際の変動額が変動モデルの予測値から乖離していた場合には、売掛金に対して通常と異なる勘定科目が関連づけられたことが示唆される。単純に金額的に変動が大きいか否かで判断するよりも、他の勘定科目との関連性を考慮することで、イレギュラーな会計処理を抽出しやすくなる。
【００４４】
図３のステップＳ５の処理が終了すると、仕訳限定部７は、予測値と実績値の残差に相関する値が閾値を超えた日付ごとに、その日に計上された全仕訳を対象に仕訳行列を生成する（ステップＳ６）。生成した仕訳行列の各行が仕訳ベクトルである。なお、仕訳行列を生成することなく、相関する値が閾値を超えた日付に計上された全仕訳の仕訳ベクトルを後述するステップＳ７に渡してもよい。
【００４５】
図１０は仕訳ベクトルと仕訳行列の一例を示す図である。仕訳行列Ｙiは、予測値と実績値の残差に相関する値が閾値を超えたある仕訳日ｉにおける全仕訳についての仕訳ベクトルＶi1〜Ｖijを行方向に並べたものである。ｊは仕訳日ｉのｊ番目の仕訳である。仕訳ベクトルＶijは、Ｖij＝(AC001, AC002, …, AC100)である。仕訳ベクトルＶijの各要素ACxyzは、勘定科目コードxyzの変動値（変動額）である。
【００４６】
図１１は仕訳行列の一具体例を示す図であり、２０１６／４／１の仕訳行列Ｙ20160401が２つの仕訳ベクトルＶ20160401_001とＶ20160401_002で構成されており、これらの仕訳ベクトルが現金預金、売掛金、商品、買掛金、資本金、売上及び売上原価の各変動額を要素とする例を示している。なお、仕訳ベクトルを構成する各勘定科目の種類は任意であり、図１１に示したものに限定されない。
【００４７】
図３のステップＳ６の処理が終了すると、次に、仕訳抽出部８は、仕訳行列中の仕訳ベクトルの中から、予測値と実績値の残差に相関する値が閾値を超えた特定の日付における特定の勘定科目を含む仕訳ベクトルを抽出する（ステップＳ７）。ここでは、予測値と実績値の残差に相関する値が閾値を超えた特定の勘定科目が含まれる仕訳ベクトルのみを抽出し、抽出された各仕訳ベクトルに含まれるすべての勘定科目を列方向に並べた第３行列（仕訳抽出行列）を生成する。この仕訳抽出行列の各行は、個々の仕訳に対応する第３ベクトル（仕訳抽出ベクトル）である。この仕訳抽出行列は、仕訳抽出行列を構成する各仕訳で使用されている勘定科目のみを列方向に並べており、どの仕訳でも使用されていない勘定科目は削除されている。
【００４８】
図３のステップＳ７の処理が終了すると、次に、異常検知部９は、抽出した仕訳（仕訳抽出行列内の各仕訳抽出ベクトル）に含まれる異常を検知する（ステップＳ８）。異常が検知されると、異常仕訳抽出部１０は異常が検知された仕訳を抽出する（ステップＳ９）。
【００４９】
図１２は異常検知部９が行う異常検知処理の処理結果を模式的に示す図である。図１２の丸プロット群ｐ１は、通常の売上を表しており、現金と売掛金がそれなりにあり（５０〜１００程度）、両者の合計にマイナスの符号を付した金額が売上である。これに対して、一方のひし形プロットｐ２は、現金がゼロ、売掛金が−１００、売上が１００であり、売掛金売上の返品という特殊な取引についての仕訳である。また、他方のひし形プロットｐ３は、現金がゼロ、売掛金が１００，売上が−１００であり、通常は現金と売掛金を組み合わせて売上が計上されるのに対して、全額が売掛金である特殊な取引についての仕訳である。これらひし形プロットｐ２，ｐ３の仕訳は、丸プロット群ｐ１の各仕訳とはベクトル空間上の離れた場所に位置するため、これらのプロット間の距離によって、異常と検知できる。
【００５０】
異常の有無の検知には、１）統計的分布に基づく手法、２）距離に基づく手法、または３）密度に基づく手法を用いることができる。
【００５１】
統計的分布に基づく手法では、例えばホテリング理論を用いることができる。ホテリング理論では、与えられたデータに基づいて標本平均と標準偏差を計算し、観測値と標本平均の乖離を標準偏差で割ったもの（マハラノビス距離）の２乗を異常度とするものである。データの分布に正規分布を仮定しているため、分布が不規則で多数の類型が考えられる仕訳には当てはまりが悪いと考えられる。
【００５２】
このような状況においては、距離に基づく手法が用いられる。代表的なものとしてｋ近傍法が知られている。ｋ近傍法では、ｋの数値を予め決めておき、観測値からｋ番目に近いデータまでの距離により異常度を測定するものである。より具体的には、抽出された個々の仕訳同士を比較し、ある仕訳とユークリッド距離がｋ番目に近い仕訳を検出し、検出された仕訳との距離を観測値とする。２つの仕訳間のユークリッド距離は、２つの仕訳に対応する２つの仕訳抽出ベクトル同士を比較して求める。外れ値は、他の仕訳抽出ベクトルから乖離しているはずなので、ｋ番目に近い仕訳抽出ベクトルとの距離が離れているものを異常とする。ただし、仕訳抽出ベクトルへの適用を考えた場合、各仕訳抽出ベクトルの密度が一様ではないため、全域で妥当なｋを決めるのは困難である。
【００５３】
各仕訳抽出ベクトルの密度が一様でない場合に用いられる手法が、密度に基づく手法であり、局所外れ値因子法（ＬＯＦ法）が知られている。ＬＯＦ法は、観測値から最も近いデータ（最近接点）までの距離と、その最近傍点から最も近いデータまでの距離の比によって、密度が近傍に比べて低くなるような点を異常と定義する手法である。
【００５４】
なお、観測値と最近傍点だけの比較ではなく、ｋ個の近傍点を用いた距離の比の平均という形に拡張できる。したがって、仕訳をベクトルで表現し、ＬＯＦ法を利用して異常検知を行うことは一つの有効な手法である。
【００５５】
ただし、監査実務において検討する科目数は、数百〜数千に及ぶため、仕訳ベクトルや仕訳抽出ベクトルの次元が非常に多くなる。この場合、データ間の距離が互いに等しくなることで異常検知が困難になるおそれがある。このため、高次元空間における異常検知手法や、次元を何らかの形で少なくしてから異常検知を行うといった工夫が必要になる。
【００５６】
図１３は異常検知部９による異常検知処理の処理結果の一具体例を示す図である。図１３には、異常と判断された４つの仕訳XXX1、XXX2、XXX4、XXX5が示されている。仕訳XXX1は、売掛金の借方変動の残差（に相関する値）が閾値を超えて、かつ異常検知部９にて異常度が閾値を超えたために、売掛金の借方計上金額が過大と判断されたものである。仕訳XXX2、XXX4、XXX5も同様である。仕訳XXX2は、売上高・商品の貸方変動が過大と判断されたものである。仕訳XXX4は期末仕掛品棚卸高の借方変動が過大と判断されたものである。仕訳XXX5は期末仕掛品棚卸高の貸方変動が過大と判断されたものである。
【００５７】
このように、本実施形態では、各勘定科目の変動モデルを推定し、推定した変動モデルに基づいて各勘定科目の変動値を予測し、予測した変動値（予測値）と実績値との残差に相関する値が閾値よりも大きい特定の日付における特定の勘定科目を抽出する。次に、特定した日付における全仕訳の各勘定科目を列方向に並べた仕訳ベクトルを各仕訳ごとに生成し、生成した複数の仕訳ベクトルの中から、特定の勘定科目を含む仕訳ベクトルを抽出し、抽出した仕訳ベクトルに基づいて、勘定科目に異常があるか否かの異常検知を行う。これにより、それぞれが多数の勘定科目を含む多数の仕訳の中から、勘定科目に異常がある仕訳を自動的かつ的確に抽出できる。したがって、今までは、会計士等が手作業で行っていたために、想定できなかったパターンの不正などを迅速かつ的確に検出することができ、不正会計の防止に役立てることができる。
【００５８】
上述した実施形態で説明した財務分析装置１の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、財務分析装置１の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００５９】
また、財務分析装置１の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００６０】
本発明の態様は、上述した個々の実施形態に限定されるものではなく、当業者が想到しうる種々の変形も含むものであり、本発明の効果も上述した内容に限定されない。すなわち、特許請求の範囲に規定された内容およびその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
【符号の説明】
【００６１】
１  財務分析装置、２  第１ベクトル生成部、３  第１行列生成部、４  推定部、５  残差検出部、６  異常候補特定部、７  仕訳限定部、８  仕訳抽出部、９  異常検知部、１０  異常仕訳抽出部、１１  ネットワーク、１２  ＰＣ、１３  ファイルサーバ、１４  ネットワークシステム
【図１】
2019067086.tif 000003
【図２】
2019067086.tif 000004
【図３】
2019067086.tif 000005
【図４】
2019067086.tif 000006
【図５】
2019067086.tif 000007
【図６】
2019067086.tif 000008
【図７】
2019067086.tif 000009
【図８】
2019067086.tif 000010
【図９】
2019067086.tif 000011
【図１０】
2019067086.tif 000012
【図１１】
2019067086.tif 000013
【図１２】
2019067086.tif 000014
【図１３】
2019067086.tif 000015
【手続補正書】
【提出日】平成30年2月8日(2018.2.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成する第１ベクトル生成部と、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定する推定部と、
前記推定部で推定された変動値と実際の変動値との残差を検出する残差検出部と、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定する異常候補特定部と、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成する仕訳限定部と、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出する仕訳抽出部と、
前記仕訳抽出部で抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知する異常検知部と、
前記異常検知部にて異常が検知された仕訳を抽出する異常仕訳抽出部と、を備える、財務分析装置。
【請求項２】
前記第１ベクトル生成部は、前記複数の勘定科目の借方および貸方別の各変動値を、列方向に並べた前記第１ベクトルを生成し、
前記推定部は、前記複数の勘定科目の借方および貸方別の各変動値を推定する、請求項１に記載の財務分析装置。
【請求項３】
前記推定部は、前記複数の勘定科目の各変動値の誤差の二乗と、前記複数の勘定科目のそれぞれに対応付けられる複数の回帰係数の絶対値の合計との和を最小化することにより、前記複数の勘定科目の各変動値を推定する、請求項１または２に記載の財務分析装置。
【請求項４】
前記残差検出部で検出された前記残差を正規化する正規化部を備え、
前記異常候補特定部は、前記正規化部で前記残差を正規化した値と前記閾値とを比較する、請求項１乃至３のいずれか一項に記載の財務分析装置。
【請求項５】
複数の第１期間を含む第２期間内における複数の前記第１ベクトルを行方向に並べた第１行列を生成する第１行列生成部を備え、
前記推定部は、前記第１行列に基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定し、
前記仕訳限定部は、各仕訳ごとに生成された前記第２ベクトルを行方向に並べた第２行列を生成し、
前記仕訳抽出部は、前記第２行列から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出する、請求項１乃至４のいずれか一項に記載の財務分析装置。
【請求項６】
前記仕訳抽出部は、前記第２行列から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出し、抽出された仕訳に含まれる各勘定科目の変動値を列方向に並べた第３ベクトルを生成し、生成された前記第３ベクトルを行方向に並べた第３行列を生成し、
前記異常検知部は、前記仕訳抽出部で抽出された前記第３ベクトル内の少なくとも一つの勘定科目に異常があるか否かを判断する、請求項５に記載の財務分析装置。
【請求項７】
前記第１ベクトル生成部は、変動のない勘定科目の値をゼロとする前記第１ベクトルを生成し、
前記仕訳限定部は、各仕訳に含まれない勘定科目の変動値をゼロとする前記第２ベクトルを生成し、
前記仕訳抽出部は、各仕訳に含まれる勘定科目のみの変動値を含む前記第３ベクトルを生成する、請求項６に記載の財務分析装置。
【請求項８】
コンピュータは、
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成するステップと、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定するステップと、
前記推定された変動値と実際の変動値との残差を検出するステップと、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定するステップと、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成するステップと、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出するステップと、
前記抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知するステップと、
前記異常が検知された仕訳を抽出するステップと、を実行する、財務分析方法。
【請求項９】
コンピュータに、
会計データの第１期間内における複数の勘定科目の各変動値を要素とする第１ベクトルを生成するステップと、
複数の第１期間を含む第２期間内における複数の前記第１ベクトルに基づいて、前記第２期間内の個々の前記第１期間内における前記複数の勘定科目の各変動値を推定するステップと、
前記推定された変動値と実際の変動値との残差を検出するステップと、
前記残差に相関する値が所定の閾値を超える特定の第１期間における勘定科目を特定するステップと、
前記第２期間内の前記特定の第１期間について前記会計データの仕訳を特定し、各仕訳についての前記複数の勘定科目の各変動値を要素とする第２ベクトルを生成するステップと、
各仕訳についての前記第２ベクトルの中から、前記残差に相関する値が前記閾値を超える勘定科目を含む仕訳を抽出するステップと、
前記抽出された仕訳に含まれる少なくとも一つの勘定科目に異常があるか否かを検知するステップと、
前記異常が検知された仕訳を抽出するステップと、を実行させるための財務分析プログラム。