R5.8.29ver

AI を活用した
ダム安全管理用判断支援ツール
操作マニュアル令和 5 年 8 月

国土交通省 国土技術政策総合研究所
河川研究部 大規模河川構造物研究室

目次

1. はじめに ................................................................................................................ 1
2. 判断支援ツールの適用範囲 ................................................................................... 3
3. 判断支援ツールに用いている AI 技術 ................................................................... 5
4. 判断支援ツールの機能 .......................................................................................... 7
基本的な機能 ......................................................................................................................... 7
用途に応じた計算機能 .......................................................................................................... 8
判断支援ツール使用の流れ ................................................................................................. 10
判断支援ツールの主な機能 ..................................................................................................11

5. 判断支援ツールを使用することのメリット・デメリット .................................. 19
6. 判断支援ツールの使い方..................................................................................... 21
概要...................................................................................................................................... 21
判断支援ツール操作手順..................................................................................................... 27

7. 参考 ..................................................................................................................... 33
検証に必要な日数（学習期間）について ........................................................................... 33
トレンドライン（移動平均など）について ....................................................................... 34「異常検知」シートの「モデルの学習」ついて ................................................................ 36「異常検知」シートの「将来予測の計算値を観測値につなげる」について .................... 37
判断支援ツールに用いたライブラリ .................................................................................. 38

1.

はじめに
ダム安全管理用判断支援ツールは、AI 技術（LSTM）を活用した、ダムの安全管理で取得された時系列データから、ダム管理者等（利用者）によるダムの異常な挙動の判断を支援するツー
ルである。

【解 説】
ダムの維持管理における安全管理では、目視等による点検とともに、漏水量、変形（変位）や揚圧力※１等の各種計測データの監視が異常検知の基本的かつ重要な手段となっている。しかし、高度経済成長期に建設された長期供用ダムが増加する中、ダムの状態に異常がないかを、巡視や計測により監視する安全管理の経験豊富な熟練職員の不足が懸念されている。このような状況に対応し、ダム管理の経験の少ない職員がダム管理者として従事する場合でも、ダムの異常等の判断を的確に行えるような工夫が必要となっている。
そこで、国土交通省国土技術政策総合研究所河川研究部大規模河川構造物研究室では、ダムの管理者による異常有無の判断支援を目的とした AI 技術の活用可能性について検討を進め、「ダム
安全管理用判断支援ツール（以下、判断支援ツール）」を開発した。
この判断支援ツールは、ダム施設の安全管理において取得される漏水、変形（変位）、揚圧力等の各種計測項目の計測データ（時系列データ）について、AI（LSTM）を用いた分析による異常有無の判定を行い、ダム管理者によるダム施設の健全性の判断を支援するものである。
判断支援ツールでは、表計算ソフト Excel（Microsoft 社製）から、計測データを読み込ませ、パラメータ入力等を行う。次に、python により構築した AI 関連のライブラリを制御するプログ
ラムを Excel 上から実行して計測データの学習・分析や検証を行い、異常有無の判定結果を出力する。出力した結果をふまえて、異常有無の判断を行うものとなる。なお、判断支援ツールでは、
過去データの学習に基づく予測と実測データが乖離する場合を「異常」と判定する。
また、本判断支援ツールでは、異常有無の判断を行う他、計測データに上昇トレンドあるいは下降トレンドがある場合に、今後の調査時期や補修期間を計画することを想定して、将来の挙動予測を計算する（最大 365 日後）機能も有している。
※１

漏水量、変形（変位）や揚圧力：「河川管理施設等構造令」第 13 条で、ダムの種類や高さに応じて計測装置を設けることになっている項目。構造令上では、漏水量、変形、揚圧力と記載されているが、本マニュア
ルでは、特に「変形」について、「変形（変位）」もしくは「変位量」と記載している。

1

2

2.

判断支援ツールの適用範囲
判断支援ツールは、河川管理施設等構造令において計測事項として定められている漏水量や変形（変位）、揚圧力の時系列データを対象としている。
【解 説】
ダムの安全管理における AI の活用は、図 1 に示すように、降雨予測、流入量予測や操作支援等のダムの運用面での検討の他、地すべりの予測や、ダム堤体表面の劣化状況の把握等の健全性の把握における検討と多岐にわたっている。
本判断支援ツールは、河川管理施設等構造令で計測装置の設置が定められている漏水量、変形（変位）や揚圧力等の異常検知を行い、ダム堤体の安全管理支援を目的とする。
ダムの安全管理を目的として取得される計測データには、漏水量、変形（変位）や揚圧力の他、地震時の臨時点検実施の判断等に用いられる地震動データ等がある。現在、これらのデータは、
主に表 1 に示すような判定方法を用いて異常有無を判断している。本判断支援ツールは、このう
ち時系列データを対象に、基準値超過の有無の判断支援を行うものである。

図 1 ダムの安全管理における AI の活用例（重力式コンクリートダムの例）1)表 1 ダムの安全管理を目的として取得される主な計測データとそれらに基づく異常有無の判断方法の例 2)

3

