令和２年度

重点研究課題報告書

⼈⼯知能技術活⽤のための⼈材・
データプラットフォーム開発に関する研究

報告書

令和３年３⽉⼟⽊学会

構造⼯学委員会

⼈⼯知能技術活⽤のための⼈材・データプラットフォーム開発に関する研究概要 ......................................................................................................................................................4
1. 研究の背景と目的 ......................................................................................................................... 5
2. 教育システム・研究成果共有のためのシンポジウム／論文集 ..............................................92.1. 教材 ........................................................................................................................................ 10
2.1.1. AI と機械学習について ........................................................................................112.1.2. 橋梁形式分類 AI を実装してみよう

その１

⽝猫分類問題で AI を理解する.16

2.1.3. ⽝猫分類問題を応⽤して橋梁形式を分類してみよう .........................................222.1.4. 事例で AI のできることを知ろう

その１

2.1.5. 事例で AI のできることを知ろう

その２

画像物体検知とアノテーション...29
時系列データに対する機械学習例........................................................................................................................................31
2.1.6. 事例で AI のできることを知ろう

その３

⾃然⾔語処理学習例 .....................34

2.1.7. AI を利⽤したメンテナンスユースケースを考えよう .........................................37
2.1.8. 対話システムと⽂章⽣成 .....................................................................................43
2.1.9. Google Colab の使い⽅ ........................................................................................46
2.1.10. ロジスティック回帰によるデータ分類 .............................................................51
2.1.11. 決定⽊とランダムフォレストによるデータ分類 ..............................................57
2.1.12. ニューラルネットワークによるデータ分類 ......................................................63
2.1.13. Keras で MNIST の判定 .....................................................................................68
2.1.14. Keras で CNN .....................................................................................................76
2.1.15. ResNet を Fine Tuning して⾃分が⽤意した画像を学習させる ........................83
2.1.16. Keras で回帰 .......................................................................................................96
2.1.17. 画像キャプションの⾃動⽣成............................................................................99
2.1.18 ひび割れ検出チュートリアル...........................................................................119
2.2 AI 習得セミナー.................................................................................................................... 131
2.3 研究成果共有のためのシンポジウム／論文集の立ち上げ ............................................ 132
2.3.1. AI・データサイエンスシンポジウム .................................................................132
2.3.2. AI・データサイエンス論⽂集の⽴ち上げ ..........................................................134
3. データプラットフォームについての検討 .............................................................................. 135
3.1. 複数分野の研究者へのインタビュー調査 ....................................................................... 136
3.2. 目指すべきデータプラットフォームの構造と開発すべき機能 ................................... 139
3.2.1. AI にマッチしたデータプラットフォームの構造 ..............................................1392

3.2.2. ETL 処理の例：画像データからのメタデータ抽出 ...........................................141
3.3. J-STAGE Data と AI・データサイエンス論文集との連携 .............................................. 152
4. まとめ ......................................................................................................................................... 154
付録 .................................................................................................................................................. 155
付.1. 西村文武准教授へのインタビュー ................................................................................. 155
付.2. 岡村未対教授へのインタビュー ..................................................................................... 168
付.3. 竹山智英准教授へのインタビュー ................................................................................. 178
付.4. 一言正之様へのインタビュー ......................................................................................... 183
付.5. 森脇亮教授へのインタビュー ......................................................................................... 189
付.6. 吉井稔雄教授へのインタビュー ..................................................................................... 194
付.7. 秋山充良教授へのインタビュー ..................................................................................... 205
付.8. 北原武嗣教授へのインタビュー ..................................................................................... 217

3

概要
近年，⼈⼯知能技術が急速に発展してきており，様々な分野において活⽤がなされはじめている．しかし⼟⽊⼯学分野においてはなかなか⼈⼯知能技術が浸透していない．そこで本
研究では，⼟⽊⼯学における⼈⼯知能技術の活⽤のために必要な基礎的知識や技術を習得できる教材の開発と，⼈⼯知能技術の活⽤を⾒据えたデータプラットフォームのあるべき姿の提案・プロトタイプ構築を⾏い，今後の本分野における進むべき⽅向性を⽰すことを⽬的とした．特に，①教育システムが未整備でありプレイヤーが増えていない，②⼈⼯知能の学習の根幹であるデータの活⽤の仕組みが整っていない，という２点の課題の解決を⽬指した．
教材については構造⼯学委員会の「構造⼯学での AI 活⽤に関する研究⼩委員会」と積極的に連携し，開発を⾏った．特に⼈⼯知能の各技術について，⼟⽊⼯学での実例と関連付けながら解説やソースコード紹介を⾏っており，またこれらは⼩委員会の HP などで公開している．また，関連してセミナー教材も開発しており，それらについても本報告書で述べた．
データプラットフォームについては，データの構造化が強く求められること，そして⼟⽊⼯学分野ではレガシーデータの構造化が遅れているので ETL 処理（Extract; Transform; Loadの頭⽂字）の積極的な実装が求められることを述べ，またプロトタイプとして画像データの構造化⼿法を⽰した．これらは学術研究として進めていく必要があり，そのための発表先として AI・データサイエンスシンポジウム，AI・データサイエンス論⽂集を⽴ち上げた．また，J-STAGE Data とも連携することで，積極的なデータ共有をすすめる枠組みについても整備した．
今後，⼈⼯知能技術を含む情報⼯学分野の知⾒を⼟⽊⼯学のニーズに合致するように取り⼊れ，また独⾃技術を開発していくことで，⼟⽊⼯学の新たな展開が誘起されると期待できる．例えば i-Construction などもその⽂脈にあるが，何を学び，何を研究する必要があるかを明確にするためには体系化，成書発刊などが重要であると研究代表者は考え，最後にそのような提⾔を⾏った．

4

1. 研究の背景と⽬的
近年，データ取得・記録コストの劇的な低下や計算能⼒の⼤幅な向上に伴い，ディープラーニングに代表される⼈⼯知能（以下，ＡＩ）技術が急速に発展してきており，様々な分野
において活⽤がなされはじめ，またその性能・威⼒について知られてきている．特に 2015
年に，ディープラーニングを活⽤した囲碁ソフトである AlphaGo がトッププロに勝利した
際は，世界に⼤きなインパクトを与えた．また，その後も様々な新技術の開発がなされており，たとえば OpenAI により作成された GPT-3 (Generative Pre-Training3)は，⼈間と⾒分けが付かないほど⾼精度な⽂章を⽣成する AI として知られている．また，Google translate(https://translate.google.co.jp)や DeepL (https://www.deepl.com/ja/translator)といった翻訳 AI も，精度が⽇々向上しており，活⽤が進んでいる．
囲碁でトッププロに勝つ，⼈間にも⾒分けのつかない⽂章を⽣成する，⽂意を理解しながら適切な翻訳を⾏う，というのは，タスクによっては⼈間の知能・知性の代替となり得る可能性を⽰しているものと⾔える．その能⼒をもって，労働者の減少が課題となっている⼟⽊⼯学分野においても，⼈間の業務の代替，あるいは⼈間にはできない⾼度な判断をできるよ
うにして，⼈材不⾜の解消や⽣産性向上を⽬指したいと考えるのは当然の発想である．
⼟⽊⼯学分野でも例外ではなく，例えばコンクリートのひび割れ検出 1)-9)など，変状検出10)-12)，劣化要因把握 13)，アスファルト舗装の損傷検出 14),15)，鋼材の腐⾷度評価 16)，橋梁部

材の損傷評価 17),18)，振動計測 19)-21)，河川⽔位予測 22),23)，衛星画像や航空写真からの地すべり評価 24), 25)，⾵速予測 26)，降⽔量予測 27)，建設現場分析 28)，など筆者らの研究を含む様々な研究がなされている．この中でも，コンクリートやアスファルトのひび割れ検出などは商⽤化もなされる程度には成熟してきた．
ただ，これらの研究はそれぞれ有⽤で，意義もあると考えているものの，AI の活⽤対象がそれだけに留まるのは期待値を下回っていると⾔わざるを得ない．囲碁や将棋での実績，
翻訳の性能などと⽐較すると，もちろん異なる問題のため⼀概に⽐較することはできない
ものの，もう少し性能が⾼く，そして実務での活⽤が可能な程度にロバスト性が⾼まってもよさそうなものである．
その原因としてまず，⼈⼯知能技術に接している⼟⽊技術者が⾮常に少ないことが挙げられる．現状，なんらかの⼟⽊⼯学における問題を⼈⼯知能技術で解決しようとする場合，
IT ベンダーに発注してプロダクトを作り上げるというケースが多い．しかし⼀般論として，
5

⼟⽊⼯学のドメイン知識を持たない IT 技術者が⼟⽊⼯学の問題を解決するためのプロダク
トを開発するのは極めて難しく，逆に AI 技術に関する知⾒がない⼟⽊技術者が適切に要求仕様を定めることも無理難題であり，この両者が交わると⼤抵の場合は使えないものが出
来上がる．そもそも，AI 技術に関する知⾒がないと，どういうものを作ればよいかというアイデアも出てこない．
また，現在主流となっている教師あり学習，特にディープラーニングは⼤量のデータを⽤いた学習により，帰納的にモデルを構築するものである．特に，データが考えられる全ての境界条件のもとで網羅的にあり，かつ⼊⼒の形式と出⼒の形式が固まっていれば，的確な内挿の実現により⾼い精度の結果が得られるところにディープラーニングの有効性がある．
しかし，⼟⽊⼯学分野においては，活⽤可能なデータは，⼀般的にディープラーニングの⼊⼒として求められる量よりはるかに（おそらく数オーダーは）少なく，しかも偏ったものしか得られないことが多い．インフラ構造物を例にとると，例えば以下のような原因が考えられる．


インフラ構造物は，建設される環境が異なるために⼀品⽣産物であり，⼯場製品と⽐べて個体差が⼤きいこと



管理者間や，業務担当者間でデータの共有がなされないこと

これらは，データの網羅性を⾼める上での障害となる．この状況では，ディープラーニングの「学習範囲外の状況に弱く，実世界状況への臨機応変な対応ができない」という⽋点の影
響を避けることが出来ない．そこで，ディープラーニングに代表される AI 技術を⼟⽊⼯学分野で活⽤するためには，データの共有，管理，活⽤の仕組みを整えることが必須となる．
ここまで述べた背景を踏まえ，上記の２課題を解決するため，本研究では以下の項⽬の実現を⽬的とした．
1.

⼟⽊⼯学における⼈⼯知能技術の活⽤のために必要な基礎的知識・技術を習得できる
ような，⼈材プラットフォームである教育システムを構築する．教育システムには，ソースコードやサンプルデータ，問題解決事例を含むものとする．

2.

⼈⼯知能技術の活⽤を⾒据えたデータ収集・記録の基点となる，データプラットフォー
ムが満たすべき機能，要件について複数分野のユースケースの整理を通して提案する．
また，プロトタイプを構築し機能することを確認する．
それぞれについて，本報告書で述べるものとする．
6

参考⽂献
1) 全邦釘，井後敦史：Random Forest によるコンクリート表⾯ひび割れの検出，⼟⽊学会
論⽂集 F3，Vol.71，No.2，pp.I_1-I_8，2015.
2) 野間康隆，早川健太郎，⿊台昌弘，⻄村毅：UAV マルチコプタ撮影画像を⽤いたコン
クリート構造物のひび割れ画像処理，⽇本リモートセンシング学会誌, Vol.38，No.3，
pp.234-240，2018.
3) 横⼭傑，松本⾼志：SNS を⽤いた Deep Learning によるコンクリートの変状⾃動検出器の開発，⼟⽊情報学シンポジウム講演集，Vol. 42, pp.235-236, 2017.
4) 全邦釘，嶋本ゆり，⼤窪和明，三輪知寛，⼤賀⽔⽥⽣：ディープラーニングおよび Random
Forest によるコンクリートのひび割れ⾃動検出⼿法，⼟⽊学会論⽂集 F3，Vol.73，No.2，
pp.I_297-I_307, 2017.
5) Chun, P., Izumi, S., and Yamane, T.: Automatic detection method of cracks fromconcrete surface imagery using two-step light gradient boosting machine, Computer-

Aided Civil and Infrastructure Engineering, pp.1-12, 2020.
6) Dung, C. V.: Autonomous concrete crack detection using deep fully convolutional neuralnetwork, Automation in Construction, Vol. 99, pp.52-58, 2019.
7) Zhang, J., Lu, C., Wang, J., Wang, L., & Yue, X. G.: Concrete Cracks Detection Basedon FCN with Dilated Convolution. Applied Sciences, Vol.9, No.13, pp.2686, 2019.
8) 藤⽥悠介，中村秀明，浜本義彦：画像処理によるコンクリート構造物の⾼精度なひび割れ⾃動抽出，⼟⽊学会論⽂集 F，Vol.66，No.3，pp.459-470，2010.
9) 河村圭，宮本⽂穂，中村秀明，佐藤亮：対話型遺伝的アルゴリズムによるデジタル画像
からのひび割れ抽出，⼟⽊学会論⽂集，No.742/VI-60，pp.115-131，2003.
10) ⻘島亘佐，河村伸哉，中野聡，中村秀明：深層学習による画像認識を⽤いたコンクリー
ト構造物の変状検出に関する研究，⼟⽊学会論⽂集 E2，Vol.74，No.4，pp.293-305，2018.
11) 天⽅匡純，吉⽥武司，藤井純⼀郎：深層学習⽅式を活⽤した河川のコンクリート護岸の劣化領域抽出，第 73 回年次学術講演会，2018.
12) 藤井純⼀郎，嶋本ゆり，天⽅匡純，松川正彦，秋⼭和也，⼩原洋：fM と Semantic
Segmentation による河川護岸の劣化診断⽀援⼿法，⼈⼯知能学会全国⼤会論⽂集，pp.
4K3J1301-4K3J1301，2019.
13) Okazaki, Y., Okazaki, S., Asamoto, S., and Chun, P.: Applicability of machine learning
to a crack model in concrete bridges, Computer-Aided Civil and Infrastructure

Engineering, pp.1-18, 2020.
14) Maeda, H., Kashiyama, T., Sekimoto, Y., Seto T., and Omata H.: Generative adversarial
network for road damage detection, Computer-Aided Civil and Infrastructure

Engineering, 2020.
15) 全邦釘， 井後敦史， 南免羅裕治， ⿊⽊航汰， ⼤窪和明：⾞載カメラにより撮影され7

た舗装画像からのディープラーニングによるひび割れ率評価，⼟⽊学会論⽂集 E1，
Vol.73，No.3，pp.I_97-I_105，2017.
16) Chun, P., Yamane, T., Izumi, S., and Kameda, T.: Evaluation of tensile performance ofsteel members by analysis of corroded steel surface using deep learning, Metals, Vol.9,
No.12, pp.1259, 2019.
17) Chun, P., Tsukada, K., Kusumoto, M., and Okubo, K.: Investigation and repair plan for
abraded steel bridge piers: case study from Japan, Proceedings of the Institution of Civil

Engineers-Forensic Engineering, 172(1), pp.11-18, 2019.
18) 鈴⽊達也，⻄尾真由⼦：橋梁定期点検における部材損傷度判定への深層学習の適⽤に関する検討，⼟⽊学会論⽂集 F3，Vol.75，No.1, pp.48-59，2019.
19) Shrestha, A. and Dang J.: Deep Learning-Based Real-Time Auto Classification of
Smartphone Measured Bridge Vibration Data, Sensors, Vol.20, No.9, pp.2710.1-21,
2020.
20) Chun, P., Yamane, T., Izumi, S., and Kuramoto, N.: Development of a Machine
Learning-Based Damage Identification Method Using Multi-Point Simultaneous
Acceleration Measurement Results. Sensors, 20(10), pp.2780, 2020.
21) Chun, P., Yamashita, H., Furukawa, S.: Bridge damage severity quantification using
multipoint acceleration measurement and artificial neural networks. Shock Vib, Vol.2015,
pp.1‒11, 2015.
22) ⼀⾔正之，櫻庭雅明，清雄⼀：深層学習を⽤いた河川⽔位予測⼿法の開発，⼟⽊学会論
⽂集 B1, Vol.72，No.4, pp.I_187-I_192, 2016.
23) 徳⽥⼤輔，⾦炯俊：深層学習を⽤いた河川⽔位予測モデルにおけるネットワーク構造と⼊⼒データ量の依存性，⼟⽊学会論⽂集 B1，Vol.74，No.5，pp.I_169-I_174，2018.
24) 河村圭，中村優志，若⽉強，佐村俊和：深層学習を⽤いた空中写真からの⼟砂移動範囲
⾃動検出に関する研究，⼟⽊学会論⽂集 F3，Vol.74，No.2，pp.I_132-I_143，2018．
25) 植⽥⼤介，間普真吾，呉本尭：災害前後 SAR 画像と DEM データを⽤いた CNN による⼟砂災害検出，⼈⼯知能学会全国⼤会，1D1-022，2018．
26) 森脇亮，今村実，全邦釘，藤森祥⽂：深層学習を⽤いた⾵速の短時間予測の試み，⼟⽊学会論⽂集 B1，Vol.74，No.4，pp.I_229-I_234，2018.
27) 藤森祥⽂，今村実，全邦釘，⻄村⽂武，森脇亮：AMeDAS 観測データを⽤いた深層学
習による降⽔量予測の試み，⽔⼯学論⽂集，Vol.64，pp.I_1189-1194，2019.
28) Fang, Q., Li, H., Luo, X., Ding, L., Luo, H., Rose, T. M., and An, W.: Detecting nonhardhat-use by a deep learning method from far-field surveillance videos. Automation inConstruction, Vol.85, pp.1-9, 2018.

8

2. 教育システム・研究成果共有のためのシンポジウム／論⽂集
１章で述べたように， AI 技術を⼀定程度理解し，活⽤できる⼟⽊技術者を増やす必要があると考えている．世の中には⼈⼯知能技術の教育システムは多くあり，また良書も最近１〜２年で多く出版されるようになったが，⼟⽊技術者や⼟⽊⼯学科の学⽣がはじめやすく，
⼿を動かしやすいように，⼟⽊分野の事例を解析例とした教材の作成を⾏った．
（また，継続的に「構造⼯学での AI 活⽤に関する研究⼩委員会」では⾏っている）．それらの成果は，
⼟⽊学会誌２０２１年１⽉号の特集である「さあ、AI を始めよう─⼟⽊⼯学への AI 導⼊のススメ─」でその⼀部が⼩委員会メンバーによって発表されるとともに，⼩委員会 HP（https://committees.jsce.or.jp/struct10/node/13）にソースコード付きで公開されている．
まず 2.1 節ではそれらから抜粋し⽰すこととする．次いで，本教材や追加教材を活⽤したセミナーを企画した．これについては 2.2 節で述べる．
さらに，萌芽的な分野であることを踏まえると，研究成果を共有することのできる仕組みが必要であると考えた．そこで，シンポジウムを⽴ち上げるとともに，査読付き論⽂集についても⽴ち上げ，それを J-STAGE に登録した．これらについて 2.3 節で述べる．

9

2.1. 教材
本節では，作成した教材について⽰す．それぞれ，①概要を理解したい⼈向け，②実際にプログラムを組みたい初⼼者向け，③ある程度プログラムが組める中級者向け，というような分類をしている．教材⼀覧と分類を以下の表−１に⽰す．また，それぞれの内容について，「⼟⽊⼯学における AI 応⽤チュートリアル」および「P-Chun Labo」に記載した内容については以下に⽰す．（⼟⽊学会誌掲載の内容については⼟⽊学会誌を参考にされたい）
表−１

教材⼀覧と分類

媒体

教材名

①

②

③

土木工学における（１）AI と機械学習について

○

○

○

AI 応用チュート（２）橋梁形式分類 AI を実装してみよう

リアル

AI を理解する（３）橋梁形式分類 AI を実装してみよう

その１

犬猫分類問題で○その２

犬猫分類問題を○○応用して橋梁形式を分類してみよう（４）事例で AI のできることを知ろう

その１

画像物体検知と○その２

時系列データに○その３

自然言語処理学習例○

アノテーション
（５）事例で AI のできることを知ろう○

対する機械学習例（６）事例で AI のできることを知ろう（７）AI を利用したメンテナンスユースケースを考えよう○（８）対話システムと文章生成

○

○

○

ひび割れ検出チュートリアル

○

土木学会誌

構造工学での AI 活用に関する研究小委員会の取り組み

○

○

○

2021 年 1 月号

AI 入門講座（1）─AI に必要となる学習データを集めよう─○

AI 入門講座（2）─AI プログラムを構築してみよう─○○

AI 入門講座（3）─AI の出力した結果を評価・活用しよう─

○○

土木技術者も AI に取り組もう○○

深層学習に基づく配管バルブの状態認識・異常検知システムの検討

○

○

○

AI と土木工学の融合による水害対策技術の発展

○

○

○

座談会

○

○

○

付属プログラムコード：AI 入門講座○○

P-Chun Labo

Google Colaboratory の使い方○

http;//pchun.work

ロジスティック回帰によるデータ分類○

決定木とランダムフォレストによるデータ分類○

ニューラルネットワークによるデータ分類○

Keras で MNIST の判定○

Keras で CNN○

AI とアフターコロナ時代の国土利用○

ResNet を Fine Tuning して自分が用意した画像を学習させる○

Keras で回帰○画像キャプションの自動生成○

102.1.1. AI と機械学習について
a) AI でできることを調べてみよう
⼈間の判断を代替したり⽀援したりする AI システムや，⾁体労働の補助をするようなロボットにも AI 技術が活⽤されています．AI 技術は機械学習を利⽤したタスクを組み合わせて利⽤することが多いと考えられています．また近年の AI ブームにおいてはデータを活⽤する観点，いわゆるデータドリブンな AI ⼿法の開発が期待されています．ここでは，機械学習におけるタスクとデータの種類の観点から AI でできることを整理してみましょう．
〇AI のタスク
AI はデータを学習することで下記のようなタスクを⾏うことができます．⼈間の仕事と⽐較してみましょう．
・クラス分類（classification）
あらかじめ⽤意されているカテゴリーに対象となるデータを分類します．
・クラスタリング（clustering）
元々分類されていないデータを，特徴を利⽤して分類するタスクです．近いデータを同じグループとして分類します．教師なし学習などでも利⽤できます．
・次元圧縮（dimensionality reduction）
多くの変数をもつ多次元のデータなどに対して，変数を削減するタスクです．2 次元や 3次元などの変数で説明できればグラフによる可視化などに役⽴ちます．統計でいうところの因⼦分解や主成分分析などの⼿法です．
・回帰（Regression）
モデルを利⽤した予測などをするために，モデルを決めるためのタスクが回帰です．
⼈間の⾏っているタスクとの⽐較をしてみましょう．図には⼈間と AI のタスク例を図化してみました．マネジメントの⼿法である PDCA などでは，⼈間は PLAN（計画）をしま
す．PLAN のためには AI でいうところの予測が⼤事です．予測結果を利⽤して Do（実⾏）
するためには，予測結果の Check（評価）が必要です．次元圧縮などの⼿法は⼈間が結果を評価するための情報と関連しているでしょう．また，どの選択肢が良いかを分類するなども評価のためのタスクと⾔えるでしょう．AI の予測，評価，分類などを⾃動で⾏うことで実⾏を代替することもできるかもしれません．ここでは，クラスタリングなど，⼈間が理解で
11

きないような情報も分類することができるかもしれません．異常時などの危機対応も⼈間にとっての重要なタスクですが，疲れをしらない AI による異常検知は，この⼈間のタスクを助けるためのツールとなるでしょう．⾃動運転などの技術は AI による判断でハンドルを操作するということですが，⾞の運転のように⽬的がはっきりとしている判断には AI の活⽤がすぐにでも期待されています．また，株の売買のような利益を上げるというはっきりとした⽬的があれば，AI の活⽤は正当化されるでしょう．将来的には，マネジメント判断のように，組織を説明したり説得したりする際に，AI による判断が優先される時代がくるかもしれません．ただし，企業，まして⼈間の⽣きる⽬的のように，⽬的関数が決まっていない問題に AI の判断をどのように利⽤しいていくのか，AI 活⽤にビジョンが必要と⾔われる
理由かと思われます．

計画

説明・説得
⼈間
次元圧縮

分類
予測・評価

AI

異常検知
回帰
図−１

クラスタリング

⼈間と AI のタスク例b) データと AI
深層学習など近年の AI ではデータが肝だと⾔われています．ここではデータの種類でユースケースを分類してみましょう．
〇時系列
時系列データとは，時間に応じて変化するデータです．時間に応じて変化するので順番が重要となります．⼈間の⾔葉などは順序が重要なデータですので，このような順序を評価するための深層学習モデルとして RNN や LSTM といったモデルが開発されています．また，センサなどの観測値も順序が重要なデータですので同様のモデルを利⽤することができます．センサなどの観測データには誤差が含まれることが知られていますが，フィルタリング
や平滑化，さらに予測などを⾏う AI が開発されており，異常検知などのタスクで利⽤され
ています．
〇画像
深層学習の開発により機械が⽬を持ったと⾔われています．カメラから得られる画像を
12

AI が解析することで機械が⽬を持つわけですが，画像をデータしたタスクとしては，以下のものがあります．
・画像認識：画像に何が写っているかを認識する→⽝なのか猫なのかなど

・物体検知（画像のどこに何が写っているかを検知する） →医療などの画像診断（異常正常まで評価）・セグメンテーション(画像に写っているものをピクセル単位で分類する)→⾃動運転時の周辺評価など，より厳密な位置判定を求められる場合
画像データはピクセルごとに輝度値などの値が⼊った⼆次元配列データ，あるいは RGB
値が⼊った三次元配列データとして扱われますので，これらを効率よく解析するための深層学習モデルとして CNN などが開発されています．インフラメンテナンスにおいても，検査画像からコンクリートのひび割れを⾃動認識するなどの技術で，物体検知やセグメンテ
ーションなどが検討されています．
〇⾃然⾔語
時系列データのでも記載しましたが，⼈間の利⽤している⾔語データを解析する AI があります．チャットボットと⾔われる AI は，テキストや⾳声といった⾔語データを分析して，
Q＆A を作成したりすることができます．⾃然⾔語は記号の集まりですが，英語や⽇本語など⾔語の種類に応じてルールが相違します．単語なども相違しますが，これらはそれぞれの辞書などを利⽤した形態素解析と⾔われる分析により機械が理解しやすい頻度データなどが作成されます．それらのデータを利⽤して，ある単語の後にはある単語が来る確率が⾼いなどのアルゴリズを利⽤して AI システムが実装されます．⾃然⾔語処理を利⽤したテキス
トの認識の精度は，特定の対象に対する固有表現を学習できているかが影響します．そのため，固有辞書と⾔われる，いわゆる⼟⽊⽤語などの辞書の作成が重要となります．このような辞書をあらかじめ広く共有することで，⼿元の少ないデータからでも，モデルの学習や適⽤がしやすくなると考えられます．
〇マルチモーダル
上記で整理した，時系列，画像，⾃然⾔語などを複数のデータを利⽤する AI がマルチモーダルな AI と⾔われています．Google でおなじみのナレッジグラフなどはインターネッ
トに存在するテキストや画像データを統合的に可視化することで，知りたいことについて
⼈間の理解を深める⽅法です．

13

深層学習
ルールベースアルゴリズム
LSTM

予測

時系列
分類

ドメイン知識

理論・仮説

認識・検出

画像
画像認識
物体検知
セグメンテーション

データ ⾃然⾔語

説明

形態素解析（＋深層学習）

⾃動運転・チャットボット

適⽤事例
アジャイル実装

図−２

教材

ユースケース

様々な種類のデータとその活⽤ユースケース※構造化データと⾮構造化データ
データには構造化データと⾮構造化データという考え⽅があります．分析によく利⽤される Excel などで扱われる表形式でデータを扱う際には，列ごとに項⽬を分けて，⾏⽅向に値を⼊れていくことが多いと思いますが，データの区切りにカンマを使ったものを CSV データと呼びます．また，データを複数の表として管理し，表と表との関係性を定義したもの
を RDB（リレーショナルデータベース）と呼びます．このように決まった枠の中に⽂字や数値が格納されているものが構造化データです．
⾮構造化データは，表形式のような構造を持たないものですが，JSON，XML，HTML のようにキーとバリューの組み合わせといった規則性を持つものがあります．さらに，ベタ打
ちのテキストデータや，振動，⾳声のような数字配列のみのデータも⾮構造化データです．
⾮構造化データは，サンプリングレートや単位などのメタデータを与えることで，データの意味を理解したり，分析をすることができます．
構造化データの分析では，エクセルなどを利⽤すれば集計や回帰などのタスクを⾏うことが容易にできます．⾮構造化データでも規則があるものであれば，データの⼊出⼒を⽅法を含めたアプリケーションソフト（API）などを利⽤して，検索や集計，データ連携や圧縮などのタスクを⾏うことができますので，インターネットなど WEB 上での様々な活⽤がな
されています．
規則の無い⾮構造化データをさらに利活⽤していく上でも⼈⼯知能は期待されています．
例えば画像データは，解像度（ピクセル数）などが様々なモノがありますが，画像サイズを合わせるなどの前処理を適切に⾏うことで，どのような画像に対しても⾃動的にタスクが実⾏できるようにする技術を AI 化することが考えられます．データの構造を⾃動で認識して利活⽤ができれば，既存のデータベースや過去に EXCEL で整理したデータなどを再度⼈間が前処理する労⼒を⼤幅に減らすことで，AI による利活⽤の実現性が⾼まると考えられます．
14

c) AI と⼟⽊
⼈⼯知能の活⽤分野は，移動，製造，個⼈向けサービス（医療、⾦融を含む），対話・交流（コミュニケーション）などが挙げられ，⼟⽊はすべて関係があると⾔えるでしょう．AIを活⽤する際の論点として表−２のようなものが挙げられており，これらを⼟⽊で考えてみることも⼤切です．その際には，⼟⽊の特徴として，公共財，他産業への経済波及効果（スピルオーバー），統計との相性，業務が空間的に分散かつ時間的に⻑期（メンテナンス）などを考慮してユースケースを検討することが重要です．AI を活⽤することで，⼈間にできない作業を代替や⽀援して，危険な作業，⻑期労働や夜間作業を減らすなど働き⽅改⾰が期待されます．また，デジタルトランスフォーメーション（DX）が進⾏し，デジタルで情報を共有することで，仮想空間で解析した情報を実空間で活⽤するデジタルツインといった⼿法が進みでしょう．それにより，様々なプロセスの効率があがることによる⽣産性向上だ
けでなく，不要な業務が無くなるなどの，業務⾰新が進むことが期待されています．
表−２

AI 活⽤と⼟⽊AI 活⽤の論点

⼟⽊との関連倫理的論点

技術者倫理，設計と施⼯の在り⽅

法的論点

責任（事業者と請負・委託者の関係），基準→労働内容の変化，新しい雇⽤は？データサイエンティスト？

経済的論点→業務再構成（機械による代替），創造的な業務？
→請負契約，包括契約，報酬の変化，積算，→系列化，エコシステム，中⼩企業
労働⼒不⾜，⾼齢化，ミスマッチ
賃⾦，待遇，新３Ｋ

社会的論点

コンパクトシティ，地⽅創⽣，環境問題
インクルージョン，インバウンド
持続性（選択と集中）
防災，レジリエンス

教育的論点

技術継承
⼤学教育（ミスマッチ）

統計教育，インターン

オープンイノベーション（透明性）
研究開発的論点

異業種連携
デュアルユース
社会実装

15

2.1.2. 橋梁形式分類 AI を実装してみようa)

その１

⽝猫分類問題で AI を理解する

AI による画像認識で⽝猫を分類する
AI における深層学習を利⽤した画像認識として，以下に説明する⽝と猫を分類する事例があり，これらを理解することで，AI ⼿法の中で特に深層学習の理解を深めることができます．⽝猫の分類は，インターネットなどにデータがあり，実装できるプログラムを含めて，既存の⼿法が豊富にネット上にあります．また，学習プログラムだけでなく、AI が何を着⽬しているか分類するプログラムなどもネット上のものを活⽤できます．例えば，Grad-camという⼿法を利⽤すれば，以下の図−３のように⽝と猫を⿐の特徴に着⽬して分類していることがわかります．
猫

図−３
b)

⽝

⽝と猫の分類のための着⽬位置の導出

AI を学習してモデルを評価するとは〇AI の学習の仕⽅
AI がデータから学習する⽅法は，⼀般的に以下の 3 種類があると⾔われています．⽝猫
分類の問題は⼀番実装が容易な教師あり学習を利⽤します．教師ありですので，画像には⽝なのか猫なのかあらかじめ答えを⽤意する（アノテーション）必要があります．
A．教師あり学習
⽝猫の画像があり，⽝と猫を分けるラベルが付いていて，それを分類する問題です．
⇒分類されたデータに境界線を引き，未知のデータを分類
B．教師なし学習
⽝猫の画像をもっているが，⽝猫のラベルはついておらず，クラスタリングなどで分類す16

る問題です．
⇒特徴量をデータから抽出して，クラスタリングにより分類（異常データを分類できるかな
どでも活⽤）
C．半教師あり学習
⽝の画像しかなく，⽝を表すモデルを学習して，猫画像が新規に来た時に⽝と違うと分類する問題です．
⇒正常データの特徴量を抽出して，未知の異常を検出問題など〇AI を評価しよう学習した AI は評価しなくてはいけません．その際に学習したデータ（train データ）で評価するのではなく，検証⽤（validation データ）のデータを⽤意しましょう．検証⽤のデータをモデルに⼊⼒して正解である率が⾼ければ（正解率）よい学習が⾏えたモデルと⾔えます．これらの作業は，交差検証とよばれます．教師データでは正解率が⾼いが，検証⽤デー
タで正解率が低くなる問題を過学習と呼びます．検証⽤データで正解率が⾼いモデルは汎化性能が⾼いモデルと呼ばれます．
〇AI と特徴量
AI は画像の何を根拠に⽝と猫を分類するのでしょうか．よく⾔われる問題として，AI，
特に深層学習はブラックボックスであると⾔われます．画像はピクセルごとに輝度や RGB
値のデータが⼊ったものですので，それらのデータの特徴を利⽤して分類しているに違いありません．どのような輝度の特徴を利⽤して分類しているかがわかる，つまり，⽝の特徴
や猫の特徴などをちゃんととらえていることがわかれば，AI を利⽤する我々も安⼼して AIの答えを信頼することができます．これらの⼿法は，説明可能 AI（XAI：Explainable AI）と呼ばれて，様々な⽅法が研究開発されています．
〇学習環境の構築と実装環境
AI はニューラルネットワークというアルゴリズムを多く利⽤しています．この計算は複数の⼊⼒をニューロン（ノード）が受け取り，それぞれに重みを付けて統合して，活性化関数を通してある値より⼤きなものを次のノードに送っていく，それを繰り返して最終的な出⼒を出す計算です．計算された出⼒と正解を⽐較してその誤差を⼩さくする（バックプロ
パゲーション）ことで重みを最適にする計算を繰り返します．
近年流⾏している深層学習はこのノードの数や層が深くなったものですので，⼀つ⼀つは単純な計算ですが，多数の計算を⾏います．そのため CPU を利⽤した計算よりも GPUを利⽤した計算の⽅が早く実⾏できることが知られています．GPU は⼀般的な PC には搭載されていないことが多く（あるいは搭載されていても貧弱なものが多い），深層学習を⾏
17うためにスタンドアロン PC で GPU パソコンを⽤意するか，もしくは，クラウド環境でGPU を利⽤することが⾏われています．
スタンドアロンで環境を⽤意する場合は，Python などのコードを実⾏するためのソフト的な環境（Anaconda などが有名）を構築する必要があることにも注意が必要です．クラウドを利⽤する場合はソフト的な環境も⽤意されていることが⼀般的ですので，ちょっと試
してみたいなどではよいかもしれません．たとえば Google Colab などは Google アカウン
トがあれば無料で GPU が使え，しかもわかりやすいので頻繁に⽤いられます．
python などで AI プログラムを構築する際には，機械学習を効率よく実装できるフレーム
ワークが開発されています．深層学習などを利⽤する代表的なものとしては，TensorFlow
や PyTorch などがあります．さらに，Tensorflow をベースにしてさらに利⽤しやすくした
Keras などのラッパーと呼ばれるものが⽤意されています．プログラムの柔軟性と利⽤しやすさはトレードオフですので，問題の難易度に応じて選択してください．
〇既存のデータとモデルを活⽤しよう
AI は⼀から⾃分ですべて作るのは⼤変です．特に深層学習のデータやモデルはインター
ネットにある既存のものを活⽤することが近道です．よく利⽤されているものとして，
GitHub という開発プラットフォームがあり，オープンソースとしてデータがリポジトリにアップロードされています．例えば下記のようなものが参考になるでしょう．利⽤されているプログラムやデータがダウンロード（クローンやフォーク）でき，それらの利⽤⽅法も記載されています．また，SNS 機能があり，質問や回答をやりとりすることができ，まさに開発技術者のプラットフォームと⾔えるでしょう．

18https://github.com/crotsu/Bousai_AI

https://github.com/sekilab/RoadDamageDetector

図−４c)

GitHub にアップロードされているコード類の例

⽝猫分類問題を実装する〇画像データ収集
インターネットなどを利⽤してデータを収集します． ネットから画像収集するクローリ
ング技術と呼ばれる⽅法を利⽤することもできます．ただし画像を利⽤する際には著作権などに気を付けてください．点検データなどでは，橋梁名を抜くなどのデータの匿名化などによって対応することも考えられます．
19