【用語の定義】
判断支援ツールを使用するに際し、理解しておくべき専門用語を以下のとおりに定義する。
・ 学習期間異常有無を判定する計算モデルを構築するために使用する期間を「学習期間」とする。正確には「訓練期間」と「検証期間」に分類され、訓練期間内データで作成した計算モデルの精度を検証期間のデータで確認し、検証期間での計算精度が得られるよう各種パラメータをチューニングしている。今回の判断支援ツールでは、双方の期間をあわせて「学習期間」と定義しており、利用者が設定した学習期間を訓練期間と検証期間を 8：2 の割合で分類して計算する。
・ 計算期間
学習期間のデータで作成した計算モデルを用い、異常有無発生の可能性を判断する期間を「計算期間」としている。
・ 目的変数異常有無の判断対象となる時系列データを「目的変数」とする。漏水量、揚圧力、変位量等が該当する。
・ 説明変数
目的変数の時系列変化に影響を与えるデータを「説明変数」とする。貯水位や外気温等が該当する。判断支援ツールでは、ひとつの目的変数に対して複数の説明変数を設定することが可能である。
・ 内生変数
フィルダムの沈下量など、目的変数に経年的なトレンド変化があるデータを判断対象とする場合は、計算結果が観測値に追随するように目的変数自身の時系列変化を「内生変数」とし、説明変数のひとつとして取り扱うことがある。
・ トレンドライン「内生変数」と同じように、目的変数に経年的なトレンド変化があるデータを判断対象とする場合や、このようなデータの将来予測をする場合には、目的変数の上昇トレンド、下降
トレンドを示す近似曲線等を学習期間の「トレンドライン」とし、説明変数のひとつに加えることがある。判断支援ツールでは、トレンドラインを線形近似・指数近似により作成する
場合は、自動で作成する機能を有している。

4

3.

判断支援ツールに用いている AI 技術
判断支援ツールは、ディープラーニングのうち時系列データに多く適用される LSTM（Long

Short Term Memory）を用い、貯水位、外気温等の説明変数から漏水量や変位量等を計算して
いる。
【解 説】
AI は「Artificial Intelligence」の略であり、人間の知能・知性を代替する機械の総称という概念的なものを指している。この AI の具体的な学習方法（手法）を分類すると、一般的には図 2 に示すような関係になるといわれている。このうち、人間の学習能力、予測能力をコンピュータで実現しようとする手法は機械学習といわれている。機械学習には多種多様なアルゴリズムが含まれるが、ニューラルネットワークはこの機械学習の中のアルゴリズムの 1 つとなる。
そして、ニューラルネットワークを応用させたものがディープラーニング（深層学習）と呼ばれている。
判断支援ツールは、AI 技術のニューラルネットワークを基本としている。ニューラルネット
ワークは、図 3 に示すように脳の中にあるニューロン（神経細胞）をモデル化し、人間の脳の働きをコンピュータ上で模倣したものである。また、図 4 に示すようにニューラルネットワークの層を増やしたものがディープラーニングと呼ばれている。

図 2 機械学習やニューラルネットワークの関係

図 3 ニューラルネットワーク

図 4 ニューラルネットワークとディープラーニング

5

本ツールは、AI 技術として、ディープラーニングのひとつである LSTM（Long Short Term
Memory）を用いている。LSTM は、主に自然言語処理や音声処理、時系列データに多く適用されるニューラルネットワークの一種である。LSTM は、図 5 に示すように、各種ゲートを持つ構造
により、過去の様々な時点の情報を長期記憶として保持し続けながら学習を続けることを可能としている。LSTM を用いることにより、貯水位変動による荷重状態（水圧作用）の変化やそれによる堤体や基礎岩盤内の浸透状態の変化、また特にコンクリートダムでは外気温変化による堤体内への熱伝達によるマスコンクリートの温度変化に伴う体積変化といった複数因子の時系列変化を反映させて漏水量等観測値の推測値を求めることができる。このようにして得られた推測値と観測値の差分を評価することで異常有無を判定することができる。
判断支援ツールでは、図 6 に示すように、漏水量、変形（変位）や揚圧力等を出力層（目的変数）とし、貯水位、外気温等を入力層（説明変数）とするモデルを用いている。

時刻tでの入力

yt ：時刻tでの出力（変位）Ct：時刻tでの出力（長期記憶を保つための変数）

xt 入力層Cell State
過去の出力を足し続けながら保持する⇒長期記憶として保持

Ct-1

Ct

＋

×

tanh

LSTM cell×
忘却ゲート
Sigmoid

入力ゲート
Sigmoid

Tanh

yt-1

×
出力ゲート
Sigmoidyt＋：要素同士の和：要素同士の積×Sigmoid、Tanh：活性化関数

中間層（LSTM）

yt 出力層
時刻tでの出力

図 5 LSTM の概要 3)

図 6 判断支援ツールで用いた LSTM モデルの概要 3)を改変（加筆修正）して転載

6

4.

判断支援ツールの機能
基本的な機能判断支援ツールは、学習期間における目的変数と説明変数の関係性から計算モデルを構築

し、計算期間における異常有無の判断支援を行うことを基本的な機能としている。また、入力
データの欠測値補間等、利用者の負担を軽減する補助的な機能を有している。
【解 説】
判断支援ツールの機能一覧を表 2 に示す。3～6 が異常有無の判定を行う基本的な機能、その他は利用者の作業を補助する機能を示す。
表 2 判断支援ツールの機能

1

2

3

4

5

6

7

機 能
機能等の説明
分析対象とする・各種観測値の計測データ（目的変数・説明変数）とそのヘッダ情報（計計測データの読測項目名等）の csv ファイルを、Excel から読み込む機能。
み込み
・1 で読み込んだ計測データを分析に用いる学習用データとして利用できるよう、欠測値の処理や標準化などの前処理を行う機能。
データの前処理・欠損値の補間は、線形補間もしくは状態空間モデルによる補間を行う
ことができる機能。
・各種パラメータの設定（入力）を、Excel から行う機能。
分析に用いるパ・判断支援ツール（試作版）で用いる AI のアルゴリズム（LSTM）の知識
ラメータの設定がなくても一定の精度で運用できるよう標準値を設定。
異 常 有 無 の 判 定 ・異常有無の判定に用いる閾値の設定を、Excel から行う機能。
に 用 い る 閾 値 の ・閾値は、学習期間中の観測値と計算値との乖離の、最大値／最小値、設定±1σ、±2σ、±3σ が選択可能。
・1 で読み込み、2 で前処理を行った計測データを、3 で設定したパラメータの下で学習（新規学習）を行う機能。なお、過去に学習したモデルを活用することも可能。
・学習結果から求めた値から、4 で設定した閾値を用いて、計測データの学習・分析分析による異常有無の判定を行う機能。
・計算結果として、（ア）目的変数の観測値と計算値の時系列変化を同時にプロットしたグラフ、（イ）観測値と計算値の差分の時系列変化を示したグラフを出力し、（イ）については判断支援のための閾値を明示する。
・異常有無の判定精度の向上を試みるために、説明変数、目的変数等の検証
計算結果、判定結果を時系列的に比較できるグラフを表示する機能。
・異常有無の判定結果、判定内容、履歴等の表示・出力および保存をする機能。
異常有無の判定
結 果 の 表 示 ・ 出 ・保存データには、分析に用いた計測データに、線形もしくは状態空間
力・保存モデルで補間した値（補間値）、モデルで計算した値（計算値）、異常判定の閾値、異常判定の情報等を加えて保存する。

7

用途に応じた計算機能
判断支援ツールは、「過去の挙動確認」、「当日の挙動確認」、「将来の挙動予測」の 3 つの用途に対応できるように作成している。
【解 説】(1) 過去の挙動確認と当日の挙動確認
過去の挙動確認は、ダムの定期点検、総合点検を活用場面として想定している。図 7 に過去・当日の挙動確認の計算イメージを示す。近年を計算期間、それ以前を学習期間として設定し、近年の時系列変化に異常の発生がないか、異常がある場合は顕在化した時期がいつであるかなどを判断する。
当日の挙動確認は、前回計測日から計測当日までを計算期間、それ以前を学習期間とし、当日の観測値と計算値を比較する。
入力データ
完成後数年は学習期間に含めない

学習期間

計算期間

目的変数
説明変数①

時間

説明変数②

時間

時間

出力データ

観測値

目的変数

計算値
学習期間は計算値と観測値の差分が小さい目的変数実績
と計算の差分時間
閥値
学習期間は計算値と観測値の差分が小さい時間※当日の挙動確認は、上記の学習期間を前回計測日まで延伸する。

図 7 過去・当日の挙動確認の計算イメージ

8

(2) 将来の挙動予測
将来の挙動予測は、計測データに上昇トレンドあるいは下降トレンドがある場合に、今後の調査時期や補修時期を計画する際に実施することを想定する。図 8 に将来予測の計算イメージを示す。判断支援ツールでは、将来予測期間を計測当日から 10、20、30、60、90、180、
365 日後のなかから選定するものとしている。

入力データ
予測時点
完成後数年は学習期間に含めない

予測時点とトレンドが異なる場合は学習期間に含めない

学習期間

目的変数
学習期間のトレンドに合わせた近似曲線

説明変数①

時間

説明変数②

学習期間のトレンドに合わせた近似曲線等を「トレンドライン」
として説明変数に加える。

時間

時間

出力データ

観測値

目的変数

計算値

時間

図 8 将来予測の計算イメージ

9

計算期間

判断支援ツール使用の流れ
判断支援ツールの使用手順は、「前処理」、「基本設定・データ確認」、「異常検知」に区分される。このうち事前準備については、判断支援ツール外作業として利用者が行うものとなる。また、欠測値の補間方法、学習期間、閾値は利用者が選定する。
【解 説】
判断支援ツールを利用したダム計測データ評価手順は以下のとおりとなる。

前処理

①事前準備
目的変数として評価する漏水量、変位量等の観測値および説明変数とする貯水位、外気温等の時系列データを収集し、所定の書式に整理する。

基本設定②基本情報の設定
タイトルやファイルの保存先、入力データの設定等の基本情報を入力する。

データ確認③-1 データの欠測値補間
判断支援ツールは、欠測値があると計算できないため、①で準備した各データの欠測値を補間する。判断支援ツールの計算対象は、全て日単位のデータとしているため、例えば月 1 回の計測データについては計測日間の欠測値補間が必要である。
③-2 学習期間の設定
対象データの学習期間を、用途ごとの留意点を踏まえて設定する。
④-1 閾値の設定
異常発生の有無を判断する目安とする閾値を設定する。閾値は、計算出力のうち学習期間における計算値と観測値の差分の時系列グラフに明示するものであり、以下のなかから判断支
援ツール内で選択することができる。
学習期間における計算値‐観測値差分の平均値±1.96σ（95%）
学習期間における計算値‐観測値差分の平均値±2.58σ（99%）

異常検知

学習期間における計算値‐観測値差分の平均値±3σ（99.7%）
学習期間における計算値‐観測値差分の最大値～最小値④-2 異常検知の計算
異常検知の計算を LSTM で実施する。判断支援ツール内で、「過去の挙動確認」、
「当日の挙
動確認」、
「将来の挙動予測」のなかから用途を選択し、異常検知の計算を行う。
④-3 計算結果の評価
計算結果として、目的変数の観測値と計算値の時系列変化を示すグラフ、両者の差分の時系
列変化を示すグラフが出力結果として得られる。異常発生の有無は、計算値と観測値の差分の時系列変化から判断する。
④-4 異常検知の再計算（必要に応じて）④-3 の結果によっては、再度③-2 の学習期間を見直すなどして再計算を実施する。

10