〇画像の前処理
教師データは多ければ多いほど良いですが，画像を収集するのには労⼒が必要です．このため教師データの画像枚数を増やす⽅法として，画像を引き延ばしたり，回転させたりする
データ拡張技術があります（Data augmentation）．加⼯した画像に対しても答えは同じです
が，加⼯されることで⼈間の⽬でも画像が変化したことがわかりますので，そのような画像を正確に分類できれば AI はより賢くなっていると⾔えるでしょう．
※画像データは 2 次元や 3 次元などの配列です．モデルに⼊⼒する際には配列の構造が重要です．python で利⽤されている numpy の array と pytorch で利⽤されている tensor な
どではこの配列構造が相違します．お互いに変換するプログラムなどが利⽤できます．AI
モデルを作成するパッケージに応じて⼊⼒データを変換してください．
〇アノテーション
画像に対して正解を付ける作業です．例えば，⽝の画像は dog フォルダに，猫の画像は
cat フォルダに分類したり，⽝の画像のファイル名には dog を，猫の画像には cat などを付与しておけば，プログラムの中で正解となるベクトル（label）を作ることができます．
〇学習データの作成（既存プログラムの修正）分類を実装するプログラムは，Kaggle と呼ばれるコンテストなどでも世界的に⾏われており，そのため様々な開発者が挑戦し，インターネットにファイルがアップロードされています．また，深層学習の教科書にも取り上げられているため GitHub と呼ばれるソフトウェ
ア開発のプラットフォームに実装したプログラムや学習⽤の画像データがアップロードされています．それらをダウンロードして実装する際にはいくつか修正が必要となります．特に利⽤するデータの保存先や保存⽅法によってプログラムでデータを読み込む際のパスなどの設定があります．プログラムでデータを学習する際には，データを教師データと検証⽤
データに分ける必要があります．
〇学習⽅法
学習は，⼊⼒データをモデルに⼊⼒して出⼒を算出し，出⼒と正解との差が⼩さくなるよ
うにパラメータを変化させる最適化計算を⾏います．これには勾配法と⾔われる⽅法が通常利⽤されます．勾配法を適⽤する際には，パラメータを更新するたびにすべてデータで誤差を計算するのは効率が悪いために，バッチサイズと呼ばれる誤算を計算する際の画像の枚数を決め，ランダムに選んで画像の組を作成して計算を⾏います．そのために，データロ
ーダーというものを利⽤します．バッチサイズは 2 の n 乗の値が使われることが多いですが，画像の枚数に応じて選択してください．データセットの件数が数百件程度であれば 32，
64 で試してみればよいでしょう．学習回数はイテレーションやエポックと呼ばれますが，20

学習する画像枚数とバッチサイズ数で回数が決まります．例えば 1000 枚の画像があり，バッチサイズが 200 であれば，すべての学習データを利⽤するためには 5 回学習する必要があるのでイテレーション数は 5 になります．この学習を何回繰り返すかがエポック数です．
〇学習
モデルを⼀から作るのではなく，既存の学習済みモデルを利⽤することでよい AI モデルを作ることができます．その場合は，転移学習やファインチューニングと呼ばれる⼿法を利⽤します．エポック数が⼩さすぎて学習が完了しない場合や，ハイパーパラメーターと呼ばれる学習率などにより答えが変わることがありますので注意が必要です．
〇検証
学習したモデルを評価します．正解率，適合率など複数の指標がありますので注意しましょう．学習結果の可視化はグラフで⾏う場合などがありますが，どの評価関数を選ぶかなどを決めます．パッケージには可視化するかしないかを変数で決めれば勝⼿に可視化してくれるものが多いです．
〇モデルを利⽤する学習したモデルのパラメータを保存しておくことが可能です．保存したパラメータを再度読み込むこともできます．検証⽤データは学習ができているかを確認するためのデータ
ですが，それとは別にテスト⽤のデータを利⽤する場合もあります．テストデータを実際にモデルに⼊⼒して分類結果を確認するなど，モデルを利⽤してみることでよりプログラムの理解を⾼めることができます．
※参考

医療における下記のサイト

https://japan-medical-ai.github.io/medical-ai-course-materials/
Google Colaboratory を利⽤して，実際にプログラムの実装までできるようになっています．

21

2.1.3. ⽝猫分類問題を応⽤して橋梁形式を分類してみよう
データ，⼿法と合わせてユースケースの設定が重要となりますが，⽝猫分類の応⽤で，例
えば，⼟⽊で考えた事例としては，桁橋とその他の橋梁形式（トラス、アーチ、吊橋）を分類するような問題を考えてみましょう．これは，腐⾷などの損傷を評価するような AI 技術
において，そもそも対象物（鋼材，部材等）の位置を認識するなどの基礎的な技術と考えることができます．なおサンプルプログラムは以下のサイトからダウンロードできます．
https://committees.jsce.or.jp/struct10/node/16〇データの準備とアノテーション
⽝猫分類では，⽝猫画像を収集して，画像に対して⽝なのか猫なのかを⽬視でタグ付けを
⾏うアノテーションをしました．同様に橋の画像をネット上で収集する必要があります．橋の全景画像データはインターネットに多くあるため収集が可能です．アノテーションをどのようにするかを考える必要がありますが，より簡単な問題として，桁橋とそれ以外でフォルダ分けしてみましょう．ここでは，学習データ１５０枚

検証データ５０枚

テストデー

タ５０枚で整理することとします．

桁橋

その他形式（トラス，吊橋，アーチ）図−５桁橋と桁橋以外の橋梁の例〇モデルの構築
深層学習モデルを構築します．層の⽐較的浅いニューラルネットワークと，層の深い転移
学習を⾏ったモデルを⽐較することで深層学習の特徴を考察しましょう．転移学習とは様々な画像で学習したモデルを利⽤して，⾃分で集めた画像で再度学習をする⽅法です．ただし，モデルの答えが⽝や猫だけでは困りますので，橋の分類に合った答えを返してくれる
ようにモデルを改良する必要があります．具体的には，プログラムの最終層を変更します．
また，ファインチューニングという⽅法があり，こちらは集中した画像で最終層だけでなく，途中のモデルのパラメータも学習しなおす⽅法です．
〇モデルの結果を評価する
22

適⽤結果を以下に⽰しました．層の⽐較的浅い深層学習では，正答率が低く，また、学習が進むことで正答率は上がっていきますが，検証データに対しての正答率は増えていきません．これは過学習という問題です．それに対して，既存の様々な画像データの特徴を学習したモデルによって転移学習を⾏うことで，正答率が⾼くなっています．学習に利⽤していないテストデータの分類もうまくいくので，過学習の問題も起こらないことがわかります．

23

・適⽤結果１

層が浅い場合学習モデルは以下の４層の CNN
Layer (type)Output ShapeParam #=================================================================
conv2d_1 (Conv2D)(None, 398, 398, 32)896________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 199, 199, 32)0_________________________________________________________________
conv2d_2 (Conv2D)(None, 197, 197, 64)
18496_________________________________________________________________
max_pooling2d_2 (MaxPooling2 (None, 98, 98, 64)0_________________________________________________________________
conv2d_3 (Conv2D)(None, 96, 96, 128)73856_________________________________________________________________
max_pooling2d_3 (MaxPooling2 (None, 48, 48, 128)0_________________________________________________________________
conv2d_4 (Conv2D)(None, 46, 46, 128)
147584_________________________________________________________________
max_pooling2d_4 (MaxPooling2 (None, 23, 23, 128)0_________________________________________________________________
flatten_1 (Flatten)(None, 67712)0_________________________________________________________________
dropout_1 (Dropout)(None, 67712)0_________________________________________________________________
dense_1 (Dense)(None, 512)
34669056_________________________________________________________________
dense_2 (Dense)(None, 1)513=================================================================
Total params: 34,910,401
Trainable params: 34,910,401
Non-trainable params: 024

・転移学習を利⽤した場合
ImageNet で学習済みの VGG１６モデルを転移学習
Layer (type)Output ShapeParam #=================================================================
input_1 (InputLayer)(None, 400, 400, 3)0_________________________________________________________________
block1_conv1 (Conv2D)(None, 400, 400, 64)
1792_________________________________________________________________
block1_conv2 (Conv2D)(None, 400, 400, 64)
36928_________________________________________________________________
block1_pool (MaxPooling2D)(None, 200, 200, 64)0_________________________________________________________________
block2_conv1 (Conv2D)(None, 200, 200, 128)73856_________________________________________________________________
block2_conv2 (Conv2D)(None, 200, 200, 128)
147584_________________________________________________________________
block2_pool (MaxPooling2D)(None, 100, 100, 128)0_________________________________________________________________
block3_conv1 (Conv2D)(None, 100, 100, 256)
295168_________________________________________________________________
block3_conv2 (Conv2D)(None, 100, 100, 256)
590080_________________________________________________________________
block3_conv3 (Conv2D)(None, 100, 100, 256)
590080_________________________________________________________________
block3_pool (MaxPooling2D)(None, 50, 50, 256)0_________________________________________________________________
block4_conv1 (Conv2D)(None, 50, 50, 512)
1180160_________________________________________________________________
block4_conv2 (Conv2D)(None, 50, 50, 512)
2359808_________________________________________________________________
block4_conv3 (Conv2D)(None, 50, 50, 512)
2359808_________________________________________________________________
block4_pool (MaxPooling2D)(None, 25, 25, 512)0_________________________________________________________________
block5_conv1 (Conv2D)(None, 25, 25, 512)
2359808_________________________________________________________________
block5_conv2 (Conv2D)(None, 25, 25, 512)
2359808_________________________________________________________________
block5_conv3 (Conv2D)(None, 25, 25, 512)
2359808_________________________________________________________________
block5_pool (MaxPooling2D)(None, 12, 12, 512)0_________________________________________________________________
sequential_1 (Sequential)(None, 1)
18874881=================================================================
Total params: 33,589,569
Trainable params: 25,954,305
Non-trainable params: 7,635,264_________________________________________________________________

25

〇モデルの評価以上でモデルが学習できましたが AI は画像のどこをみて分類しているのでしょうか．これを可視化する⽅法として，Grad-CAM という⽅法があります．浅いモデルのヒートマッ
プを表⽰してみると橋でない場所を⾒ているデータがよく出てきます．それに対して転移
学習の結果では橋の特徴を利⽤して分類しているように⾒えますね．また正解できなかった画像のヒートマップを⾒てみることでどうして間違ったかがわかるかもしれません．それにより，AI モデルの適性や，どのような学習データを追加して改良する必要があるかな
どわかるかもしれません．
・浅いニューラルネットワークの結果

図−６

GradCAM による浅い位置での可視化結果

26

・深いニューラルネットワークの結果（block5_conv3 層の可視化）
桁橋

その他

図−７

深い位置での重み可視化結果

また，以下のように，桁以外に間違えそうになった画像についても，どこからその判断をしたかが確認できる．

図−８

判断が難しい画像の重み可視化結果

27

28

2.1.4. 事例で AI のできることを知ろう

その１

画像物体検知とアノテーション〇物体検出とアノテーション
画像データを利⽤した AI のキラーコンテンツと⾔えば⾃動運転かと思います．⾃動運転で利⽤される AI 画像タスクとして物体検出があり，YOLO (You only look once) や SSD（Single Shot Multibox Detection）などの技術があり研究も盛んです（図−９）．
橋梁を撮影した画像データにも，橋以外が写り込んでいる場合や，橋が複数写り込んでいるものなどがあるかと思います．これらの画像では，画像の中のどこに橋があるのかを検知する物体検出⼿法を適⽤することが有効でしょう．橋がどこにあるかを検出することは，例
えば災害時に落橋が起きていないか，桁の移動はどの程度か，といった画像監視を利⽤した
異常検知⼿法のためのファーストステップともなりますし，また，点検⽀援などにおいて，⽀承部など特定の部材を認識して評価したい場合などでも，まずは点検画像のどこに橋があるかを検出することが重要と思われます．

図−９

対向⾞でもっとも⾄近距離の⾃動⾞を検出した事例〇橋梁の検出実装
SSD を利⽤した橋の検出を実装してみましょう．物体検出では，バウンディングボック
スを利⽤することで，画像に対して，位置や⼤きさを含めて物体を認識して検出することができます．ここでも VGG16 で学習したモデルを，物体認識で利⽤した橋の画像に対し，桁橋と桁橋以外に分けたバウンディングボックスを利⽤してアノテーションした画像で転移学習を⾏いました．物体検出した結果を以下に⽰しました．
29

このような物体検知⼿法などは，API 的に利⽤するためのライブラリが整理されており，実装が容易となっていますので試してみることができます．ただし，実際の問題に適⽤するためには，アノテーションツールを利⽤して教師データを作成するなどの作業が必要となります．

桁橋以外（確率１.0）
桁橋以外（確率 0.78）

桁橋（確率１.0）桁橋（確率 0.82）

図−１０

桁橋と桁橋以外を区別して検出する SSD による結果の例

30

2.1.5. 事例で AI のできることを知ろう

その２

時系列データに対する機械学習例〇時系列データに対する予測や異常検知
多変量解析や時系列データなどにも機械学習は適⽤できます．実際のデータには異常の有無は既知でないことが多いですが，あらかじめ異常がわかっているものや，異常を模擬した試験体等でデータを得ることができれば，教師あり学習を⾏うことができます．教師デー
タが得られない場合には，教師なし学習が開発されており，データに応じて適切な⼿法を選ぶことが課題です．表−３にそれぞれの学習⽅法の分類について⽰します．
なお本節のサンプルプログラムは以下よりダウンロードできます．
https://committees.jsce.or.jp/struct10/node/18
表−３
分類

適⽤条件

機械学習の分類

適⽤の際の課題

メリット
・⼿法が理解しやすい

教師あり
学習

教師付けされたデータが多く⼿に⼊・異常の説明がしやすい（特徴・未知の異常を検知できない

る場合

量の変化に対する評価）・学習したデータ以外にも適
⽤できる

教師なし
学習

異常を含むデータ

・異常データが観測されていが多く⼿に⼊る場ない場合がある合・モデルの説明性・異常の種類や頻度を決められる・そもそも正常データの特徴
異常データがあまを学習できるか（特徴量がみつ

半教師あり⼿に⼊らないがからない，ばらつくなど）

・対象データごとの正常モデ

り学習

データ⾃体が多く・モデルの説明性

ルを作れる

⼿に⼊る場合・正常ではないが異常でもない事象を抽出した時の解釈性

31

〇実装事例
ここでは振動や⾳の波形データを利⽤して，特徴を学習させて予測や異常検知をする⽅法について記載します．具体的にはコンクリートを打⾳した際の⾳圧データを利⽤した浮きの検知について実装します．
データを作成するためには，計測や試験の条件等様々な検討が必要です．ここでは，叩いた位置の浮きの有無がわかっているとして，打撃した際の⾳をマイクで収録した⾳圧デー
タが csv ファイルで得られているとします（なお，本データは東⼯⼤⽵⾕研究室で⾏った試
験のデータの⼀部を利⽤させて戴いております）．⾳圧データに対して浮きの有無を分類す
る 2 値の分類問題を実装したプログラムを紹介します．
分類では，利⽤するモデルはニューラルネットワークを使い，⼊⼒を波形データ（要素数3000 の 1 次元ベクトル），出⼒を 2 要素の 1 次元ベクトル（浮きがある確率，浮きが無い
確率）としております．近年ではニューラルネットワークの層を深くする深層学習により精度が向上するような問題が多く取り上げられていますが，深層学習はデータを表現するための特徴量が多くなる問題で有効です．本問題では，分類のための特徴量はそれほど多く必要が無いと考えられ，それほど層を深くしなくても分類ができる例となっています．なお，層を深くするなどの改良は簡単に⾏うことができます．

図−１１

浮き有無と⾳圧波形の⽐較

32

図−１２

浮き有無とパワースペトルの⽐較

図−１３

33

学習結果

2.1.6. 事例で AI のできることを知ろう

その３

⾃然⾔語処理学習例〇⾃然⾔語処理
⾃然⾔語処理 AI のキラーコンテンツとしては⾃動翻訳がありますが，問い合わせ対応を⽀援するチャットボットや，事務作業⽀援のための RPA（ロボティック・プロセス・オー
トメーション）などすでに実⽤化されているものが多くあります．具体的な⼿法としては，
twitter など SNS のデータを利⽤して⽂章中で出現頻度が⾼い単語を複数選び，その頻度に応じた⼤きさで図⽰する Word Cloud と⾔われる⼿法や，⾔葉のつながりや意味を解釈する
ための word2vec などの⼿法などがあり，広告業界などでマーケティング⼿法として活⽤されております．インフラメンテナンスにおいても，過去の点検記録などを⾃然⾔語処理して，対策⽅法などがレコメンドされる機能などが期待されます．
なお本節のサンプルプログラムは以下よりダウンロードできます．
https://committees.jsce.or.jp/struct10/node/19〇実装事例

⽰⽅書や点検マニュアルの解析

橋梁点検マニュアルに記載されているテキスト情報について，Word Cloud を実装して，⽶国の点検マニュアルと⽇本の定期点検要領を⽐較してみましょう．図は適⽤した結果です．⽶国のマニュアルのほうが，橋⾃体に対する単語(bridge，structure，deck，culvert など)が多いように思われます．それに対して，⽇本の点検要領は，橋⾃体に対する説明は多
くなく，ひび割れ，腐⾷といった損傷に関する単語や，診断，措置，記録などのプロセスに関する⾔葉が相対的に多いことがわかりますね．この要因として推察されることですが，⽇本の点検要領は基準であるのに対し，⽶国のマニュアルでは教材的な要素が強いなどが挙げられるでしょう．
次に⽇本の点検基準や補修補強の⼿引きなどのテキストを，⾔葉のつながりや意味を解釈するための word2vec を利⽤して分析してみましょう．word2vec は仮説として，単語の意味は周辺に現れる単語の頻度で表現できるというものです．例えば，「応⼒」に関連する単語について関連する単語を抽出して関連性が⾼いものをマッピングして可視化した結果ですが，応⼒という⾔葉には「局部」，「集中」などの⾔葉が周辺に多くあらわれるため，近くに表⽰されていることがわかります．また「進展」，「疲労」などの⾔葉もあります．これ
らの単語は⾜し合わせなどをすることもでき，「応⼒」＋「溶接」などを⾜し合わせると「集中」などの⾔葉が⼤きく関連していることが確率値として出てきます．この結果は，補修補強などの⽂章において，これらの⾔葉の頻出頻度が類似しており，また時系列的に順番で出てくるなどがわかりますので，原因や処⽅箋などを書く際の参考になるかもしれません．

34

図−１４

点検要領の頻出 WORD の可視化例
（上：⽶国

下：⽇本）

35

5
4
位置

Y座標

3
2

進展

-1
-2
-3

集中

進展

集中

疲労

1
0

応力

局部

局部

座屈
ひずみ
不

破壊
現象
ビード 一致 欠陥 直下
形状 繰り返し
圧縮
曲
曲線
繰返し
変動
げ

-2

-1

大きな
曲げ
外力

引張
荷
載

作用
低下
せん断
増加

受ける
モーメント
変化
輪 伝達

0

1

耐荷

せん断
2

X座標

図−１５

「応⼒」に関連する単語の可視化

図−１６「応⼒」＋「溶接」に関連する単語

36

3

4

2.1.7. AI を利⽤したメンテナンスユースケースを考えよう
AI 技術を実装する際には図−１７に⽰すように，データ，⼿法，ユースケースを考えることが⼤事です．ここでは⼿法ごとにユースケースを整理して，実装するためのデータを検討してみましょう．

図−１７

データとツールとユースケースの関係性〇教師あり学習
教師あり学習を⾏うためには⼤量の教師データが必要となります．インフラデータでは実際の構造物で異常が発⽣することは稀であり，教師データを得ることが難しい問題があります．例えば，コンクリートのひび割れや鋼材の腐⾷などの⽐較的軽微な損傷についても，正常なデータに⽐べれば圧倒的に異常データの⽐率は⼩さく，これはデータの不均衡と呼ばれています．
損傷データが写った画像データはその特性上公開されることが少なく，また，アノテーシ
ョン作業をするのも⼤変です．学習するためのデータを共有する仕組みが重要です．また，
時系列データなどで教師データを作成する⽅法としては，損傷を模擬した実験を⾏うこと，もしくは臨床試験を⾏うなどの⽅法があります．
表には教師あり学習のユースケースとして，⽬で⾒える異常（材料表⾯の異常，構造物の⼤きな傾斜や変位）に対するユースケースを整理しています．⽬で⾒ればわかるという現象が⼤半ですが，⼈間による⾒落としを防ぐこと，また⻑期間監視するための⾃動化をする上で AI は役に⽴つと思われます．表には⽬で⾒えない異常（材料内部の⽋陥，微少な傾斜，変位，剛性低下）の評価についても整理しました．⾮破壊検査については既存の技術に対して AI が得意となるものを⾒つけ出すことが肝要です．

37

表−４

教師あり学習のユースケースとデータ（⾒えるものを指標化して監視する）

ユースケース
画像から変状程度や原因推定
および対策施⼯時期を診断したい

データ例
コンクリート表⾯画像のアノテーション結果

・交通荷重と構造物応答の関係把握と，応答による異常検⾞両通⾏時の画像とひずみ知をしたい応答が対応した時系列デー・過積載⾞両の⾃動抽出をしタ

把握および塗替え時期の判断

セグメンテーションを利⽤してひび割れなどの損傷を抽出する
物体検出による⾞両種別の特定および時系列解析による固有振動数の推移による異常検知

たい
塗膜劣化や鋼材腐⾷の進⾏性

実装できそうな事例

塗膜やさびの状態，腐⾷量などの判定のついた鋼材画
像データ

・セグメンテーションを利⽤した腐⾷⾯積の把握
・画像認識を利⽤した耐候性
鋼材の腐⾷度の評価

・⾬量と斜⾯崩壊時期の関近傍で⾬量計測をしている

係．斜⾯画像データからの斜斜⾯画像データ（静⽌画，

⾯崩壊検知

動画）

気象データと画像解析を併⽤したハイブリッドな⼿法

・共振やレインバイブレーシ
ョンなどによる変位量（振動）評価，強⾵の影響評価と対策検討（共振振動数）
・構造物の⼤きな変位や変形

近傍で⾵速計測しているケーブルや電柱などの画像データ

物体検出とセグメンテーショ
ンなどを併⽤した粒⼦解析

量の把握
舗装のひび割れ，平坦性などの評価，舗装補修時期や箇所の選定

ひび割れ，ポットホール判
定のある舗装画像（⾮⾛⾏，⾛⾏時），もしくは⾛⾏振動データ

38

画像を利⽤した深層学習結果と⾞載加速度データによるハ
イブリッド⼿法

表−５

教師あり学習のユースケースとデータ（⾒えないものを検知しスクリーニング）

ユースケース
打⾳点検時の⾳声や画像による浮きの検知⼿法の検討
・掘削時の構造物への影
響や異常検知．橋脚の応答を利⽤した洗堀検知
外⼒変化による構造物の応答特性の把握と異常予知および検知⼿法の検討
可動不良や剛性変化による構造物の異常検知⽅法の検討

データ
浮き判定のある打⾳時系列，もしくは⾚
外線画像データ
災害前後の実測データ，模型や模擬デー
タなど，掘削量などが既知の構造物応答の時系列データ（振動，変位，傾斜な
ど）・⽔位データが対応できる橋脚振動時系
列データ（洗堀検知）
・⾬量データが対応できる擁壁や斜⾯の傾斜データ
温度計測を⾏っている構造物の応答デー
タ（歪，変位，傾斜，加速度）39

実装できそうな事例
⾳声認識による分類

時系列を扱える機械学
習⼿法による異常検知（SVM，LSTMなど）
外⼒と応答の時系列予測⼿法を利⽤した異常検知
温度と歪など，波形パ
ターンの評価や異常検知〇教師なし学習
教師なし学習は，既存の⼤量のデータに対してアノテーションをするコストを要さずに活⽤できる可能性があります．正常データを学習して異常データを検知する⽅法など，データの不均衡性にも対応できる⼿法も開発されています．ここでは，教師なし学習の適⽤についてユースケースを検討してみましょう．
表−６

教師なし学習のユースケースとデータ（⾒えるものを指標化して監視する）

ユースケース

データ

実装できそうな事例

・画像データを利⽤したオ
ペレーション障害検知（⾞⾛⾏時の画像やレーザー＆レ

両，列⾞，河川）ーダーのデータ（障害物，建・巡回点検としてのスクリ

築限界，⻯巻など異常気象）

画像認識を利⽤した画像内の異物や異常変位の特定

ーニング⼿法の検討
河川の氾濫時期と位置を検知する

⾬量計データと⽔位計データ

最適化⼿法

・災害時の落橋や斜⾯崩
壊，災害前後の変化などの異常検知⽅法の検討
・画像データを利⽤した，サービス阻害要因の検知（降雪検知，路⾯凍結検知，河川氾濫），第三者被・道路わきのカメラ画像デー
タ・護岸，堤防，溜池，砂防ダムなどの監視画像データ

画像認識を利⽤した画像内の異物や異常変位の特定

・衛星画像

害検知
・ボルトの画像（腐⾷，弛
・画像データを利⽤した点

緩）検者の診断⽀援・⾬樋などの付帯物の画像

・⾛⾏⾞両など移動体によ（晴天および降⾬後）る画像を利⽤した損傷検知

・壁⾯タイルの画像データ（腐⾷，漏⽔，破断）

・鉄塔，電柱などの碍⼦，電線などの画像データ

40

・ステレオ計測などを利⽤した⾮接触⼨法計測・画像認識や物体検出による異常箇所の⾃動抽出

表−７

教師なし学習のユースケースとデータ（⾒えないものを指標化して監視する）
ユースケース

データ

実装できそうな事例

構造物応答の時系列データ
構造物異常の予兆検知（変位，変形，加速度）

時系列波形を利⽤したオ

デジタルツインなどを利⽤ートエンコーダーなどのしたシミュレーションデー

異常検知

タ
・列⾞⾛⾏時の⾞両の応答
移動体を利⽤した間接的なデータ

レーダー画像を利⽤した構造物の異常検知・路⾯性状⾞や⾞両に搭載

異常検知

したスマホの振動データ
・コンクリートや舗装上か・路⾯や壁⾯などの⾮破壊検査の簡易化ら撮影したレーダー画像（空洞）
・太陽光パネルなどの⾚外
線画像

41

レーダー画像を利⽤した
異常検知

〇マルチモーダルな AI
画像認識により損傷を検知するのみでは診断などの⾼度な評価はできません．様々デー
タを利⽤したマルチモーダルな⼿法を実装することで，より⼈間が⾏っているような作業を代替することが可能となります．ニーズの観点からマルチモーダルな⼿法のユースケー
スを考えてみましょう．
表−８

マルチモーダルな⼿法

ユースケース
損傷画像と所⾒を利⽤した維持管理ストーリーの作成

データ
画像と点検記録

実装できそうな事例
画像キャプショニング
Graph Convolution

災害時の⾞両，列⾞，⼈の GPS
避難誘導⽅法の検討

データ

チャットボット

ツイッターデータ
点検結果の⼊⼒⽀援
競合作業の把握，現場監理の効率化，作業員の安全監理（⾼所作業，毒物環境），作業における阻害要因の把握，交通整理や列⾞⾒張りなど保安業務の⾃動化

点検画像データ

画像からの点検対象部材

点群データの抽出，要素の特定

現場における作業員の画像やバ
イタルデータ
現場における保安員や⼯事⾞両（重機など）の移動データ

RPA

（GPS）
迂回⾞両の GPS データ
台帳データと地図情報（図⾯，点群，GIS）

現場準備，作業の事前調整

保安記録データ

データプラットフォーム

議事録データ
資材や資格者の情報
積算基準の⾒直し，⾃動積算⽅法の検討

維持管理予算の推移データ（直接費，経費，機械損料，リース代） チャットボット
⼊札情報

作業の平準化，費⽤対効果の⾼い

材料の品質管理，試験データ

⼯法の選定

対策⼯の⼯法や費⽤データ

材料のイノベーション

適⽤事例集

知識モデリング

ボランティアの活動内容および
メンテナンス作業（清掃，簡易補

作業時間データ

修）への参加度評価

メンテナンスへの理解度アンケ
ートデータ
42

ブロックチェーン

2.1.8. 対話システムと⽂章⽣成〇⾃然⾔語処理の⽬的
⾃然⾔語処理の⽬的としては，機械翻訳，⽂書要約，⽂書分類，対話（質問応答）などがあります．近年ブームになっている深層学習では，⼊⼒と出⼒のデータがたくさん必要となりますが，機械翻訳を考えれば，ある⾔語を別の⾔語で⾔い替えた⼊⼒と出⼒データの対が多くできることがわかると思います．それに対して，⽂書要約などでは，ある⽂書を要約したデータというのはそれほど多くないと思われますので，深層学習を利⽤するためには⼀⼯夫必要となるでしょう．次に，対話システムについて考えると，近年は SNS やツイッタ
ーなど，誰かのつぶやきに対する応答データが多くあることがわかります．このようなつぶやきと回答のペアデータを利⽤した対話モデルなどが深層学習を利⽤して開発され，それらはアップルの Siri やグーグルやアマゾンなどのスピーカー機能などとして実⽤化されています．

〇対話システムの⽬的は
それでは，グーグルやアマゾンなどの対話システムをそのまま専⾨的な知識を得るための対話システムとして利⽤することができるでしょうか？
まず，みなさんはどのような質問をスピーカーにしているでしょうか？例えば，天気を聞くというようなことがあるかと思います．このような天気を知りたいなどの明確な⽬的がある対話システムはタスク指向対話システムと呼ばれています．天気を知りたいだけであれば，深層学習などを利⽤しなくても，天気を知りたい場所や時間などの特定の条件を⼊⼒
して，天気予報などの情報を検索して回答することができると考えられますが，このような特定のルールに対して回答を作るルールベース⽅式の対話システムが検討されてきました．
しかし，対話は天気の質問だけとは限りません，⾊々な質問に対して，何か答えを作る対話
システムは，⾮タスク指向対話システムと⾔われますが，これはいわゆるチャットボットと呼ばれているものです．このような特定なタスクを伴わない対話にも，⼈間にとっての癒しなどの効果があると考えられ多く検討されています．
また，対話を実現する際に，なんでもかんでも答えるような対話システムを作るためには，
特定のドメインに特化しないデータ（open domain）を学習する必要がありますが，特定の対話にだけ答えるような FAQ システムなどでは，適⽤分野と⽤途を絞り込んだ対話システ
43

ムとして，絞り込んだ専⾨分野や，ある特定の領域のデータ（Closed domain）の学習を⾏うような対話システムが考えられます．
⼟⽊の分野で期待されている対話システムというものはどのようなものでしょうか．

〇⼟⽊に必要な対話システムとは
我々は専⾨的な情報を得るためには，各種の基準を参照することをします．専⾨的な知識を持っているということは，必要な情報がどこに書いてあるかを探せる能⼒であるともい
えます．しかし，近年では，必要な情報は多く散在し，また個⼈や組織のやるべきタスクは特定されず，様々なものをこなす必要があります．このため，いわゆるエキスパートシステ
ムのような対話システムが期待されています．⽤途を絞ることで，より専⾨的な対話を実現
しようとするものがエキスパートシステムと⾔えますが，従来のエキスパートシステムはルールベースのものであり，基本的に予め⽤意した対話のシナリオ（スクリプト）等を利⽤して動作するものです．近年の深層学習の進展を考えれば，⽤例ベースや⽣成ベースの対話システムを考えてみることがよいと思われます．また⼟⽊の業務の遂⾏においては，技術的な知識だけではなく，受発注を効率化するための情報や，部外協議などの業務を円滑に進めるような知識も重要となります．また，施⼯や品質の管理などでは，必要な情報をあるべきところに⼊れておき，必要になったら取り出すような仕組みが重要となると考えられます．
これらのエビデンスベースの情報管理においても，チャットボットのような仕組みは重要となると考えられます．

〇対話システムにおけるモデルと学習⽅法
⾔葉を理解するとはどのようなことでしょうか？深層学習を利⽤しない⼿法では，例えば，品詞，単語分割，語義曖昧性解消，固有表現抽出，構⽂解析，述語項構造認識などの⼿順をモデル化する⼿法が検討されてきました．このような⾃然⾔語処理の⼿法はかなり敷居の⾼い分析だったと⾔えるでしょう．それに対して，深層学習では，⼊出⼒データをニュ
ーラルネットワークでつなげればよいと考えることができます．
さてニューラルネットワークはどのように賢くなっていくのでしょうか．ニューラルモ
デルを利⽤した⾃然⾔語処理⼿法をして，BERT（Bidirectional Encoder Representations
from Transformers)というのがあります．BERT でできることは，⽂章の感情分類，質問応
44

答，⽂章から⼈名，組織名，地名などを抽出する固有表現抽出など様々ですが，教師なしデータで事前学習を⾏うのが特徴となっています．事前学習では，単語⽳埋め問題と⽂の連続判定問題というのを⾏っています．⽂章に対して，ランダムに⽳埋め問題を作って，⼊⼒と出⼒（答え）を学習していくことでニューラルネットワークを賢くしていきます．また，実際に連続した⽂，実際には連続していない⼆つの⽂を⽤意して，それらを学習して正答率を上げていくことで，あたかも AI が⽂脈を理解しているかのように賢くなっていきます．このような事前学習をしたモデルを⽬的に応じてファインチューニングすることで対話を実現します．
次に，ニューラルネットワークの構造について考えてみましょう．⽂章は単語のつながりが重要になることは明⽩です．また，単語の共起というものが⼤事になります．同じ⽂脈で出てくる単語は関連があると⾔え，これらは関連がある単語としてベクトル化されます．⼊⼒と出⼒を繋ぐ際に単語の順番を考慮するためのモデルは RNN と⾔われ，時系列的な依存関係を隠れ層に持ったニューラルネットワークですが，このようなニューラルネットワー
クを上⼿に学習することができるようになり，機械翻訳の精度が上がったことが知られています．さらに⻑期的な記憶のような機構を⼊れるために LSTM といったモデルが提案されています．
「Attention Is All You Need(Transformer)」という論⽂以降は，attention 機構「⼊⼒されたベクトルによって重みを計算し，その重みに基づいて索引ベクトルから任意のベクトルを出⼒するモデル」を利⽤した⼿法が構築され，Transformer モデルとして開発され，さらに効率よく学習する Reformer モデルなどが開発され精度が向上しています．

45

2.1.9. Google Colab の使い⽅
2.1.9 からは pchun.work で構築しているチュートリアルを⽰します．ただ，Google Colabは仕様が頻繁に微修正されるため，そのままでは使えない可能性もある点にはご留意ください．ただ，⼀般的にはかんたんな修正で動くようになります．
a) Google Colab とは？
機械学習，Deep learning などの AI 関係のプログラムは基本的に Python をベースに書かれることが⾮常に多いです．ただ，Python のインストールは結構⾯倒くさいです．そして，Deep learning は GPU がないと計算時間が⾮常に⻑くなりますが，GPU が機能するように
インストールするのは更に⾯倒くさい．本気の解析をするならともかく，練習⽤途にはこれ
らのインストールは少々ハードルが⾼い．
そこで，Google Colab です．Google Colab は，Google アカウントさえあれば計算環境が⼿軽に試せるサービスです．また，GPU 環境も利⽤可能で，Keras や Chainer といった Deeplearning のフレームワークも簡単に使えます．
（Keras や Chainer も，インストール結構たいへんなんですよ…）
このように素晴らしいサービスですが，とりあえず使⽤制限もあるので，以下に注意点をまとめておきました．気をつけておいてください．
注意点：
・90 分間何もしないと，接続が切れてしまう．
・GPU は 12 時間以上は連続で使えない．

46b) Google Colab で検索

図−１８

Google Colab の検索結果

Google Chrome を⽴ち上げ，”Google Colab”で検索します．そうすると，上図のような検索結果になるので，Google Colab というリンクをクリックします．（Google アカウントにログインしていることが必要です）
c) ノートブックの作成
検索結果をクリックすると，図−１９のような画⾯が出てきます．そこで，”ノートブックを新規作成”というリンクをクリックします．そうすると，図−２０のようなエディタが⽴ち上がります．最初は例えば Untitled0.ipynb というファイル名になっているので，⾚い四⾓で囲った部分をクリックして，ファイル名を変更しましょう．ここでは，Example1.ipynb と仮にしてみます．

47

図−１９

Google Colab の新しいノートブック作成

図−２０

新しいエディタ

そして，ランタイムというタブをクリックして，「ランタイムのタイプを変更」というのを⾒てみます．そうすると，図−２１のような画⾯が出てきます．ここで，ハードウェアアクセラレータのところをクリックしてみると，GPU を使うかどうかの選択ができます．特にDeep learning のプログラムを動かすときは，ここを GPU に設定します．このように作成したノートブックを使って，AI プログラミングの練習をしていきます．

48

図−２１

ランタイムの設定

d) サンプルプログラムの作成→実⾏→保存
ここではまず図−２２のような⾮常に単純なプログラムを作成してみます．for ⽂を使った繰り返し構⽂です．これを実⾏するには，⾚い四⾓で囲んだ再⽣ボタンを押すか，Shift＋Enter キーです．そうすると，図−２３のように結果が出⼒されます．これを保存するには，左上のファイルというタブをクリックします．

図−２２

サンプルプログラムの例

49

図−２３

サンプルプログラムの出⼒結果

図−２４

プログラムの保存

これを保存するには，左上のファイルというタブをクリックします（図−２４）．そうすると，保存ができ，次回以降も継続して作業することが可能になります．

50

2.1.10. ロジスティック回帰によるデータ分類
機械学習に取り組む前段階として，まずはロジスティック回帰を⾏ってみます．
a) データの説明
ここでの練習⽤に，データファイルを作りました．
→http://pchun.work/wp-content/uploads/2018/07/binarize.csv
また，以下のソースコードの全体像(jupyter notebook 形式）と，データをまとめたファイ
ルを圧縮して以下に置いておきます．
→http://pchun.work/wp-content/uploads/2018/07/Example2.zip
特になんということもないデータです．完全に架空のデータです．図−２５に先頭５つの例を⽰します．左から 2 つの列は説明変数，⼀番右の列は被説明変数というイメージで，0 か
1 かの 2 クラスに分かれています．

図−２５

サンプルデータの例b) データを活⽤した解析
ここでやりたいことは，説明変数２つから，クラスが 0 か 1 かを当てたい，というもの
です．やり⽅は⾊々とあり，機械学習⼿法で次回以降解いていきたいと思いますが，まずは歴史のあるロジスティック回帰を⽤いて⾏う，ということです．
以下，サンプルコードです．