判断支援ツールの主な機能①事前準備
判断支援ツールに入力するデータは、異常検知の対象とする漏水量等を目的変数とし、当該観測値の影響因子とされる貯水位、外気温等を説明変数として利用する。
【解 説】
判断支援ツールに入力するデータのうち目的変数は、漏水量、変位量、揚圧力等のダム健全度の指標となる計測データが該当する。説明変数は、目的変数の影響因子とされる貯水位、外気温等の時系列データが該当する。目的変数は異常検知の評価対象とするデータを 1 つのみ入力するものとするが、説明変数は複数の入力が可能となる。
目的変数と説明変数の標準的な組み合わせを、用途ごとに以下に示す。ただし、これはあくま
で標準的な項目であるため、ダムごとの特徴に応じて説明変数を加えることで、計算値の精度が向上する場合もある。
(1) 過去の挙動確認
過去の挙動確認では、目的変数ごとに相関性があるとされている説明変数を表 3 に示すとおりに選定する。ただし、フィルダムの変位量は完成後から長期にわたって増加し続けるのが一般的な動きとなるため、実態にあった計算値を算定するためには、説明変数にトレンドを表現するデータを加える必要がある。
表 3 【過去の挙動確認】目的変数と説明変数の標準的な組み合わせ
目的変数

説明変数

コンクリートダム全漏水量

貯水位・外気温

コンクリートダム基礎漏水量

貯水位

コンクリートダム継目漏水量

貯水位・外気温

コンクリートダム揚圧力

貯水位

コンクリートダム変位量

貯水位・外気温

フィルダム全漏水量

貯水位・降水量

フィルダム区間漏水量

貯水位・降水量

フィルダム変位量

貯水位・トレンドを示す時系列データ（経過年数・内生変数・沈下量・上下流変位量等）

11

(2) 当日の挙動確認
当日の挙動確認は、計測日当日のみを異常検知の対象とするものであるため、表 4 に示す
ように、観測値と比較する計算値は前回計測までの傾向をできるだけ忠実に反映させるものとし、内生変数を説明変数に加えるものとする。
表 4 【当日の挙動確認】目的変数と説明変数の標準的な組み合わせ
目的変数

説明変数

コンクリートダム全漏水量

貯水位・外気温・内生変数

コンクリートダム基礎漏水量

貯水位・内生変数

コンクリートダム継目漏水量

貯水位・外気温・内生変数

コンクリートダム揚圧力

貯水位・内生変数

コンクリートダム変位量

貯水位・外気温・内生変数

フィルダム全漏水量

貯水位・降水量・内生変数

フィルダム区間漏水量

貯水位・降水量・内生変数

フィルダム変位量

貯水位・内生変数(3) 将来の挙動予測
将来予測は、4.2 (2)に記述したとおり、対象データの時系列変化に何らかのトレンドがあり、予測の必要性がある場合に実施するものである。このようなトレンドを反映した将来予測は、
貯水位や外気温といった周期性のある説明変数のみでは対応できないことから、表 5 に示すとおり学習期間のトレンドラインを説明変数に加えるものとしている。
トレンドラインは観測値のトレンドを高い相関性で近似できるものとすることが望ましく、評価対象の時系列変化に応じて線形近似、指数近似、移動平均などの手法で作成する。
表 5 【将来の挙動予測】目的変数と説明変数の標準的な組み合わせ
目的変数

説明変数

コンクリートダム全漏水量

貯水位・外気温・トレンドライン

コンクリートダム基礎漏水量

貯水位・トレンドライン

コンクリートダム継目漏水量

貯水位・外気温・トレンドライン

コンクリートダム揚圧力

貯水位・トレンドライン

コンクリートダム変位量

貯水位・外気温・トレンドライン

フィルダム全漏水量

貯水位・降水量・トレンドライン

フィルダム区間漏水量

貯水位・降水量・トレンドライン

フィルダム変位量

貯水位・トレンドライン

12③-1 欠測値補間
判断支援ツールで取り扱うデータは全て日単位としているため、計測頻度が月単位である場
合や、計器の不具合による欠測期間を補間する。
【解 説】
判断支援ツールで使用している LSTM は、欠測値を許容しない方法であるため、計算に先立って使用するデータの学習期間（目的変数・説明変数共）の欠測値は全て補間しておくことが必要となる。
判断支援ツールでは、欠測値を自動で補間する機能を有しており、「線形補間」と「状態空間モデル 4）による補間」の 2 つの方法のうちいずれかを選択できるものとしている。
「線形補間」
は、欠測値前後の観測値を用いて欠測値を推定するものであり、「状態空間モデルによる補間」
は、計測時の時系列履歴から状態空間モデル等により影響因子から観測値を推定するモデルを作成し、欠測値を推定モデルにより補間するものである。欠測期間がごく短期間であれば「線形補間」を選択すればよいが、欠測期間が長期にわたる場合に「線形補間」すると、本来季節的な変動サイクルを示す時系列変化が直線的に変化することとなり、実態と乖離した補間となることがある。説明変数として利用する貯水位や外気温が長期欠測することはないが、揚圧力や漏水量は計器の不具合等で欠測期間が長期にわたる場合も想定されるため、この場合は「状態空間モデル
による欠測値補間」を選択することが望ましい。

13③-2 学習期間の設定
学習期間は、計算モデルの精度を決定する最も重要な要素となるため、評価対象とする計測
データ時系列変化や判断支援ツールの用途を踏まえて適切に設定する。
【解 説】
学習期間設定の考え方について、用途ごとに以下に示す。
なお、ダム完成後から数年（目安として管理第 2 期まで）はダムの挙動が定常状態に達していないことが多いため、当該期間を学習期間に含むと適切な異常検知ができない可能性がある。ダム完成後数年を学習期間から除外することについては、用途の種別によらない共通の考え方と位置付けるものとする。
(1) 過去の挙動確認における学習期間
判断支援ツールの用途を過去の挙動確認とする場合の学習期間は、異常検知の対象とする
目的変数の時系列変化に応じて表 6 に示すとおり学習期間を設定する。
(2) 当日の挙動確認における学習期間
当日の挙動確認は、説明変数に内生変数を加えるため、学習期間の設定による計算結果の違いはほとんどない。このため、学習期間はできるだけ長くとることを基本とし、ダム完成
後から数年を除き、前回計測日までの全期間を学習期間として設定する。