基本的にコメントをつけた通りですが、改めて。
最初の⽂章はおまじないのようなもので、これが無いと⼀般的には python を動かす際に、⽇本語コメントが⼊っているとエラーを吐き出します。でも、Google Colaboratory では内部で処理してくれているようで無くても⼤丈夫なのですが、⼀応つけています。3 ⾏⽬からは、ライブラリを使うための宣⾔です。Pandas はデータを扱うための、numpy は数値計算を効率的に⾏うための拡張です。両⽅とも（特に numpy は）、今後多くのプログラムで利⽤します。matplotlib も同様に頻出のライブラリです。これらについてもおまじないのように書くのがいいです。
51

上のコードは、Google Colaboratory の場合にのみ必要なワンステップです。サーバー上で解析を⾏うため、ローカルのファイルを読み込むことができません。対策は⾊々とあり、
Google Drive にアップする⽅法などもあって場合によってはそちらが便利なのですが（というか、そっちにしないとできない場合もある）、今回の binarize.csv のような⼩さなファイルを扱う場合にはこのくらいでも⼗分です。
上のコードを実⾏するとファイルを読み込むダイアログが出てきます。それに従いファ
イルを読み込むと、以下のような感じになります。

ダイアログを使って読み込んだのは、あくまでもシステムでファイルを扱えるように読み込んだものです。このプログラムの中では読み込めていません。このプログラムで使えるように、さっき最上部で pandas as pd と書いて pd として import した pandas を使って、データを読み込みます。pandas には read_csv という関数があり、それを使って binarize.csv
を読み込みます。
そして、左から 2 列を説明変数として、X に代⼊します。python は数え⽅が 0 からスタートするため、0:2 列⽬を読み込め、と書いています。python では、0:2 というのは、0 からスタートして 2 になるまで、なので、0 列⽬と 1 列⽬という意味です。そして、1 番右の列を被説明変数として Y に読み込みます。以下にソースコードを⽰します．

ここは無くてもいいのですが、ちゃんと作れているか表⽰しています。最初の 5 ⾏くらい。また，最後の print ⽂は，⾏列の形を調べています．実⾏すると，以下のような結果が得られます．

52

最初に⽰したテーブル通りのデータになっていることがわかると思います。
また，説明変数が 2 つなので、それぞれを横軸、縦軸として、それらとクラスの分布についてプロットしてみました。こんな感じの図になっています．意図的に作ったデータだけあって、まあまあ分かりやすく分布しているものの、ちらちらと例外データもあったりします。

図−２５

クラス分布の matplotlib による表⽰

また，以下のソースコードにより，sklearn.model_selection から，train_test_split という関数を読み込んでいます．sklearn は scikit-learn といって，Python の機械学習⽤ライブラリです．こういう from … import …みたいな形は，普通はプログラムの最初に書くんですが，今回は説明⽤に，関数を使う場所の近所に書きました．X, y を，それぞれ，学習⽤ 8 割，テ
スト⽤ 2 割，といった分け⽅をしています．そして，下 2 ⾏の print ⽂で，本当に 8 割，2割になっているか確認しています．

53

次は，sklearn から，ロジスティック回帰を⾏うための関数 LogisticRegression のインポートを以下のソースコードにより⾏っています．次の⾏とその次の⾏で，X_train と y_trainという⼊⼒と出⼒の組み合わせを与えることで，それにもっともマッチする係数を出すことができます．lr.fit というのがポイントです．下 2 ⾏は，それぞれ切⽚と係数を確かめています．（なお，train_test_split はランダムで分割するので，以下の結果はランダムで変わ
ります）

結果：

以下のソースコードにより，求まった係数を w_0, w_1, w_2 に代⼊します．ちなみに，
w_0+w_1*X1+w_2*X2 = 0 という関係があります．その線をもとにクラスが分かれます．
そして，下半分はプロットのための部分です．np.arange(0,10,0.01)で，0 から 10 まで 0.01
刻みで xx1 を設定します．そして，xx2 = (-w_1 * xx1 ‒ w_0)/w_2 という関係のプロットを描いて，上の分布図と合わせます．それが以下の結果ですが，それなりにまっとうなところ
で分割できている様⼦がわかります．

54

図−２６

分布図と関係式を合わせた図

以下のソースコードでは，テスト⽤に確保してあった X_test を，先程作ったモデルに⼊れたらどうなるかということを確認しています．lr.predict とすれば，予測をしてくれます．
そして，テスト⽤データの正解と⽐較した正解率を，lr.score で出してくれます．

とはいえ，後ろ 2 割を引っ張ってきても全体が合っているかどうかこころもとないので，以下のソースコードでは交差検証を⾏っています．交差検証とは，統計学において標本デー
タを分割し、その⼀部をまず解析して、残る部分でその解析のテストを⾏い、解析⾃⾝の妥
当性の検証・確認に当てる⼿法を指します．特に，K 分割交差検証というのをここではやりました．StratifiedKFold というのはその関数です．ここでは K=8 としています．つまり，標本群を 8 個に分割し，そのうち 7 つを⽤いて学習を⾏い，そして残り 1 つをテストデー
タとして精度を評価する，というのをテストデータを変えながら 8 回繰り返しています．
ソースコードの下に表⽰された結果を⽰しています．

55

最初の⾏列は 8 回それぞれの正解率，最後はその平均です．だいたい 83.6%の正解率であることがわかります．

56

2.1.11. 決定⽊とランダムフォレストによるデータ分類a) 決定⽊とは
決定⽊とは，その名の通り⽊のような形をしているアルゴリズムです．例として，下の図−２７を⾒るとイメージが湧きやすいかと思います．

図−２７

休⽇に何をするかを決める決定⽊

上に⽰した決定⽊は，休⽇に何をするかを決める決定⽊の例です．決定⽊では，いろいろな選択肢（基準）のもとに，最終的に答えが決まります．
選択肢（基準）を決める⽅法としては，CART 法というアルゴリズムが多く使われています．CART 法では，最もよくデータを分類する基準を探して分岐を設定します．数学的にデータを最もよく分類する基準としてはジニ係数が多く使われます．ジニ係数の詳細はここでは省略しますが（各種教科書には記載されています），この値がより低くなるように設定することで，最もよくデータが分類できます．
それでは，実際に決定⽊を⽤いた分類を，コードを⾒ながら確認していきます．
b) データの説明
今回は機械学習⽤データセットとしてよく使われるアヤメのデータセットを⽤います．
以下の表にその⼀部を⽰します．150 件のデータが Setosa, Versicolor, Virginica の 3 品種に分類されており，それぞれ，Sepal Length（がく⽚の⻑さ）, Sepal Width（がく⽚の幅）, Petal
Length（花びらの⻑さ）, Petal Width（花びらの幅）の 4 つの特徴量を有しています．今回
は，これらの特徴量から品種を推定・分類することを⽬指します．

57c) サンプルコード（決定⽊）
本節では，決定⽊を⽤いたサンプルコードを説明します．Python の機械学習⽤ライブラ
リのひとつである scikit-learn を⽤いて，決定⽊による分類を⾏います．scikit-learn にはす
でにアヤメのデータセットが⽤意されています．1 ⾏⽬のコードでアヤメのデータセットをインポートしています．データセットのうち，いくつかは学習に⽤いて，残りは精度の評価に⽤います．2 ⾏⽬のコードでデータセットを分けるための関数をインポートしています．
3 ⾏⽬のコードは，scikit-learn で決定⽊を扱うための関数，tree をインポートしています．

まず，変数 iris に，インポートしたアヤメのデータセットを代⼊しています．さらに，代⼊したデータの中から，特徴量を⽰すデータ iris.data を変数 X に代⼊します．また，品種を⽰すデータ iris.target を変数 y に代⼊します．

ここで，変数 X，y の中⾝を以下のソースコードで確認してみましょう．

X は中⾝が多いので最初の 5 ⾏だけ表⽰します．このプログラムを実⾏すると，以下のような結果が得られます．

X の中⾝は，最初に⽰した特徴量の表と同じ値になっていることがわかります．y の中⾝は 0，1，2 が表⽰されています．それぞれの数値が Setosa, Versicolor, Virginica の品種を表しています．
test_size の指定により，X と y の中⾝を，学習⽤ 7 割，テスト⽤ 3 割に分けます．
58

random_state はデータを分割する際の乱数のシード値で， こうすることで誰がやっても毎回同じように分類されます．

clf に，今回学習に⽤いる決定⽊を定義します．ここで，決定⽊の深さを max_depth で定義しています．この値が⼩さすぎるとうまく判別できなかったりしますが，深さが⼤きすぎても，今度はトレーニングデータに過剰に適合した過学習に陥る場合があるので注意が必要
です．つづいて，clf.fit で学習を開始することで，トレーニングデータに適した判別条件が設定されます．

学習した決定⽊を⽤いて，テストデータの判定を⾏います．判定した結果の正解率を表⽰す
ると以下のようになります．

だいたい 98%の正解率であることがわかります．せっかくなので，ほんとにそうなっているかの確認も兼ねて判定結果の中⾝も⾒てみましょう．まずは，判定に⽤いるテストデータ（今回は 150 個うちの 3 割なので 45 個）の中⾝を確認します．
上のコードを実⾏すると，以下のように表⽰されました．

つぎに，学習させた決定⽊の判定結果を⾒てみましょう．
判定を⾏う場合には predict を⽤います．さて結果は…

ほとんどすべて正解していますが，38 個⽬の 1（Versicolor）だけ 2（Virginica）だと誤判
59

定しています．きっと，どちらともつかない微妙な特徴量だったんでしょう．45 個中 44 個
正解しているので，確かに正解率は約 98%ですね．
ここで，アヤメのデータセットに対して全体的にどの程度の正解率を出すことができるのか確認するため，K 分割交差検証を⾏います．今回は K=10 として，データを 10 分割してそれぞれの結果を⾒てみます．

StratifiedKFold は K 分割するための，cross_val_score は分割したデータで精度を検証するための関数です．さて，結果は以下のようになりました．

交差検証の結果によると，平均して 96%の正解率を出すことができています．
d) ランダムフォレストとはランダムフォレストでは複数の決定⽊を⽤いて学習を⾏います．そのとき，元の学習デー
タからランダムにデータを選択し，個々の決定⽊を⽣成します．そして，実際に未知のデー
タを評価する際には，個々の決定⽊が下した結論を多数決することで全体の結論とします．
決定⽊はとても分かりやすいアルゴリズムですが，データによっては望ましい⽊構造が⽣成できなかったり，過学習を起こしやすかったりすることで知られています．⼀⽅， ラン
ダムフォレストはその特性上個々の決定⽊間の相関が低くなるので，決定⽊に⽐べて過学
習の影響を⾮常に⼩さくできるメリットがあります．以下に，上記で⽤いたアヤメのデータセットをランダムフォレストで解析した場合のサンプルコードを⽰します．
e)サ ン プ ル コ ー ド （ ラ ン ダ ム フ ォ レ ス ト ）基本的な流れは決定⽊と全く同じなので，異なる箇所のみ解説します．

今回はランダムフォレストを⽤いるので関数 RandomForestClassifier をインポートして
います．

60

ここではもちろんランダムフォレストの関数を⽤いています．ランダムフォレストで学習に使うデータは学習データ全体の中からランダムに選定されますが，random_state=0 によって，誰がやっても毎回同じように選定されます．このとき，n_estimators を指定すれば⽊の本数も変えられますが，今回はデフォルトのまま⾏います．ちなみにデフォルトの本数
は 10 本です．
ランダムフォレストでの学習結果を⽤いて，テストデータの判定を⾏います．判定結果の正解率は以下のようになります．

だいたい 93%の正解率であることがわかります．ここで，決定⽊の場合と同様に，K=10 として，K 分割交差検証を⾏います．

結果は以下のようになりました．

交差検証の結果によると，平均しておよそ 95%の正解率を出すことができています．
g) コ ー ド 全 ⽂ （ 決 定 ⽊ ）このページで紹介した決定⽊のコード全⽂を載せておきます．なお，関数などの呼び出し
はコードの先頭にまとめ，途中で⾏った確認⽤の print ⽂などは省いています．

61g) コ ー ド 全 ⽂ （ ラ ン ダ ム フ ォ レ ス ト ）このページで紹介したランダムフォレストのコード全⽂を載せておきます．こちらも諸々の呼び出しはコードの先頭にまとめています．

62

2.1.12. ニューラルネットワークによるデータ分類a) ニューラルネットワークとは
ニューラルネットワークは，近年流⾏りのディープラーニングの基礎となる⼿法です．下
図のようにいくつかのニューロンというものを結合してネットワークを構成したものをニューラルネットワークといい，⼊⼒した値に応じて何らかの出⼒が得られます．

図−２８

ニューラルネットワークの概念図

各ニューロンに何らかの数値が⼊⼒されると，それに応じて新たな数値が次の層の各ニ
ューロンに⼊⼒されます．最終的に出⼒層のニューロンが出⼒した数値が，そのニューラル
ネットワークが導いた答えとなります．
もう少し詳しく説明すると，各ニューロンに⼊⼒された値は，その時点でまず活性化関数とよばれる関数に代⼊され，解を出⼒します．活性化関数にも⾊々あるのですが，例えばReLU 関数（ランプ関数）であれば，0 未満の数値が⼊⼒されると 0 を，0 以上の数値が⼊⼒されるとその値を出⼒します．

図−２９

ReLU 関数

また，活性化関数を通して出⼒された値を次のニューロンに渡すときに，何らかの定数を乗じてから渡します．これは重みなどと⾔われます．そして，活性化関数と重みがきちんと設63

定されていれば，最初の⼊⼒に応じて，それに応じた出⼒が得られるという仕組みです．
重みの設定においては，予め正解が分かっているデータを⽤意して，出⼒値と正解値を⽐較し，その誤差に応じて各重みが調整されます（バックプロパゲーション）．
以上がニューラルネットワークの簡単な説明です．それでは実際にニューラルネットワ
ークを⽤いた分類を，コードを⾒ながら確認していきます．
b) データの説明
前回に引き続き，機械学習⽤データセットとしてよく使われるアヤメのデータセットを⽤います．再掲になりますが，以下の表にその⼀部を⽰します．150 件のデータが Setosa,
Versicolor, Virginica の 3 品種に分類されており，それぞれ，Sepal Length（がく⽚の⻑さ）,
Sepal Width（がく⽚の幅）, Petal Length（花びらの⻑さ）, Petal Width（花びらの幅）の
4 つの特徴量を有しています．これらの特徴量から，品種を推定・分類することを⽬指します．

c) サンプルコード
以下，サンプルコードです．基本的な内容のみ触れるため，全体の流れは前回⽰した決定
⽊による分類とほとんど同じです．単に使う道具が変わった結果としてコードがほんの少し変わるだけなので，困ることはないと思います．また，ページ下部にコード全⽂を再度載せておきます．

Python の機械学習⽤ライブラリのひとつである scikit-learn を⽤いて，ニューラルネット
ワークによる分類を⾏います．scikit-learn にはすでにアヤメのデータセットが⽤意されています．1 ⾏⽬のコードでアヤメのデータセットをインポートしています．データセットの
うち，いくつかは学習に⽤いて，残りは精度の評価に⽤います．2 ⾏⽬のコードでデータセ
ットを分けるための関数をインポートしています．3 ⾏⽬のコードは，scikit-learn でニュー
ラルネットワークを扱うための関数をインポートしています．

64

まず，変数 iris に，インポートしたアヤメのデータセットを代⼊します．さらに，代⼊したデータの中から，特徴量を⽰すデータ iris.data を変数 X に代⼊します．また，品種を⽰すデータ iris.target を変数 y に代⼊します．ここで，変数 X，y の中⾝を確認してみます．

X は中⾝が多いので最初の 5 ⾏だけ表⽰します．実⾏すると，以下のような結果が得られます．

X の中⾝は，最初に⽰した特徴量の表と同じ値になっていることがわかります．y の中⾝は 0，1，2 が表⽰されています．それぞれの数値が Setosa, Versicolor, Virginica の品種を表しています．

test_size の指定により，X と y の中⾝を，学習⽤ 7 割，テスト⽤ 3 割に分けます．
random_state はデータを分割する際の乱数のシード値です．

clf に，今回学習に⽤いるニューラルネットワークを定義します．ここで，⼀回の学習を⾏う際に，⼀気にすべてのデータを使わず，⼀部をランダムに使って学習を⾏い，これが何回も繰り返されます．これを何回繰り返すのかを max_iter で定義しています．この値が⼩さすぎると解が収束する前に学習が終わってしまいますし，⼤きすぎるとトレーニングデ
ータに過剰に適合した過学習に陥る場合があるので注意が必要です．また，このときに引数として activation を設定することで活性化関数を指定できます．デフォルトでは ReLU 関
数（ランプ関数）になっています．
つづいて，clf.fit で学習を開始することで，トレーニングデータに適した重みになるよう
65

に調整が⾏われます．

学習したニューラルネットワークを⽤いて，テストデータの判定を⾏います．判定した結果を print 関数で表⽰した結果が以下のようになります．

だいたい 98%の正解率であることがわかります．ここで，アヤメのデータセットに対して全体的にどの程度の正解率を出すことができるのか確認するため，K 分割交差検証を⾏います．今回は K=10 として，データを 10 分割してそれぞれの結果を⾒てみます．

結果は以下のようになりました．

交差検証の結果からしても，平均して 98%の正解率を出すことができています．
d) コード全体（ニューラルネットワーク）
このページで紹介したニューラルネットワークのコード全⽂を載せておきます．関数などの呼び出しはコードの先頭にまとめ，途中で⾏った確認⽤の print ⽂などは省いています．

66

67

2.1.13. Keras で MNIST の判定a) Keras とはKeras はディープラーニングのプログラムを⽐較的簡単に実装するためのフレームワー
クです．Keras の他にも， PyTorch などの似たフレームワークもいくつかあります．
そもそも，機械学習を⾏うためのライブラリとして Google が提供している TensorFlowというライブラリがあるのですが，機能が豊富すぎてこれからディープラーニングを始める⼈にとっては少し複雑すぎるという⽋点があります．ですが，Keras を使うと TensorFlow
を簡単に動かすことができます．実際にどのように使うのかは，この記事で追って説明しま
す．Keras や TensorFrow のインストールはちょっと⾯倒くさいので Google Colab を使うとすぐに Keras が使えます．
今回は，Keras を⽤いてニューラルネットワークを構築して学習を⾏います．
b) MNIST とは
今回は，MNIST（エムニスト）というデータセットを使います．MNIST は⼿書きの 0~9の数字が書かれた 28×28 画素の⽩⿊画像データで，60000 枚のトレーニングデータと10000 枚のテストデータが⽤意されています．画像それぞれに，⼿書きの数字に対応した正解ラベルが割り振られています．以下の画像は MNIST の中⾝の⼀例です．

図−３０

MNIST の画像例

c) サンプルコード
以下，サンプルコードです．前回のニューラルネットワークは⾮常に簡素なものでしたが，今回はもう少ししっかりしたものを構築するので，ちょっと⻑い解説になると思います．また，このページの下部にコード全⽂を掲載します．

まずは Keras のインポートです．そして，MNIST のデータセットもインポートします．
Keras には元から MNIST のデータセットが⽤意されています．
そしてこれまでと同様，MNIST のデータをトレーニングデータとテストデータに分割します．元から 6:1 に分けられているので，ここで数値を指定しなくても勝⼿に分けられま68す．x_で始まるのが画像データで，y_で始まるのがそれに対応する 0~9 のラベルです．
次に画像データをニューラルネットワークに⼊⼒出来る形にしていきます．トレーニン
グデータとテストデータそれぞれに同様の処理を施しています．

上のコードでは，28×28 の 2 次元配列を，784×1 の 1 次元配列に変換しています．

また，配列内の数字が整数型では扱えないので， int 型を float32 型に変換しています．

⽩⿊画像なので各画素には 0~255 の値が⼊っていますが，これを全て 0.0~1.0 に変換しています．
次にラベルデータも変換します．Keras の to_categorical 関数を使って，整数値を 2 値クラスの配列に変換します．例えば 2 という値は[0, 0, 1, 0, 0, 0, 0, 0, 0, 0]という配列に変換されます．

また，今回は 0~9 までの 10 種類のクラス分類を⾏うのでクラス数として 10 を指定しま
す．さて，データの準備が⼀通り終わったのでニューラルネットワークモデルを構築します．

まずは Keras の Sequential モデルというものをインポートします．これはニューラルネ
ットワークの各層を格納する箱のようなものです．この箱の中で層を積み重ねていくイメ
ージです．
その次にインポートしている Dense と Dropout は層の種類です．前回⽤いたニューラル
ネットワークでは，⼊⼒層を除いてどの層のニューロンもすべて，⼿前の層の全てのニューロンから値を受け取っていました．このような層を全結合層といいます．Dense レイヤは，
この全結合層のことを指します．
しかし，全結合層だけで構築されたニューラルネットワークは過学習に陥りやすくなってしまいます．そこで，学習の際に層の中の⼀部のニューロンの⼊出⼒を⾏わない（⾏わな
いと⾔っても実際には存在するので⼊出⼒を 0 にする）ことで汎化性能を⾼め過学習を抑制します．学習のたびに，対象とするニューロンはランダムに選択されます．これをドロッ
プアウトといい，Keras では Dropout レイヤを設けることで直前の Dense 層においてDropout を⾏うことができます．

69

今回作ったニューラルネットワークモデルは上記のような形をしています．ひとつずつ確認しましょう．
（1 ⾏⽬）Sequential モデルを定義します．この中で層を積み⽊のように重ねていきます．
（2 ⾏⽬）今回は 784 ピクセル分のデータを⼊⼒とするので，⼊⼒層のニューロンは 784 個
です．これは，input_shape=(784,)として定義しています．この⼊⼒層の次の層が，ニューロン数 512 の全結合層になっています．全結合層の活性化関数は ReLU 関数を指定しています．
（3 ⾏⽬）続いて，Dropout レイヤを設けることで，直前の全結合層においてドロップアウ
トを⾏います．今回は 512 個のニューロンのうち，常に 2 割をランダムにドロップアウト
させます．
（4 ⾏⽬）そしてもう⼀層，ニューロン数 512 個の全結合層を設けます．
（5 ⾏⽬）その全結合層においても，常に 2 割をドロップアウトさせます．
（6 ⾏⽬）最後の全結合層（出⼒層）のニューロン数は 10 個です．これはクラス分類数が10 個だからです．また，活性化関数として softmax 関数を⽤いています．関数の詳細な説
明は省きますが，分類問題の出⼒層で softmax 関数を⽤いることで，出⼒結果を各クラスの確率として表すことができます．たとえば，⼊⼒画像として 2 の画像を⼊⼒したとき，出⼒結果がだったとします．正解値はなので，ここから誤差が⼩さくなるように重みが修正されます．なお，この出⼒結果の例では 73%の確率で 2 であると判定しているので，誤差はあれどもとりあえず正解できているといえます．
以上でモデルの形は設定できました．コードを⾒るとどんな形のモデルかひと⽬で分かるのが Keras の良いところです．
70ここで，学習を始める前に，どのような学習処理を⾏なうかを設定する必要があります．
この設定をすることを Keras ではコンパイルといっています．

学習⽤データと出⼒データの誤差を関数の形に表し（損失関数）、これを最⼩化させることを最適化といいます．RMSprop はそのための最適化アルゴリズムの⼀つです．他にも選択肢はありますが，今回はこれを使いましょう．ということでこれをインポートしています．
最⼩化させる損失関数として，categorical_crossentropy を設定しています．これはクロスエ
ントロピーで，今回のような多クラス分類ではよく⽤いられます．
そして metrics は評価関数で，これはモデルの学習には直接寄与しませんが，モデルの性能を表す指標です．今回はモデルの性能として判定精度を出すことで性能の良し悪しを⽰そうというわけです．
それでは，これまでに構築したモデルを⽤いて学習を開始します．

学習は筋トレのように⼀度ではなく何度も繰り返すことで汎化性能が⾼まります．
（やりすぎると過学習になりますが…）この繰り返す回数をエポックといい，epochs として定義
しています．
1 回の学習で計算するデータの数のことをバッチサイズといい，トレーニングデータの中からランダムにデータが選択されて学習に使われます． batch_size として定義しています．1 エポックの中では，指定したバッチサイズの学習をバッチ回数分⾏います．バッチ回
数は通常，トレーニングデータをバッチサイズで割った数の切り上げになります．今回の場
合はトレーニングデータが 60000 あるので，バッチ回数は 600 です．これをエポックの数だけ繰り返して学習させるわけです．
筋トレでいうと，腕⽴て 100 回の 600 セットを 20 ⽇間⾏うみたいなものです．また，verbose=1 としておくことで，学習過程のログが出⼒されます．最後に学習とその結果の精度を表⽰するために，以下のコードを⼊⼒します．

結果は以下のようになりました．

71

エポックが進む毎に少しずつ誤差が低下して精度は上がり，最終的には精度 98%まで上がっています．また，上の出⼒結果は GPU を使わずノート PC で学習を⾏った結果ですが，
1 エポックあたり 12 秒ほどで処理できています．これくらいならまだ許せる範疇ですが，層構造が深くなったり，⼊⼒データが⼤きくなったりすると GPU を使わないと正直厳しいです．
c) ⾃分が⽤意した画像で簡単なテスト
せっかくなので，⾃分の⽤意したデータできちんと判定してくれるかテストしましょう．
以下のような 28×28 ピクセルの画像を作ってみました．なお，ファイル名は test3.png と
しました．

図−３１

⽤いたテスト画像

明らかに我々の⽬には【3】に⾒えますが，正しく判定してくれるか試してみます．
72

今回は画像の読み込みを⾏うので，Google Colab で⾏う場合と⾃前の環境で⾏う場合はコードが若⼲異なります．まずは Google Colab で⾏う場合のコードから説明します．
Google Colab で⾏う場合
Google Colab で⾏う場合，ローカルのファイルに直接アクセスすることは出来ません．
ファイルを Google Drive にアップすれば読み込むこともできるのですが，今回はファイル
を Google Colab に直接アップロードするやり⽅でやってみましょう．

上のコードを実⾏すると，ファイルの選択を⾏うことができます．ここで，アップロード
したい画像を選択してください．選択すると，以下のような，アップロードが完了した旨を⽰す⽂が出てくると思います．

これで Google Colab へのファイルアップロードは完了したので，判定⽤のコードを⼊⼒
します．

load_img で画像の読み込み，img_to_array で読み込んだ画像を配列に変換できます．

今回⽤いる画像はグレースケールとして読み込まなければならないので，grayscale=True を指定しておきます．

学習の際に⾏ったのと同様，配列を 28×28 から 784×1 に変換し，すべて 0~1 の数字に変換します．
predict_classes で結果を出⼒することができます．結果は以下のようになりました．

73きちんと 3 であると認識してくれているようです．
⾃前の環境で⾏う場合
Google Colab を使わず，⾃前の環境で⾏う場合はもう少し簡単になります．Google Colabにファイルをアップロードするために⼊⼒した，以下のコードは不要になります．

上のコードは⼊⼒せず，あとは Google Colab で⾏ったのと全く同じコードを⼊⼒します．
このとき，読み込むファイルは実⾏するコードと同じディレクトリに置いておいてくださ
い．別のところにファイルを置いておく場合は，ʻ./test3.pngʼの部分を適宜ファイルが置いてある場所に書き換えてください．
d) コード全⽂（Keras を⽤いたニューラルネットワーク）
今回紹介したコード全⽂を以下に⽰します．関数などの呼び出し⽂はコードの先頭にまとめています．
学習・評価コード74

⾃分の画像でテスト※Google Colab を⽤いる場合のみ上記のコードを追加してファイルのアップロードが必要

75

2.1.14. Keras で CNNa) CNN とは
CNN とは画像認識などの複雑な問題を簡単なニューラルネットワークで解くのは限界があります．
そこで，その発展形である CNN（Convolution Neural Network）を使います．また，ディープラーニング（深層学習）という場合，レイヤの数が多いニューラルネットワークによる学習のことを指す場合もありますが，⼀般的には CNN を使った学習のことを指す場合が多いです．（他にも⾊々ありますが…）
ニューラルネットワークで画像認識を⾏おうとすると，画像の各画素値が各⼊⼒値として⽤いられることになりますが，対象物の位置が少しずれたり，形が変化したりするだけで⼊⼒値が⼤きく変わってしまいます．例えば以下の図のように，【2】という⽂字が書かれた画像を認識しようとしたとします．

図−３３【２】という⽂字が書かれた画像群

いずれも私達の⽬では 2 であることがわかりますが，各画素の⾚枠部分は，どれも同じ位
置にもかかわらず，⾊が異なっています．ですが，⻘い点線で囲まれた部分を⾒てみると，
どれもなんとなく右上から左下に向かって⿊い画素が並んでいるように⾒えます．つまり，個別の画素ではなく，ある程度広い領域をまとめて⼊⼒として使えば，より精度の⾼い判定ができそうだ，というのが CNN の考え⽅です．
畳み込み層
ある程度広い領域を⼊⼒するために⽤いるのが，フィルタと呼ばれる⼩領域（上の図の⻘
枠のようなもの）です．例えば，【2】という画像に対して，「右上から左下に向かう⿊い画素の集まり」のフィルタを⽤意して，これを画像の端から端まで⾛らせ，場所ごとの⼀致度を記録します．おそらく画像の真ん中や左上あたりでは，⽤意したフィルタとの⼀致度が⾼76

くなるでしょう．

図−３４

フィルタおよびフィルタの重ね合わせのイメージ．畳み込み層では，この⼀致度（特徴マップ）を出⼒する

この，場所ごとの⼀致度の情報を出⼒する層が畳み込み層で，上記の処理を畳み込みといいます．なお，今回は例として「右上から左下に向かう⿊い画素の集まり」のフィルタの話をしましたが，実際には様々な種類のフィルタを⽤意して，フィルタごとに畳み込みを⾏う
ので，⼤量の畳み込み結果（特徴マップ）が出⼒されます．また，各フィルタは判定したい
対象に適したものが学習の結果から⽣成されます．
プーリング層
畳み込み層から出⼒された特徴マップは，それでも⼊⼒画像によってばらつきがあります．そこで，特徴マップを⼤まかなウィンドウに区切り，各ウィンドウの中での最⼤値を代表値として画像を縮⼩します（Max-pooling の場合）．これにより，ばらつきの影響を低減
させます．

図−３５

Max pooling の例図

この，特徴マップを縮⼩する⼯程をプーリングといい，プーリングが⾏われる層をプーリ
ング層といいます．また，プーリングを⾏うとデータの個数が区切ったウィンドウの個数に縮⼩されるのが分かると思います．よって以降の計算量が⼀気に少なくなるといった，もう⼀つの⼤きな利点があります．

77

CNN とは（まとめ）これまでに説明した畳み込み層とプーリング層，そして活性化関数の層を幾重にも重ねることで構築されているのが CNN です．なお，最終的には特徴マップではなく判定結果を出⼒したいので，CNN では終盤に全結合層を設け，特徴マップから判定結果を導きます．
以上が CNN の基礎事項になります．では，実際にデータを使ってその性能を確かめてみま
しょう．
b) データセット
今回は，CIFAR-10（サイファーテン）というデータセットを使います．CIFAR-10 はairplane, automobile, bird, cat, deer, dog, frog, horse, ship, truck の 10 クラスにラベル分けされた 32×32 画素のカラー画像データで，50000 枚のトレーニングデータと 10000 枚のテ
ストデータが⽤意されています．以下の画像は CIFAR-10 の中⾝の⼀例です．

図−３６

CIFAR-10 の中⾝の例

c) サンプルコード
以下，サンプルコードです．Keras を使って CNN を構築し，CIFAR-10 のデータを判定します．

MNIST と同様に，CIFAR-10 も Keras に最初から⽤意されているので，インポートするだけで読み込めます．⾃分のデータで学習したかったら，前回，MNIST の結果確認で⾏ったような⼿順でフォルダから読み込むことになります．

そして MNIST と同様に CIFAR-10 もトレーニングデータとテストデータに分割します．
前回のニューラルネットワーク構築の際には，ここで画像データを 1 次元配列に変換していましたが，畳み込みとプーリングを⾏わなければならないので，この変換はここでは⾏いません．これは畳み込みとプーリングを終えて全結合層に⼊⼒する段階で⾏います．

78

各画素値を 0~1 の間に収まるように変換します．今回はカラー画像なので，RGB の値そ
れぞれにこの処理が適⽤されています．

そしてラベルデータを 2 値クラスの配列に変換しています．これも 10 クラスなので前回と同様．では CNN を構築します．ちょっと⻑いです．

前回と違い， Flatten，Convolution2D，MaxPooling2D をインポートします．
Flatten は平滑化層で，畳み込みとプーリングが終わったあと全結合層に⼊⼒する際に特徴
マップを 1 次元配列に変換します．Convolution2D と MaxPooling2D はそれぞれ畳み込み
層とプーリング層です．

今回構築したモデルは，⼊⼒→畳み込み→畳み込み→プーリング→畳み込み→畳み込み→プーリング→全結合層→全結合層（出⼒）といった流れになっています．プーリング層と全結合層でドロップアウトを⾏っています．
最初の畳み込み層における，32, 3, 3 はそれぞれフィルタの数，フィルタサイズ，フィル
タを⼀度に動かす幅（ストライド）です．border_mode=ʼsameʼを指定することによって，画像の周囲にパディングを施して畳み込み後も画像の⼤きさが変わらないようにします．
以下の図を⾒るとイメージしやすいかと思います．

79

図−３７

下の画像が⼊⼒，上の画像が出⼒（vdumoulin/conv_arithmetic ‒ GitHub）

そして input_shape=X_train.shape[1:]は⼊⼒画像の形状です．今回は(32,32,3)になりま
す．プーリング層における pool_size=(2, 2)は，プーリングしてダウンスケールする⼤きさです．今回の場合，⼀度のプーリングで画像の⼤きさが縦横半分になります．また，プーリ
ング結果にドロップアウトを適⽤しています．
以上が今回構築した CNN の構造です．続いて，学習処理を決めるコンパイルです．

今回は最適化アルゴリズムに Adam を⽤いました．それでは，これまでに構築したモデルを⽤いて学習を開始します．

エポック数が多すぎると過学習する可能性があるので，今回はいい感じのところで学習を打ち切れるようにします（Early stopping）．
そのために，callbacks = [EarlyStopping()]と設定しておきます．こうすることで，エポッ
80ク数増加による過学習を起こす前に，学習をストップさせることが出来ます．
Early stopping を⾏うために，トレーニングデータの⼀部をバリデーションデータとして設定します．validation_split = 0.1 とすることでトレーニングデータのうち最後の 10%をバリ
デーションデータとして⽤いることができます．
（なので実際にトレーニングに使われるのはトレーニングデータの 90%です．
）
また，このようにするとトレーニングデータ全てを訓練に⽤いることはできなくなるので，適切なエポック数が設定できていれば Early stopping は⾏わなくてもいいかもしれません．最後にテストデータを⽤いて学習精度を確認するためのコードを⼊⼒します．

結果は以下のようになりました．CNN は CPU で計算すると時間がいくらあっても⾜りないので，Google Colab の GPU 機能を使って計算しました．

Early stopping を⽤いた結果，最初に指定した 30 エポックに達する前に終了しています．
つまりこれ以上学習を進めても精度が上がらないと判断されたということです．そして，テストデータに対する精度は約 78%でした．
ネットで検索すれば，VGG-16 や GoogleNet，ResNet といった，すでに⾼い成果を出しているモデルも公開されているので，これらを⽤いればさらに精度は向上すると思います．

81d) コード全⽂（Keras で CNN）
今回紹介したコード全⽂を以下に⽰します．関数などの呼び出し⽂はコードの先頭にまとめています．

82

2.1.15. ResNet を Fine Tuning して⾃分が⽤意した画像を学習させる
a) ResNet とはResNet はディープラーニングを⾏うためのモデルの⼀つであり，2015 年の ILSVRC（世界的な画像認識コンテスト）で優勝したモデルです．
⼀般的に，ある程度多層のニューラルネットワークは層が少ないニューラルネットワー
クよりも精度が⾼くなりますが，あまりに多くしすぎると勾配消失問題が発⽣し精度が悪化します．ディープラーニングの学習においては，各層ごとに活性化関数の微分を⾏い，勾配を計算することで重みを調整しているのですが，層を増やしすぎると微分の積が多くなりすぎて勾配が消えていくという問題があります．
従来のモデルでは各層（Deep path）を通して勾配の計算を⾏っていますが，ResNet は新
たに別の経路（Shortcut Connection）を設けることで，勾配消失を起こしにくくしたモデルです．その結果，ResNet は精度を上げつつ深い階層のネットワークを実現できています．
（反⾯，階層が深いぶん学習時間が⻑くなりますが…）
さらなる詳しい説明や詳細については，検索したら多くの解説が⾒つかると思います．
b) Fine Tuning
実際に⾃前のデータで学習を⾏おうとした場合，⼤量のデータを⽤意するのは困難な場
合があります．しかし，すでに学習済みのモデルをベースにしてそこから学習を⾏えば，少ないデータでも精度の向上を図ることができます．
Fine Tuning は，すでに学習済みのモデルを⽤いて再学習を⾏い，新たなモデルを⽣成することを指します．よく同列に説明される転移学習（Transfer Learning）は，すでに学習済
みのモデルを特徴量の抽出器として使い，別の分類をさせる⽅法なので，モデル⾃体を再学習させる Fine Tuning とは異なります．
今回は既存のデータセットで学習済みの ResNet の Fine Tuning を⾏い，⾃前のデータセットに対して判定を⾏うことを⽬指します．
c) データセット
事前学習でのデータセット
今回事前学習に使う（使われている）データセットは，ILSVRC2012 データセットです．
ILSVRC2012 データセットは，ImageNet という巨⼤データセットの中から選ばれた画像データ群で，トレーニングデータ 120 万枚，バリデーションデータ 5 万枚，テストデータ 10
万枚，クラス名 1,000 種類の巨⼤なデータセットです． 2015 年に ResNet が優勝した
ILSVRC は ImageNet のデータを⽤いて競う⼤会で，ILSVRC2012 データセットはその 2012
年⼤会で使われました．
83