14

表 6 【過去の挙動確認】目的変数の時系列変化と学習期間の考え方
目的変数の時系列変化
目的変数

時系列変化に特に大きな変化がない。

ダム完成
から数年

学習期間の考え方
計算期間

学習期間

学習期間の違いによる計算の差異は少ない。
特に問題がない場合は、学習期間をできるだけ長くとる。

時間
ダム完成
から数年

目的変数

時系列変化にトレンドはないもののばらつき
が大きい。

計算期間

学習期間

15

時間

目的変数

ある時点から何らかの要因により時系列変化にトレンドが発生。

ダム完成
から数年

計算期間

学習期間

時間

目的変数

ある時点から何らかの要因により時系列変化にトレンドが発生、その後は補修により改善。

ダム完成
から数年

学習期間

時間

計算期間

トレンドが顕在化した時期を推定するためには、トレンドの兆候がほとんどない期間を学習期間として選定する。
トレンド発生期間を学習期間とすると、トレンド開始の推定時期が遅れることとなる。
補修前後の時系列変化は連続性がないものとなるため、補修後の期間のみで学習期間を設定する。

(3) 将来の挙動予測における学習期間
将来の挙動予測は、図 9 に示すように、予測時点の目的変数のトレンドを説明変数とする
が、学習期間は予測時点と同じトレンドである範囲を選定する（例えば、予測時点が上昇ト
レンド継続中であれば当該トレンドが継続する範囲から学習期間を設定する）。
なお、上記のとおり学習期間を設定して計算しても、学習期間内で上昇トレンドの傾き変化点等が含まれると、予測時点のトレンドと異なる計算結果となる場合がある。このような場合には変化点以降の期間を学習期間と設定することで、妥当性のある予測値が得られることがある。

予測時点とトレンドが異なるため学習期間に含めない

観測値

計算値（予測）

学習期間

計算期間

目的変数

予測時点とやや異なる
トレンドで予測している

時間
予測時点とトレンドが異なるため学習期間に含めない

学習期間

計算期間

目的変数

学習期間を見直すことで予測精度が上がる可能性がある

時間上昇トレンド 予測時点の変化点

図 9 【将来の挙動予測】目的変数の時系列変化と学習期間の考え方

16④-1 閾値の設定
閾値は、目的変数の異常有無を判断するための目安として判断支援ツールの計算結果を示す
グラフに表示させるものであり、4 種の閾値から選定する。
【解 説】
閾値は、判断支援ツールの計算出力のうち、計算値と観測値の差分の時系列変化を示すグラフ（将来の挙動予測では対象外）に表示させるものである。判断支援ツール内で、以下の 1)～4)から選択することが可能である。図 10 に閾値設定の例を示す。
1)

学習期間における計算値‐観測値差分の平均値±1.96σ（95%）2)

学習期間における計算値‐観測値差分の平均値±2.58σ（99%）3)

学習期間における計算値‐観測値差分の平均値±3σ（99.7%）

4)

学習期間における計算値‐観測値差分の最大値～最小値

異常検知を厳しく管理する場合は 1)～3)を閾値として設定するとよいが、多数データを異常検知することとなる。閾値は、各ダムの管理方針に応じて選定することとなる。なお、閾値として 4)の最大値～最小値を選定した場合は、学習期間に異常値となる極大値が含まれていると、
当該データのみで閾値が決まってしまうことがあるため、注意が必要である。

17

漏水量 （ L/min）
差分 （ L/min）

差分・閾値 ±1.96σ

差分 （ L/min）

差分・閾値 ±3σ

差分 （ L/min）

18

計算値と観測値

差分・閾値 最大・最小

図 10 閾値設定の例

5.

判断支援ツールを使用することのメリット・デメリット
判断支援ツールは、判断支援技術としてのメリットとともに、使用している LSTM の特性か

らダムの安全管理を行ううえでデメリットとなる点もある。
【解 説】(1) 判断支援ツールを使用することのメリット①合理的な判断基準の設定が可能となること
学習期間を適切に設定すれば、説明変数から評価対象とする計測データの理論的な時
系列変化の計算値が得られるため、計算値と観測値の差分から明確な異常有無の判定基準を設定することができる。
②計測データの長期トレンド変化点を推定できること
異常有無の判断基準が明確となるため、例えば漏水量が安定した水位から増加トレン
ドに変化した場合など、閾値が連続して超えることが視覚的に確認できるなど、通常の管理では気づきにくい変化も推定できる。ダムの安全管理では、短期的な観測値の急騰は検知しやすいが、長期的なトレンドの効率的な検知については課題であるため、こうした課題に対応できるものと位置付けられる。
③将来の挙動予測が可能となること
ダムの計測データの従来の分析法では「将来を予測する」ことができなかったが、判断支援ツールで使用している LSTM では、ある計測日からの過去の履歴と計測日以降の履歴の関係を学習する機能を有しているため、将来予測が可能となる。将来予測が必要な場面は、実運用上多くないものの、例えば上昇トレンドが継続して将来的な対策やモニタリング強化などを検討する際には有意な機能となりうる。
(2) 判断支援ツールを使用することのデメリット①学習期間を適切に設定しなければミスリードとなる恐れがある
判断支援ツールは、「学習期間」によって当該データを評価する計算モデルを構築する
ため、「学習期間」の設定が適切でないと、計算の信頼度が低下し、ミスリードを招く恐れがある。
②目的変数と説明変数の関係性が希薄なデータには適用性が低い
判断支援ツールで使用している LSTM では、目的変数であるダム計測データが貯水位や外気温といった説明変数との相関性が強いという特徴を踏まえて採用された手法である。このため、目的変数と説明変数との関係性が希薄なデータにはそもそも適用性が低く、ケースによっては適用しないことが望ましいといえる。特に、フィルダムの漏水量
は、貯水位や降水量以外にも地下水位や周辺地山からの表面水など様々な因子に影響することが考えられるため、その傾向が強いといえる。

19

③将来予測において妥当性のある予測ができない場合がある
判断支援ツールで使用している LSTM は、将来予測することも可能であることは前述のとおりであるが、予測値算出に際しては、「予測期間内において説明変数がこれまでの履歴に準じた変化をすること」を想定しているため、次のような場合は予測値の信頼度は低下し、ミスリードを招く恐れがある。
・

予測期間に通常と異なる貯水池運用が含まれる場合（水位低下を維持する場合や水位上昇が早い場合など）。

・

説明変数に降水量がある場合、予測期間内に大きな降雨があり、その影響で観測値が大きく変化する場合など。

20

6.

判断支援ツールの使い方
概要(1) データ容量
判断支援ツールは、zip ファイルに圧縮した状態でダウンロードされる。データ容量は、図11 に示すように、圧縮した状態で約 436MB、解凍した状態で約 1.43GB あるため、使用する PC 等において上記容量を確保する必要がある。

図 11 データ容量21(2) 作業環境等の確認
判断支援ツールは、図 12 に示す「dam_ai_tool_v01」フォルダ内のエクセルファイルを起動することで使用を開始する。起動した際、コンテンツ有効化等の警告が出た際は、マクロの有効化をエクセル内で実行する。

判断支援ツールフォルダ構成

エクセルファイルを起動する
図 12 判断支援ツール起動方法

判断支援ツールは、Windows のバージョン 20H2 以上の環境で動作確認を行っているため、バージョン 1809、1909 等では使用できない場合がある。Windows のバージョンは図 13 に示すように、Windows 検索ボックスに「winver」と入力すれば確認することができるため、使用に先立って確認しておくとよい。

バージョン 20H2 以上で使用する※バージョン 1809、1909 等では使用できない場合がある。

図 13 Windows バージョン確認方法

22

(3) フォルダ構成の概要「dam_ai_tool_v01」内のフォルダ構成は表 7 に示すとおりである。
表 7 フォルダ構成の概要
フォルダ/ファイル構成
dam_ai_tool_v01

説明
各種フォルダの保存フォルダ

01_input

入力フォルダ

02_output

出力フォルダ

Title_base

データ確認ファイルの保存先

Title_01df.csv

データ確認の計算プログラム

Title_02g.png

データ確認の出力結果画像ファイル

Title_LSTM

異常検知ファイルの保存先

Title_01df_result.csv

異常検知の計算プログラム

Title_01g_result.png

異常検知の計算結果画像ファイル

Title_02df_result.csv

異常検知の計算結果ファイル

Title_02g_result.png

異常検知の計算結果と観測値の比較画像ファイル

Title_03evl_01train.csv

異常検知の訓練結果ファイル

Title_03evl_02valid.csv

異常検知の検証結果ファイル

Title_03evl_03test.csv

異常検知の予測計算結果ファイル

03_modelTitle_LSTM

学習済みモデル保存フォルダ
学習済みモデルファイルの保存先

licenses

ライセンス

python-3.10.8-embed-amd64

ライブラリを制御するプログラム等の構築で用いたコード

run_kihon_base08.bat

データ確認プログラム実行 bat ファイル

run_kihon_LSTM08.bat

異常検知プログラム実行 bat ファイルsetting_base.ini

データ確認プログラム用設定ファイル

setting_LSTM.ini

異常検知プログラム用設定ファイル

ダム安全管理用判断支援ツール_v01.xlsm

判断支援ツール本体

23

(4) 主な使用ライブラリ
判断支援ツールで使用した主なライブラリを表 8 に示す。

表 8 主な使用ライブラリ一覧
使用した言語やライブラリ等
numpy 1.24.1
pandas 1.5.2
scikit-learn 1.2.0
statsmodels 0.13.5
tensorflow 2.11.0
keras 2.11.0

説明
数値計算を効率的に行うための拡張モジュール
数表および計測データ操作ライブラリ
機械学習ライブラリ
統計解析ソフト
機械学習ライブラリ
ニューラルネットワークライブラリ24

(5) 判断支援ツールを用いた異常検知の流れ
判断支援ツールを用いた異常検知の流れを図 14 に示す。前処理は判断支援ツールの外であらかじめ実施しておく作業であり、判断支援ツールを利用した作業は 1）基本設定、2）データ確認、3）異常検知の流れで実施する。判断支援ツールは、図 15 に示すとおり、これと同名のワークシートで構成されている。

前処理←手順 1～4（入力データの整理）判断支援ツール使用

1）基本設定←手順 5（タイトル、入力データの設定）

2）データ確認←手順 6～7（目的変数・説明変数の入力、補間方法・
学習期間の設定）

3）異常検知←手順 8～11（閾値設定、異常判定、将来予測実施）

図 14 判断支援ツールを用いた異常検知の流れ

25

1）基本設定

タイトル、ファイルの保存先、入力データの設定等の基本情報を入力する。

2）データ確認

欠測値補間、目的変数・説明変数の指定、学習期間の設定等を行う。

3）異常検知閾値の設定、異常判定、将来予測を行う。

図 15 判断支援ツール 操作画面

26