新たに学習させるデータ
新たに学習させるデータとしては，本記事の趣旨的に ImageNet の中にないクラスのデータを使いたいところです．とはいえ，このために新たに学習データを揃えるのも⾯倒くさいです．
（本当は記事のタイトル的にも，⾃前で調達した画像を使いたいんですが…）そこで，
今回は料理のデータセットである Food-101 を使います．Food-101 には，101 種類の料理の画像が，各 1000 枚ずつ含まれています．Food-101 のデータは，検索するか，またはこちらのぺージからダウンロードできます．今回はあくまで例なので，そのうちの⼀部（apple_pie，french_toast，hot_dog，pizza，sashimi）を使うことにします． これら 5 種類の料理画像を判別することを⽬指します．なお，画像は 800 枚をトレーニング⽤，200 枚をテスト⽤に⽤いることにします．
また，今回⽤いるデータですが，予め以下のような階層のフォルダを構築しておきます．

各画像に対応したフォルダを，train，val の 2 つのフォルダに分けています．そして train
における各フォルダにはトレーニング⽤画像を 800 枚ずつ（計 4000 枚），val における各フォルダにはテスト⽤画像を 200 枚（計 1000 枚）ずつ⼊れておきます．
以上のようにすれば，Food-101 でなく，⾃前の画像でも学習ができます．
d) サンプルコード
以下，サンプルコードです．
今回は⽤意したファイルを Google Drive にアップロードして，Google Colab から Google
Drive 内のファイルにアクセスするやり⽅でデータを読み込みます．こうすることで，同じデータを開発チーム内でも共有することが可能です．
ここで，ややこしいことにフォルダをそのまま Google Drive にアップロードしても，そ84

れを素直にフォルダとして読み込むのは難しいので，Google Drive にアップロードする前に⼀旦このフォルダを zip に圧縮して，dataset.zip を作成し，これを Google Drive にアップロードします．
ではまず，画像の読み込みに必要なコードを書きます．

2 ⾏⽬と 3 ⾏⽬のコードで Google Drive にアクセスするための PyDrive をインポートしていますが，このモジュールは元々Google Colab に標準で⼊っていません．
そこで，1 ⾏⽬のコードで，pyDrive を Google Colab にインストールする必要があります．インポートできたら，Google Drive にアクセスするための認証を⾏います．以下のコードで⾏うことが出来ます．

コードを実⾏したら，以下のようなフォームが出てくると思います．

表⽰されているリンクをクリックして，読み込みたいファイルを保存してある Google
Drive アカウントを選択すると，以下のように認証⽤コードが表⽰されると思います．

このコードをコピーし，先程のフォームに貼り付けて Enter キーを押します．
特にエラーなどが出なければ，これでデータをアップロードしている Google Drive からデータを読み込む準備が完了しました．
ここで，Google Drive から読み込みたいデータについて，「共有可能なリンク」を有効にしておく必要があります．読み込みたいデータを Drive 上で右クリックすると，以下のように「共有可能なリンクを取得」を選択できます．

85

そして，共有設定をオンにすると，「https://drive.google.com/open?id=abcdefg…」のような感じの共有リンクが表⽰されます．
（「共有可能なリンクを取得」をクリックしたら⾃動的にオンになっているかもしれません．）ここで必要なのが「id=」以降の部分になります．
今回⽰した例でいうと abcdefg…の部分です．ここでは仮に，「id=」以降の部分が「abcdefg」
だとしてコードの解説をします．

これで，Google Colab 内に zip ファイルを読み込むことが出来ました．
つづいて，以下のコードを続けて zip ファイルを解凍します．

上のコードを実⾏すると，解凍されたデータが以下のように表⽰されると思います．

86

解凍が済んだら，dataset.zip は必要ないです．以下のコードで Google Colab 上から削除できます．（これは Google Colab 上から削除するだけで，Google Drive にある元データを削除するわけではないです）

以上で Google Colab を使う際の，だいぶ⾯倒くさい作業が完了しました．
（⾃前の環境でやる場合はこれまで書いたコードや，それに伴う作業は必要ないので割と楽）ようやく本題のコードを書き始めます．まず，トレーニングデータ，テストデータの定義
を⾏います．

classes に分類したいクラスを定義しています．今回の場合だと，apple_pie, french_toast,
hot_dog, pizza, sashimi です．そして，nb_classes にクラス数を定義しています．4 ⾏⽬，5⾏⽬のコードで，読み込むデータのディレクトリを指定しています．7 ⾏⽬，8 ⾏⽬のコー
ドで，トレーニングデータの数，テストデータの数を指定しています．そして,10 ⾏⽬のコードで読み込む画像をすべて同じ⼤きさにリサイズします．これは最終的に全結合層に特徴マップを読み込ませるためです．今回は 224×224 にしましたが，あまりに⼩さいサイズを指定すると画像が縮⼩されすぎるのでエラーになります．詳細は Keras のドキュメントに書いてあります．
つづいて，読み込んだデータをトレーニングデータ，テストデータとして使えるように定87

義します．

今回のような形式で予めディレクトリを作成しておくと，Keras の ImageDataGenerator
でトレーニングデータとテストデータを簡単に定義できます．
こ こ で は ， ト レ ー ニ ン グ デ ー タ に 対 し て ， rescale=1.0 / 255, zoom_range=0.2,
horizontal_flip=True を指定しています．rescale は，これまで同様に各画素値の 0~1 への正規化です．後の 2 つは，トレーニングデータが⼗分でない場合に画像を⽔増しするための引数です．zoom_range は画像をランダムにズームします．horizontal_flip は，画像をランダムに左右反転させます．テストデータに対しては，⽔増しする必要が無いので正規化のみです．

続いて，.flow_from_directory で，ディレクトリへのパスを受け取り，拡張/正規化したデータのバッチを⽣成します．train_generator には train_data_dir を指定しています．
target_size は最初に指定した画像サイズで，今回は 224×224 です．カラー画像なのでcolor_mode=ʼrgbʼ，分類するクラスを classes として指定，分類は多クラス分類なのでclass_mode=ʼcategoricalʼを指定しています．学習の際のバッチサイズは 16 にしました．テ
ストデータについても，同様に設定しています．以上のコードを実⾏すると，下のような⽂が出てくると思います．

きちんと，トレーニングデータ 4000 枚，テストデータ 1000 枚が定義されているようです．では，学習を⾏うモデルを作っていきます．

88Keras には ImageNet データセットで学習済みの ResNet50（50 レイヤの ResNet）が最初から⽤意されているので，インポートするだけで読み込めます．

⼊⼒画像は 224×224 の RGB 画像なので，これを input_tensor として指定しています．
今回 FineTuning を⾏うにあたって，出⼒結果は 5 クラスの分類にしたいので，全結合層を変更します．そのためにまず，include_top=False とすることで，全結合層を除いた ResNet50
をインポートします．そしてこのとき， weights=ʼimagenetʼとすることで学習済みの
ResNet50 が読み込めます．逆に，weights=None とすると，ランダムな初期値から始まり
ます．
つづいて，除去した全結合層の代わりに⽤いる新たな全結合層を作成します．

2 ⾏⽬のコードで，ResNet50 の出⼒を 1 次元化しています．これを出⼒クラス数が 5 の全結合層に⼊⼒する形で，新たな全結合層を定義します．
あとは，全結合層を取り払った ResNet50 と，新たに作った全結合層をくっつけてモデルの形づくりは完了です．続いて，学習処理を決めるコンパイルです．

今回は最適化アルゴリズムに確率的勾配降下法を⽤いてみました．それでは，これまでに構築したモデルを⽤いて学習を開始します．

ジェネレータにより⽣成されたデータで訓練するには，.fit_generator を使います．
samples_per_epoch をトレーニングデータ数（4000）にしているので，各エポックで 4000
個のサンプルが⽤いられます．バッチサイズを 16 としたので，1 エポックにおけるステッ
プ数は 4000/16 の，250 になります．Fine Tuning では，すでにある程度重みが定まっているので，エポック数は少なめの 5 としてみました．ということで今回は Early stopping は⾏89

なわず，トレーニングデータ全てを訓練に⽤います．
結果は以下のようになりました．

最終的に，テストデータに対する正解率が約 88%まで上昇しています．
⼀⽅，ResNet の読み込み時に weights=None として学習を⾏った場合（ImageNet の重みを初期値とした Fine Tuning を⾏わなかった場合）の結果を以下に⽰します．

90ImageNet による重みから学習をスタートした場合は 1 エポック⽬からすでに約 77%の正解率が出ていますが，普通に学習させると 1 エポック⽬の正解率は約 25%となっていま
す．5 エポック⽬でも，約 52%までしか上昇していません．このことからも Fine Tuning の効果が伺えます．
せっかくなので，今回 Fine Tuning で学習したモデルに，テストデータの⼀部を読み込んで予測確率を出⼒してみます．今回は下に⽰すアップルパイの画像を判定させてみます．

91

図−３８

アップルパイの画像

上のコードを実⾏すると，結果は以下のようになりました．

⾼い確率でアップルパイと判定されています．
e) コード全⽂
以下に，今回のコード全⽂を⽰します．

92

以上のコードは Google Colab でデータファイルを読み込ませるために⾏うコード．⾃前の環境で⾏う場合は不要．

93↓テストデータの，./apple_pie/1005649.jpg をテストしてみた場合のコード．

94

95

2.1.16. Keras で回帰a) 回帰問題
これまで，Keras を⽤いて分類問題を扱ってきましたが，Keras を使ってニューラルネッ
トワークを構築し，回帰問題を解くことも可能です．すなわち，⼊⼒データに対して何らかのクラスを出⼒するのではなく，連続値を出⼒します．
⼊⼒画像から別の画像を⽣成するような⾼度な回帰問題（⾼解像度化や⾃動着⾊）も CNN
を使えば可能ですが，まずはより簡単な，複数の特徴量から１つの数値を予測するような回帰問題をやってみたいと思います．
b) データセット
今回は，機械学習の回帰問題でよく⽤いられるデータセットである，boston_housing を⽤いて，ボストンの住宅価格の推定を⾏ってみたいと思います．これは，Keras のなかにも標準で⼊っているデータセットです．このデータセットには，犯罪発⽣数や住居の平均部屋数など，14 個の特徴量を有するデータが 506 件⼊っています．これらの特徴量を⽤いて住宅価格の回帰を⾏います．今回は，データセットの 80%を学習に⽤い，残りの 20%を評価に⽤います．
c) サンプルコード
以下，サンプルコードです．

まずは Keras のインポートです．そして，boston_housing のデータセットもインポートします．
そして，boston_housing のデータをトレーニングデータとテストデータに分割します．
元から 4:1 に分けられているので，データセットの 80%が学習に⽤いられます．X_で始まるのが各特徴量を有するデータで，y_で始まるのが対応する住宅価格です．

次に各データを正規化しています．これは，各データの属性がそれぞれ異なるためです．
96

属性がそれぞれ異なると，計算するときにこれらのスケールの違いに結果が引っ張られてしまう恐れがあるので，これを防ぐために，同じ尺度に調整します．具体的な内容としては，各変数ごとに平均値を引いて，これを標準偏差で割ります．

また，テストデータに対しても，トレーニングデータの平均と標準偏差を⽤いて正規化します．これは，テストデータとトレーニングデータを同じ尺度で正規化するためです．でな
いと，精度が⼀気に低下してしまうので気をつけましょう．
さて，データの準備が⼀通り終わったのでニューラルネットワークモデルを構築します．

今回の回帰では，画像処理をしたりするわけではないので，畳み込み層などは特に設けず，全結合層のみで構成しています．また，今回は最終的に住宅価格を出⼒したいので，最後の全結合層のニューロンは 1 つだけになっています．

今回は最適化アルゴリズムに Adam を⽤いました．また，分類問題では損失関数にcategorical crossentropy を使っていましたが，今回は mse（平均⼆乗誤差）を使っています．
これは回帰でよく⽤いられる損失関数で，なめらかな関数を学習によって計算します．評価
関数は学習に直接関わってきませんが，今回は mae（平均絶対誤差）を⽤いています．
それでは，これまでに構築したモデルを⽤いて学習を開始します．

今回の場合はバッチサイズ 1 でエポック 100 として学習を⾏います．
結果は以下のようになりました．

97

エポックが進む毎に少しずつ誤差が低下していることが確認できると思います．

982.1.17. 画像キャプションの⾃動⽣成a) キャプション⽣成
今回は，画像を⼊⼒して，その画像の内容を説明する⽂章を出⼒するディープラーニング
モデルについて解説します．これまでとは違って，かなり⻑い解説になると思います．
⽂章を⽣成する場合，それまでの単語あるいは⽂章から，次の単語を出⼒することを繰り返し⾏う必要があります．そこで，⽂章⽣成などのタスクでは時系列データを取り扱うことの出来る RNN（リカレントニューラルネットワーク）が⼀般的に⽤いられます．
RNN は，それまでに計算された情報を保持し，次の計算に⽤いることができます．そして，次々と単語を出⼒して⽂章を⽣成した結果，累積されていった損失から，各出⼒過程の重みを調整します．このようにすることで，⽂章などの連続したデータの学習が可能になります．
今回は，RNN の⼀種である，LSTM（Long short-term memory）を⽤いてキャプション
⽣成を⾏います．LSTM は RNN よりも複雑な構造ですが，Keras で実装する場合は，これまでに⾏ったディープラーニングモデルと同様にモデルの途中に LSTM レイヤを挟み込むだけなので，あまり細かい中⾝を意識しなくても容易に実装することが可能です．
b) データセットの準備
キャプション⽣成⽤のデータセットとして，ここでは MS-COCO を⽤います．MS-COCOには元々英語のキャプションが付いていますが，ありがたいことに⽇本語のキャプション
も⽤意してくださった⽅々がいるので，今回は⽇本語キャプションで学習と⽣成を⾏いましょう．⽇本語のキャプションデータは，STAIR Lab / ステアラボ千葉⼯業⼤学⼈⼯知能・
ソフトウェア技術研究センターが作成・公開しています．
このキャプションデータは，MS-COCO の 16 万枚の画像に各画像 5 ⽂ずつ，計 80 万⽂が⽤意されています．ですが，今回は雰囲気を掴むために，バリデーション⽤のデータである『stair_captions_v1.2_val_tokenized.json』のさらに⼀部，2000 枚（1 万⽂）を⽤いて学習
および評価，テストを⾏いましょう．
MS-COCO および STAIR Lab によるキャプションデータのダウンロードは，こちらのリンクから可能です．MS-COCO のデータは，『2014 Val images [41K/6GB]』を選んでください．（http://cocodataset.org/#download）（http://captions.stair.center/）
また，このキャプションデータは JSON 形式で記述されていることから，少々⾒づらく，さらに今回ここで⽤いるにあたっては余計なデータも多く含まれているので，まず最初により使いやすい形に成形したいと思います．そのためのコードを以下に⽰します．

99

最初に，必要なモジュールをインポートし，JSON ファイルをインポートして読み込みます．⽇本語を扱う都合上，⽂字コードに関するエラーが出る可能性は往々にしてあるので，万⼀出てしまったら随時対応して下さい．

続いて，この JSON ファイルにおいては画像のファイル名が ID に紐づけられていることから，画像のファイル名と ID を対応させたディクショナリを作っておきます．

続いて，総キャプション数に合わせた pandas のデータフレームを作り，データフレームに各画像とキャプションを対応させていきます．（どうせ 2000 枚しか使わないのに全画像を処理するのは無駄感がありますが，⼤した量ではないのでザザっとやっちゃってます）

最後に，データフレームの上から 10000 ⾏を txt ファイルとして出⼒します．⽣成された
txt ファイルの，上から 6 ⾏分が以下のようになっています．

100このように，画像 1 つにキャプションが 5 つ，画像名［半⾓スペース］”説明⽂”の形で指定されていることが確認できます．ちなみに，COCO_val2014_000000000042.jpg の画像は以下のような画像です．
（気づいたかもしれませんが，本記事のサムネイルの AI はこの正解データと同じ⽂をドンピシャで想像しているので，ちょっとやりすぎですね，こんな⾵に⽂を出⼒してくれるといいんですが．）

図−３９

解析に⽤いた画像

101

また，説明⽂を⾒ると分かると思いますが，単語ごとに⽂章が区切られています．これは，単語ごとに学習・出⼒を⾏う必要があるからです．英⽂ではそもそも各単語間にスペースがあるため⼼配ないのですが，⽇本語でキャプション⽣成を⾏う場合はこのような配慮（形態素解析）が必要です．なお，STAIR Lab が⽤意したキャプションの形態素解析は，形態素解析を⾃動で⾏うツールである MeCab（めかぶ）を⽤いて⾏われているとのことです．
そして，今回⽤いるデータセットについて，トレーニング⽤に 8 割（1600 枚），バリデーシ
ョン⽤に約 2 割(399 枚)，最後の 1 枚がテスト⽤，になるように事前に指定しておきます．
また同時に，今回使う 2 万枚の画像も，ダウンロードした COCO データセットが⼊っているフォルダ（val2014）から，新しい他のフォルダにコピーしておきます．以下にそのためのコードを⽰します．

最初に，必要なモジュールをインポートし，先ほど出⼒した txt ファイルを読み込みます．

続いて，txt ファイルに書かれていた画像名の部分だけをリストに格納していきます．

そしてまずは，トレーニング画像とバリデーション画像をコピーして⼊れておくフォル
ダ「photo_data」を作成し，COCO データセットのフォルダ「val2014」から，最後の 1 枚
以外を「photo_data」にコピーします．適宜⾃分の環境に合わせてパスを設定してください．
(参照ディレクトリ内に同じ名前のフォルダが既に存在するとエラーが出ます．)

同じ要領で，最後の 1 枚だけを新しく作ったフォルダ「test_data」にコピーします．

102

最後にデータをトレーニングデータとバリデーションデータに分けて，train.txt，val.txtの 2 つのファイルを新たに⽣成します．
なお，tarin.txt の上から 3 ⾏分は，以下のようになっています．

このように，使⽤する画像の名前が羅列してあります．
以上でデータセットの準備は完了です．以上のような形式でデータを⽤意さえすれば，今回解説するコードでキャプション⽣成が可能です．ですから，⾃前のデータを Excel に⼊⼒
して txt 形式で出⼒・保存するなど，⾃分にあった形でデータセットを構築して構いません．
それでは，本題のキャプション⽣成モデルの作成について，以下に説明します．
c) サンプルコード
以下，サンプルコードです．

まず，全てのデータのパスを指定しておきます．今後，適宜呼び出します．
画像の特徴抽出
画像からキャプション⽣成を⾏うにあたっては，各画像の特徴ベクトルに対応してキャプションを学習・⽣成します．そのために，まず最初に CNN に画像を通して，最終層でクラス分類される⼿前で出⼒される特徴量を抽出します．そのためのコードが以下になります．

103

今回は特徴抽出⽤の CNN モデルとして，VGG16 を⽤いています．VGG16 の最終層を取り払い，画像を VGG16 に⼊⼒できる形に成形し，モデルに通して抽出した特徴と画像名を紐づけて，全ての画像のデータを pkl ファイルとして保存します．今後，⽂章の学習・⽣成をする際には，これらの特徴量を初期⼊⼒とします．なお，このようにすると学習時にVGG16 モデルそのものの学習は⾏われませんが，学習できるように設定してもあまり効果的でないことが知られています．
キャプションの読み込みと成形

まずはファイルの読み込みのための関数を定義し，全てのキャプションを読み込みます．この関数は今後も適宜使⽤します．

104

つづいてディクショナリを定義し，各画像とキャプションを紐付けています．

今回⽤いるキャプションの中には，⽂頭⽂末のダブルクォーテーションなど，不要な記号が
含 ま れ て い ま す ． こ れ ら を こ こ で 除 去 し ま す ． string.punctuation で［!”#$%&'()*+,-./:;<=>?@[\]^_`{|}~］←これらをまとめて指定可能です．

語彙が縮⼩されたキャプションは，descriptions.txt として新たに保存されます．
最後に，画像数のチェックを⾏っています．今回は 2000 枚あるので，2000 と出⼒されると思います．

105

トレーニングデータとバリデーションデータの準備
ここでは，トレーニングデータとバリデーションデータを，いくつかの段階を踏まえて，
学習・評価に使える形に成形します．

まず，上記の関数を使って，トレーニングデータとバリデーションデータの画像名が格納されたリストを作成しています．なお，引数に⽤いている train_data と val_data は，本サン
プルコードの⼀番最初に指定したものです．

上記の関数の引数 filename には先ほど作成したファイル descriptions.txt を指定し，引数
dataset には先ほど作成したリスト train およびリスト val を指定します．この関数を使って，トレーニングデータとバリデーションデータの画像名とキャプションが紐付けられた
ディクショナリを作成しています．
ここで，各キャプションを何らかの開始語と終了語で挟みます（ここでは startseq およびendseq としています）．⽂章⽣成の際には，画像と開始語を⼊⼒として与えて，そこから続く単語を次々と予測し，終了後が出⼒されたら⽂章⽣成を打ち⽌めます．

106

上記の関数の引数 filename には最初に作成したファイル features.pkl を指定し，引数
dataset には先ほど作成したリスト train およびリスト val を指定します．この関数を使って，トレーニングデータとバリデーションデータの画像名と特徴量が紐付けられたディク
ショナリを作成しています．

機械学習において⽂字列を扱うためには、単語をベクトル表現する必要があります．単語をベクトル表現することで，各単語間の関係性を学習することが可能になります．Keras には Tokenizer という便利なものがあり，これを使うことで単語をベクトル配列に変換する
ことができます．ここではまず最初にキャプションのリストを⽣成し，これをもとにベクトル化します．なお，キャプションのリストには train_descriptions を指定するので，トレー
ニングデータのキャプションに含まれている単語のみベクトル化されます．

次に，トレーニングデータの⽂章のうち，最⼤の⽂の⻑さを取得します．これは，モデルの⼊⼒層のノード数は⼀定にしなくてはいけないので，それをトレーニングデータの⽂の最⼤⻑に合わせるためです．

107そして最後に，キャプションデータ，画像データを紐づけ，モデルに⼊⼒するためのデー
タセットとします．ここでは，画像とそれに対応する⼊⼒語，⼊⼒語から予測されるべき出
⼒語を，そのすべてのパターンにおいて設定します．以上でモデルに⼊⼒できる形のデータの準備は完了です．
モデルの構築さて，ここからやっとメインのモデル構築です．

今までのモデルは単⼀のレイヤが⼀列に積み重なっていただけでしたが，今回のモデル
は以下のような構造になっています．

108

図−４０

モデルの構造

この構造を⾒て⽬につくように，このモデルは⼊⼒を 2 つとって 1 つの出⼒としています．すなわち，input1 から画像（の特徴量），input2 から⽂章を⼊⼒し，output で続く単語を出⼒します．また，時系列データを処理する LSTM レイヤは，input2 からなる層に配置されていることが確認できます．
input1 の⼊⼒ノード 4096 は，VGG16 の出⼒した特徴量を受け取ることからです．また，
input2 の⼊⼒ノード 34 は，トレーニングデータにおける⽂章の最⼤⻑です．input2 には，それまで⽣成された⽂章が⼊⼒として与えられるのですが，その⽂章を最⼤⻑に合わせてパディングして⼊⼒として与えます．output の 7579 は，出⼒されうる単語数を⽰しています．当たり前ですが，学習していない語彙は出⼒することはできません．
（なお，34 や 7579というのは⼀例で，今回のデータセットでは，また違った数値になっていると思います．）
では，定義したモデルを使って学習を⾏います．

109

今回は Keras のコールバックを定義しています．エポックごとに val_loss をモニターする
ことで，val_loss がそれまでの最⼩値だったらそのときの重みのモデルをファイルとして保存します．
テストする際や，新規に画像のキャプションを⽣成する際は，最後に出⼒されたモデルを読み込み実施するだけで良いです．データ量が多いので，実⾏には少し時間がかかると思います．上記のコードを実⾏すると，以下のような結果が出⼒されると思います．

エポックの val_loss が最⼩の場合は新しくモデルを保存しているのが分かります．それでは，テストデータの１つを使って実際に⽂章を⽣成してみます．

110まず，本サンプルコードで最初に実⾏した，全ての写真から特徴を抽出する関数を少し書
き換え，個別の画像から特徴量を抽出する関数を定義します．この関数を使って，テスト画
像の特徴量を抽出します．ここで，テスト画像のパスを指定してください．

続いて，整数を単語に戻す関数を定義します．モデルを学習する際に，各単語は番号に置き換えているので，実際に出⼒される際にも番号で出⼒されます．これを，この関数で対応する単語に戻すことができます．
その次に定義しているのが，実際に画像からキャプションを⽣成する関数です．
yhat = model.predict([photo,sequence], verbose=0)の部分を⾒ると，画像（の特徴量）とそれまでに⽣成された⽂章を⼊⼒していることが分かります．なお，⼀番最初に⼊⼒されるのは開始語（この場合は startseq）です．
結果としては各単語の確率が出⼒されるのですが，yhat = argmax(yhat)で，最も確率が⾼い単語を選択します．そして，in_text += ʻ ʻ + word の部分で，それまでの⽂章と新たに出⼒された⽂章を繋げます．これを，次のループで新たな⼊⼒として使います．これを終了語が出⼒されるまで繰り返します．すなわちここでは，写真と，それまでに⽣成された⽂章から，次に来る確率が最も⾼い単語を繰り返し出⼒して⽂章を⽣成しているということです．
111

最後に，今回学習によって得られたモデルを変数 model に定義します．上記のコードは⼀例で，実際には最後に出⼒されたモデルのパスを⼊⼒してください．そして，キャプショ
ン⽣成の関数を実⾏し，その結果を表⽰します．以下のような結果が表⽰されました．（シード値の固定などは⾏っていないので，⼈によって答えは少し違うかもしれません．）

図−４１

男性がサーフィンしている画像

残念ながらこれは間違った⽂章です．スキーじゃなくてサーフィンだったらそこそこ良かったのですが．とはいえ，⽇本語として間違っているレベルのおかしな⽂章ではないですし，モデルを調整するか，データ量を増やすことで，精度向上の期待が持てそうです．
追記
今回のコードは説明を簡単にするために，学習データを⼩分けにするミニバッチ学習を⾏っていないので，これよりさらにデータ量を増やすとメモリエラーが発⽣する可能性があります．
（環境によっては，今回のデータ量でもメモリエラーが発⽣するかもしれません．）
ミニバッチ学習の⽅法をこの記事に追加するとあまりに内容が膨⼤になるので，次回以降に説明したいと思います．
また，今回の出⼒では最も確率の⾼い単語を順次つなげていったので，⽂章が 1 ⽂のみ
出⼒されました．とはいえ，場合によっては 2 ⽂，3 ⽂出⼒すれば，1 ⽂では⾔い表せなかった内容も出⼒できる可能性があります．こちらについても，次回以降に併せて説明したい112

と思います．
d) コード全体
以下に，今回のコード全⽂を⽰します．
データの準備上のコードは，STAIR Lab のデータセットを，扱いやすいように成形するコードです．

113

上のコードは，成形したキャプションデータをもとに，画像をフォルダ分けして，トレー
ニングデータとバリデーションデータの画像名を指定したファイルを出⼒するコードです．

114

モデル構築

115

116

117

テストデータでキャプション⽣成

上記のコードは，テストデータを使ってキャプションを⽣成するコードです．（今回使ったテストデータ以外にも，⾃前のほかの画像でもすぐにキャプション⽣成できるので，⾊々と試してみてください．
）
Jupyter notebook などを使っている場合，学習に引き続いてこのコードを⼊⼒すれば，モジュールのインポートは上記のものだけで⼤丈夫です．しかし，別々の py ファイルとして扱う場合は，モジュールを再度インポートするほか，tokenizer を別途ファイル保存して読み込みする必要があります．

118

2.1.18 ひび割れ検出チュートリアル
⼟⽊構造物の点検においてひび割れ評価は重要な指標である．その⼀⽅で，現在では⼿作業＋スケッチで調べられており，膨⼤な⼿間がかかっている．そこでひび割れ検出を AI で⾃動化しようという研究は多い．
ここでは，基本的な⼿法に絞り，ひび割れ検出⼿法のソースコードを作ったので公開する．
本プログラムはあくまでも理解⽤の基本的なものであるが，本プログラムを発展させれば（⼿法を最新のものにするなど），さらなる精度向上も期待できる．
プログラムのコードについては⼩委員会の HP にリンクを掲載しているが，ここではコードの内容について紹介する．
はじめにこのチュートリアルでは、DeepCrack データセットを使って、学習済みの Mask R-CNN モデルを転移学習・ファインチューニングします。
Mask R-CNN は物体検出・領域分割を⾏う深層学習モデルであり、DeepCrack データセッ
トはおよそ 700 件のコンクリート画像とそのひび割れに対応した⼆値マスクを含んでいます。これらを使ってコンクリート構造物のひび割れを探すというタスクの⾃動化を試みます。
まずはじめに、pycocotools をインストールします。モデルの性能評価には、ひび割れとして予測された領域と正解領域の重なりを指標として使いますが、こちらはそれを⼀般的なCOCO 形式に準拠した形で測定するために必要なツールとなります。

コンクリートひび割れデータのためにカスタムクラスを準備する
DeepCrack データセットのために、カスタムのデータセットクラスを記述してみましょう。
まずはじめに、データセットを Github からダウンロードします。
※ 当該データセットは⾮商⽤・教育⽬的の利⽤に限って使⽤を許可されていますのでご注意ください。

119

データセットの中⾝を⾒てみましょう。
データは以下のようなフォルダ構成になっていると思います。

どんな画像が⼊っているのか、⼀つ⾒てみることにします。

⼀つ⼀つの画像にひび割れに対応するマスクが存在していることがわかります。
120

torch.utils.data.Dataset に沿った形でデータセットのクラスを記述してみます。

121

モデルを定義する

122学習済みモデルをファインチューニングする
COCO データセットで学習済みのモデルの最終層だけを取り換え、⾃分のデータセットで転移学習させたい状況であれば、以下の形が考えられます。

123

別のバックボーンを追加して物体検出モデルを改変する
さらにもう⼀つ、⼀般的なケースとして物体検出モデルのバックボーンを取り換えたいという状況が考えられます。例えば、現状のバックボーン(ResNet-50)が⼤きすぎ、もっと⼩さいモデルに付け替えたいという場合などがあり得ます。
以下は、torchvision にもともとある機能を活⽤してバックボーンを変更するやり⽅です。

124

DeepCrack データセットを使ったインスタンス・セグメンテーション（領域抽出）
今回はデータセットが⼩さいため、上の例の 1 番に沿った形で学習済みのモデルをファイ
ンチューニングします。また、領域を抽出したいため、Faster R-CNN ではなく Mask R-CNNを使います。

以上で、⽤意したカスタムデータセットを使う、モデルのトレーニングと評価の準備が整いました。
モデルトレーニングと評価関数
Torchvision の references/detection/ には、物体検出モデルのトレーニングと性能評価をより容易にする機能が⾊々と含まれています。 今回は、 references/detection/engine.py、
references/detection/utils.py と references/detection/transforms.py を使⽤します。
まず、そういったファイルと必要なライブラリを使えるようコピーしていきます。

125その次に、コピーした reference/detection を基に、データ増強（オーギュメンテーション）
やデータ変換の補助関数を書いてみましょう。

尚、画像に対してのリサイズ、ピクセル値の平均・標準偏差を使った正規化は Mask R-CNN
モデル内部で⾏われるため、こちらで記述する必要はありません。
実際に動かしてみる
データセットクラス、モデルとデータ変換がそろいましたので、早速それらをインスタンス
化してみましょう。

126

モデルとオプティマイザー（最適化）もインスタンス化します。

10 エポックのトレーニングを開始し、各エポックの最後に性能を評価します。

127トレーニングが終わりました。テストデータセットの画像で問題なく推論ができているかを確認します。

推論結果を print してみると、辞書の配列になっていることがわかります。
リストの要素は、それぞれの画像に対応しています。今回、画像は⼀枚のみを使って推論していますので、配列の中の辞書は⼀つです。 辞書は渡した画像に対する推論結果を保持しています。今回のモデルでは、辞書が boxes、 labels、 masks 、 scores をフィールドとして持っていることがわかります。
イメージの中⾝と推論結果の領域分割マスクも⾒てみます。中⾝の確認のためには、0-1 の値で表現されている画像のスケールを変更し、[C, H, W] の形式で表現されているチャネ
ルを反転させる必要があります。

128

次に、推論結果の領域分割マスクを視覚化してみましょう。マスクは [N, 1, H, W] の形式で表現されており、N は推論結果の数を表しています。また確率も 0-1 の範囲で表現されています。

うまくいっているようです！

129

まとめ
このチュートリアルでは、独⾃のデータセットを使って、トレーニングのパイプラインをセ
グメンテーションモデル向けに作成する⽅法をご紹介しました。独⾃データセットを使う
ためには、torch.utils.data.Dataset クラスを記述し、画像と正解の矩形、領域分割マスクを戻り値として返す実装を⾏いました。また、今回は新しいデータセットで転移学習を⾏うた
めに、COCO train2017 で学習済みの Mask R-CNN モデルを活⽤しました。
いかがだったでしょうか？尚、より完成されており、複数マシン・複数 GPU のトレーニン
グにも対応した references/detection/train.py が、Torchvision の Github レポジトリにありますので、是⾮参考にされてみてください。

130

2.2 AI 習得セミナー
2.1 節で述べた教材は習得の上で⾮常に有⽤であるが，どうしても⾃学⾃習では解決できない課題も多い．そこで，ハンズオンセミナーの設計も⾏った．特に，2.1.1 節から 2.1.4 節までの内容を基本と考え，これらを習得できるようなプログラムを以下のように設定した．
○セミナータイトル：AI ⼊⾨セミナー「橋梁形式を判定する装置（CNN）を作ってみよう！」〇プログラム
13：00〜13：15「AI とは何だろう？」

13：15〜14：00「AI を⽤いたデータ分析とは？」14：00〜14：10（休憩）

14：10〜15：10「データを分析する装置を動かしてみよう」

15：10〜15：20（休憩）

15：20〜16：20「装置の中はどのようになっている？」

16：20〜16：30（休憩）

16：30〜17：30「複雑化した装置でも難しくはない！」

17：30〜17：40（休憩）

17：40〜18：00「AI 活⽤に向けて」

データ収集の重要性と，機械学習の基礎，ディープラーニングの適⽤，そういったことを，
⼿を動かしながら学ぶものであり，実際に⼟⽊学会の HP より募集も開始していたが，COVID-19 の影響で開催を中⽌した．しかし今後，情勢が落ち着き次第⾏う予定である．
また，舞鶴⼯業⾼等専⾨学校

社会基盤メンテナンス教育センター（ｉＭｅｃ）と共同で，

本セミナーの内容を下敷きに e-learning 教材を作ることも計画しており，現在準備を進め
ている．

131

2.3 研究成果共有のためのシンポジウム／論⽂集の⽴ち上げ
AI 技術の⼟⽊⼯学分野への応⽤は黎明期にあるため，現状では適⽤例・アイデアの共有や意⾒交換を積極的に進めないといけない状況にある．そこで，AI・データサイエンスシン
ポジウム，AI・データサイエンス論⽂集（雑誌英語名：Intelligence, Informatics andInfrastructure）の⽴ち上げを⾏った．それぞれについて以下に述べる．
2.3.1. AI・データサイエンスシンポジウム
研究成果の共有および意⾒交換を⽬的として，AI・データサイエンスシンポジウムを企画
し，令和 2 年 11 ⽉ 18 ⽇〜20 ⽇に開催した．様々な適⽤の⽅向性を指向しているため，幅広なテーマでの発表を以下の案内⽂のように募集した．
案内⽂：
ＡＩ・データサイエンスの実社会への導⼊が進んでいます．⼟⽊⼯学における利活⽤も，構造・材料・建設関係のみならず，維持管理，防災，交通，環境等多彩な領域で活発に進められています．
構造⼯学委員会構造⼯学におけるＡＩ活⽤に関する研究⼩委員会では，ＡＩ・データサイ
エンスの⼟⽊⼯学における発展に資することを⽬的として、多⽅⾯の研究・開発、調査・試
験等の成果や現状について分野横断的・俯瞰的に議論するシンポジウムを開催します。
コンセプト・将来ビジョン・ロードマップ／ニーズ・ユースケース／データ取得／オープ
ンデータ・データ共有／データプラットフォーム／モデリング・BIM・CIM・i-Construction／ＡＩ⼿法／データサイエンス⼿法／⾃律システム・ロボット／画像・時系列・⾔語等の解析／プログラミング／開発・実装／利活⽤／ビジネス・イノベーション／普及・啓発・⼈材育成／事例など，関連したあらゆる観点から，現在進⾏中の研究開発を含めて，幅広く取り上げます．
本シンポジウムは，本重点課題の⺟体である「構造⼯学委員会

構造⼯学でのＡＩ活⽤に関する研究⼩委員会」が主催となって⾏った．また，様々なアプリケーションを視野に⼊れていることもあり，以下の団体から協⼒，後援をいただいた．
協⼒：
⼟⽊情報学委員会

IoT/AI 活⽤モデル研究⼩委員会，地震⼯学委員会

震⼯学への有効活⽤検討⼩委員会，応⽤⼒学委員会
スク評価実装研究⼩委員会，鋼構造委員会

AI・IoT 技術の地

データ駆動型の信頼性設計およびリ

鋼構造物の状態情報取得のためのイノベーシ

ョン技術に関する調査研究⼩委員会
後援：132

（⼀社）⼈⼯知能学会，（⼀社）⽇本ロボット学会
プログラムは（https://committees.jsce.or.jp/struct10/system/files/AI データサイエンス
シンポジウムプログラム（修正）.pdf）に⽰す．COVID-19 の感染拡⼤のため，ZOOM によるオンラインシンポジウムとせざるを得なかったが，それでも３⽇間にわたって合計８０件の発表，４００名を超える参加者に参加いただき，また⼟⽊研究所の⻄川和廣理事⻑より「道路橋メンテナンスサイクルへの AI 導⼊−システム構築に必要なこと−」という基調講演をしていただいた．
ZOOM をキャプチャした様⼦を以下に⽰す．⾮常に活発な質疑応答もなされ，有意義なシンポジウムとすることができた．第２回以降も継続して⾏えるよう，体制強化に取り組んでいる．（査読者名簿の整理，編集者の整理など）

図−４２

シンポジウムの様⼦

133

2.3.2. AI・データサイエンス論⽂集の⽴ち上げ
前節のシンポジウムの⽴ち上げと同時に， AI・データサイエンス論⽂集を⽴ち上げた．
従来，このような⼩委員会が主体となって⽴ち上げた論⽂集は，査読なしであり，かつ検索するのも難しい論⽂集が多かったが，今回は３名の査読者によって審査されるという⼟⽊学会論⽂集に準じた⽅式を採⽤した．また，J-STAGE に登録することで，検索などにより発⾒される可能性を⼤幅に向上させた．実際に，Google Scholar などで検索すると出てくるようになっており，引⽤⽂献情報なども適切に登録されている．
また，海外からの可視性も向上させるため，International Journal として“Intelligence,
Informatics and Infrastructure”を⽴ち上げた．既に数通 Vol.1 として掲載されており，また追加での投稿もいくらかなされており，今後も継続する⽅針である．

図−４３

Intelligence, Informatics and Infrastructure の Webpage134

3. データプラットフォームについての検討
⼈⼯知能技術の中で現在主流となっている教師あり学習，特にディープラーニングは⼤量のデータを⽤いた学習により帰納的にモデルを構築するものであり，すなわち，データ量が精度を左右する．特に，データが考えられる全ての境界条件のもとで網羅的にあり，かつ⼊⼒の形式と出⼒の形式が固まっていれば，的確な内挿の実現により⾼い精度の結果が得られるところにディープラーニングの有効性がある．しかし，⼟⽊⼯学分野においては，活⽤可能なデータは，⼀般的にディープラーニングの⼊⼒として求められる量よりはるかに（おそらく数オーダーは）少なく，しかも偏ったものしか得られないことが多い．インフラ構造物を例にとると，例えば以下のような原因が考えられる．



インフラ構造物は，建設される環境が異なるために⼀品⽣産物であり，⼯場製品と⽐べて個体差が⼤きいこと



管理者間や，業務担当者間でデータの共有がなされないこと

これらは，データの網羅性を⾼める上での障害となる．この状況では，ディープラーニングの「学習範囲外の状況に弱く，実世界状況への臨機応変な対応ができない」という⽋点の影
響を避けることが出来ない．そこで，ディープラーニングに代表される AI 技術を⼟⽊⼯学分野で活⽤するためには，データの共有，管理，活⽤の仕組みであるデータプラットフォー
ムを整えることが必須となる．
ここまで述べた背景を踏まえ，本節ではまずデータ連携・共有が⼟⽊の各分野でどうなっているか，複数分野の研究者にインタビューを⾏った結果について述べる．ついで，そこから，データプラットフォームのあるべき姿について，いくらかの例をもとに考察する．またその際に必要な技術開発についても述べることとする．

135

3.1. 複数分野の研究者へのインタビュー調査
ここでは，⼟⽊の各分野においてデータ連携に取り組んでいる研究者を対象にインタビ
ューを⾏った．研究者の⼀覧を以下の表−９に⽰す．このうち，浅本准教授と宮本准教授には SNS ベースでのインタビューを，その他の研究者の⽅々については ZOOM でのインタビューを⾏った．また，⽂字起こししたものについて，同意を得られたものは付録につけたので，必要に応じて参考にされたい．
表−９

インタビュー対象者

分野

インタビュー対象者

環境⼯学分野⻄村⽂武准教授（京都⼤学）

地盤⼯学・地盤防災分野

岡村未対教授（愛媛⼤学）

地盤⼯学分野⽵⼭智英准教授（神⼾⼤学）

河川⼯学・⽔⽂学分野

⼀⾔正之様（⽇本⼯営株式会社）

河川⼯学・⽔⽂学分野

森脇亮教授（愛媛⼤学）

河川⼯学・⽔⽂学分野

⾚松良久教授（⼭⼝⼤学）

交通⼯学分野吉井稔雄教授（愛媛⼤学）

構造⼯学・コンクリート⼯学分野

秋⼭充良教授（早稲⽥⼤学）

コンクリート⼯学分野浅本晋吾准教授（埼⽟⼤学）

構造⼯学・耐震⼯学分野北原武嗣教授（関東学院⼤学）

構造⼯学・耐震⼯学分野宮本崇准教授（⼭梨⼤学）

各研究者のインタビューの中で，複数分野にまたがり，以下のような課題が浮かび上がってきた．
〇組織論的な難しさ


データを管理する部署や企業が違う

データ連携をするインセンティブがそれぞれに低い

公開すれば社会的な価値があることはなんとなくわかるが⾒返りを想定できない（オープンデータ）〇実務的な難しさ

データを連携することの価値が，概念的には理解できても，具体的には⾒えない（ユースケースがよくわからない）

今発⽣するデータは将来にしか役⽴たないことが多い
136



データを提供する主体と利益を受ける主体が相違することが多い

データは連携してこそ価値が増⼤することが多いが，⼿元のデータだけで即ノウ
ハウになると思い，データを出したがらない傾向がある．
（そして結局死蔵される）



データを出そうと思っても，出す仕組みがない．

このように，組織論的な難しさ，実務的な難しさが存在する．これらの難しさは，解決が難しいにも関わらず解決しても短期的なメリットが得られないことを意味している．その結果，以下の技術的な難しさを乗り越えるためのモチベーションの醸成が難しくなり，また体制構築や予算獲得も当然難しくなる．
○技術的な難しさ

陳腐化することが少ないデータフォーマットを定める必要がある．



また，陳腐化した場合には柔軟にフォーマットを変える必要がある．



⼟⽊⼯学分野では画像などを含む⾮構造化データも扱う必要があるが，そのような枠組みが，構造化データの場合よりもさらに整っていない．



付加価値を⽣み出すには，画像とテキストデータなどマルチモーダルなデータを連携する仕組みを整える必要がある．しかし現状では，連携を想定したフォーマットもしくは API が想定されていない．

これらは，⼯夫や根性で乗り越えられるような課題ではなく，学術的研究開発，情報シス
テムの構築，そしてそのために必要な予算や体制が求められる．しかし上記のように組織論的・実務的難しさがあるので，協調領域として関係者全員で取り組むことが求められる．特に，⾏政による旗振りや⽅針決定，⼤学による研究開発および教育，⺠間によるニーズの提供や試⾏，ブラッシュアップが必須となる．
また，AI への活⽤という⾯でも⽰唆を得た．AI の学習においてはデータが揃っていることが重要であるが，現状では，①AI が使うデータを⼊⼿できない，②せっかくデータを⼊⼿しても活⽤までの前処理に膨⼤な時間を要する，という課題を抱えている分野が多いことがわかった．
以下の３．２では，AI を含むデータドリブンアプローチの⾼度化という観点から考えた場合に，データプラットフォームに求められる機能をまず⽰す．そして，データプラットフ
ォームが，上記の課題にも挙げた⾮構造化データを扱うためには，構造化データに変換するための機能が必要であることを説明し，そしてそのプロトタイプを⽰す．
３．３では，「データを出そうと思っても，出す仕組みがない．」という仕組みの改善を考え，J-STAGE Data への取り組みを先駆的にはじめようとしている事例を紹介する．AI の学習のためにデータが必要であるというのは上に記載したが，⼀⽅で，論⽂などで発表された⼿法などについて，データがないと追試できないが，データをアップロードする場所が整137

備されていないという，学術的な観点からの課題がある．そこで，データアップロードの場所として，JST が構築した研究データの共有と利活⽤を促進するためのリポジトリである JSTAGE Data と，2.3.2 で⽰した AI・データサイエンス論⽂集を連携させた．先駆的な取り組みとして本報告書で報告する．

138

3.2. ⽬指すべきデータプラットフォームの構造と開発すべき機能
3.2.1. AI にマッチしたデータプラットフォームの構造
データプラットフォームは，ユースケースに応じて様々な構成が考えられ，また実現されている．特に，データプラットフォーム活⽤による AI の⾼度化という観点から考えた場合，実現すべき機能は以下の通りである．


⼊⼿可能なデータの種類がデータカタログのような仕組みで整理され，そして個々のデータにはメタデータが付与されている．



データプラットフォーム内のデータで，恐らく⼊⼒時にミスがあったと考えられるものについて，AI が修正案を提⽰する，あるいは⾃動で修正する．

AI がユーザーの⽬的に応じて，⾮構造化データを⾃動で構造化し，その上で必要と思われるデータの種類をサジェストする．



データをアプリケーション側で簡単に⽤いることができるように，API が整備されている．

この要件は，上記の①AI が使うデータを⼊⼿できない，②せっかくデータを⼊⼿しても活⽤までの前処理に膨⼤な時間を要する，という課題の解決を視野に⼊れたものである．
上記の機能を実現するための仕組みとして，例えば図−４４のような構成が考えられる．
データレイクとは，あらゆる構造化データと⾮構造化データを保管する役割を担うもので，
データウェアハウスとはデータレイクのデータを変換して構造化したものを格納し，また計算リソースやインタフェースを提供する役割を担うものである．
なお，⼟⽊分野データの特徴としては，⾮構造化データが多いという点が挙げられる．⾮構造化データを具体的に挙げると，動画データや画像データ，⾳声データ，振動データ，あるいは統⼀ルールなく PDF 化された資料など，データ構造が定義されていないデータを指す．構造化データと⾮構造化データの違いを図−４５に⽰す．⼟⽊関係業務で納品されるデータは PDF ファイル，あるいは画像データが多く，これら⾮構造化データをどう扱うかというのはデータプラットフォームにおける⼤きな課題である．

139

図−４４

データプラットフォーム構成の⼀例

図−４５ 構造化データと⾮構造化データの違い
データレイクなしでデータウェアハウス（あるいは類したもの）のみが設置されているよ
うな運⽤も多いが，整理された構造化データの作成過程で情報を不可逆的に失ってしまい，
後に必要となるデータ構造の変化に対応できず，後から惜しむような事例は枚挙にいとまがない．データレイクは⼀旦全てのデータを⾮加⼯で置いておくことで，後のデータ構造の変化に対応でき，また必要な情報が失われてしまうという事態も防ぐことができる．ただし，単純に保存しているだけでは結局使えないデータが溜まっていくだけになってしまうため，
140

ガバナンスの効いた状態で保存する必要がある．そのためにはデータに関する情報である
メタデータを付与することが必要となる．また，どのようなメタデータが存在し，そしてデータウェアハウス内でどのように構造化されているかを整理するためのデータカタログの整備も重要となる．
このようにデータプラットフォーム内のデータが構造化されていて，データカタログにより適切なメタデータ情報を得ることが出来るのであれば，AI を含むデータドリブン解析の設計が⾮常に容易となる．さらに，メタデータとして，「誰に」「いつ」「どのように」作られたかという情報があれば，構築した AI の適⽤範囲や，信頼性などの評価も可能となる．
そしてメタデータが適切に付与されているデータを API 経由でユースケースに合わせて取得できれば，⼀般に⼯程の 8 割〜9 割を占めるとも⾔われる前処理をユーザー側がさほど⾏
わずとも解析を⾏うことが出来ると期待される．
しかし上記のように，⼟⽊分野データには⾮構造化データが多い．データレイクのデータからデータウェアハウスを構築するためには，適切に情報を抽出し，構造化して格納する必要があるが，必ずしも容易ではない．⼀般に ETL 処理（Extract; Transform; Load の頭⽂字）とも⾔われるが，例えば統⼀ルールなく PDF 化された資料，特にその中のラスタデー
タとして表現されている図⾯からデータを抽出するのは⾮常に難しい．また，⼤量に蓄積されている写真などからメタデータを抽出することも難しい．そのデータ処理には必然的に画像処理や AI が求められる．
また，もともとのデータを作成する際に，ミスが⽣じていることもある（例えば橋梁の幅
員 20m と書くべきところを 20km と書いてしまうなど）．メタデータが適切に整備されていれば，そのデータが持ちそうなデータ範囲を与えることも可能となるので，そこから⼤幅に外れたデータについて警告を出すことは AI がデータプラットフォームで果たすべき役割として重要である．さらに，データウェアハウスでデータが構造化されていれば，AI により⽬的に応じて必要と考えられるデータをサジェストすることも可能となる．このように，データプラットフォーム構築と，AI 開発はお互いに強化し合う関係性にあり，結びつきは⾮常に強い．だからこそ，データプラットフォームを，シームレスに構築するための技術が必要であり，そのための根源にあるのは ETL 機能の徹底した充実化である．次節では，⾮構造化データから，適切にデータを抽出し，構造化する ETL 処理について，特に画像へのメ
タデータ付与に着⽬し，そのプロトタイプを構築した．
3.2.2. ETL 処理の例：画像データからのメタデータ抽出
ETL 処理とは，「抽出（Extract）」「変換（Transform）」「書き出し（Load）」の各プロセスの頭⽂字をとったものであり，データベースやデータレイクなどからデータを抽出し，扱いやすいフォーマットに変換し，データウェアハウスなどに格納する処理を指す．この ETL
処理が容易なフォーマット，難しいフォーマット，様々にあるが，図−４５の構造化データの場合は易しく，⾮構造化データは難しい．画像データは難易度の⾼いものの１つであるが，141

⼀⽅で⼟⽊関連業務ではスキャン書⾯や写真など，画像データが多く，もっとも ETL 処理が求められるデータでもある．
本節では，そのような ETL 処理の概要を理解する，あるいは性能を理解するため，画像データからメタデータを抽出するような ETL 処理を⾏うプロトタイプを構築したので，それを⽰すこととする．
1) 図⾯や⽂書などをスキャンした書類
⼯事書類などが電⼦的に作成され，その上で⽂章情報などが適切に保持されるような形式で保存されていれば，そこから⽂章情報を読み取ることが出来る．しかし，例えばスキャ
ンして PDF 化，あるいは画像化して保存したケースなどではそこから⽂章を読み込むことは容易ではない．また，⽂章情報を残すように PDF 化したケースなどでも，意図せず⽂章
情報が喪失しているケースも多く，その場合はやはり画像化して読み込む⼿法が有⼒な解決策となる．
整理すると，以下のようなフローとなる．

図−４６

スキャン書類からメタデータを抽出するフロー

このフローに従い，例えば国⼟交通省による H31 橋梁定期点検要領の付録―１ 対策区分
判定要領の P5, P15 を，敢えて印刷した上でスキャンしたものについて，テキスト形式⽂章
⽣成と，メタデータ抽出を⾏った．
①H31 橋梁定期点検要領
橋梁定期点検要領

付録―１ 対策区分判定要領（P5）：

付録―１ 対策区分判定要領の P5 を以下に⽰す．

142

図−４７

H31 橋梁定期点検要領

付録―１ 対策区分判定要領の P5143

橋梁の鋼材の⻲裂に関する⽂章である．これについて，テキスト化した結果は以下の通りで
ある．
変換結果：
⻲裂
【⼀般的性状・損傷の特徴】
鋼材に⽣じた⻲裂である。 鋼材の⻲裂は, 応⼒集中が⽣じやすい部材の断⾯急変部や溶接接合部などに現れることが多い。
⻲裂は鋼材内部に⽣じる場合もあり, 外観性状からだけでは検出不可能な場合がある。
⻲裂の⼤半は極めて⼩さく, 浴接線近傍のように表⾯性状がなめらかでない場合には, 表
⾯きずや錆等による凹凸の陰影との⾒分けがつきにくい場合がある。 なお, 塗装がある場
合に表⾯に開⼝した⻲裂は, 塗膜われを伴うことが多い。
アーチやトラスの格点部などの⼤きな応⼒変動が⽣じることのある箇所については, ⻲裂が発⽣しやすい部位であることに加えて, 損傷した場合に構造全体系への影響が⼤きいた
め, 注
意が必要な場合がある。ゲルバー構造などにある桁を切り⽋いた構造部分では, 応⼒集中箇所となり, 疲労上の弱点となる場合がある。
同⼀構造の箇所では, 同様に⻲裂が発⽣する可能性があるため, 注意が必要な場合がある。
【他の損傷との関係】・ 鋼材の⻲裂損傷の原因は外観性状からだけでは判定できないことが多いので, 位置や⼤きさなどに関係なく鋼材表⾯に現れたわれは全て「⻲裂」として扱う。
・ 鋼材のわれや⻲裂の進展により部材が切断された場合は, 「破断」として扱う。
・ 断
⾯急変部, 溶接接合部などに塗膜われが確認され, 直下の銅材に⻲裂⽣じている疑いを否定できない場合には, 鋼材の⻲裂を直接確認していなくても, 「防⾷機能の劣化」以外に「⻲
裂」としても扱う。
【対策区分判定】〇判定区分 1 : 橋梁構造の安全性の観点から, 緊急対応が必要な損傷⻲裂
が飯桁形式の主桁ウェブや鋼製橋脚の横梁のウェブに達しており, ⻲裂の急激な進展によって構造安全性を損なう状況などにおいては, 緊急対応が妥当と判断できる場合がある。アーチやトラスの格点部などの⼤きな応⼒変動か⽣じしることのある箇所及びゲルバー構造などにある桁を切り⽋いた構造部分の⻲裂は, 構造全体系への影響が⼤きいため, ⻲裂の急激な進展のおそれがある状況などにおいては, 緊急対応が妥当と判断できる場合がある。
〇判定区分 2 : その他, 緊急対応が必要な損傷鋼床版構造で綻リブと床版の溶接部から床版⽅向に進展する⻲裂が輪荷重載荷位置直下で⽣じて, 路⾯陥没によって交通に障害が発⽣する状況などにおいては, 上⽫急対応が妥当と判断できる場合がある。
〇判定区分 S 1 S 2 : 詳細調査⼜は追跡調査が必要な損傷⻲裂が⽣じた原因の推定や当該部材の健全性の判断を⾏うためには, 表⾯的な⻑さや開⼝幅などの性状だけでなく, その深さや当該部位の構造前特徴や鋼材の状態 (内部きずの有無, 溶接の種類, 板組や開先) , 発
144

⽣応⼒などを総合的に評価することが必要である。した
これについて，元の⽂章と差分をとった結果が以下の通りである．

図−４８

元データとの差分いくらか異なる部分は存在する．例えば縦リブを綻リブ，鈑桁を飯桁としてしまうなどといった課題が⽣じている．これらについては専⾨⽤語のため，学習が現状では未だ不⼗分であるためだと考えられるが，必要に応じて図−４６に⽰す学習を⾏うことで，改良可能である．
そしてここから，例えばメタデータの候補として橋梁定期点検要領に定められている２６種の損傷などをリストアップし，それと合致するものを選ぶと，「⻲裂」「破断」「防⾷機能の劣化」などというメタデータを付与できる．あるいはリストとして他のものを準備すると他のメタデータを付与できる．
②H31 橋梁定期点検要領
橋梁定期点検要領

付録―１ 対策区分判定要領（P15）：

付録―１ 対策区分判定要領の P15 を以下に⽰す．

145

図−４９

H31 橋梁定期点検要領

付録―１ 対策区分判定要領の P15

橋梁のコンクリート部材の剥離・鉄筋露出に関する⽂章である．これについて，テキスト化
した結果は以下の通りである．

146

変換結果：⑦ 剥離・鉄筋露出【⼀般的性状・損傷の特徴】コンクリート部材の表⾯が剥離している状態を和剥離, 剥離部で鉄筋が赴出している場合を鉄筋露出という。
【他の損傷との関係】・弄離・鉄筋露出とともに変形・⽋損 (衝突痕) が⽣じしているもの
は, 別途,それらの損傷としても扱う。
・「届離・鉄筋露出」には露出した鉄筋の腐⾷, 破断などを含むものとし, 「腐⾷」, 「破断」などの損傷としては扱わない。
・床版に⽣じた剥離・
鉄筋路出は, 「床版ひびわれ」以外に本項⽬でも扱う。
【対策区分判定】〇判定区分 E1 : 橋梁構造の安全性の観点から, 緊急対応が必要な損傷塩
害地域において床版下⾯で PC 鋼材が露出し, 断⾯⽋損にまで⾄っており, 今後も損傷進⾏が早いと判断され, 構造安全性を著しく損なう危険性が⾼い状況などにおいては, 緊急対応が妥当と判断できる場合がある。
〇判定区分 2 : その他, 緊急対応が必要な損傷剥離が発⽣しており, 他の部位でも剥離落下を⽣じる危険性が極めて⾼く, 第三者被害が懸念される状況などにおいては, 緊急対応が妥当と判断できる場合がある。
〇判定区分 S 1 S 2 : 詳細調査⼜は追跡調査が必要な損傷
鉄筋の腐⾷によって私離している箇所が⾒られ, 鉄筋の腐⾷状況によって剥離が連続的に⽣じるおそれがある状況などにおいては, 詳細調査を実施することが妥当と判断できる場
合がある。
〇判定区分 M : 維持⼯事で対応が必要な損傷
全体的な損傷はないものの, 部分的に剥離が⽣じており, 損傷の規模が⼩さく措置のしやすい場所にある状況などにおいては, 維持⼯事で対応することが妥当と判断できる場合がある。
なお, 露出した鉄筋の防錆処理は, モルタル補修や断⾯回復とは別に, 維持⼯事で対応しておくことが望ましい。
〇判定区分 B,C1, C2 : 補修等が必要な損傷
これについて，元の⽂章と差分をとった結果が以下の通りである．

147

図−５０

元データとの差分①よりもやや精度が低い．特に，剥離という単語の認識精度が低いが，これについても①と同様に学習をすれば改良可能な範囲である．
このように⽂書データから⾊々なデータを抽出できれば，例えば「剥離」「鉄筋露出」「腐⾷」「破断」「ひびわれ」「塩害」のようにメタデータを付与でき，検索可能性も向上する．また，
近年の AI は⽂章データそのものを学習データとするような開発が進んでおり（GPT-3 と呼ばれる AI など），これらを AI に導⼊することで，例えば⽂章として表現・蓄積されているような経験知・専⾨知を AI に取り⼊れることができると期待できる．
2) 業務で得られた写真
⼟⽊関連業務では写真を撮影することが多い．例えば橋梁点検・診断業務においては，写真撮影なしでは現場の状況をわかりやすく調書に残しておくことが出来ず，1 橋で数百枚の写真を撮影することは決して珍しくない．あるいは今後 UAV による点検が普及すれば，1
橋あたり数万枚となることも想定される．これが，複数橋梁になるとさらに乗算的に増加していくこととなる．近年の AI が，画像処理に強⼒な性能を発揮していることを考えた場合，
このような写真を活⽤することが望ましい．
そのような⼤量の写真群の中から，探したい写真を⾒つけるのは⼤変な労⼒を要する．そこで，写真に対してメタデータを⾃動付与することができれば，そのメタデータを頼りに検索することが可能となるため，⼤幅な省⼒化となる．そこで本委託研究では，撮影画像を元に画像に写っている物体の状況を説明する⽂章を⽣成する Image Captioning 技術を活⽤し，メタデータ⾃動付与プログラムを構築する．ここでは特に，橋梁点検画像に絞って適⽤例を⽰すが，他のアプリケーションにもそのまま横展開可能である．
近年，特に Deep learning の発展に伴い，Image Captioning 技術の精度も⼤幅に向上している．例えば Microsoft などもそのような API を提供しているが（Computer Vision API），
⼟⽊の専⾨知が含まれていないため，そのままでは活⽤できない．例えば以下の図は橋梁点
148

検の際に得られた画像に対して解析した結果である．

図−５１

Computer Vision API による解析結果例

左図は腐⾷した⽀承，右図はひび割れが⽣じている竪壁の写真であるが，全く正しくない
出⼒となっていることがわかる．何故なら，上記のデータセットは特に⼟⽊⼯学分野固有の⽤語や概念が含まれたものになっていないためである．そこで本研究では，⼟⽊⼯学分野の学習データセットを構築し，そのうえで Image Captioning を⾏う Deep Learning モデルの学習を⾏う．
ここでは，ニューラルネットワークライブラリの Keras を⽤いて⽂章⽣成モデルの構築
を⾏い，また，Keras のバックエンドライブラリには Tensorflow を⽤いた．構築した⽂章⽣成モデルの概要を図−５２に⽰す．

図−５２

⽂章⽣成モデルの構造
149

本モデルは，主に画像を認識するための CNN（Convolutional Neural Network）と，時系列
データである⽂章を取り扱うための LSTM（Long short-term memory）で構成されている．
本モデルでは，CNN に画像を⼊⼒するとともに，LSTM を組み込んだネットワークにモデル⾃⾝が直前に出⼒した単語を⼊⼒する．LSTM は過去の出⼒を⾏った際の状態を内部で保存するため，過去に出⼒された単語を考慮した上で続く単語を予測して出⼒することが出来る．その後，結果の結合などを⾏い，最終的な出⼒が得られる．このようにして，モデルの出⼒として直前に出⼒された単語に続く単語が出⼒される．モデルの CNN には，
ILSVRC-2014 model with 16 weight layers（VGG16）の学習済みモデルを使⽤した．
⽂章検出結果の事例を以下に⽰す．

⽀承本体において、腐⾷が発⽣している。→メタデータ：⽀承，腐⾷床版において、ひび割れが発⽣している 。→メタデータ：床版，ひび割れ

150

竪壁にひび割れが発⽣している。→メタデータ：竪壁，ひび割れ

主桁において、腐⾷が発⽣している。→メタデータ：主桁，腐⾷

横桁において、防⾷機能が劣化している。→メタデータ：横桁，防⾷機能の劣化
図−５３Image Captioning とメタデータ付与

このようにメタデータを付与することが出来れば，画像のファイルパスとメタデータのリスト構築といった構造化が可能となる．ここで⽰したのはあくまでも ETL 処理の例である
が，少なくとも難易度が⾮常に⾼い画像に対しての例ということで，参考になる事例かと考えプロトタイプの結果を⽰した．
151

3.3. J-STAGE Data と AI・データサイエンス論⽂集との連携
AI の学習のためにはデータが必要である．しかし，論⽂などで発表された⼿法などについて，データがないと追試できないが，データをアップロードする場所が整備されていないという，学術的な観点からの課題がある．つまり，論⽂の結果の信頼性が担保されない状態にある．そこで，データアップロードの場所として，JST が構築した研究データの共有と利活⽤を促進するためのリポジトリである J-STAGE Data と，2.3.2 で⽰した AI・データサイ
エンス論⽂集を連携させた．先駆的な取り組みをはじめたので本報告書で報告する．
J-STAGE Data とは，J-STAGE の登載記事に関連するデータを登載・公開するデータリ
ポジトリである．令和 2 年 3 ⽉に試⾏的にリリースされたものであり，AI・データサイエ
ンス論⽂集についてもこの取組を活⽤することとした．J-STAGE Data は図−５４のように，J-STAGE の記事とデータをリンクできる．
J-STAGE Data に掲載されたデータには，独⽴して DOI およびメタデータが付与され，また CC ライセンスが付与される．これにより引⽤，再利⽤，検索がされやすくなり，また適切な形でのデータの国内外への流通を促進するものである．J-STAGE Data では，GB サ
イズの多種多様なファイル形式のデータを公開できる．なお，J-STAGE Data での公開が難しいケースも多くありえるので，実際にどのデータを J-STAGE Data に収載するかは著者
および編集委員会が決めれるような形にしてある．図−５５に論⽂とデータの査読プロセスを⽰す．論⽂とデータはセットで投稿，査読がなされることとなる．

図−５４

J-STAGE 掲載論⽂と J-STAGE Data との連携

152

図−５５

論⽂とデータの査読プロセス

JST が⽰している J-STAGE Data の仕様を以下の表−１０に⽰す．
表−１０

J-STAGE Data の仕様

この J-STAGE Data と連携することで，データつきで⼿法や結果を⽰すのが当然である（そうでないと追試ができない）という⽂化を醸成したいと考えている．

153

4. まとめ
近年の AI 技術の進化はめざましく，⼟⽊⼯学分野においても取り⼊れる余地は多くある．
しかし現状では，教育システムが未整備でありプレイヤーが増えていない，データの共有，管理，活⽤の仕組みが整っていない，という課題がある．また，プレイヤーが増えないから
データ共有が進まず，データ共有が進まないからプレイヤーが増えないという悪循環も⾒いだされた．そこで本重点課題研究では，⼟⽊⼯学における⼈⼯知能技術の活⽤のために必要な基礎的知識・技術を習得できる教材の開発と，⼈⼯知能技術の活⽤を⾒据えたデータ収
集・記録の基点となる，データプラットフォームのあるべき姿の提案・プロトタイプ構築を同時に対象として⾏った．これにより，AI 技術の⼟⽊⼯学分野での活⽤という観点で，⽅向性を提⽰することができ，今後すすめるべき研究課題や教育システムの開発を考える起点となった．
ただ，データプラットフォームや教育システム開発についての起点になったとはいえ，今後⾏うべきことはまだまだ多い．データプラットフォームについては，そもそも⼟⽊⼯学ならではのデータの扱いを考える必要がある．⼟⽊⼯学分野でのデータは，例えば⻑期間に渡り蓄積される（インフラ構造物の寿命は⻑い場合は１００年を超える），それゆえデータの品質がバラバラであるなど，他分野と⽐較して不利な点が⾮常に多い．これらについて，例
えば IT ベンダーに丸投げなどをしても解決しないため，本質的な取り組みが求められる．
その意味では，特に研究者の参⼊が求められる．ただ，現状ではなかなか学術として認められづらいため論⽂になりづらい．そこで，⼟⽊⼯学分野でのデータの性質や扱いなどを体系化して，学術として整理することが今後のデータプラットフォームの発展，AI 活⽤の推進に極めて重要であると考えている．また，論⽂として発表する場も必要であり，「構造⼯学での AI 活⽤に関する研究⼩委員会」で研究代表者らが⽴ち上げた「AI・データサイエンス
論⽂集」はその受け⽫として機能させるような枠組みとしている．
教育システムについても同様で，本重点研究課題では AI の教育システムについて開発を⾏ったが，もう少し視野を広げてデータの扱い，あるいはシステムズエンジニアリングの観点まで含めた教育システムを樹⽴する必要があると考えている．本重点研究課題での Web
上での単発での教材も重要であるが，それと並⾏して，⼟⽊⼯学分野での ICT 活⽤の全体像を俯瞰できるような，体系化された教科書，あるいは⽰⽅書のようなものが必要であり，
それは⼟⽊の学問を取り扱う⼟⽊学会が先導して⾏っていくべきものである．以上，この提案をもって，本報告書の締めとする．

154

付録

本重点研究課題では，様々な分野の研究者にインタビューを⾏い，データ共有やデータ連携における現状や課題について調べた．それらを⽂字起こししたもののうち，掲載の同意を得られたものについて，以下に記載する．
付.1. ⻄村⽂武准教授へのインタビュー――⻄村先⽣の専⾨分野で、データを収集して何らかの知⾒を⽣み出そうとする取り組みはありますか。今回、共同研究（編注：平成 30 年度下⽔道技術研究開発（GAIA プロジェ
クト）
「深層学習を活⽤した流域での⼈間活動に応じた流⼊下⽔負荷変動予測と既往処理シ
ステム運転管理の最適化」において研究代表者と⻄村教授は共同研究している）で⼀緒に取り組んでいるものもそうかと思いますが。
ま ず 、 あ の 共 同 研 究 に つ い て は 、 ど ち ら か い う と 国 交 省 が 旗 振 り を し て い る 「 iConstruction」の下に、下⽔道でも「i-Gesuido」をしているわけですから、国交省の⽅針として動いていると⾔えます。
当然 GAIA（下⽔道技術研究開発）もそうですが、そうした中で、その上のレベルの最も⼤きな B-DASH という下⽔道の実⽤化技術などに、AI を使った下⽔道管理、あるいは現在抱えている諸問題について情報を抽出して何か解決できないかと、さまざま取り組んでいます。もっとも、それらに付く予算に魅⼒を感じて皆さんが取り組むという⾯があります。
また、下⽔道事業はずっと以前から官が旗振りをしてきましたので、国交省が⽅針を打ち出すと、⺠間企業はビジネスチャンスのように捉える傾向が⾒られます。そうしたことを背景に「なんとかやっていきましょう」という状況です。
――そういったものの中で、すでに実⽤化に⾄っているものはありますか。
実⽤化はこれからです。私も B-DASH の評価委員の⼀⼈ですが、技術的な説明を聞いていると、「AI や機械学習を組み⼊れた」とは⾔っているものの、果たしてどうかと⾸をかしげることがあります。どちらかというと「とりあえずやってみました」という印象を⾮常に強く受けます。たとえば「１ヵ⽉分のデータでやりました」などです。もっと⻑いスパンでデータを取っているのですから、そのデータを活⽤すればいいと思うのですが、そこまで取り組まないような印象があります。機械学習と⾔っても、「Random Forests でやりました」というものも多くあります。全先⽣のような、本当の若⼿技術者が加わっていると、もっと広がると思うのですが……。
ただ⼀⽅で、皆さん、関⼼はすごく持っていると思います。よく理解していないからこそ、
155

何かバラ⾊の素晴らしいことができるのではないかと、ものすごく⼤きな期待を持っているのかもしれません。ですから、現状ではどこまでできて、どこからは難しいなどの実際上の⾒極めは、なかなか難しい点があるように感じます。以上は、私の個⼈的な印象です。
――⻄村先⽣の GAIA の研究もそうですが、今お話に出てきたデータについては、皆さん、個々にハードディスクなどに保管しているのでしょうか。
はい、個別に持っています。
――共有するような仕組みはできていないのですか。
共有とは、どの程度の範囲を指していますでしょうか。
――どこか１ヵ所に、というイメージです。たとえば、まず国交省に集約された上で、関係者が共有できるようにハンドリングされているなどです。下⽔道のデータの場合、どのような状況でしょうか。
下⽔処理施設では、「きちんと処理できているか」あるいは「運転管理上できちんとオペ
レーションできているか」など、チェックのためのデータは取っています。⽔質や排⽔などの基準がありますので、その基準が守られているか、基本的な⽇常点検などで定期的にデータを取っています。これは、⾃主的な取り組みというよりも、マストの業務です。ですから、
データ⾃体は蓄積されています。
ただ、過去のデータを何かに活⽤しているかというと、そうした試みはまったく⾒受けられません。点検のため、１ヵ⽉ごとに管理業者が下⽔処理場に報告はしますが、それで終わりです。
――たとえば、数施設の下⽔処理施設についてまとめたデータなどはないのでしょうか。
ないと思います。処理場ごとのデータです。
――データは処理場ごとに保管されているのですね。
⼤きい⾃治体で複数の処理場があればまとめて持っているかと思うのですが、それもありません。フォーマットすら統⼀されていない状況です。
――下⽔処理場は何ヵ所くらいあるのでしょうか。
156

全国で 2,200 ヵ所くらいです。
――そんなにあるんですね。
規模の⼩さいところが⼤半です。半分ぐらいは本当に⼩さい処理場です。
――都道府県によって異なるでしょうが、平均すれば１県につき 40〜50 ヵ所ですね。
はい、そうです。
――実際にできているかいないかは別にして、たとえばフォーマットを統⼀して都道府県レベルで⼀元管理できるようになると、何かメリットはあるのでしょうか。あるいは、メリットがないから⼀元管理されないのでしょうか。
おそらく、メリットがあるかないかもわからないのが実態だと思います。そもそも、そうした発想まで⾄っていないと思います。
――なるほど。
「⾃施設がきちんと⽔の⽔質を守っていれば問題ないので、ほかの施設がどうしているかは関係ない」という意識が強いのではないでしょうか。
――⻄村先⽣は、将来的に⼀元管理できるようになると、何かいいことがあるとお考えでしょうか。
それはあちこちで吹聴しています。
――その内容を教えていただけますか。
⽔環境管理は、⾃治体ごとに⾏うというよりも、本来は流域ごとに⾏うべきことです。た
とえば、河川の右側が⼀⽣懸命頑張っていても、左側が頑張らなければ⽔環境を保全することはできません。
――そうですね。

157

ですから本来は、流域単位でしっかりとオペレーションしなければいけません。ただ、現時点ではさまざまな問題があります。たとえば、⽼朽化、管理者あるいは技術者の不⾜、予算の不⾜など、下⽔道に限らず⼟⽊系やインフラ系で共通している問題が挙げられます。
それ以外にも、たとえば⽔質⾯では「有機物だけでなく、窒素やリンをきちんと除去してきれいな⽔を流しましょう」という基準や規制はあるのですが、瀬⼾内海などでは下⽔処理場をきれいにしすぎたために漁獲量が減ったという話があります。まだ因果関係までは明確になっていませんが、下⽔側は頑張って処理をしているのに、漁業従事者から「そんなことをしてくれたら困る」とまったく評価してもらえない。そうすると、「頑張らなくてもいいじゃないか」ということになってしまいます。
――瀬⼾内海の問題はニュースで⾒ました。
今は基準が決められているため、それに向けて、皆さんはきちんとやろうとしています。
しかし、本当にそれがトータルでいい⽅向に向かっているかというと、必ずしも整合性がとれていないかもしれません。そういう⾯があります。本来は、トータルの「どうあるべきか」が共有されていて、「そのためにはここまででいいよね」などと考えるべきかと思います。
――たしかに、そうした因果関係は、データをまとめて取って考えると⾒えてくるかもしれません。少なくとも相関関係はいろいろと⾒えてくるのではないでしょうか。ただ現状では、
そういうこともできないということですね。
そうですね。データをきちんと取れて、それを解析できる技術があり、解析できる⼈がいれば、さまざまなことが⾒えてくると思います。ただ、現状はそうしたレベルにまでまった
く⾄っていません。
――集めるニーズはあるけれども、何らかの理由でそこまで業界が成熟していないということですね。
はい。管理者は⾃施設の業務をしっかりと⾏うことに専念しています。結果、他の施設についてはあまり関⼼がないようです。
さらに⾔えば、おそらくまだ、現場での⽇常業務を紙でチェック・管理して、それを事務所に戻ってからパソコンに⼊⼒しているところもあるかと思います。国交省の B-DASH 事
業では、「それをタブレット化する」ことを⾰新的技術として取り上げています。紙に逐⼀チェックしていたのを、タブレットを使ってその場でネット上に⼊⼒する。⼀から書くのではなく、前回書いたデータをとりあえず上げておくなど、省⼒化するというわけです。
しかし、その程度のことであればすぐに導⼊すればいいことです。少し考えればわかるこ158