判断支援ツール操作手順
判断支援ツール上で実際に行う手順を表 9～12 に示す。手順 1～4 は前処理操作に該当し、判断支援ツール外で行う事前準備となる。
表 9 前処理操作
項目

作業画面例

手順 1
・対象データの収集

手順 2
・書式の整理手順 3・欠測値や明らかな異常値等を削欠測期間は空白のセルの状態
でツールに読み込ませることが可能である。

除し、1 行目に目
的変数および説
明変数を入力

将来予測計算を行う場合において、「線形近似」も
しくは、「指数近似」以外のトレンドライン（移動平均など）を説明変数として使用する場合は、この段階で csv ファイルに直接入力する。
日付が不連続の場合、エラーが出ます。

27

手順 4-1
・整理データを
input フ ォ ル ダに保存

01_input フォルダにファイルを保存する。
手順 4-2・保存したファイル 名 に拡 張子 が
表 示 され てい な

① 「表示」タブを選択する。

い場合は、表示さ② 「ファイル名拡張子」にチェックを入れる。

れるように設定

手順 5 は基本設定シートで行うものであり、「基本設定」シート内のタイトル名、保存先、入力フォルダ名、入力 csv ファイル名（拡張子含む）を設定する。
表 10 基本設定
項目

作業画面例

手順 5
・ツールの「基本設定」シートで、計算ファイルの指定等を行う。
・複数回検討を行う場合は、都度
タイトル名を変更する。
（同タイトル名
ツールを起動し、基本条件を設定する。

で上書き保存さ
れるため。
）

28

手順 6～7 はデータ確認シート行うものであり、時系列グラフを作成し、学習期間を設定する。
表 11 データ確認
項目

作業画面例

手順 6-1
・「データ確認」シー
トで、入力データを図化。
・図化したデータの① 学習期間を設定する。

挙動の 安定性等を確認し、学習期間を② 「データ整形とグラフ描画」を押す。

設定。

学習期間を決める③

図化したデータの挙動の安定性等を確認し、学習期間を決める。

手順 6-2【過去の挙動確認をする場合】
・表３（p11）を参考に
目的変 数および説明変数を入力。

29

手順 6-3【当日の挙動確認をする場合】
・表４（p12）を参考に
目的変 数および説明変数を入力。
・説明変数には、必ず内生変数も入力。

手順 6-4【将来の挙動予測をする場合】
・表５（p12）を参考に
目的変 数および説明変数を入力。
・将来予測計算を行う場合は、「線形近似」もしくは、「指数近似」を説明変数の欄に入 力すること

例：線形近似で、トレンドライン
として使用できる。
※他の トレンドライン（ 移動平均な

例：指数近似ど）を使用する場合
は、手順 3 の段階で
入力する。
手順 7
・「データ整形とグラ
フ描画」ボタンを押し、入力データの図を確認。
（output フォルダ にデータ補間後の 時系列グラフが生成される）
必要に応じて、学習期間を見直す。

30

手順 8～11 では、異常検知シートよりツールの活用場面を選択し、過去・当日の異常検知もし
くは将来予測を行う。
表 12 異常検知
項目

作業画面例

手順 8-1
・異常判定に必要なパラメータ等を設定。

「データ確認」シートの入力内容を反映するた
めに、「自動設定」を押す。

手順 8-2【過去・当日の挙動確認をする場合】
・過去の計算を行う際は、活用場
面から「過去・当

過去・当日の挙動確認を選択する。

日の挙動確認」
を選択。

手順 8-3【将来の挙動予測をする場合】
・将来の予測計算を行う際は、活用場面から予測する日数を選
10、20、30、60、90、180、365 日より将来予測期間を選択する。

択。

31

手順 9
・
「異常検知」シート
で、「異常検知の実行」ボタンを押す。

手順 10【過去・当日の挙動確認をする場合】
・出力結果図および差分グラフから、異常時期を確認。

差分グラフから 異常判定を行う。

・異常が示唆される
時期について、時系列データを確認。
・異常の有無・要因
を分析。
手順 11
【将来の挙動予測をする場合】
・将来予測の結果を確認する。

将来予測結果の 確
認を行う。

32

7.

参考
検証に必要な日数（学習期間）について判断支援ツールにおいて、過去・当日の異常検知もしくは将来の予測計算を行う場合、図 16 に示すようなエラーメッセージが出ることがある。これは、計算期間に対して、学習期間を十分に設定していない場合に発生するエラーであり、表 13 に示す標準設定の下で、必要となる学習期間
は表 14 に示すとおりであることを確認している。ただし、これは、エラーが生じない最低日数を示しているものであり、計算の精度を上げるためには、より多くの学習期間を設けることが望ましい。

図 16 エラーメッセージ例
表 13 標準設定
項目

設定内容

トレンドラインの発生期間

学習期間

訓練と検証データの割合

8 : 2

目的変数と説明変数の正規化方法

標準化

説明変数の入力時系列区間

365

隠れ層のニューロン数

32 , 64

隠れ層の活性化関数

tanh

最大学習回数

5000

Early stopping patience

15

バッチサイズ64

表 14 必要な学習期間
計算期間

必要日数（学習期間）

必要年数（学習期間）

過去・当日

456 日

約 1.2 年

10 日

478 日

約 1.3 年

20 日

503 日

約 1.4 年

30 日

528 日

約 1.5 年

60 日

603 日

約 1.7 年

90 日

894 日

約 2.5 年

180 日

1,794 日

約5年

365 日

3,644 日約 10 年

33