とです。そうしたことを「導⼊します」「⾰新的技術だ」と声⾼に⾔っている程度の段階なのです。
――どの業界でも似たようなものですね。それに関連して、下⽔道の何らかの解析のために、
たとえば降⽔量や気象データなど下⽔処理場が持っていないようなデータをまとめて収集していると便利ですよね。
そういうことができれば、すごく良くなると思います。そうしたデータをきちんと⼀元化
して、すでに存在している解析技術などを使えばいいと思います。
適切な喩えかどうかわかりませんが、現状は、「もしこういうハードウェアができたらこれができるかもしれない」「量⼦コンピュータができたら予測できるかもしれない」という次元ではなく、すでに解析技術やＡＩは別の業界の技術者によって開発されているので、それを導⼊すればできるはずだけれども、実際はそこまでできていないという状況です。その気になればできるはずだと思うのですが、先ほど先⽣が⾔われたように統⼀フォーマット
もできていません。
九州⼤学の先⽣も指摘していましたが、私が「データを使って省⼒化する技術なんて、その気になればできるじゃないですか」という話をしていたら、「いやいや、全国でも県単位のデータでも、それをやろうとするとフォーマットを整えなければいけないでしょ」と⾔われました。もちろん、それはそうなのですが……。いろいろな業者がある中で、どこのフォーマットを使うかによって、特定の業者がアドバンテージを持ってしまうようです。
――ほかの業界でもよく聞く話ですね。フォーマットを整えない主な理由はそこにあるのでしょうか。
いいえ。他業者にスタンダードを取られたくないということではなく、もっと⼿前のレベ
ルです。単に、もっとデータを広く使うという発想が基本的にないからだと思います。そも
そもデータを使うという発想がないと思います。
――では逆に、下⽔道業界の場合は、そうした発想が広まって国がやる気になれば実現するということでしょうか。
おそらくそうだと思います。
――フォーマットは国が決めればいいわけですからね。
そうなのです。ただ、国が決めると⾔っても、どこかの業者に依頼することになります。
159

また、どういったフォーマット形式がいいかについても、いろいろあるかと思います。
――ちなみに、取ることができるデータは下⽔処理場ごとに異なるのでしょうか。たとえば
⼤きな下⽔処理場ではこういうデータが取れるけれども、⼩さな下⽔処理場ではこれが取れないなどです。あるいは、法律で決められているものが同じだから、あまり変わらないのでしょうか。
どうでしょうか。⼩規模の処理場については定かでありませんが、管理者、事業者は取るべきデータをきちんと取っているはずです。ただ、システムが微妙に違います。また、維持管理のためのデータはそれぞれの運転管理者と事業者が維持管理業者に発注して取らせているという状況でもあります。
――それは、独⾃のデータを取らせているという意味ですか。
独⾃のデータを取る義務はありませんが、なかにはいろいろと取っているケースもあります。
――きっと、そういうところもあるでしょうね。
はい。マニアックと⾔うと失礼ですが、やらされている仕事だけではなく、熱意を持って⼀⽣懸命積極的に運転管理などをされているオペレーターの⽅もいらっしゃいます。そういう⽅はいろいろなデータを取っているかもしれません。あるいは、記録はしていないけれども「こういう時には、だいたいこうなります」など、ご⾃⾝の経験として蓄積されている
かもしれません。そうした熟練の技術者がいらっしゃるという話は聞いたことがあります。
――なるほど。
なかには研究的なことをやりたいという⼈もいらっしゃいます。実際、⾃治体の⽅でも、ご⾃⾝の私費で研究されている⽅がいらっしゃいます。私も知っている⽅で、横須賀にいらっしゃいます。
――それはすごいですね。では、そのデータはあまり使おうとしないのでしょうか。
データでもっといろいろな情報が引き出せるということを、たぶん認識されていないと思います。もしかすると「⾃分はやっている」と⾔う⼈がいるかもしれませんが、全体的に多くはいらっしゃらないと思います。
160

――では、オープンデータが必要などの段階にも⾏っていませんね。
そこまで⾏っていないと思います。
――ちなみに、窒素などいわゆる管理基準のような値があるかと思いますが、それはどのような経緯で決まっているのでしょうか。昔から決まっている値なのですか。
環境基準というものがあって、それを満⾜するために、国交省の計画がきちんとできています。略称「流総（りゅうそう）」と呼ばれる流域別下⽔道整備総合計画です。全体的な計画はそれによって決められています。その中で「この河川はどういう環境基準で、どのレベ
ルの環境基準にしないといけない」とされています。こうした計画を⽴案するような専⾨家
は、「流域ごとに考えるべき」という考えをもちろん持っておられます。ただ、個々の事業者は「ここではこういう基準で決められているから、それを守ります」という意識です。そもそも役所的な発想ですから、法律などで「こうしなければいけない」と決まればしっかりと守られます。
――私は環境基準についてよく知りませんが、おそらく環境基準も元々はデータか何かを基に決められているのですよね。
そうだと思います。⾏政のことは私も詳しくありませんが、単なるさじ加減ではないと思います。ただ⼀⽅で、全部を把握できているかと⾔うと、必ずしもそうではないと思います。
値は、⼈間の活動によって出る分もあれば、⾃然環境から出る分もあるのですが、その量をきちんと把握できていないと思います。ある調査結果はあるのですが、妥当性・信頼性は定かでありません。
――なるほど。
先ほどの「下⽔処理場がきれいにしているから漁獲量が減った」という瀬⼾内海の話も、「本当に下⽔処理場が原因か？」というクエスチョンがまだ残っています。ですから本当は、
⾃然由来のものも含めて、もっときちんとデータを取らないと有効な対策も取れないという話にもなります。
――本来はそうあるべきですよね。そもそも環境基準が決められて、それを守るためにこの基準を満たすべきという流れかと思いますが、その値⾃体が本当に適切かどうかも判断が難しいのではないでしょうか。しかも、それを満たすための管理基準も、どんぶり勘定で決161

められているのではないかと疑いたくなります。
どんぶり勘定が⼊っていると思います。環境基準があって、排⽔基準があるのですが、排⽔基準は環境基準の約 10 倍の値ですから。つまり、10 倍くらい希釈されるだろうということです。本来はケースバイケースにすべきはずなのですが、それがとりあえずの基準になっています。実は、ほかにもいろいろな問題があります。たとえば、COD という⽔質項⽬。
あれは学術的には何の意味もない指標なのです。
――えっ、そうなのですか。
COD には、CODMn と CODCr という２種類があるのですが、CODMn は汚濁物が 100あっても、100 と検知できないのです。状況によっては 20〜30 くらいにしかなりません。
ですから、研究論⽂で「CODMn を使いました」などと書くと、「こいつアホか」というよ
うな扱いを受けます。けれども、⽔質項⽬はマンガンなのです。ですから、⾃治体などはマンガンで値を測ります。
――乖離があるのですね。
ただ、それを変えるのは、おそらくかなり厳しいだろうと思います。もう何⼗年も、その指標が続いていますから。よほどの何かがない限り、あるいは⾏政か政治の偉い⼈がトップ
ダウン的に⾔わないと変わらないでしょう。いくら研究者が束になっても難しいと思います。⾏政には⾏政の領分がありますから。
――そうなんですね。
⽭盾や無意味なことがそれなりにあるということです。本来はそうしたことも、データを⽰してきちんとやればいいのでしょうが、実際に何かが動くのは問題が⽣じてからです。だから本当に、私の個⼈的な意⾒では、予⾒的に何かをやれるのはよほどのことがないと難しいのです。
――なるほど。いろいろと理解が進んできました。ここまでの話からすると、下⽔分野には、
データベースなど情報プラットフォームみたいなものは存在しないということでよろしいでしょうか。
現在はまだまあそういう段階です。情報を取ろうという動きはありますが、GAIA や BDASH などで新技術として実装化したいという思いがあり、国交省もそちらに研究開発費
162

を付けていますので。
――特にデータベースなどもあるわけではなく……。
まったくありません。逆にそこを早く主張すると、それなりの……。ですから全先⽣を巻
き込んで……（笑）
――産業分野でデータベースが本当に⼤事なのであれば、先⾏者利益を⼤きく取れる気がするのですが。
そうなんですよ。
――それに関連して、たとえば、だいぶ前の質問と少し被りますが、先⽣の専⾨分野である
下⽔などにおいて、たとえば「△△、□□みたいなデータを活⽤すれば、〇〇という問題が解決できるのではないか」とした場合、△△、□□、〇〇に⼊るような⾔葉は何でしょう。
将来的な内容でも結構ですし、実現可能性も考えなくて結構です。それぞれ２〜３個挙げていただけるとうれしく思います。
草昧のことを⾔うと、先ほどの「海の栄養塩が⾜りない」は上⼿にあてはまります。
――海の栄養塩？
栄養です。下⽔処理が進み、栄養塩除去を積極的にやっているがために、海⾃体が貧栄養になって⽣物⽣産性が少なくなり、漁獲量も少なくなったと、瀬⼾内海の漁業従事者は⾔っています。海苔の養殖も、やはり栄養塩が⾜りないので⼗分育たないと指摘されています。
――それは、どのようなデータを⾒れば、たとえば濡れ⾐かどうかがわかるのですか。
実は、ものすごくきれいな相関関係が表れているデータが出ています。下⽔処理場下の負荷量の減少と漁獲量の減少だったでしょうか、記憶が定かでありません。ただ、妥当性・信頼性は怪しいように感じられます。
――負荷量の減少というのは、要するに、あまり下⽔処理しなくても済むようにきれいな⽔だから、ということですか？
いや、きれいにしすぎたということです。負荷量というか、栄養塩の量のことです。
163

――下⽔処理場から出る栄養源のことですか。
栄養塩の「塩」とは、窒素、リンのことです。
――下⽔処理場から出る栄養塩の減少と漁獲量の減少……。
たしか、どこかのホームページ上のデータですから少し怪しいと思っています。ちらっと⾒ただけですが、すごくきれいな相関というか、経年変化でした。ただ、漁獲量の減少とそ
この⽔域にいる⽣物量の減少は直接的な関係ではありませんよね。何かの別の理由があって漁業ができなかったということも考えられますから。
――栄養塩の減少以外にも漁獲量が減少する理由はありそうですね。
いろいろあると思います。たとえば、栄養塩の周期的なものだったり……。
――栄養塩の周期？
⽣物としての⿂が増えたり減ったりする原因には、何かあるとは思います。ただ、栄養塩が少なくなるからすぐ⿂の量が減少して、しかも漁獲量にまで直結するかというと、どうでしょうか。冷静に考えれば、そこまでにはかなりのプロセスがありますから、因果関係をそんなに直に⾔えるかなあと疑問に感じます。おそらくいろいろなプロセスがある中で都合のいいデータだけを持ってきて、あたかも因果関係があるような図を出してきたのではな
いかと思われます。
――何か別のデータがあるかもしれないですよね。
それは⼗分にあると思います。
――では、ほかに何を⾒たらいいのでしょうか。たとえば、⾃然から出てくる栄養などは⾒ることできるのですか？
それはよくわかりません。
――そうなのですね。

164

海域に流⼊する量のうち下⽔処理⽔が⼤半かと⾔うと、そうではありません。おそらく半分ちょいくらいです。また、「本当に栄養塩が影響しているのか？」という疑問もあります。
ファクターはそこではないかもしれません。
――そうですよね。
ですから、そうしたところである程度の因果関係がわかれば、そうした問題が起こらず、
必要⼗分なことをやればいいということが⾒えてくるかもしれません。
――そうですね。ほかに何か事例はありますか。
もう実際にいくつかのメーカーがやっているのですが、今、いろいろなセンサーが出てきています。たとえばアンモニアなど、リアルタイムで測定できるセンサーが開発されています。
下⽔処理場の多くは、空気を送るエアレーションのための電気代が結構かかります。逆に、それを少し絞れば、電気代がかなり節約できます。ただ、そうしたセンサーの値をリアルタ
イムで把握すれば、かけるべきエネルギーの量がわかるのです。現状では、そのセンサーをすべて付けているわけではないので、過剰なエネルギーをかけて処理をしていることになります。処理場の従事者は、当然ですが、処理が不⼗分な⽔を出すことをものすごく嫌いますので、適切な数値がわからず「少なくともこれだけ⼊れておけば⼤丈夫だろう」とどうしてもオーバーワークになってしまいます。また、濃度は⼀定ではなく、⽇変動や⽇周期もあります。たとえば 10 万⼈くらいの下⽔処理場であれば、朝の 10 時前後がピークになった
り……。
しかし、センサーを使えば、下⽔に汚いものが⼊ってきた時は多くの空気を送り、あまり汚くない時は送る空気を絞ることができます。下⽔⾃⾝が汚くないので、それほど頑張って空気を送らなくてもいいのです。そういう制御ができます。その制御も、経験などに頼るのではなく、集めたデータを元にできます。現在、東京の町⽥などで実証実験をしています。
――空気を送ることを、エア……何とおっしゃいましたか。
エアレーションです。曝気とも呼ばれます。
――その曝気は、アンモニア以外でも必要なのですか。空気を送って処理をすべきものは、
アンモニアだけなのでしょうか。
いいえ、基本的には全部です。オーバーオールに⾒ると酸化処理ですから、酸化剤として
165

の酸素を必要とします。⾮常にざっくりと⾔えば、有機物が酸素を使って⼆酸化炭素と⽔になるという反応を起こしています。⽣物を使っているので酸素が要ります。詳しく⾔えば、窒素や酸素のコントロールもあります。
ですから、それをきめ細やかにすれば空気を減らす余地はあるのです。ただ、今まではセンサーなどがなく、過剰気味に⾏っていました。空気量を増やしたり減らしたりできない処
理場がまだあります。
以前、⼤阪府で溶存酸素計というセンサーを付けていたので、「これで制御すればいいじゃないですか」と⾔ったら、「これは酸素があるかどうかをチェックするためのセンサーで、空気量の制御はできない」と⾔われたことがあります。なぜ制御できないかというと、曝気する、空気を送る装置、いわゆるエアーポンプが１個しかなく、配管がその先で４つの池に分かれていて、⼿動でちょうど４等分になるようにバルブを調整しているのです。だから、１つの配管への量を変えると、ほかの３つも絶対バランスが崩れて、たくさん出る池と出なくなる池が⽣じてしまう。今は、微妙なバランスでうまく決めてやっているのだから、ちょこちょこ変えることは絶対無理だ。そう⾔われました。
――なるほど。
ですから、昔の装置を使っている処理場だと制御ができないのです。素⼈発想では、独⽴
した⼩さいエアーポンプを導⼊すればいいように思うのですが、そういうことができないのです。
――今回、GAIA で取り組んでいるものも、その⼀種ですよね。
まさしくそうです。
――そもそもの問題設定を忘れ気味になっていますが、先⽣としては、GAIA は最終的にどういう問題の解決を⽬指しているのでしたでしょうか。出てくる下⽔の質でしたでしょうか。
⼀つは、どういう操作の時にどういう結果が出ているかということを、過去何年間のデー
タで因果関係などを調べます。その現象はさまざまで、「これが起こるとこれが起こる」な
どが複雑なので、そういうパターンを認識させ学習させて、もし空気量を下げてエアレーシ
ョンを下げるとどれぐらいの処理数になるかということを求めます。実際の処理場でオペ
レーションをしているわけではないので難しいのですが、昨年、全先⽣に計算してもらった
ら、きれいな傾向が⾒られました。

166

――理屈はそうですね。今の話を聞くと、空気は中の微⽣物を元気にさせるためだったのですね。
そうです。われわれと同じ代謝です。だから、富⼠⼭のような酸素の薄い場所だと少しへたばりますし、空気を与えると元気になります。ただ、空気を与えるためにはエネルギーが必要でお⾦がかかります。あまり与えすぎず、必要⼗分な量をきちんと与えることができれば、少しでもエネルギーを削減することができます。
基本的に、下⽔処理場は市町村がやっています。
「もっと広い範囲でやらないといけない」というところは市町村単位ではなく県が⾏いますが、基本的には市町村です。そうした⾃治体では、最近「エネルギーをもっと削減しましょう」など CO2 削減対策をしていますが。
たとえば、県庁や市役所などの役所内や事務所では、こまめに消灯をこまめにするなどして、それなりに電気代を低減させる余地があります。しかし、先ほど述べたように、下⽔処理場
では装置的にもなかなか減らすことができない状況です。下⽔処理場は、⾃治体の中でも多くのエネルギーを使うところなので、それが削減できればかなりの効果があるのですが、現状のシステムだと削減できない状況なのです。ですから、改築・更新の時期に差し掛かっている今こそ、そうしたことに取り組めばいいのではないかと思っています。
――それをやるにしても何らかのデータによるエビデンスが必要なため、GAIA も重要なのですね。
そうです。そういう点でも⾮常に重要だと意味付けしています（笑）。
――ありがとうございます。お伺いしたいことはおおよそわかった気がします。お忙しいところたいへんありがとうございました。
付け加えますと、今までの話は下⽔の話でしたが、上⽔道は下⽔よりも早く整備されましたので、⽼朽化も下⽔以上に早く進んでいます。また、下⽔管が使えなくなっている箇所を⾒つけたいというニーズもあるのですが、地下に埋まっているためよくわからない状況です。そういうことをアメリカかどっかのベンチャーが……。
――何かやっていましたね。
はい。そのいろいろな情報、⽔道管の太さや管網など物理的な情報から計算して、どれだ
けの⽔量が流れている。あるいは、⽔道管が地中に埋められた地盤情報、たとえば⼟壌の情報などを⼊⼒して、おそらく過去のデータと照らし合わせて、機械学習によって「どういうところに埋設されているどういう状態の⽔道管が⽼朽化しやすい」などを抽出して、⼼当た167

りを重点的にチェック・修理するといい、というものもあるようです。
――はい、私も⾒ました。
たしか、カルフォルニアかどこかでやっているのではないでしょうか。
――⽇本でも最近やろうとしているようなことを⾔っていました。
そうですね。⽔道管はかなりいろいろな町ですでに完成されていて、毎年限られた予算しか取れませんから、同時に全部を更新できません。ですから、古いものから更新などをしていますが、⽼朽化が早く進む場所とそうでない場所があります。そういうことを⾒つけて、限られた年度予算の中で緊急を要するところを重点的に整備するなどに⽣かすいう話も聞いたことがあります。
――私もすっかり忘れていましたが、そういう内容を読みました。ありがとうございます。
ベンチャーみたいな企業はそういうことをできるのです。怒られるかもしれませんが、お役所はそういう発想が⾜りないように思います。
――そういうところはありますね。
ですから私は、やはりデータを取って情報を取って⽣かす余地がものすごくあると思っています。今後も先⽣のご協⼒を仰ぎます。
――ありがとうございました。

付.2. 岡村未対教授へのインタビュー――先⽣のご専⾨は地盤⼯学ですよね。最近、地盤分野において、さまざまな分野からデータを収集・連携して何らかの知⾒を⽣み出すような取り組みが⾏われているだろうと思いますが、どういったものがありますでしょうか。
実は私もあまり存じ上げていないのですが、説明のため、私のメモを画⾯共有させてください。
――はい、ぜひお願いします。
168

図−付１

岡村先⽣による共有資料

このメモには、よく聞くと思われるものについて、「対象」と「予測したい現象」に分けて羅列してあります。
「対象」としては、まず「斜⾯」が挙げられます。これは最近の災害がらみで斜⾯の防災ということです。それから、かねてからご相談している、河川堤防をはじめとする「堤防」です。堤防も斜⾯と同様、予測の精度が⾮常に悪いので、多くの崩壊事例の中から精度を上げる何かがないか、蜘蛛の⽷にもすがりたい思いです。
３つめは「杭基礎」。杭の基礎の性能評価は、実はもうかなり古くから⾏われています。
ですから、ある意味でかなり質のいいデータが揃っています。ほとんどの場合、杭を施⼯す
る前に地盤調査を⾏い、設計荷重作⽤時の沈下量、つまり上部構造物ができると荷重がかかって沈下しますので、その性能を評価できるのです。そうしたデータのノウハウは建設各社が保有していて、「このくらいの⾯積でこれくらいであれば、このくらいで⼤丈夫ですね」というデータをかなり持っています。ただ、データをオープンにしようという働きはあまり169

ありません。
次に「研究、実験データの蓄積」です。⽇本の地盤分野でも、細かいことはおそらくたく
さんされているのでしょうが、⼤きな動きとしてはあまりありません。しかし、さすがアメリカではデータを⼀⽣懸命活⽤しようとしています。論⽂集も、特に ASCE では出典デー
タの公開を半分義務付けているというようなことをずっとやっています。また、共同研究をしていますと、必ず同じフォーマットでデータを出してきます。これは、アメリカの⼟⽊系の防災データプラットフォーム、DesignSafe というものを彼らがつくっているからです。
どのように活⽤しているのかはよく知りませんが、この 10 年ほどはとにかく DesignSafeにさまざまなデータを蓄積していて、「ここに⼊れるから、フォーマットを揃えてデータを出せ」と必ず⾔われます。
ま た 「 災 害 調 査 結 果 の 蓄 積 」。 ア メ リ カ は GEER （ Geotechnical Extreme Events
Reconnaissance）という組織を作り、世界中の地震や台⾵，洪⽔等の⾃然災害の調査に調査隊を送っていて、そのデータもこの DesignSafe に⼊れています。このように、アメリカではさまざまなデータを⼊れようとする動きが以前からあります。
そうした中でもう⼀つ、最近着⽬しているのは、画⾯にお⽰ししたグラフです。これは液状化判定法のグラフです。⽇本においても、たとえば斜⾯崩壊でも、降⾬の強度、QL カー
ブなどというのがあり、指数がいくつになると崩壊するというものがあります。それと同じように、液状化判定法のグラフは、縦軸が外⼒、つまり地震の強さ、横軸が地盤のＮ値となっています。そうするとグラフのような関係になり、地震度が強くて曲線よりも上に位置す
ると液状化する、ということになります。
また、グラフでは、現地調査で「実際に液状化した」という証拠があるものを⾚点、液状化しなかったものを⽩点で⽰しています。理想的には、曲線を挟んで⾚と⽩が明確に分かれるとうれしいのですが、実際には曲線の上にも多くの⽩点があります。要するに、地震外⼒が強くて液状化するはずなのに、液状化せずに⽣き残っている地盤がたくさんあるということです。たとえば、Ｎ値が 20 で地震外⼒が 0.2 だと液状化するはずなのに、地震外⼒が２倍の 0.4 以上でも液状化しないケースがあるのです。そうした地盤をアウトだと⾒なしてしまうと、対策⽤のお⾦がもったいないので、以前からずっと液状化判定は続けられています。古くて新しい問題です。
ただ最近は「データの質が悪いからダメだ」「数じゃない、データの質だ」と⾔い始めていて、この数年は⼀⽣懸命「質への回帰」をアメリカ⼈がやり始めています。アメリカでは、こうした質も量も含めて積極的に⾏われています。
――「アメリカでは」ということは、⽇本ではされていないということかと思いますが、このアメリカのデータは世界の誰でも使えるのですか。
DesignSafe ですか？

これは登録すると⼀応使えるようですが、おそらく使える部分と170

使えない部分があって、必ずしもすべてオープンではないと思います。
――⽇本で同様の動きが出てこないのは、どの辺りが理由になっていると思われますか。
この間も⾔いましたが、東京⼤学の⽣産技術研究所で 1980 年くらいから⼩池俊雄先⽣がデータベースをつくっています。たしか DIAS という名称です。あれは⽴派だと思います。
ただ、地盤の分野であまり動きが出てこないのはなぜかというと、うーん……。
――少し視点を変えます。たとえば地盤の分野でデータが DesignSafe のように蓄積がされていると、何かに役に⽴つのですか。
問題の⼀つはそこですね。その部分の認識が、おそらく⽇本⼈は結構⽢いと思うのです。
⼩池先⽣の DIAS もまさにそうですが、なぜ、アメリカ⼈がそこまでデータを信奉して蓄積していく努⼒を⼀⽣懸命するのかを考えるべきです。⽇本⼈にはあれほどの熱意がありません。⽬先のことで役に⽴たなかったらすぐに飽きてしまう傾向があります。
――そうですね。
また、地盤の分野では、杭については、データ共有という意味ではまだ実現されていませ
んが、うまくいっている成功パターンだと思います。
しかし、斜⾯や堤防、特に堤防は管理者が国や県などの役所です。ですから、何か問題が⽣じるとすぐに瑕疵などの管理責任を問われるため、データをあまりオープンにしたくないという⽂化がずっと続いてきました。最近は必ずしもそうではありませんが、2000 年頃
まではずっとそうでした。建設省などは裁判で負けたりすると、殻のようにデータを出さなかったりしました。報告書や論⽂を出す時も、国交省から「事前に⾒せてください」と⾔われ、「都合の悪いことは困ります」という態度です。だから、今後使えるかもしれない正直なデータを皆さんにオープンにして⾃由に使おうという⽂化がないのです。そんな感じがします。
――地盤の分野で⾃由に使おうという⽂化があると、何か役に⽴つのですか。たとえば、⾏政がデータを完全オープンにした場合、最も改善されそうなところはどの辺りでしょうか。
それとも、実はあまり役に⽴たないのでしょうか。
私は、斜⾯にも堤防にもデータが役に⽴つだろうと思っています。
――斜⾯や堤防には、たとえばどのようなデータがあるのですか。壊れた、壊れていないと171

いうのは当然あるのでしょうが。
国や⾃治体が管理する道路脇の斜⾯については，道路の管理上，斜⾯カルテが整備され点検結果が蓄積されています。それ以外ですと，斜⾯には国有地もありますが、私有地が多い。
そうした私有地のデータは全然ありません。斜⾯の傾斜や植⽣など、空から⾒えるような衛星データはもちろん多くあるのでしょうが、それ以上のデータとなると……地上のデータもありません。
――ちなみに、これは別件で後ほど相談しようかと思っているのですが、斜⾯の崩壊は何が計測されていればわかるのですか。たとえば、三次元点群か何かを押さえていればわかりそうなものなのですか。三次元点群とＮ値、ほかに降⽔量などですか。
抵抗⼒については、地形、つまり斜⾯の形状と、Ｎ値でも何でもいいのですが地盤のデー
タがあればわかります。ほかにもちろん、⾬の量などの外⼒も必要になりますが。
――抵抗⼒はそれでわかるのですか。
はい。
――ただ地盤情報は、ボーリングデータもそれほど密に取られていませんよね。
密にどころか、⼭をボーリングする⼈はいません（笑）
。
――そうですね、あまり使い途がありませんね。
はい。
――では、ボーリングデータ以外はどうしたらいいのですか。
⼭の場合、すべてを調べるのではなく、⾕に近いところだけを重点的に深く調べるのです。
⼟砂が⾕を下っていくわけですから。ただ、⾕から離れているところから深層崩壊のように⼤きくドーっと滑ってくるようなところは、なかなか調べきれていません。
――では、全⾯的なボーリングデータが取られていて、三次元形状がわかっていれば、わかるものなのですか。

172ほぼわかると思います。
――逆に、ボーリングデータが取られていない場合、何か代替となるようなデータはあるのですか。
現状ではありません。斜⾯崩壊はある⼀定の期間の再現現象で、⾵化が進み、50 年か 100
年経って表層が分厚くなってくると重くなって滑るわけです。そして、滑った後はツルツルの岩盤が出てくるので、表⼟がありません。斜⾯崩壊はその繰り返しの現象です。ですから、
表⾯の⼟の厚さ、表⼟がどのくらいあるかだけでもデータがあれば相当違うのですが、たとえば３年前に滑った場所では、もう滑る⼟はありません。たとえ 1000mm もの⾬が降っても何も起こりません。
――なるほど。そういうものなのですね。勉強になります。
傾斜の激しいところであれば、もっと短いスパン、たとえば 30 年に１回滑ったり、⼟が薄くて滑ったりするかもしれません。傾斜や⼟の厚さなど、いろいろな相関があります。ただ、そうしたデータさえあれば、おそらく予測はできます。ですから、価格の安いセンサーを⽇本中に取り付ければ、おそらく予測ができるようになるでしょう。IoT ならぬ、Io ジオ
テクニカルと⾔えるでしょうか（笑）。
――堤防はいかがでしょうか。たとえば、堤防で予測したい現象として崩壊現象があるとした場合、どういうデータが寄与するのでしょうか。
⼟の内部の⽔の状態です。堤防も、湿った状態では硬いのですが、⽔を吸ってしまうとブヨブヨに軟らかくなって破堤します。だから⽔を吸わせてはいけないのですが、表⾯の舗装にところどころクラックが⼊っていて、そこから⽔が⼊ることがあります。道路に⽔が⼊るとそこから傷むのと似たようなものです。弱部あるいは表⾯の地形などにより⽔が集まりやすいところは、だいたい崩れます。
――堤防はそんなに崩れるものなのですか。
頑張ってはいるのですが、崩れます。たとえば、たしか⼀昨年の東⽇本の台⾵の時は、140ヵ所で破堤しました。
――そんなに破堤しているのですね。

173

140 ヵ所と聞くと多いと感じるかもしれませんが、関東から東北にかけて⾄る場所で越⽔し、越⽔の延⻑が何百キロもある中で、たった 140 ヵ所で済んでいるのです。破堤の延⻑としては合計１キロか２キロもないのではないでしょうか。相当頑張っていると思います。
――なるほど。
イメージとしては、10 キロにわたって⾮常に⼤きな外⼒が作⽤すると、その中で１ヵ所が破堤するという感じです。けれども、１ヵ所でも破堤すると被害が⼤きいので、管理者には堤防の更なる信頼性の向上が求められます。
――堤防の内部の⽔分量は測られているのですか？

測られていないのですか？

測られていません。
――そうすると、今はまったく予測不能な状態ということですか。
そうです。
――なるほど。
堤防は、基本的に形状規定で作られています。
――形状とはカタチのことですか。
⾼さとのり⾯勾配。「のり⾯勾配が２割以上，余裕⾼を 1,2m 設けるといったように。
しかし、ようやく 2000 年ころから「それだけではいけない」ということになりました。
そして、１キロか 500ｍに１本くらいのボーリングを全国で実施・評価して、「この辺りは危ないから対策を考えましょう」など、ということをやっています。ボーリングを⾶び⾶びにしているので、間の部分の状態はもちろんわかりません。
――そのボーリングで調べたのは、⽔の量ですか？

それとも別の地質情報ですか。

地質の情報です。たとえば、⾬が降ったら⽔が⼊りやすい砂っぽい成分なのか、基礎地盤から地下⽔が湧いてきそうな地質か、などです。ただ、所詮数百 m から１キロに１ヵ所で
すから。

174

――１キロに１ヵ所で⼗分なのですか。
いやいや、まったく⾜りません。１キロ先は⾁眼で⾒えないほど遠いですよ。その間にどれだけ悪い箇所が潜んでいるのだろうかわかりません。
――所詮、点的な計測で、倍にしても 500ｍですからね。
そうなんです。物理探査もある程度実施されてはいるのですが、⾒たい内部⽋陥のスケー
ルが違いすぎます。本当は堤防にパイピングで⽳が開くなど、センチメートルから何⼗セン
チメートルの⼤きさの⽋陥を⾒つけたいのに、物理探査や１キロに１本のボーリングでは。
⾮常につらい現状です。それでも連続的な地層分布が把握できるという点では物探も重要なツールですが。
――私は専⾨外なのでわかりませんが、「データ収集の問題点」と関連して、堤防で１キロおきにボーリングすることは、筋のいい話なのですか。今の話だけを聞くと、たとえばそのシステムに 100 倍のコストをかけてもまともな調査になるのかどうか疑念を抱くのですが、そもそも筋のいいアプローチなのでしょうか。
そう⾔ってしまうと元も⼦もないのですが、形状規定で「中が何であろうが、形があればいいよ」という段階から考えれば、⼒学の観点が⼊ったという意味では⼤前進だと思います。
――それは同意できるのですが……。
しかし、１キロに１本のボーリングでどれだけ実際の予測精度が上がるのかという点では、今のところは筋が悪いと⾔わざるを得ません。たかが１キロに１本ではありますが、ほぼ全国ですから使った予算は膨⼤で、その割に⾶躍的に精度が上がったというわけではありませんから。でも、向かうべき⽅向性は、やはり⼒学を⼊れていくベースでやるしかありません。
――その点は極めて同意します。
⽅法はともかく、⼒学を⼊れる⽅向でデータを取っていっていくしかありませんので、私は「筋が悪い」と⾔いたくないのです（笑）。
――「筋が悪い」という表現が不適切でした。私も、⼒学に⾏くという⽅向性はいいと思っているのですが、⼀⽅で、ほかの⽅法は考えられるのだろうかとも思うのです。地盤の情報
175

を調べるために、たとえば⾯的に測る、あるいは線的に測るような技術があればいいのでしょうが……。その技術がなければ、それ⾃体が問題点になりますよね。
それはそうですね。⼤量のデータが集まってくると、データドリブン的に何かが画期的にわかってくるかどうか、その辺りの道筋は、はっきり⾔って私にもよくわかりません。では
なぜ、たとえば斜⾯や堤防に関するデータを集めなければいけないと思っているかと⾔うと、データドリブンももちろんそうですが、学問・学術の進歩のためです。
現状、たとえば今国交省では、堤防の中の⽔について数百 m から１キロに１ヵ所、「こんな計算をして、安全率が⼀定値以下の箇所には表⾯に遮⽔シートを張るなどの対策⼯をしなさい」などのような照査・点検・対策を⾏っています。そして、災害が起きるたびに、「わ
れわれの点検法では安全率 1.2 だったが、たまたまここの地点は 0.9 だったのでアウトになった。これで説明がつきます」というような、お役所的に瑕疵責任を問われないような説明ができる報告書がダーッと出てくるわけです。お役所的にはそれで結構なのでしょう。しかし、学問・学術の進歩の⾯では、もう少しきちんと正直なデータが蓄積されていないと、新
たなアイデアがある⼈が検証の材料として使おうとした時にせっかくのデータが役⽴ちません。質のいいデータをとにかく蓄積していく必要があります。崩壊にはおそらくさまざまなパターンがありますので、信頼できるデータをなるべくたくさん蓄積していきたい。そういうデータの蓄積もしたいという思いが、⽚⽅にあります。
――極めて同意します。それこそ DesignSafe の液状化の話のように、まず「データを集めればいいだろう」と始めて、次に「質が悪いから何もできない」と質への回帰がなされるのは、極めて⾃然なことで、同意します。そういう意味では、今⽇お伺いした内容は質問の意
図を満たしている気がします。
とりとめのない話でたいへん恐縮です。斜⾯は、⾬が降って崩壊します。堤防は、越流をして表⾯が削られたり、あるいは下から⽔が通ってパイピングしたり、いくつかのパターンが複雑に絡み合っています。そうしたいろいろな被害パターンを知りたいと思っています。
――なるほど。
斜⾯については、先ほど全先⽣が「Ｎ値がたくさんあればわかるのですか」とおっしゃった通り、確かにそうなのです。もちろん細かく⾔えば、地盤にはさまざまな層があって、「この地盤はたまたまこの途中に⽕⼭灰の層があったから、ここが何か悪さをした」など特殊な事例もありますが、そうした地盤の層状の構造も含めて、データさえあれば斜⾯の安定に関してはかなりわかります。もちろん、「⼭の上のほうから、どこかの⽔が伝わって、たまた
まここから出てしまって壊れた」というような特殊事例もあり、全部を説明できるわけでは
176

ありませんが。かなり体系的にわかるはずです。
⼀⽅、堤防のほうは、果たしてどういうメカニズムで壊れているのかがよくわからない点がありますので、どこでどのようなデータを取れば本当の解決につながるのかもわかりません。そうした苦しさが依然としてあります。
――そうですか。そういえば以前、先⽣が東京にいらっしゃった時、災害が起こった時にデータがどうのこうのという話をされていました。あれはどのような状況なのでしょうか。
すでに動かし始めました。あの時にお話ししたことは、たしか⼆つです。まず、なるべくたくさんのデータを取りに⾏くためマンパワーが必要なので、とにかくたくさんの⼈にコミットしてほしいということ。それで最初は、スマホを⽚⼿に LINE で簡単に写真を撮りな
がら、「この程度の報告をしてくれるだけで災害調査団の名称を与えます」みたいな、軽いトーンから⼊りました。その上で、「もう少しきちんとした被害調査をなるべくたくさんの地点でして、データを取りましょう」と⼆段構えにしました。それは地盤⼯学会で動かし始めています。
ただ実は後半部で、どういうデータを取っていけばいいのかと悩んでいます。取れるデー
タはなるべく全部取ったほうがいいのでしょうが、なかなか難しい点もあります。そこは皆さんといろいろ知恵を絞りながら、どうしようかと考えているところです。
――⽐較的、地盤よりわかりやすいかもしれないインフラにおいても、結局どういうデータを取ればいいのかわからないということは頻発する問題です。もちろん、全部のデータは取れませんので。ですから、さらに不確定性の⾼い⼟の場合は、もっと難しいことがあるのだ
ろうなあと想像します。そういう話だけでもすごく助かり、勉強になります。
「それを東⼤の⽣研の DIAS にどんどん⼊れてくれていいですよ」と⾔っていただいているのですが、彼らはデータの専⾨家なので、彼らの話のレベルについていくのが⼤変です。
こちらがまだまだ勉強しないと会話がなかなか成り⽴たないシチュエーションも多くあります。でも、先ほどお話ししたように、将来の検証材料も含めて、さまざまなデータがプラットフォーム上にあって、スススッとタグ付けされて出てくるような形にしたいわけですよね。そういうデータの蓄積の仕⽅もわれわれはよくわかっておらず、今後勉強しなければいけません。
――データ管理の仕⽅は、特に私はたいへん弱く、誰も教えていないし、誰も勉強していな
いように思います。今⽇はいろいろな話をお聞かせいただき、最初の質問に対しても聞きた
かったことをほぼ聞かせていただきました。オープンデータのお話もしていただきました。

177

データはオープンにしたほうがいいと思います。ただ、どうするのか。すべてオープンにするのがいいのですか。
――いや、わかりません。
先ほどお話しました国交省の⽴場のようなこともありますし……。
――場合によってはテロにも関係するかもしれません。
そうですね。洪⽔の時に利根川の弱点箇所にミサイルを撃ち込まれたら、東京は終わってしまうかもしれません（笑）。
――インフラでも、弱いところにボーンとやられたら落ちますね。⼀⽅で、⼼配のしすぎというか、それはこちらの範疇ではないという観点もあります。
たしかに。本当に使いやすいデータがふんだんにあると、世界中から研究してくるかもしれませんね。
――おそらく、そちらのメリットのほうが⼤きそうな気はします。
いずれにせよ、⼟⽊がデータの勉強をあまりしていないことは、まさにその通りだと思います。その辺りを勉強するにはどうしたらいいのでしょうか。コツコツ努⼒するしかありませんね。
――そういう教科書でも書かなければいけないかなあ思っているほどです。
それはいいですね。
――⼟⽊の⼈間からそういうことをしないといけないのではないかと思っている次第です。
付.3. ⽵⼭智英准教授へのインタビュー――地盤のデータについて，現在どういうものがあるのでしょうか。
地盤ではやはりボーリングデータが一番に来るかと思います。

178

――ボーリングデータに関して、データを集めて何らかの知見を出そうとする取り組みはあるのですか。先生や先生のグループはすごく積極的に取り組まれているようなイメージがありますが……。
我々のグループでは、ボーリングデータを集めて何をするかと言うと、地盤モデルを作ります。たとえば、地盤モデルを作って数値計算をするというようなことです。
――ボーリングデータを集めて地盤モデルを作る際、ボーリングデータは簡単に手に入るものなのですか。
ご存じかもしれませんが、「KuniJiban」というサイトに上がっているものは簡単に手に入ります。誰でもクリックすればダウンロードできます。ただ、数は多くありません。
――もちろん場所によるかと思いますが、密度的にはどれくらいなのでしょうか。
場所によります。東京は結構あります。ただし、国交省管轄の工事のデータですから、国交省の工事に関わるところしかボーリングデータが上がっていません。また、幹線道路沿い
や、河川堤防を造るときの河川沿いなどの線状のデータは結構ありますが、まんべんなく広がっているという感じではありません。
――（「KuniJiban」に上がっていない場所で、）先生がたとえば研究で地盤モデルを作りた
いと思うことはないのですか？
あります。そういう時には、国だけではなく、地方自治体の持っているデータをいただくなどしています。東京都の場合は共同研究の形でデータをいただきました。
「KuniJiban」に上がっているデータよりもかなり密でした。
また、神戸であれば、「神戸 JIBANKUN」というウエブベースのものがあります。
――では、それこそインフラデータプラットフォームのようなものが必要なわけですね。
はい。インフラデータプラットフォームに、国のデータだけでなく、地方自治体のデータが紐付けされていると非常に便利になります。
――そうですよね。
――そもそもボーリングデータには、どのような情報が入っているのですか？
179基本的には場所。また、坑口の標高。あとは、Ｎ値、土質の分類、たとえば砂や粘土などの情報です。
――よくある柱状図のようなものですか。
そうです、柱状図をイメージしていただければわかりやすいと思います。
――そういったデータは、たとえば「KuniJiban」であれば、Excel 形式で入っているのですか。それとも図面か何かですか。
XML です。それをおそらく自動で処理した柱状図の PDF も置いてあります。両方が置いてあります。
――「KuniJiban」以外のところはいかがですか。
ほかのところも基本的に XML です。
――では、フォーマットはだいたい統一されているのですか。
バージョンがいろいろとあるのですが、だいたい統一されています。
――大変参考になります。それはきっと、データを集めて何らかの知見を出そうとする取り組みですね。
そうですね。
――ありがとうございます。先ほどのお話と関係しますが、データが必要であろう問題に対して、収集時に不都合が生じることはありますか。
不都合があるのは、ボーリングデータではやはりデータが足りないということです。簡単に手に入るデータは足りません。加えて、ボーリングデータにはＮ値や土層区分くらいしかないものが多くあります。ほかにも、たとえば土の密度（または単位体積重量）も必要です
し、計算しようと思ったら透水係数も必要、圧密試験も必要です。でも、現状ではありません。

180

――そういうことを知りたい場合はどうするのですか。
お金をかけて室内試験するしかないのですが、そこまでやっているのが少ない状況です。
――たとえば、ほかのところでＮ値や土層区分がわかっているものの室内試験をした結果があるとした場合、そうしたデータはオープンにされるものなのですか。
われわれがやっていることは、Ｎ値とほかのパラメータとの相関のようなデータをたくさん集めて、「Ｎ値とこのパラメータはこのような関係です」みたいな経験式（計算式）を作って、それを基にほかのパラメータを推定するというようなことです。
――そうしたことは地盤屋さんの中では一般的で、誰もがするようなことなのですか。
そうですね。たとえば、ヤング率とＮ値のようなものは基準にも書かれているくらいですから、よくあります。「Ｎ値からいろいろと推定します」ということは一般的です。
――でも、直感的には、Ｎ値と土の種類がわかったら透水係数などもある程度……。
透水係数は厳しいのです。Ｎ値は「何回叩いたら 30 ㎝沈むか」というようなものですの
で、強さや硬さには関係がありますが、透水性とはあまり関係がありません。
あと過圧密比は地盤の荷重履歴を表すパラメータなのですが、先ほどお話しした、叩いた
Ｎ値を調べてもよくわかりません。
――その辺りが全然わかりませんので勉強になります。「収集に不都合がある」ということは、たとえば透水係数のようにそもそも測っていないということと、必要なのにデータを揃えていないということの、２つを意味していますよね。
そうですね。
――でも、透水係数はきっと必要なのですよね。
はい。
――

一般的な建物を作るなどの場合も必要でしょうか。

そうした場合や、たとえば「ダムを造る」というような場合は詳細に試験しなければいけ181

ないので、そういう時には試験をしているはずです。
――これまでのお話ですと、まず、簡単に手に入るデータが足りない。一方で、フォーマッ
トは統一されている。ただ、たまに違うこともある。必要なデータがあったりなかったりす
る。データについてはそのような状況でしょうか。
はい、そうですね。
――「KuniJiban」はオープンデータ扱いなのですか。
誰でも見れますからオープンデータではないでしょうか。
――そういったオープンデータの必要性や重要性があると思うのですが、なぜオープンにされないのでしょうか。
なぜなのでしょう。
――たとえば、自治体はなぜオープンにしないのですか。
しているところもあると思いますが，システムを作ることなどにお金をかけられないか
らではないでしょうか。たとえば試験をして、そのボーリングをデータにするということにも結構お金がかかるようです。そうやって調査してデータ化したものを共有してくれたら役に立つと思います。
――そうした知見の共有が可能になれば、重複した業務、たとえば周りに建物を建てる時にも使えるかもしれません。
その通りです。
――お聞きしたかったことはそのくらいでしょうか。今回、いろいろな分野の人に聞いてるのですが、「データなんて使ったことがない」というか、「重要性はわかるけど使えない」という人が多い状況です。
「そうだなあ」と思っています。自分の分野のこと、構造物の維持管理を考えても、「そうだなあ」と思っています。
こんなことを言うと身も蓋もありませんが、やはり、土木の構造物は単体物だからではな
いでしょうか。
182

――私もそうだと思います。一品生産なので、機械と比べてデータを集めることのメリット
が見えにくいというか、大量のデータを集めないとメリットが出てきません。機械であればある程度同じようなものをたくさん作りますので、データを集めるのも短期的な効果がありそうですが、土木はなさそうですから。
そうですね。
付.4. ⼀⾔正之様へのインタビュー――基本的にメールに書いたとおりですが、河川工学分野での現在のデータの扱いや、特に構造分野以外でどのような状況かを知りたいと思い、インタビューさせていただきます。
はい、わかりました。私の分野は水文や河川になると思いますが、私の話せる範囲でお話しします。
たとえば水文の解析などをしようとすると、AI などに限らず、必ずデータが必要になります。まず、地形データから始まり、土地利用、水文データ、降雨のデータ、観測水位、観測流量などです。また、地形と言っても標高データもあれば、河道断面の測量データもあります。そうしたデータがたくさん必要になります。
データの情報源は、プラットフォームというほどではありませんが、一つには国土地理院の情報公開があります。たとえば今、基盤地図情報などでほぼ全国を対象に、５ｍか 10ｍの解像度で標高データが手に入ります。また、土地利用や水域のポリゴン、河道のライン情報なども基本的に国土地理院が公開していて、それが今のところ、プラットフォームの一つになっているかという状況です。
ただ、まだまだ足りないものも結構あります。最近は三次元点群データのようなものがありますが、たとえば河道断面の測量データや LP データなど、国交省の河川事務所が独自に調査しているようなものはなかなか公開されません。特に河道断面は、河川の分野でかなり重要になることが多いので、一番物足りないと言いますか、ネックの一つになっているかと思います。
また、水文データに関しては、国交省が観測している雨量データと水位データに関する「水文水質データベース」というデータベースがあり、基本的にはそこでほぼ全部を見ることができるようになっています。これも一つのプラットフォームです。ただ、これもまだ完
璧ではなく、実際には 10 分ピッチで観測されているのですが、公開されるのは 60 分ピッ
チでしかありません。
――それはどうしてなのでしょうか。

183

私の聞いたところでは、１時間データについては、事後に専門家が水文照査をして、「このデータは間違いないね」「この期間は工事の影響で少しおかしい」などときちんとチェッ
クをしてから公開することになっているようです。ただ、10 分ピッチまでは照査しきれないということで、１時間データまでだけを掲載している状況です。また、そもそも 10 分データは保管せず、もう残っていないということもあるようです。
――10 分ピッチのデータについては、ある程度はサーバか何かに残っているけれども、公開していないということでしょうか。
そうですね。公開はされていません。数年分くらいは残っていることが多いのですが、それ以上は残っていないことも少なくありません。
――専門外なので筋違いな質問かもしれませんが、結構なデータ量ではありませんか。
結構なデータ量ではありますが、たとえば三次元標高データなどに比べれば、それほど大したデータ量ではありません。
――河川によって異なるでしょうが、いわゆる大河川の場合、だいたい一つの河川でどれくらい計測しているのでしょうか？
利根川や信濃川のような大河川では、数百や 300 くらいです。
――たとえば 300 とすると、10 分ピッチなら 150 くらい。ということは、300 を掛けると45,000 くらいですか。
はい。
――桁が 45,000 くらいなら、それほど大したデータではないのですか。
そうですね。現時点ですでに 60 分ピッチが公開されていますので、それが６倍になるという計算ですが……。
――直感で言うと、データ量としてはせいぜいテラくらいですか。
おそらくそうだと思います。テラまで行くかどうかというくらいだと思います。

184

――そのサーバの管理は、国交省がやっているのですか。国土地理院ですか。
水文水質データベースは国交省です。
――別件で愛媛大の森脇先生という水の先生にばったり会った時に伺ったのですが、河川は結構データが公開されているようですね。
そうですね。かなり進んできてはいます。
――河道断面が公開されないのはなぜでしょうか。ただ単に、河川事務所が公開するのが手間がかかるからでしょうか。
そうだと思います。公開する理由がないのだと思います。
――なるほど。手間を除けば、別に公開して困るものでもありませんよね。
困る理由は、私にはわかりません。
――河道断面が知られたところで何もできないですからね。
そうですね。
――危険性はなかなかなく、テロなどもできないですからね。
そうですね、ちょっと考えられないと思います。
――では別の質問です。一言さんは、いろいろと機械学習や強化学習をされていますが、たとえば「こんなデータがあればいいのになあ」あるいは「データの成形がものすごく必要になっている」というようなことはありますか。
そうですねえ、うーん。そこについては特にありませんね。
――それは素晴らしいですね。
水位や観測データが時系列に並んでいるだけですし、地形データもせいぜいラスターかベクターで並んでいるくらいですので、構造の分野と比べればかなりデータは統一されて185

いるのではないかという気がします。
――それはいいですね。また、これは別件ですが、最近、ダムの操作の話をされていますが、ダム系のデータは出るのですか。
国が管理しているダムについては出てきます。それもだいたい、水文水質データベースに載っています。
――そこで質問が二つあります。データが揃っていて公開されているのに、いわゆるプラッ
トフォーム的なものはあまり聞かれません。
プラットフォーム……そうですね。
――プラットフォームにまとめたらきっと便利ですよね。
そうですね。ただ今のところ、水文水質データベースと国土地理院のデータベースがかな
り整っていますので。
――その二つだけなので、別にプラットフォームにする必要がないということでしょうか。
はい。また最近、東京大学で DIAS というものに取り組んでいますが、DIAS に集約しようという話は一応聞いてはいます。
現状では、レーダーの雨量などが DIAS に集約されています。ですから今のところ、プラットフォームが三つあるような感じになっています。国交省と国土地理院と DIAS。
――なるほど。もう一つの質問ですが、私から見ると非常にうらやましい話に聞こえるにもかかわらず、一言さん以外から、あまりデータドリブンのアプローチをしているという話を聞きません。
そうですか。いや、意外とそうでもなく、最近になってデータドリブンでやっている方がかなり増えました。
――最近は増えつつあるのですね。
ええ。まず、民間の競合が飛びついてきて、比較的すぐにキャッチアップしてきました。
ほかには、たとえば首都大学の河村明先生や、室蘭工業大学の中津川先生などです。
186芳村先生のところも取り組んでいます。芳村先生ご自身はそれほどやっていらっしゃらな
いと思いますが、学生さんがやっているのかもしれません。
――そうですよね。関係する論文を見ているのですが、なぜ一言さん以外はあまり取り組ん
でいないのか不思議に思いまして。それで話を聞くと、「データはそれなりに揃っている」と森脇先生も言っていましたが、そんなうらやましい状況でなぜやらないのかなあと思っているのです。すでに取り組んでいる一言さんに質問しても仕方がないのですが。
私が民間の立場で論文を書けているのも、やはりある程度データが公開されているからだと思っています。データが出てこなければ、民間は手も足も出ないことになりますので。
ちなみに、データドリブンはこの１～２年で本当に増えています、水工学でも。
――この１～２年でようやくですか。
水工学では最も大きい水工学講演会というものがあるのですが、昨年 11 月の水工学講演
会でも、深層学習による水文分野の何かの研究のようなセッションができていました。
ほかに、普通のセッションの中でも、機械学習の研究、アプローチがかなり増えています。
――それだけデータが揃っていたら、そうなるのが自然というか……。
そうだと思います。
――データプラットフォームの重要性について今お伺いしましたが、今は必然的にオープンデータが存在しているということですよね。
はい、そうですね。
――逆に、オープンデータがないと何が困るのでしょうか。
オープンデータがなかった場合ですか。
――たとえば、水文水質データベースが存在しないと、河川の分野では何が起こるのでしょうか。
私たちのような民間のコンサルタントの立場では、発注者や河川事務所などの経由でデータをもらえますので、ひと手間は増えますが、特に何も……。
187

――研究ベースとしてはいかがでしょうか。
研究ベースとしては、かなり不都合になるかと思います。
――データドリブンの研究以外の目的にも、たとえばモデルの研究などでも、こういったデータを利用されているという認識でよろしいのでしょうか。
はい、そうです。物理ベースのモデルでも、たいていは国土地理院や国交省のこうしたデータを使っています。
少し話がずれるかもしれませんが、河川には、最後の壁となる気象業務法という法律があります。たとえば「オープンデータができて、洪水予測ができるようになりました」という状況になっても、気象庁がストップをかけて、民間は勝手に公表してはいけないということになっているのです。
――何を、ですか。
洪水予測などです。省庁以外の組織が勝手に洪水予測をしてはいけないということになっているのです。
――え、どうしてですか。
国民を惑わせるから、ということだと思います。
――なるほど、たしかに。占い師みたいに。
そうです。そこはずっと岩盤規制があって、ようやく昨年、今年くらいから、気象庁以外にも門戸を開いてはどうかという議論がスタートしたところです。
――なるほど。たいへん参考になりました。ありがとうございます。
いえいえ。
――河川などの専門の人、たとえば森脇先生に聞くと、「え？
ろう」みたいな反応になります。

188

データはオープンなものだそうですね。あと残るのは、事務所でやっている測量データなどでしょうか。また、洪水の時には浮子などを投げて記録して流量観測などもやりますが、そうした生データのようなものはやはりありませんね。
――それがないのは、その場でデータを取って公開する仕組みがないからか、それとも、公開するのを嫌がる人がいるからでしょうか。
おそらく仕組みがないのだと思います。
――おっしゃるとおりなのだと思います。ありがとうございました。

付.5. 森脇亮教授へのインタビュー
水文学や気象学の分野では、現地での観測データをシミュレーションにデータ同化する
ことは既に行われていますし、今後も行われると思います。ルーチンで観測されている川の水位や気象データはデータ同化として用いられていますが、今後さらにデータが増えれば増えるほど、さまざまな種類のデータ、あるいは大量のデータをデータ同化するためのいろ
いろなアイデアが出てくるだろうと思います。
――具体的な問題としては、どのような問題があり得るのでしょうか。
たとえば、水文学系では河川水位などです。
――水位予測ということですか。
水位を予測するモデルに、水位の実測データを同化させるということです。それは、すでに実務レベルでも運用されているようです。
――水位予測にはどのようなデータが必要になるのですか。
現在時刻までの水位です。
――ほかに、降水量などですか。
降水量に関しては、データ同化という意味では必要ありません。降水量に関しては、河川
水位の機械学習的なアプローチで使われます。
189

――物理的なモデルで、インプットは何で、アウトプットは何でしょうか。インプットが水位ですか。
降雨流出モデルでは、インプットは雨で、アウトプットは河川流量または河川水位です。
ただ、河川のある区間を切り取ってその区間の河川の流れを扱う場合は、その区間の上流端での流入流量と、下流端での水位が境界条件として必要であり、つまりインプットであり、アウトプットは任意地点の川の水位や流量になります。
――なるほど。
ですから、水位はアウトプットです。そのアウトプットされた水位の実測データがあれば、過去における予測データから出てきた水位と、実際にその時点で測られた水位とを比べて、データ同化をして結果を少し補正します。データ同化とはそういうことです。
また気象予測では、さまざまなものがデータ同化に使われています。たとえば GPS 化降水量が挙げられます。GPS の電波は衛星から地上に到達するまでの間に大気中で遅延します。
その遅延量が、水蒸気の量によって変わるのです。ですから、その情報を使って、伝播の遅延量から大気中の水蒸気を求めることができます。それを「GPS 可降水量」と言います。GPSの観測点は多地点にあり、そこから常にデータが集まってきますので、全国の大気中に含まれる水蒸気の量などがすぐにわかってしまうのです。そういったものを気象予測のためのシミュレーションにデータ同化すると、気象予測の精度を上がると言われています。すでに気象庁が使っている数値シミュレーションに組み込まれているようです。
――そうなのですね。初めて聞きました。
今お話しした GPS 可降水量以外にも、たとえば衛星データや気象レーダーの情報を使え
ば上空の雲や雨のデータも得られるので、様々なデータがデータ同化に用いられていくものと思います。
――そういったデータ連携のようなことをして作ったデータをたくさん集めて、何をするのでしょうか。機械学習ということですか。
データ同化により数値シミュレーションの精度を上げることができると思いますし、機械学習の学習データとして活用できる可能性も十分あると思います。
河川の話に戻りますが、最近は豪雨災害が多くなってきたため、中小河川にも水位計をた
190

くさん設置しようという動きがあります。安価に設置できて電源の必要もなく、水位が高くなってきた時だけ水位を観測して携帯電話の電波で送るような「危機管理型水位計」というものです。そうした水位計が増えてきているので、それらのデータが活用されて河川水位の予測精度が上がることが期待されます。
――なるほど。今お話しいただいた例でも別の例でもいいのですが、「こういったデータがあればもっと精度が上がるのに取りにくい」というような事例はありますか。
今は低料金の通信サービスも充実してきていて、スタンドアローンでセンシングデータ
をリモートで確認できるようになってきていますので、以前に比べると障害はかなりなくなってきているように思います。
ただ、本質的に取りにくいデータはあります。たとえば、風です。風は、地上でデータを取ろうとしても、周辺の建物の影響を強く受けますので、強さも向きも正確に測れないのです。ですから、建物の影響を受けない、建物より十分に離れた上空で測らなければいけません。そういう意味で風は測りにくいですね。
――ほかの分野では、データの隠蔽体質があってデータを出さないという話がよくあります。水文分野でもそういった話はありますか。ウェザーニューズなどはすごくデータを囲っていそうですが。
どうでしょうか。私が経験した中で言えば、太陽光パネルのデータは日射量データに近い
ので活用できると期待しているのですが、公共機関に設置されている太陽光パネルのデー
タをくれと言ってもなかなか出てきません。そもそも時々刻々のデータを残していないというのもあるのですが、別の理由もあるようです。
――それはなんですか。
太陽光パネルは、次第に劣化したり、壊れたり、停止したりする時があります。そうしたことがリアルタイムにオープンになってしまうと、きちんとメンテナンスをしていないじゃないかなどいろいろな管理責任を問われるからです。そういう意味で取りにくいデータはあります。
――よく考えたらインフラの維持管理でも一緒の話ですね。
はい、インフラの維持管理と似ているかもしれません。
191

――ミスだと見られたくないという話ですよね。
はい。気象データにもそういう話があります。気象庁のデータは人が相当な手間をかけて
メンテナンスしていますから質として保証されているのですが、それ以外の放置されている気象センサーは次第に質が落ちていくため、信頼性に関わります。また、気象データは、測定機器をきちんと検定していなければいけないことが法律で定められています。きちんとしたルールがあります。研究目的であれば緩和されますが、業務などでやろうと思うとルールに従う必要があります。ですから、IoT でどんどんデータが取りやすくはなってはいる
ものの、データ本来の質的な保証については留意し続ける必要があります。そうしたことがいつも付きまといます。
――そうなのですね。それでは次の質問ですが、水位データは大量にあると思いますし、気象データも時系列がすごく長いので大量にあると思いますが、そうした大量のデータの扱
いはどのようになされているのでしょうか。どこかにまとめて蓄積されているのでしょうか。
それはどうでしょうか。
――水位データをどれくらいの頻度で取っているのかわかりませんが、たとえば分ごとに取っているとしたら、膨大なデータになりますよね。
なります。水位データの場合は、国交省の「川の防災情報」というサイトで誰でも見られるようになっています。
「川の防災情報」には、水位だけではなく、たとえばカメラの画像のデータや雨のデータ、ダムの貯水量など、さまざまな全国のデータが見られるようになっています。データはおそらく、そういったところのサーバーに蓄積されているのではないかと思います。また、古いデータになればなるほど見られなくなるなどしますので、そうした
アーカイブの蓄積についてどうしているのかは、私も知りません。
また、「川の防災情報」とは別に、「水文水質データベース」というサイトがあります。これも全国の河川の水位の情報やダムの情報などについて、直近のものは見られます。そうした形で、国が割としっかりデータにアクセスできるように整備してくれています。
ただ、気象データのほうに関しては、より膨大なデータになるので、有料なのです。一般
財団法人気象業務支援センターという機関が、昔のこれまでのさまざまな種類のデータを、注文があれば提供するようになっています。ただ、基本的なデータは気象庁のホームページ
からダウンロードできますので、どこからどこまでが有料サービスで、どこからどこまでがフリーのサービスかということはどんどん変わっていくようです。私も全部は追い切れて192

いませんが、今はそうした感じになっています。
また、東大の DIAS でしたでしょうか。あそこでもそうしたデータプラットフォームのよ
うな形のサービスをされていますよね。
――小池先生でしたでしょうか。
そうです、小池先生です。観測データではありませんが、特に気候変動の予測のデータはこの分野ではよく使われます。
――わかりました。今までのお話では、データがかなりオープンにされている感じがします
が、だいたいそういう認識でよさそうでしょうか。
そうですね。もうかなりオープンです。
――なるほど。たとえば、DIAS みたいなものはデータプラットフォームの一環だと思いま
すが、そういったデータプラットフォームはほかにどのようなものがありますでしょうか。
「川の防災情報」もデータプラットフォームの一環なのかもしれませんが。
どうでしょうか。

あと、衛星画像などに関しては NICT、国立研究開発法人情報通信研究機構です。NICT は、ひまわり画像などのデータアーカイブのようなことをしています。
それについても、研究目的で申請すれば過去のデータなどを公開してくれます。衛星画像は、可視画像から赤外画像まで結構いろいろあります。たとえば赤外画像では、水蒸気量の推定、雲頂、雲の高さ、地表面の海面温度など、さまざまな情報を含んでいます。土壌水分なども含むため、この分野ではかなり重要な情報として使われます。そういったひまわりの画像のデータは、たしか、NICT のサイトから利用申請すればデータ公開されていたと思います。
――よくわかりました。ありがとうございます。欲しかった情報はおおよそ得られた気がします。
さまざまなデータがたくさんあり、いろいろな方がいろいろな工夫でデータを活用されていますので、まだほかにもたくさんあるのだと思います。私の話は断片的でしかないと思います。
――森脇先生は数年前からインフラのメンテナンスをよく見られています。お話を聞くと、明らかにインフラメンテナンスよりもデータが整然と公開されているのだと思うのです。
その辺りの要因は何でしょうか。

193

センサーで物理的・客観的に測れるものだからではないでしょうか。物理量なのであまり人間の判断が入る余地がないため、オープンなのではないでしょうか。
――なるほど。⽔位が⾼いものは⾼いですからね。
そうだと思いますね。
――ありがとうございます。⼤変よくわかりました。
付.6. 吉井稔雄教授へのインタビュー（本インタビューは，
https://www.oriconhd.jp/project/post/traffic/921bfdb381a9df6446edab1def726fa9916918
64.html の R-アラート WEB のサイトを共有していただいた上で進めています）――事前に資料をお送りいただき、ありがとうございます。
役に立つかどうか、わかりませんが。
――ちなみに、このシステムはどの程度まで動いているのですか。
今、動いています。ですから、ホームページ上では、それがリアルタイムで動いています。
現在から過去 15 分以内に走行したプローブのデータを使って、現状の交通状況を出しています。そして、過去のデータと比べて異常を検知されたらアラートが出るシステムになっています。
――何のアラートでしょうか。道が切れているなどのことでしょうか。
先日、大雪で自動車が立ち往生したニュースがありました。そうした立ち往生などの直前に、「今、少し車の動きがおかしいですよ」というような情報が出ます。
――そうした情報が、たとえば気象条件と合わせてより精度が上がるというイメージなのですか。
そうです。交通だけではなく、気象条件や地形の情報、アジア航測から出た土砂災害の情報なども加味しながら、アラートを出しています。
このアラートは、「ここは何か普段と違う」ということを示しています。例えばアラート
194

が出た周りに、近くに濃い雨雲が見られるとします。そうなると、この辺りは動きが普段と少し違うということを意味するのです。１台１台の車の動きはわかっていますので、それが非常に遅くなったり、いつもに比べて極めて遅くなったりすると、こうしたアラートが出ます。もちろん、天候の情報なども考慮しています。たとえば、雨が降って速度低下などが生じているのではないか、という感じです。これはリアルタイムの情報です。
――こうした取り組みがあるのですね。
そうです。すでに行っています。
―そして、ＳＮＳなどと連携して「ヤバイよ」ということに……。
そうです。
――このシステムでは、車両の動きが遅くなっている以外には、どのような情報提供をするのですか。
アラート自体は、何を言っているのかわからないのです。とにかく「非日常だ」と言っています。
――とにかく非日常……一種の異常状況のようなことですか。
そうです。
「何か異常だよ」ということを示しているだけで、その内容はそれぞれ違います。たとえば、冠水の情報なども出そうとしています。降水量があるレベルを超えて、しかも車両の速度が低下したような場合です。いわば冠水の情報ですね。
――それは「冠水」という主旨で出るのですか。それとも、あくまで「異常だよ」なのですか。
「異常だよ」と言うだけです。ただ、「道路冠水じゃないかなあ」という推測はできます。
――「異常」だと言われて、天気を見れば……。
大雨が降っていますからね。
――人間は「冠水かな」とわかりますね。
195

人間というか、道路管理者にわかればいいのです。
――はい、当然、道路管理者も推測しますよね。
「この辺はもしかすると冠水しているかもしれない」と思ってくれればいいということです。
――なるほど。
さらに、研究段階なので、まだこのシステムには入っていませんが、今取り組んでいるのは、ドラレコ活用です。各車に付いているドラレコの映像をＡＩで処理をして直接冠水の状況を捉えようと、今やっているところです。
――できそうですね。
ただ、ＡＩを使って冠水を検知するのは結構難しいようです。
――そうなのですか。
学習画像が少ないのです。
――たしかに、学習データ自体は少ないと思います。
ですから、学習データを自分で作る必要があるのです。AI の専門家が取り組んでいます
が、それがなかなか難しい。
――そんな気がします。
あまり画像がありませんから、正解なデータが少ないのです。
――そうですね。
だから難しいのですが、今、そうしたことにも取り組んでいます。
――すごいですね。たいへん有益な情報、助かる情報をありがとうございます。こうした取196

り組みは交通分野に多いのですか。
この手の取り組みで、情報提供まで考えている大学の研究者は、桑原先生だけではないでしょうか。
――プローブデータなどがあり、いわゆる GIS データとも相性がいい話ですから、もっと…
…。
民間では、いろいろと取り組まれていますが、基本的に行政が使うようなデータを作るよ
りは、むしろ、ドライバーが利する、個人に流す情報を作ります。このような行政に流す情報をつくっても利益が得られる保証がないので。そのため Honda なども、
「インターナビ」と言ってドライバーに情報提供するシステムを作っていて、大規模災害時には「とおれた道マップ」のような有益な情報を提供していますが、「この道路が通れない」といった情報や、
気象情報と組み合わせて「そろそろ危ない」といった情報までは提供していません――たしかに儲からないのかもしれませんが……。
このシステムの中には、日本気象協会という会社の天候情報、アメダスのデータなどを入れています。気象庁とは異なる組織です。その会社は、気象庁が作った雨のデータを加工して、四国地方整備局などに提供されているそうですが、このアラートシステムについても開発費が回収できるような適切な値段で買ってもらえるとよいのですが……。
――でも、できているシステムがすごいですね。しっかりしています。
これがオンラインで動いています。そういうシステムがあるのです。
――こういった取り組みをしようとする際、不都合になることは何でしょうか。たとえばプローブデータを収集する際の不都合があるとすれば、それはどのようなものでしょうか。たとえば関係機関が何かを手放さないとか……。こうした取り組みは誰がどう考えても有益なので、もし簡単にできるのなら、もっと取り組まれているもいいはずだと思うのですが。
プローブのデータがなかなか入らないということが一つ挙げられます。
少なくとも一般には出てきません。
――ところで、先日の座談会でしたでしょうか。雑誌が無事届きました。

197

ありがとうございました。
――その時、オープンデータの話をされていました。オープンデータの重要性については私も重々理解していますが、吉井先生はかなり強めにオープンデータの重要性を語っていた
気がします。もしそうであれば、どのように考えられてそうなったのか、お聞かせください。
私が「オープンデータが必要だ」と言っていたのですか。別の人ではありませんか。
――吉井先生です。
そうでしたか。もちろん必要だと思います。
――私も必要だと思うのですが、吉井先生は妙にオープンデータに意識が強いなあと思っていました。誤解でしょうか。
いえ、データを開示してもらうことは大事です。データを開示してもらえれば、さまざまな交通管制や制御の高度化につながります。われわれの研究レベルだけではなく、複数のデータをいろいろと合わせれば実務的にもできることがあると思います。細かな制御や管制の話になりますが、どんどん使うべきだと思います。
――今の話に関連したものでは、オープンにしたほうがいいデータで、なおかつまだオープンになっていないデータには、どのようなものがありますか。
まず、プローブはまったくオープンになっていません。
――プローブデータですね。あとは何でしょうか。
感知器のデータもリアルタイムではオープンになっていません。
――感知器というのは何ですか。
道路に付いている車両感知器です。高速道路にはたくさん設置されています。
――カシャカシャやられるものですか。
カシャカシャするのはオービスです（笑）。それではなく超音波式の感知器などです。超198

音波を路面照射しておいて、超音波が路面に反射されて帰って来るまでの時間によって車が通っていることを検知します。超音波が行って帰ってくる時間は一定なので、それが短くなったら車が通っているということです。そうした感知器の情報は、少なくともオープンではありません。
――なるほど。
ただ、結構使ってはいます。たとえば VICS（ビックス）情報など、高速道路会社の感知器の情報を使って、「ここは今、速度何キロです」というように皆さんに情報提供されています。けれども、生のデータは使われていませんね。
――そうしたデータがオープンになって、API のような感じでデータを取ることができてリ
アルタイムで解析できたらいいということですね。
リアルタイムでできるといいですね。今利用されているのは、短くても５分集計などのデータなのです。
――５分集計ですか。
５分で集計しています。オキュパンシーという「５分の間で何秒下に車がいたか」という情報と交通量とで集計しているわけです。それを計算すると速度が出ますから。そうした速度のデータのために、５分平均速度と５分交通量のデータが提供されていますが、生データは基本的に出ていません。しかし、オンラインはさておき、生のデータも使うと車間距離などがわかり、事故リスクの研究などでも使えるわけです。
――そうですね。
でも、そうしたデータは特別に頼めば提供していただける可能性はありますが、なかなか入手することが困難です。
――先生は「複合させればいい」「連携させればいい」などの旨をおっしゃっていたような気がしますが、まさに今の事故リスクの話もそういった話ですか。
事故リスクは、とにかく多くのデータを複合させないとどうしようもないのです。全先生にお送りした資料には、プローブデータと事故データ、モバイル空間統計についても書きました。そのうちモバイル空間統計は、歩行者や自転車など、車以外の動きがわかるものです。
199そして、車の動きはプローブでわかります。それらを組み合わせると、「ここは歩行者が危ない場所だ」「ここは車が危ない場所だ」などということが見えてくるのです。そうした話はあります。
――ところで、いろいろと話が飛んでしまいますが、桑原先生が作った「データ指向型モビリティ情報生成グループ」というものがあるかと思いますが……。
先ほどの DOMINGO ですね。
――最初のほうの質問とも被りますが、交通分野にはもっとデータを活用して何かをしようとする研究がすごく多くあるイメージがあります。
交通分野……自動運転がらみですか。自動運転は、まだ車載センサで把握できる範囲のデータしか使っておらず、インフラデータなどの活用はこれからの取り組みでしょう。
――では、いわゆる計画分野でも土木計画分野でも構いません。ほかの分野と比べてデータ
ドリブンなイメージを強く持っていたのですが、そうでもないのでしょうか。
それはモデル分析の話ではないでしょうか。交通行動に限らず、いろいろなモデル分析のことでしょう。
――たとえばデータから……。
最もベーシックなものは、需要を読むものです。たとえばデータに基づいてＯＤ交通量を出すなどの研究は、昔からたくさんあります。でも、すべてオンラインではありません。
――きっと、データプラットフォームのような話ではないのですね。
あるに越したことはありませんが、そういうモデル分析には絶対にデータが必要です。モ
デルを作るためにデータは必要ですから。
「重力モデル」のことは知っていますか、最もシンプルな。
――聞いたことはありますが、耳覚えがあるくらいです。
東大では教えていないのかもしれませんね。

200

――東大では基本的に何も教えません。
たとえば、Ａ市、Ｂ市の人口がそれぞれＰ、Ｑとすると、ＡとＢの間の交通量が重力モデルに従うというものです。距離 R に反比例して、それぞれの質量の積に比例しますので、「Ｒ分の G、ＰＱ」となるわけです。
――はい。
「二つの都市の距離に反比例して、それぞれの人口の掛け算に比例します」というようなモデルを作るわけです。
――なるほど。
そうすると、少なくともパラメータが一つ入ってきます。人口を掛け算して、距離で割って、交通量になるわけないのですから。万有引力の法則では G が定数となりますが、重力モデルではパラメータとなります――それはそうですね。
一番シンプルなモデルでも、一つのパラメータが入ってきます。実際には、人口を累乗して考えるなどして、二つ、三つのパラメータがあるのですが。そのパラメータを推定するために、データが必要になるのです。モデルが一つでも、その土地土地の状況に応じてパラメ
ータの値の組み合わせは無限にあります。
――そうですね、無限ですね。
はい、無限にあると思います。無限にというか、今までやってきたもの全部がそうですよね。
――交通分野は何かちょっと……。もちろんインフラでもそういった微分、微分方程式のパラメータ、係数を決めるのには使いますが。
物理の法則と違って、交通の場合は傾向がわかるだけです。人口が倍になれば交通が倍になるというだけです。原単位という言葉はわかりますよね。「何人いたら何トリップ、何回移動する」などという話は、原理原則ではありませんよね。一方、物理では、「質量と加速度を掛け算したら力になります」など、ガチっと固まっています。
201