トレンドライン（移動平均など）について判断支援ツールにおいて、将来の予測計算を行う場合に、上昇トレンドあるいは下降トレンドについては、説明変数にトレンドラインを入力することとしている。本ツールでは、「線形近似」
および「指数近似」については、自動でトレンドラインを作成する機能を有しているが、その他のトレンドラインについては自動作成機能を有していない。これらのトレンドラインのうち、特に「移動平均」については、本マニュアル上で頻出したにもかかわらず具体的なデータ整理方法
についてはまだ示していないため、ここでは、「移動平均」をトレンドラインに用いる場合の具体的なデータ整理方法について述べる。なお、他のトレンドラインを考慮する際にもほぼ同様の手順となるため、参考にされたい。
(1) 移動平均の考え方
移動平均は、時系列データにおいて、ある一定の区間で、その区間をずらしながら区間ごとの平均値を求めることにより、不規則な変動を平滑化し推移を把握しやすくする手法である。移動平均にも様々な種類があるが、ここでは最も一般的な単純移動平均について説明することとし、
例えば、3 日間移動平均というと、1 日ごとに区間をずらして 3 日間の平均値を区間ごとに求めることとなり、区間 n の移動平均 Xn は以下の式で求める。なお、どちらの方法を用いるかは、
ダムごとのデータ取得状況等に応じて、利用者で判断する。

ｎ =
ｎ =

（当日含む前後３日間）（当日含む過去３日間）

34

(2) 判断支援ツール使用時のデータ整理方法
判断支援ツール使用時は、図 17 を参考にデータ整理を行った後、「5. 判断支援ツールの使い方」の手順 3 以降に従う。

② 1 行目に「移動平均」と入力する。
① 例えば 3 日間移動平均の場合は、青の範囲を平均した。

③ 以降、各区間において、②同様に平均値を求める。

図 17 判断支援ツール使用時のデータ整理方法（移動平均）35

「異常検知」シートの「モデルの学習」ついて判断支援ツールの「異常検知」シートにおいて、図 18 に示すように、データ入力欄に「モデルの学習」という項目があり、チェックの有無によって扱うモデルが異なる。通常はチェックありの状態で計算することを想定しているが、チェックを外すことで、過去に学習したモデルを用
いて計算を実施することができる。
チェックあり：入力データでモデルを学習し異常検知を実施。学習済みモデルの保存フォルダにモデルを保存する。
チェックなし：過去に学習したモデルで異常検知を実施。学習済みモデルに保存されたモデルを読み込む。

図 18 「異常検知」シートの「モデルの学習」について

36

「異常検知」シートの「将来予測の計算値を観測値につなげる」について
判断支援ツールの「異常検知」シートにおいて、図 19 に示すようにデータ入力欄に「将来予測の計算値を観測値につなげる」という項目がある。通常はチェックなしの状態で計算することを想定しているが、チェックを入れることで、将来予測の計算値を観測値につなぎ合わせることができ、現在時点の観測値が将来的にどのような傾向を示すか参考とする場合を想定している。
ただし、将来予測と観測値に大きな乖離がある場合は、学習モデルが正しくない可能性や本ツールでは計算が困難なケースである可能性が高いこと、また、ツール使用者が欲しい結果をそれらしく意図的に作り上げる機能とも言えるため、本機能の使用に関しては推奨しない。
チェックあり：将来予測の計算値が観測値から延びるようにグラフを出力する。
チェックなし：将来予測の計算値と観測値を分けてグラフを出力する。（通常使用）

図 19 「異常検知」シートの「将来予測の計算値を観測値につなげる」について

37

判断支援ツールに用いたライブラリ
判断支援ツールで使用したライブラリを表 15 に示す。
表 15 使用ライブラリ一覧
ライブラリ名およびバージョン情報
absl-py 1.4.0

kiwisolver 1.4.4

requests-oauthlib 1.3.1

astunparse 1.6.3

libclang 15.0.6.1

rsa 4.9

contourpy 1.0.6

Markdown 3.4.1

scikit-learn 1.2.0

cycler 0.11.0

MarkupSafe 2.1.1

scipy 1.10.0

flatbuffers 23.1.4

numpy 1.24.1

statsmodels 0.13.5

gast 0.4.0

oauthlib 3.2.2

tensorboard 2.11.1

google-auth 2.16.0

packaging 23.0

tensorboard-plugin-wit 1.8.1

google-auth-oauthlib 0.4.6

pandas 1.5.2

tensorflow 2.11.0

google-pasta 0.2.0

patsy 0.5.3

tensorflow-estimator 2.11.0

grpcio 1.51.1

protobuf 3.19.6

tensorflow-intel 2.11.0

h5py 3.7.0

pyasn1 0.4.8

tensorflow-io-gcs-filesystem
0.29.0idna 3.4

pyasn1-modules 0.2.8

threadpoolctl 3.1.0

joblib 1.2.0

python-dateutil 2.8.2

Werkzeug 2.2.2

keras 2.11.0

requests 2.28.2

38

参考文献
1)

櫻井寿之、小堀俊秀、松下智祥：AI を活用したダム安全管理用判断支援ツールの開発、国総研レポート 2023、PP.129-130、2023.

2)

小堀俊秀、佐藤弘行、二階堂良平、傅斌、金銅将史：ダム安全管理用計測データによる異常検知への AI 活用の試み、土木技術資料、VOL.64、NO.1、PP.38-41、2022.

3)

小堀 俊秀、二階堂 良平、松下 智祥、金銅 将史：ダムの安全管理用計測データに基づく 異常検知への AI 技術活用に向けた試行検討、インフラメンテナンス実践研究論文集(Web)、
Vol.1、pp.363-371、2022.

4)北川源四郎：時系列解析プログラミング、岩波書店、PP.205-232、1993.

39

国土交通省企画、著作
国土技術政策総合研究所 河川研究部

株式会社

制作
建設技術研究所

40

東京本社

大規模河川構造物研究室

ダム部