――そうですね。
われわれの場合は、「人口が倍になったから交通量も倍」までは考えられますが……。
――人がどう動くかまではわかんない。
そうです。そこは定数をかけるのではなく、パラメータが必要となるわけです。ですから、
このパラメータの値を決定するためにデータが必要となります。データがなければ絵空事で、実務には使えません。
――わかりました。また話が飛んで申し訳ありませんが、吉井先生からいただいた PDF 資料の１ページや今のお話などで、道路地図はもちろん、土地利用データや行政区域データも使い道がいろいろあり、プローブデータもきっと使い道がいろいろあることがわかりました。
一つのデータでも複数の使い道があるのだろうと思います。
それぞれそれなりに使われています。
――事故データも天候情報もその最たるものですね。
実は事故データについては、「どこの都道府県でこんな事故が何件ありました」という情報以外はほとんど使われていません。
――そうなのですね。車両感知器情報の使い道はいかがでしょうか。
これは交通管制に使います。
――交通管制以外ではどうでしょうか。
今ですか。
――はい。
交通管制以外で何に使っているのだろう。
――たとえば吉井先生ならどう使いますか。
202われわれは、予測モデルを作る時に使っています。最近は「AI を使って渋滞の発生を予測します」というようなモデル。それは過去の車両感知器のデータを使ってモデルを作り、オンラインで情報を提供します。
――なるほど。
アイトランスポートが開発した DOMINGO のトラフィックスコープもそうですね。トラフィックスコープには車両感知器の情報が入っていませんが、「今こうなっています」という情報は車両感知器からもえられます。
――デジタル道路地図や天候予報はどうですか。
プローブと同様、デジタル道路地図がないと何もできません。プローブとデジタル道路地
図はセットです。
――すでに道路地図があるものとして考えてもですか。
はい。道路地図がなかったら、わけがわかりませんからね。
――なるほど。
ただ、DRM とわれわれが呼んでいるデジタル道路地図とプローブデータは、結構リンクしていないのです。プローブデータには座標があるだけというように。
――面白そうな話ですね。
プローブデータは元々、GPS のデータですから、緯度・経度があるだけなのです。それをデジタル道路地図にマッピングするという作業が必要になります。
――プローブデータに緯度・経度はあるのですよね。
位置情報としては緯度・経度しかありません。ですから、「どこの道路の上を走っています」というデータは、加工しなければ出てきません。
――「どこの道路の上を走っているかは、加工しないと出てこない」というのは、たとえば
203

道路が交差している場合しかり、緯度・経度が少しずれていて少し道から外れている場合しかり、ということですか。
そうです。道から外れていると、右の道を走っているのか、左の道を走っているのかわか
りませんから。また、一番難しいのは、高速道路と一般街路が重なるところです。この場合は履歴を辿るしかありません。
――そうですね、
また、速度の情報なども。それはアルゴリズムがあって、地図上に乗せてくれるようなデータに変換する技術は開発されていますが……。
――要するに挟まないといけない。
そうです。それを DRM に、デジタル道路地図上に乗せないことにはわれわれも使えません。
――面白そうな報告書が出せそうです。ありがとうございます。
もう終わりですか。先ほど、トラフィックスコープでアラートなどを出しているという話がありましたが、あれはプローブのデータを使ってメッシュ単位で出しています。
――どのぐらいのメッシュですか。
1km×1km のメッシュです。
――そんなメッシュでいいのですか？
それは地方の場合です。資料にあるアラートが出ているところは山の中ですから、道の上を走っているというよりも「どこのメッシュの上を走っているか」という情報でも十分な情報になります。都市部でも、まずは 1km メッシュで異常を検知、ハイライトしてやり、細かいところはプローブデータや、あるいは SNS などの別の手段で確認する、という使い方になります。
――そうですか。

204

道路にすると、地図とのマッチング作業が必要になるので時間がかかるのです。
――要するに、「過去のデータを見ると、このメッシュをこのくらいのスピードでみんな行
くけれど、何か急にメッシュの動きがおかしい」というような話でしょうか。
そうです。
――それなら、そのくらいのメッシュでも「ここに何かあるぞ」というのがわかる気がしま
すね。たいへん参考になりました。ありがとうございました。

付.7. 秋⼭充良教授へのインタビュー――「データプラットフォームについて現状と事例を整理する」という課題について，まず最初に、「先生の専門分野（コンクリート構造）では、データを集めて何らかの知見を出そうとする取り組みはありますか？」という質問をさせてください．
私にはコンクリートの細かいところを見ていく能力がありませんので、分野横断のほうへ行っています。そういう人間からすると、データを集め、たとえば道路ネットワークの情報や橋梁の細かい情報、地盤の情報、ネットワーク全体に作用するハザードの情報、水害の情報、飛来塩分の情報、強震動の情報などのデータを集め、ネットワークの空間的な広がりをオーバーラップさせて、リスクがどれくらいかということを計算します。そういうほうに行っている人もいるということです。
――いわゆる Frangopol 先生の流れですか。
そうです。私はもちろんそちらですから、そういうふうになります。彼の核にあるのは信頼性などで、どちらかというとソフト的な部分です。私の場合は、そうしたバックグラウン
ドを持ちながら Frangopol のように一体化して融合している感じでしょうか。
――今のお話には二つの内容があったと思います。一つは、「分野横断」のお話です。もう一つは、データをいろいろ集めてくる必要があるというお話かと思います。
そうですね。
――そうしたデータは、一つひとつ、先生が地道に集めてくることになりますか。それとも205

何か統合されているものがありますか。この質問の意図は、何らかのプラットフォーム的なものがあれば、果たして便利なのかどうかということです。あるいは、現状でもすでにあるのでしょうか。
Google ではありませんが、日本全国のインフラのデジタル情報を完全に作るというのは、
本当に理想です。たとえば Google マップで、どういう年代の設計基準のどういう構造物があるかがわかるなどです。実際今は、たとえば維持管理の情報についても５年に１回は必ず入るわけですから。
――そうですね。
そういう維持管理の情報が入り、耐震診断をした情報が入り、柱状図やＮ値の情報なども入れば……。今、国交省は、なんとか民間情報も吸収しようとしています。ああいう情報なども同じプラットフォームに入ってくるなどすれば、維持管理や災害のリスクなどについても非常にリアリティを持った情報で評価することが可能になります。
たとえば私が、南海トラフの影響を受ける地域の災害リスクや災害廃棄物の量の推定などをするとした場合、ある程度は GIS で拾えますが、細かい情報を積み上げている割に、や
はり最後はどうしてもマクロな検討になってしまいます。ですから、もっとリアルに構造物の情報などが入ってくれば……。
実は、強震動の予測や津波の高さなどをすごく真面目に計算している割に、最後は「エイヤッ！」なのです。
――はい。それは私も感じていました。
そうした点に課題があります。せっかく手法などができていても、最後の部分がそうなのです。ですから、データプラットフォームというか、インフラのそういうものがあるといい
かと思います。
――わかりました。先生がおっしゃるように、計算している割に最後は「エイヤッ！」でやっていることについては、私も同様に思っています。私も実際、以前、細かいことやっていた時に、「これは何のためにやっているのだろう？」という思いになったことがあります。
わが国の場合、どうしてもオープンでないところがありますから、すごく真面目に計算しているのに、最後の精度にすべて依存してしまうのです。私は学生とよくこんな話をします。
100m 走で（400m リレーで前の）３人が 0.1 秒を争ってものすごく一生懸命走っているのだ
けれど、最後のアンカーがどうしようもないと。「だったら前の３人は意味がない」という206

状況になってしまっている感じです。
――同感です。そういうところが多い気がします。
そこは本当にきちんとやるべきです。本当に、行う価値があると思います。
――これは私の「エイヤッ！」の例として「ミクロの積み重ね」と資料に書きましたが、おそらく秋山先生がおっしゃられていることは、「最後の精度を高めるにはデータプラットフ
ォームが必要だ」ということも含んでいるかと思います。では現在、最後の精度を高めるた
めに、先生は自力で頑張ってデータを集めているのでしょうか。
できることはやりますが、どうしても最後はどんぶりにならざるを得ません。たとえば、
ネットワークの改築をやる場合、たとえば三重県Ａ市などと言いつつ、構造物の情報はリア
ルな情報を持っている疑似情報を使うという感じです。
――「リアルな情報を持っている」というのは……。
たとえば、Google マップに橋があることがわかっているのですが、そこの橋はバーチャルだということです。要するに、自分がきちんと計算できる情報を持っている橋があるとしてやっている、という感じです。
――なるほど。
本来であれば、そこの橋についてきちんとした情報を提供してくれれば全部動くのですが、現状ではその橋の設計基準など細かい配筋情報がわからないので、「こういう橋がそこにあるとする」としているのです。同じ時期に造られた代表的な橋の情報を持っていればそれを使うなどして、自分でリアルなマップな上に偽の橋の情報を置いて解いている、という感じです。
――そうなのですね。たとえば論文などの場合は、そういった方法論を示すのが重要になりますね。
はい。ですから論文では、方法論を示したり、こういう計算が必要なんだと示したりしています。ただ、ジャーナルはそれでいいのですが、本当の防災にするにはどうしても……。
――本当にリアルに役立つためには、当然、リアルな情報が必要なわけですね。
207

今は本当にそこに壁があります。ただ、今、維持管理では道路の橋とトンネルは全数検査していますので、その情報と防災などをもっと一体化させていけばいいのになあと思います。ですから私は、維持管理から入っていけばいいと思います。国交省もそれなりの情報を持っているのですから、オープンになると本当にいろいろなことができると思います。
また，市町村のデータなどとの連携もあまり出来ていません．アメリカなどでは全部同じ
フォーマットで情報を吸い上げていますよね。日本はなぜ同じようにできないのかと思います。
――もう 1 点、たとえばもう少しミクロに構造物という単位で見る際は、どのような情報が必要なのでしょうか。たとえば先生の場合、構造物の腐食などいろいろと取り組んでいらっしゃいますが……。
先ほど言ったような点検・検査などをしているのですから、そうした情報がもっときちんと統一されて、ほかの情報と一緒に入ってくるといいとは思います。
――これは私の問題意識でもあり、まだあまり考えがまとまっていませんのでお伺いした
いのですが、その場合の「統一した情報」とは何でしょうか。たとえば、一つの構造物を見る時に、すべてのデータを何か統一したものに含めることは大事だと思いますし、そうする
ことで解析も回るかと思うのですが。
たとえば、Google マップなどで調べたい橋をクリックすると橋の全景が出てきて、その橋には何年前にどこにどういうひび割れがあったかが写真とともに出てくる、という感じ
で全部一体になっているといいと思います。また、設計図面も一緒にあり、配筋情報もわかる。そうしたことができるはずなのです。なぜなら、情報というものは、設計の段階から全部積み重ねてきているわけですから。ところが現状は、設計図面は設計図面、点検・検査は点検・検査、地盤は地盤と、情報が全部分かれてしまっています。その辺りを統一すれば…
…。また、たとえば補修・補強をしている時にも、おそらく一体になった情報がうまく集まらないと思います。設計したところは設計した情報だけ、耐震補強するところは耐震補強の情報だけなどという状況ですから、全体の解析などをやろうとするとすごく骨折れます。
できるようにするためには，例えば情報を吸い上げるところを先に作って「ここに入れろ」という仕組みが必要かとも思います．
――そうですね。
常に後追いになって、「統一したほうがいい」と言う頃にはすでに各々がバラバラにデー208

タを持ってるから、「もう今さら……」という感じになってしまっています。
――そうですね。もう少し具体的な話をすると、以前、先生が愛媛にいらっしゃった時に鉄筋の腐食などをいろいろと見せていただきましたが、ああいう予測をたとえばリアルです
る際はどのような情報が必要なのですか。
やはり、コンクリートの情報や配筋の情報などが要ります。
――コンクリートの情報というのは、いわゆる配合などの話ですよね。あとは誰が造ったとかでしょうか。
そうですね。今はコア抜きをして検査するものもあると思いますので、そうした情報もひび割れ情報などと一緒に紐づけされているといいですね。
――たとえば一つの構造物であれば、秋山先生がご自身のセンスで適した形式に変えて解析されると思いますが、それは秋山先生でないとできないのですか。
そんなことはないと思います。
――だとすれば、どのように統一的にすればいいのでしょうか。たとえば、そのくらいの問題だとした場合、上手にビジュアライズすれば全部の情報が乗せられるものなのか、それともエクセルか何かで「ここからここはやられてる」などとすればいいのか。どのようにデータを整えるのがいいのか、この１年くらい私の頭の片隅にひっかかっています。
そこを真面目に考える価値はありますね。要するに座標の情報……。
――で、いいのでしょうか。
ただ、本当にきちんとしたデジタルの情報というのであれば、やはり３次元の FEM のイン
プット情報ではないでしょうか。あのようなスタイルではないかと思います。
――少なくともきちんとした３次元 FEM が復元できるような……。
まあ、FEM ではなくても……。
――要するに、３次元モデルで復元できるものですか。
209

数値解析に行く人はそのまま数値解析に行けばいいでしょうし、大きいものに行くのであればそちらでいいと思います。ただ情報の集め方としては、メッシュで切って、それぞれにどういうふうに配筋があり、コンクリートになされた部分的な情報をそこの要素に紐づけてというようにすれば、たとえば確率論的な研究もする人なら、そこから空間的な強度の変動を見るなど、さまざまなことができるのではないでしょうか。
――メッシュのサイズや粒度などに関する話もあるかと思いますが、基本的にはそうなりますよね。いや、そうしないといけないのでしょうね、ただ、難しい話だなあとも思います。
たしかに、どこまでの分解能にしていくのか。日本全体のマップからスタートすると、相当の情報量になってしまいますから、かなりたいへんかもしれません。
――そうしたことを今まとめているところですので、今の話だけでもたいへんありがたく思います。参考までに、道路ネットワークなどのテーマで、先生の研究の全体像がわかりやすい論文のようなものはありますか。私の報告書では、「こういう情報を集めないといけな
いので、こういうデータプラットフォームが必要だ」というような書き方をしようと思うのですが、報告書を書く際に助かりそうなものがあるとたいへんうれしく思います。
どういうものをお伝えすればいいのでしょうか。
――何らかの目的がある時に……何でもいいのですが、たとえば津波の場合は津波避難解
析や被害解析でしょうか。
津波であれば、津波でネットワークがどれだけ停滞するか、津波でごみの廃棄物がどれだ
け出るかなどでしょうか。最近私はもっぱら面的な計算に関心を寄せています。
――そのように何らかの目的がある時、たとえば目的を一つか二つに定めた時、何を知る必要があって、ネットワーク全体のネットワーク図、あるいは……。
私の場合はリスクを出したいわけで、そのリスクがごみであったり、停滞日数であったり、交通容量の停滞であったりします。そのリスクを出す時には、ありきたりの表現ですが、ハザードとフラジリティの情報が必要です。ハザードは、断層から各地点の地震動強度や津波高さの分布になります。私はスパコンを使うような高度な計算はできませんが。一方のフラジリティとは、要するに、構造物が持っている個々の位置での弱さや強さを表現する情報です。構造物そのものの大きさや設計基準から、それが地震荷重を受けたり津波荷重を受けた210

りする時の強さ／弱さを評価する情報です。それらをオーバーラップさせて初めて信頼性が出てきます。そうして、構造物が壊れるとどれだけネットが停滞するか、構造物が壊れるとどれだけごみが出るか、というほうに展開していきます。
――そうしたことをなされた時に、どういう情報を集めたかということを論文に書かれていると思いますが、そのような論文はありますでしょうか。
メールでお送りしますので、あとで見てください。
――ありがとうございます。また、似たような話ではありますが、何らかのデータが必要であろう問題に対して、データ収集時に何か不都合はありますか。たとえば、どうしてもデー
タが出てこない、そもそもデータがないなど、さまざまあると思いますが、どういったことがありますか。先生の研究では、データを集めなければいけない研究が多そうな気がします。
実験室で行うものはいいのですが、「実験室でやっていることをリアルな構造に」といった時は、先ほどお話ししたような情報を持っているもので仮定するしかありません。
――リアルな構造物の情報を入手する手段がないということですか。
そうです。日本では４段階くらいの基準に分かれます。たとえば橋を例に挙げると、高度経済成長期の前回の東京オリンピック前くらいの時、宮城県沖地震くらいの時、兵庫（阪神・淡路大震災？）の前と後、だいたいこの４つくらいで大きく橋の性能が変わっているのです。
ですから、「当時の基準に従って造った橋はこんなものです」という代表的なものがそれぞれあるわけです。それらがネットワーク上に散らばっていると仮定して、今はやるしかないのです。
――それこそ、先生が先ほどおっしゃったマクロ／ミクロの話ではありませんが、これをやってしまう（最後にどんぶりせざるを得ない）場合に、細かく津波の高さなどを調べることの意味が結構消える……。
そう、ありません。本当にそこには大きな壁があります。
――学問では、たとえば「これがわかるようになったら、それぞれの津波の高さを厳密に調べていてよかったね」となりますし、あるいは、方法論をきちんと整備しておけば「これがわかればいいんだよ」というドライビングフォースにもなります。けれども今は結局、そこがボトルネックになっているような感じですね。
211

本当にそうです。また、おそらくもう一つあるのは、仮に図面情報がデジタルで入手できたら、そのまますぐ解析にいくかというと、そこにも壁があります。たとえば、われわれは地震が起こるたびに被害分析委員会なるものを立ち上げて、耐震解析をして、「この橋はたしかにこの強震動だとせん断破壊する／しない」ということをやります。それをしている時、図面の読み方が大学の人間にはなかなか難しいのです。３次元、それこそ FEM や梁要素でも、モデル化するには一旦それを読み解いてくれるプロがいつも必要です。
たとえば、2003 年に三陸南地震、2004 年に新潟県中越地震が起きて、たくさんの再現解析をしましたが、やはりあの時も常に JR の人が出してくる図面について、解析ができるよ
うに読み解いてもらって初めてわれわれは計算できたという感じです。ですからその点も、
ただデジタル化するだけではないプラスαの部分として仕事があるような気がします。
――今、よく BIM/CIM あるいは「i-Construction」で３次元モデルと言っていますが、そも
そも３次元設計をしていれば解決する問題なのかということも、よくわからない話ですね。
そうなのです。ですから、ああいうことをする時には、きちんと構造屋さんなどそれぞれの使うユーザーが入って作っていかないと、作ったはいいけれども使い物にならない結果になるということは大いにあり得ます。
――そうですよね。
わが国のさまざまなデジタル化の末路を見ると、大いにあり得そうな気がします（笑）。
――そうですね。ものすごく単純な例でも、たとえば支承部をどうモデル化するかというのは、それほど簡単な話ではないはずです。
そうですね。そこをきちんとわかっている人がやらないで、単に３次元のすごいものだけを出されても……。
――そうなるような気がしますよね。
大いにあり得ます。
――「これで FEM ができる」と言ってできても、合わないなどの結果になりそうですよね。
ですから、やはりきちんと使うユーザーがそこに入って作業する必要があります。
212

――ほかに、データ収集時の不都合はいかがでしょうか。基本的には今おっしゃられたような話ですか。そもそも入手する手段がないからよくわからないことと、たとえば図面とかを入手しても使えるデータにならないということ。
そうですね。鋼（はがね）の場合は、写真などを見て断面の形がわかればある程度は計算できそうな気がしますが、特に鉄筋コンクリートの場合は「その中にある配筋はどうか？」という話になってきますから、もう一段階の壁があります。
――再現する際、配筋はどのような感じなのですか。そもそも配筋が違うじゃないか、ということですか。それとも、配筋がしっかり書かれていない、などのことですか。
いや、配筋はある程度きちんと書かれています。ただ、たとえ同じ帯鉄筋が巻いてあっても、先ほどお話しした４段階の基準によって異なるのです。たとえば、帯鉄筋としてきちんとコアコンクリートに機能する巻き方をしているのもあれば、実は帯鉄筋ではなくて、横荷重を受けたら帯鉄筋がふにゃっと広がってしまうのもあるわけです。ですから、リアルに計算して精密にしようとすると、単に配筋と書かれているだけでは情報不足で、「それがきちんと端部に、どうコアコンクリートにフックされているのか」まで必要になるので、結構たいへんです。
――それはそうですよね。
ですから、そういうレベルの計算までやるのであれば、やはり図面を読み解いて、デジタルにする時にはそこまでのことを考えて読み取ってもらう必要性が出てくるかと思います。
――要するに、何らかの専門知が必要なわけですね。
そうです。ですから、先ほどの話ではありませんが、ユーザーや解析の人がきちんと非線形解析をして、終局限界状態に近いところまでの挙動を追いたいというところまでのニーズを意識するならば、やはりそれなりのものになります。そうではなく、ある程度マクロに「どれだけの耐震性があるか」だけであれば、設計基準と大雑把な構造諸元さえわかれば、「中の配筋はこんなものだろう」くらいのことは、それなりのコンサルタントに聞けばわかるはずですからね。その辺は、いきなり 100 点を求めても仕方ないかもしれませんが。
――なるほど。では、残り時間が少なくなってきましたので、オープンデータの必要性や重要性についてお伺いします。それは、先ほどお話しいただいたとおりでしょうか。
213

そうですね。
――なるほど。それに関連して、たとえば浅本先生によると、配合比と物性の関係性がわかるデータベースのようなものがあるとのことです。それはわかりやすい発想ですが、コンク
リート構造や構造物の維持管理などでは、どういったデータベースあるいは情報システムがあるのでしょうか。そもそも、そうしたデータベースなどはあるのでしょうか。もちろん点検などは記録されていると思いますが。
たとえば、アメリカには PONTIS というものがありますよね。
――あります。
あれにはすでに何十年ものデータが貯まっていますから、「どういう維持管理をやろうとするといくらになる」などについても、インプットすればアウトプットされます。本当はあの辺りが一つの参考になるというか、目指すところなのかもしれません。
――PONTIS 自体、別にそれを要求しているわけではありませんが、FHWA のものが機能しているのは２年に１回など、すごい間隔で見ていますし……。
あれは、統一してほぼ全州のはずですよね。ですから、日本の「それぞれのところがそれぞれのデータベースを持っている」というのとは、やはり違いますよね。あの姿になっていかなければ。日本の今のやり方をしていると……。
――ほかにも、コンクリート構造などで設計のためのシステムのようなものがあるのですか。
設計のためのシステムですか。
――ただの設計ソフトウェアですか。
個々の橋を造る時は、橋の形式ごとにそれぞれのソフトウェアがあります。ただその前に、橋の形式を決めなければいけません。実はそこが⼀番の腕の⾒せどころのはずなのですが、
おそらく多くのコンサルタントでは、橋⻑やいくつかの項⽬を⼊れると「こういう橋梁形式があり得る」というようなものをそれぞれ持っていると思います。そこから３〜５案くらいに絞り込んでいくのだと思います。
でも、そこにこそ AI などの出番があるかもしれません。
214

――その辺りは別にデータの話でない気もします。データが集まっていれば、たとえば動解が通りそうな橋など、これを出してくれるなどしてくれればいいのでしょうが、そういう話
はそれとして……。なるほど。たしかに PONTIS みたいな話はそうですね。
ところで、構造不確実性を伴う問題で⽇本の話は今お伺いしましたが、こういった構造不確実性を伴う問題では、当然、分布を出す必要があります。分布を出すことに苦労はされませんか。
もちろん、断層の問題などまったくわからないのものについては、仕⽅がないので「エイヤッ」と決めるしかないのでしょうが、それ以外のものについては結構あるのではないかと思います。
――ものすごく単純な例で、たとえば簡単な床版橋の床版橋の耐荷⼒を調べなければいけないシーンがあるとした場合、道路ネットワークのリスクを考えると、耐荷⼒の分布を先⽣あるいは Frangopol 先⽣のような解析をする必要があるかと思います。しかし⼀⽅で、耐荷⼒の分布を出すのはそれほど簡単な話ではないと思うのですが、そういうのはどうされているのですか。
それは図⾯ベースで⾏います。耐荷⼒は図⾯ベースである程度の予測がつきます。まず、材料特性もよくわからない中、図⾯ベースでモデル誤差を考えながら分布を作ります。そのあとは Updating です。Bayesian にしても、点検・検査の情報からいかにその分布を正しいほうへ尤度に基づいて変えていくかということが、それこそ Frangopol や私がやっていることではないでしょうか。
――いわゆる Bayesian 的な Updating は当然そうなるのだろうと思いますが、耐荷⼒の例
が良くなかったのかもしれません。それでは、耐荷⼒以外のことを教えていただきたいのですが、耐荷⼒の分布の Updating のためにはどのような情報があればいいのでしょうか。
たとえばこの間の先⽣の AI シンポジウムで⾔うと、私の研究室などでは、「腐⾷・ひび割れが出ているのなら、耐荷⼒がこれくらい落ちるのではないか」、そして、「中の腐⾷はこれくらいだから」と腐⾷の分布を 1,000 個くらい予測して、３次元 FEM を介して「（耐荷⼒が）これくらい落ちたところに分布しているのではないか」などと⾏っています。
たとえばアメリカなどでは、実際にトラックを乗せて、ローリングプルーフテストみたいなことをします。そして、分布の裾野を切ってしまって……。全部を乗せたら本当に危ないので、テール側のある部分までの荷重を乗せて、「そのテールまでは実際に耐えたのだから、それよりも⼤きいはずだ」というように分布を更新する、というようなことではないでしょ
215

うか。
――なるほど。
やはり ICOSSAR なのだと……。ああいうところの⼈たちで⾔うと、AI ではなく、基本は
やはり Bayesian です。ただ、私も今回ずっといろいろとやってきましたが、最近のああい
う AI などのほうが、逆問題の精度としてはいいなあなどと思いました。
――それはなかなか難しいと思いますので、むしろ私は、Bayesian が⼤事だなあと思っています。
私は、学⽣にも「そこは必ずやりなさい」と⾔っています。あそこにはきちんと理論もあって、パラメータの認知が必要で、当然、⼒学や化学も必要です。「それをやった上で、きちんとやりなさい」と⾔っています。もちろん研究⽣はしています。ただ、どれだけアグリ
ーしているかわかりませんが、われわれが持てるコンクリートの情報には難しい⾯があります。たとえばわれわれは、腐⾷⽣成物ができて、膨張圧でどんどん腐⾷ひび割れができて、腐⾷量が増えるとひび割れが増えるというように計算するのです。けれども、どうしても全部は乗りません。なぜなら、たとえば鉄筋の周りに構造物ができた瞬間に、すごく微細な空隙ができるのです。また、コンクリートの中にあるコアの中に腐⾷⽣成物が⼊って腐⾷⽣成物が増えて引張⼒をもたらすのは、実はそういう空隙の影響などに影響を受けてしまうということもあります。要するに、われわれはそれをモデル化できていないのです。ですからそういう意味で、われわれが計算で捉えられていないパラメータが実はすごく影響しています。そういう捉えられないパラメータの影響が⼤きい時は、たとえブラックボックスと⾔われても、あちらのほうが「なんとなく合っているな」というところがあると思います。
――おっしゃることはよくわかります。
私の研究室では、「ベイズにしろパーティクルフィルタにしろ、理論はきちんとすべてやりましょう。その上で、世の中には便利なものもあるから、そちらもやりましょう」という感じです（笑）。
パラメータをちゃんと認知して、情報に基づいて更新をして、確からしいものを置いていくということでは、やはりあそこは基本です。
――極めて同意します。
この間、『Structural Safety』に出した時も、いきなり「AI みたいなもので腐⾷ひび割
216

れ幅から腐⾷量を予測します」と⾔ったら、早速「なぜベイズを使わないんだ」と意⾒が来ました。「この雑誌ならそうだよなあ」と思いました。
――たいへん参考になるご意⾒をいただきありがとうございます。あと、⼟⽊では少量のデータを⼯夫して使うようなシーンがきっと多いかと思いますが、基本的にはそういう状態にありますよね。
まあそうですね。
――⼀般的に橋梁の解析などではそうだと思います。ただ、少量のデータを⼯夫して使うことも⼤事ですが、本来はデータがあるものはあるべきだと思いますが、いかがでしょうか。
もちろんそうです。しかも、あるのです。あるにもかかわらず、集約されていないだけなのです。
――そうですよね。
「共有するだけ損」という⽅向ではなく、「共有すると得になるんだ」という形に持っていけるようにしないといけません。
ただなかなか難しいですね。ただアメリカでは、PONTIS のようなものとＡＳＣＥなどが個々の橋の状態などについて昔からどんどん積極的に公開しています。
――なぜでしょう。国⺠性の違いでしょうか。
何か危ないことがあった時に、「積極的にそれをオープンにして危なくないようにしよう」という考えと、「隠してこっそりやっていこう」という違いがあります。それが、2011 年のような⼤きな事故を起こしてしまうのだろうなあなどとも思います。
――それはそう思いますね。
みんなで「危ないものは危ない」と認知し合う必要があると思います。
本当にもっと情報をオープンにしてほしいと思います。
付.8. 北原武嗣教授へのインタビュー――北原先生の専門分野は耐震構造ということでよろしかったでしょうか。

217

一番のメインは耐震構造でしょうか。地震動特性を踏まえた耐震設計や耐震信頼性・リス
ク評価というものもあるのですが、もともとは構造から入っていますので。
――さて、最初のご質問ですが、データを集めてあるいは連携して何らかの知見を出そうとする取り組みはありますか。きっとあるだろうという認識ですが。
私自身が具体的に知っている取り組みがあるかと聞かれると少し疑問ではありますが、一つは、地震・耐震の分野で最もデータがオープンというか、いろいろ集めて公開されているのは、K-NET、KiK-net の地震観測網だと思われます。
ただ、K-NET、KiK-net は地震データです。そのため、たとえばそのデータを使って距離減衰式を構築する、もしくは確率論的な指標化に使うなどのケースでは活用できると思います。ただ、地震工学の分野では、私自身は本当に地震防災につなげていくことが AI やデータサイエンスで重要だろうと思っています。ただ、地震被害というのは頻度が少なく、そもそもデータが少ないのです。K-NET、KiK-net のデータに関しても、そこが一つの弱点だと思います。地震計もたくさん構築され、すでにかなり整備されていますし、阪神・淡路大震災以降にかなりのデータが蓄積されてはいるのですが、小さい地震のデータが多く、大きな地震のデータがたくさん取れているわけではありません。そうすると、こういう手法は、内挿は当然得意ですが外挿までできるかというとなかなか難しい面があります。われわれ
が地震防災や耐震設計を考える際、「巨大なケース、過大な地震に対する評価をしたいのに、
そのデータが少ない」ということが問題として残っているように思います。
――大きな地震のデータがたくさん取られているわけではないというのは、大きな地震が少ないからということですか。
そうです。
――阪神・淡路大震災以降だと、中越、東日本、熊本……。
本当に大きいのは東日本大震災と熊本地震くらいで、被害の大きさであれば新潟県中越地震や福岡県西方沖地震などいくつかあります。ただ、やはりある程度の被害が出たという点と考え合わせると、東日本大震災と熊本地震くらいしかありません。
――そうした感じで地震データがあるとのことですが、地震防災や地盤のデータなどであれば……。
私自身は地盤が専門ではありませんが、地盤のデータは、世界的にいろいろデータベース
218化するという動きがあると聞いています。実際に、シンガポールの先生が中心になってデー
タベース化をされていると思います。それには、いろいろな世界中のデータベースが割と集まってきていると聞いています。おそらくオープンで使えていて、それこそこういうグルー
プたちが「データドリブンなアプローチに活用していこう」というような研究などの取り組みをされているので、進んではいると思います。ただ、私自身は地盤が専門ではないので、それが本当にどこまで実用化・活用されているのかということはわかりません。また、全世界でデータベース化をすれば当然そのデータ数は増えてくるのでしょうが、地盤にはおそらく地域特性があると個人的には思いますので、それをどう評価するかが課題かもしれま
せん。
――先生がおっしゃっている地盤のデータベースとは、どのくらいの深さのイメージなのでしょうか。
調べればいくつか知見はありますが、具体的にちょっと……。
――オーダー、あるいは……、たとえばボーリングデータで取れるような位置の……。
基本的にはおそらくボーリングデータのイメージだと思います。
――地震のことはよくわかりませんが、あるいは、より深いところも関係しそうな気もするのですが。
そうですね。しかし、そこまでのデータは本当になかなかないという感じではないでしょうか。
――「地盤のデータは減衰などに大きな影響を及ぼすのだろう」ということは、物理メカニ
ズムから想定できますが、きっとそうなのですよね。
そうですね。地震動は、震源によって違いますし、地下構造の伝播特性でも変わってきます。さらに、表層の増幅特性の兼ね合わせとなります。そのため当然、ソースとしての断層のデータがなければいけません。次に、深い地下構造で伝播特性がどうなるかを評価できなければいけません。そして、表層の増幅特性です。
ですから、ここで言っている地盤のデータベースは、基本的に表層の増幅特性の部分で有効だとは思いますが、地下構造の伝播特性の部分ではなかなか活用しきれないのではない
かと思います。

219

――なるほど。ほかには何のデータが必要でしょうか。地盤についてわかったら、あとは構
造物や住宅などのデータでしょうか。
地震のデータがある程度揃ったり評価できたりしても、やはり結局は「どういう地震が来たら被害に結びつくか」というところがデータとして必要なのです。動的解析は十分できてきていますので解析すれば応答値は出ますが、解析は結局モデル化したもの同士の結果です。地震応答解析に使う構造モデルはあくまでモデル化したものです。ですからやはり実現
象とは全然違ってきますので、実現象と地震被害との相関関係のデータが必要なのですが、現状で十分かと言うと、なかなか少ないのが現実かと思います。
――そういうところで一応必要なのは、おそらく、地盤と構造物と地震、あと被害状況調査
結果でしょうか。被害状況調査結果のデータはあるのですか。
東日本、熊本、神戸などの被害状況は調べられていますが、結局はそれくらいしかありません。それらだけでもある程度の定性的な分析をするには結構な量なのでしょうが、先ほどお話ししたデータドリブンのアプローチをしようと思うと、十分な量とは言い難いのではないでしょうか。
――さて、K-NET、KiK-net 以外で、少し観点を変えて、ほかにもありますか。
地震防災の分野であれば、もう一つの方向性として、宮本先生が取り組んでいるような衛星データを使った事後の被害でしょうか。復旧のための早急な被害状況予測、あるいは被害状況というところには使える可能性があるとは思います。ほかにも数名、建築の分野でも取り組んでいる方がいます。おそらく社会インフラだと思いますが。でも、こちらはデータが少ないので、これからのアプローチ先としては十分可能性がある分野だと思います。ただ、現状ではデータが少ないですし、たとえば衛星データだと公開データにはなかなかなりに
くそうなところがあります。
――衛星データを使った被害状況予測、宮本先生がやっていたのは建物ですね。ほかには地滑りなどもあるかと思いますが、ほかに対象とするものは何でしょうか。
建物、地滑り、道路通行性の可否といったところでしょうか。あとは交通ネットワークでしょうか。
地滑りについては、衛星データだけではなく、たとえば GPS のデータなどを使うことができるので、おそらくオープンなデータもあるのではないかと思います。

220

――また、事前資料に「データを集めて（連携して）」と書いていますが、別の質問として、連携という観点では、何かシームレスな連携はできるのでしょうか。それとも、研究者がたとえば「K-NET、KiK-net からデータを集め、地盤データを集め、構造データを集め」というように、研究者の頑張りに依存するような形なのでしょうか。
現状では研究者の頑張りに依存しているような気がします。先ほどお話しした国際的なデータベースについては、おそらく連携をとっていると思います。しかしそれ以外では、現状で具体的にシームレスな連携がとられているというのは……。研究チームごとでのデー
タ共有はあっても、シームレスな連携がとられているかどうかは、私自身は把握しきれていません。
――防災の分野では、「SIP4D」などはプラットフォームかと見ています。被っているのですが、データが必要であろう問題に対して、データ収集時に不都合はありますか。たとえば先生が研究するにあたって、「こんなデータがあればいいのに、ない」あるいは「入手できない」というようなものはありますか。あるいは、ありませんか。
構造物の被害のデータは入手が難しいですね。土木構造物はそれほどではありませんが、建物構造の被害データはなかなか難しいと感じています。
――それは、データが取られていないからでしょうか。そもそもないからでしょうか。
民間というかオーナーの所有のデータですから、なかなかオープンにはなりにくいのです。
――なるほど。そういったプライバシーの問題は、ほかのさまざまな分野でもちらほら聞きます。構造物の被害のデータは民間だから入手が難しい……それはそうですね。ほかには何かありますでしょうか。
私は十分に把握していないのですが、この間の９月の土木学会全国大会において、宮本先生を中心に「AI・IoT 技術の地震工学への有効活用検討小委員会」が主催で開催していただ
いた研究討論会で、静岡が何か……。
――３次元点群を取っていますね。
はい、それです。あれはオープンデータベース化しているということですが……。

221

――していますね。
あれの場合は、そういうことにすごく熱心な方がいるからデータを取れているのですが、そうした個人的な努力がないと取れません。また、そこでの議論の中で伺いましたが、デー
タベース化、オープンデータベースやデータプラットフォームを作っていこうと思うと、「誰がデータを取らなければいけないのか」「誰がデータを維持していくのか」「そのコストはどこが持つのか」ということを考える必要があり、かなり難しい面があるとのことです。
また、今は静岡県が予算で取っているのですが、その予算をかけてデータを取ったことが、たとえば県民に対してどれだけのメリットがあるのかということもあります。逆に言えば、
県がデータを取ってオープンデータベース化すれば、いろいろな人が使えますし、いろいろなところが使ったほうが当然メリットは大きくなりますが、そのために県民の税金でデー
タベースを整備することに対する疑問が上がってくるそうです。
――そうでしょうね。少し前に別件で静岡に行った時、たしか杉本さんに伺ったのですが、やる気のある地場の建設業者はすごく得をするらしいのです。そうすると、県民の税金を使って企業を儲けさせることになってしまいます。
そうなのです。でも、その業者がきちんと社会基盤整備に貢献してくれるということであれば、社会全体にもう一回還元されると思います。ですから、そういう社会システムができないと、地震防災に関するデータオープン化というのは難しい分野なのでしょう。それは地震だけではないでしょうが……。
そういった意味で、社会システムや、そこのあり方自身を変えないと、結局「コストなどは誰が負担するんだ」というところで止まってしまうおそれがあるかと思っています。
――そうですよね。また、データプラットフォームやオープンデータの重要性については、どのようにお考えになりますでしょうか。たとえば、データプラットフォームなどがあることによって、研究は進むものなのですか。あるいはオープンデータでも構いません。いろい
ろなデータがオープンであれば、それによって研究が進み、何か社会的に意義のあるような結果が出せそうなものなのでしょうか。
逆に言うと、オープンデータがないと当然、こういう分野の研究は進まないと思いますので、必要性というよりむしろ絶対必須です。必須だと思います。ないといけません。
研究しているだけであれば、各自が持っているデータの中でやって「こういう結論です」「こういう関係性がある」ということを言えればいいわけです。しかし、それを実際に実用化しようと思うと、結局、説明責任になってきてしまいます。そうなると途端にすごく行き詰まってしまうという共通の課題というか、ジレンマがあるように思います。
222

223