2026年6月21日日曜日

文献:A Novel High-Frequency Landslide Monitoring Device Based on MEMS Sensors and Real-Time Early Warning Method

A Novel High-Frequency Landslide Monitoring Device Based on MEMS Sensors and Real-Time Early Warning Method

AI要約

1. 背景

地滑りは世界的に甚大な被害をもたらす地質災害であり、特に中国のような山岳地帯では、居住地近くで発生する「小規模ながら大きな被害」を引き起こす突発的な地滑りが深刻な脅威となっています。既存の監視技術(GNSS、InSAR、地中傾斜計など)は一定の成果を上げているものの、「高コスト」「設置の複雑さ」「データ処理の遅延」といった課題があります。特に、衛星測位(GNSS)はサンプリングレートが通常1Hzと低く、崩壊直前の急激な加速フェーズ(数秒〜数分)を詳細に捉えることが困難でした。そのため、低コストで設置が容易、かつミリ秒単位の動態を捉えられる高頻度なリアルタイム監視システムの構築が求められていました。

2. 手法

本研究で開発された GeoMAS (Geological MEMS Alert System) は、以下の技術的特徴を備えています。

  • システム構成: 斜面に設置する「監視ユニット」と、居住区に設置する「アラームユニット」の2ユニット構成です。これにより、物理的な距離(最大5kmのLoRa通信)を利用して避難時間を稼ぐ設計となっています。
  • 高頻度サンプリング: 3軸MEMS加速度計を用い、100〜1000Hzの極めて高い頻度でデータを収集します。これにより、目視では不可能なミリ秒単位の微細な振動や前兆を記録できます。
  • エッジコンピューティングによる高度な信号処理: ウェーブレット閾値フィルタリング(sym8基底)とカルマンフィルターを組み合わせ、環境ノイズを抑制しつつ、加速度から速度・変位を算出する際の積分ドリフトを補正します。
  • パラメータ算出: 加速度、変位に加え、重力成分の空間分解による傾斜角も同時に算出します。
  • 早期警戒アルゴリズム:
    運動強度因子 (y): 加速度の大きさと、異常イベントの発生頻度(時間間隔)を組み合わせた独自の指標を算出します。
    変化率 (y ′ ): y の値を4次多項式でフィッティングし、その微分から変化のトレンドを把握します。
    決定マトリックス: y と ∣y’ ∣ を閾値と比較し、4段階(警報、警告、警戒、安全)のレベルを判定します。また、複数デバイスの情報を統合したリスク指数 (F) による広域評価も行います。
  • 省電力・通信設計: 監視ユニットは20mW以下の低消費電力で動作し、ソーラーパネルとバッテリーで自律運用が可能です。通信は4GとLoRa(自組織ネットワーク)のデュアルモードを採用し、緊急時でも安定した警報送信を維持します。

3. 結果

屋外の大型実験サイトにおいて、人工降雨による斜面崩壊シミュレーションを行い、性能を検証しました。

  • 前兆の早期検知: 目視で亀裂が確認される前の段階で、システムは運動強度因子の異常を検知し、「警戒 (Vigilance)」レベルを通知しました。
  • 警報の発令: 背面に引張亀裂が発生したのとほぼ同時(崩壊の9秒前)に、最高レベルの「警報 (Alarm)」を自動発令しました。
  • 避難時間の確保: 前兆信号の検知から最終的な崩壊まで、システム全体で13秒前に警告を行うことに成功しました。実際の運用では、斜面から居住区までの土砂到達時間を加味することで、さらに長い避難ウィンドウが確保されるとされています。

4. 考察

既存技術との相補性: 本システムは、InSARやGNSSが苦手とする「崩壊直前の過渡的な加速」を捉える能力に長けています。一方で、数ヶ月単位の緩やかな変位の追跡にはGNSSが適しており、これらを統合した「空・宇宙・地上」の共同監視ネットワークの構築が理想的です。
 加速度積分による変位誤差の累積(ドリフト)や、環境変化(雨量など)に応じた閾値の動的調整が今後の課題です。
今後は機械学習を用いた閾値の最適化や、風力・振動発電などのさらなるエネルギー回収技術の導入が検討されています。

崩れる直前1分に焦点を当て、開発されたようです。個人的にはそのコンセプトよりもハードの方が気になりました。ソーラーパネルもLoRaも普及している技術ですが、それをコンパクトにうまくまとめられています。私も手元の機器でこの組み合わせを考えていましたので、参考にさせていただきましょう。

2026年6月20日土曜日

文献:Groundwater pH buffering in carbonate aquifers exposed to high-calcium ash backfill


AI要約
1. 背景
廃止された浅い鉱山跡は、地盤沈下を引き起こし、インフラや公共の安全を脅かす重大なリスクとなります。この対策として、石炭や油母頁岩(オイルシェール)の燃焼副産物である高カルシウム灰( CaO 含有率20%以上の灰)をバックフィルとして地下空洞に注入し、地盤を安定化させる手法が取られています。高カルシウム灰は自己硬化性を持つため、ポルトランドセメントの使用量を抑え、コストと二酸化炭素排出量を削減できる利点があります。
しかし、室内試験ではこれらの灰がpH 12.5 を超える強アルカリ性の浸出水を発生させることが確認されており、地下水環境への悪影響が懸念されてきました。
一方で、世界の陸地の約15%を占める炭酸塩岩は、重炭酸塩(HCO₃⁻)と二酸化炭素(CO₂)の系による強い天然の緩衝能力を持っています。本研究は、実際の炭酸塩帯水層において、この緩衝能力が強アルカリ性のバックフィル浸出水をどの程度抑制できるかを検証することを目的としています。

2. 手法(詳細)
本研究では、室内試験、地球化学モデリング、および2年間にわたる長期的な現場実証実験を組み合わせた統合的なアプローチが採用されました。
  • 現場実験の設計: エストニア北東部の、上部被覆層が10m未満と薄い廃止されたオイルシェール鉱山が選定されました。
  • バックフィル注入: 遊離石灰( CaO )を約 30wt% 含むオイルシェール飛灰を使用しました。これを水灰比 0.65〜0.70 で混合してスラリー化し、計74m3を地下の坑道に注入しました。これにより、10mのテスト区間に平均厚さ約1.6mのバックフィル体が形成されました。
  • モニタリング体制: 注入地点から約10mの距離に、上流側(バックグラウンド用:DH1, DH2)と下流側(影響評価用:DH3, DH4)の計4つの観測井を設置しました。
  • 連続測定: pH、水温、水位を自動センサーにより連続的に記録しました。
  • 定期的サンプリング: 定期的に地下水を採取し、主要イオンや重金属(As, Ba, Cd, Cr, Pb, Se)の濃度を分析しました。
  • 地球化学モデリング: ソフトウェア「The Geochemist's Workbench」を用い、バックフィルから発生したアルカリ性孔隙水が帯水層へ移動する際の化学反応を1D反応輸送計算でシミュレートしました。
  • モデルの設定: 浅い帯水層であることを考慮し、大気中のCO₂と平衡状態にある「開放系」を仮定しました。地下水の移動速度は10 m/日、初期孔隙率は10%に設定されています。
  • 室内浸出試験: 規格(EN 12457-3)に基づき、「新鮮な灰」と「28日間養生して硬化したバックフィル」の両方に対して試験が行われました。なお、硬化した材料は試験前に4mm未満の粒子サイズに粉砕されました。規格(DIN EN 12457-3)によれば、高固形分かつ特定の粒子サイズ以下の材料を対象とした、固液比 2 L/kg および 8 L/kg の2段階バッチ試験です。
  • 得られた成分溶出挙動をモデリングの境界条件として使用しました。
3. 結果
  • pHの変化: 室内試験ではpH 12.0〜12.7 の強アルカリ性が確認されましたが、現場の観測井(10m地点)では有意なpHの上昇は見られませんでした。モデリングの結果とも一致し、アルカリ度はバックフィル近傍で急速に減衰することが示されました。
  • 主要イオンの挙動: 最も顕著な変化は硫酸塩(SO₄²⁻)濃度の増加でした。一方で、カルシウム(Ca²⁺)や重炭酸塩(HCO₃⁻)は、後述する方解石の沈殿に伴い減少する傾向がモデルで予測されました。
  • 孔隙率の減少: モデリングにより、アルカリ性浸出水と地下水の反応で方解石(Calcite)が沈殿し、孔隙率が30日間で10%から約7.5%へと低下することが予測されました。
  • 重金属: 重金属類の系統的な濃度上昇は確認されませんでした。これはバックフィル注入によるpH上昇が限定的であったことも要因の一つと考えられます。
4. 考察
本研究により、炭酸塩帯水層には高カルシウム灰由来の強アルカリを効果的に中和する能力があることが実証されました。
  • 緩衝メカニズム: 地下水に溶解しているCO₂から生成される炭酸が、浸出水の水酸化物イオン(OH⁻)を消費し、方解石として沈殿させることでpHを背景値付近まで低下させます。このプロセスは、大気とのガス交換が容易な浅い帯水層で特に有効です。
  • 水理的障壁の形成: 方解石の沈殿による孔隙率の低下は、バックフィル周辺の透水性を下げ、浸出水の拡散を抑制する「水理的障壁」として機能する可能性があります。
  • 真の環境懸念: 炭酸塩帯水層において、高カルシウム灰の使用による主要な課題はpHの上昇ではなく、硫酸塩(SO₄²⁻)の増加であることが明らかになりました。飲用水源として利用される地域では、pHよりも硫酸塩に焦点を当てたモニタリングと対策が不可欠です。

20年くらい前でしょうか、同じような室内実験結果をシミュレーションの境界条件にしたことを思い出しました。国内ですので指針もなく、理屈が誤っていないことだけが拠り所だったのですが、この論文を見て安心しました。このような規格を知っていたら、もう少し説明性も上がったのかもしれません。

生成AIとオジサンのシナジー

後輩君「表面波の分散曲線を得られない」とのこと。

データの一部を見せてもらいました。
まずはコリレーション。そしてCMP重合。で、位相シフト。Claude に指示したところ、何の問題もなく結果が出ました。彼も Claude を使用して試行錯誤していたのにたどり着けていません。

この差は何なのか?と考えた結果、経験か?となりました。
知識はあっても、不慣れであれば指示が大雑把になるかもしれません。求める答えにたどり着くには、AIの提案に対して細部の判断、方向性のずれの早期修正が必要です。手順、見たい周波数帯、測点の選定範囲、間隔など、基礎知識として点で持っていても、線でつながっていないと適切な指示ができないのでしょう。

以前は基礎知識を習得後、自分でプログラムを組むか市販ソフトの使い方を覚える必要がありました。が、今はそこまで必要ありません。順に何をしたいか、何に気を付けないといけないか、誤っていたら修正させるなど、口頭でそのまま AI に渡せる能力があれば十分です。若い人たちに対しては、ソフトの指導は必要なく、考え方の指導がより重要になっています。もしかすると、オジサンに優しい時代が来たのかもしれません。

基礎知識、ノウハウ、応用力がより重要になっています。オジサンの経験を Skill として記録し展開することで、停滞していた技術の伝承もある程度進むのかもしれません。


2026年6月14日日曜日

生成AIのSkillと研究

Fable5 が使用停止になっている Claude。

UBUNTU では Code を CLI で利用しています。
Windows では GUI?。こちらには Chat, Cowork, Code が含まれています。Chat, Cowork は アカウント共通で、別 PC でも(Chatは)スマホでも同じセッションを扱えます。カスタマイズした skill も共通です。

が、Code の Skill は PC 毎。カスタマイズした Skill とは別です。
plugin も含めて整理すると3系統です。

① アカウント共通のSkill(クラウド型)— Chat / Cowork
保存先: Anthropic アカウント(クラウド)
同期範囲: ログインした全端末で共通。Skill は自分のアカウント専用(プライベート)。Enterprise はオーナーが組織全体へ配布可。
追加方法: アプリ内 Customize > Skills →「+」→ Browse skills / Create skill(Create skill 内で ZIP アップロード)
実行環境: コード実行コンテナ(要:Code execution 有効化 / Settings → Capabilities)
対応形式: 自己完結した単体 Skill のみ。ZIP はルートに Skill フォルダごと入れ、中に SKILL.md。

② PC別のSkill(ローカル型)— Code(Claude Code)
保存先: このPCのファイルシステム。-g 指定時は %USERPROFILE%.claude\skills\、-g なしはそのプロジェクトの ..claude\skills
同期範囲: PCのみ(端末ごとに個別インストール。アカウント同期なし)
追加方法: ターミナルで npx skills add ... -a claude-code(-g=全体 / なし=そのフォルダ(プロジェクト)限定)
実行環境: ローカル

③ Plugin
中身: Skill+エージェント+コマンド+フックの束
保存先: PCの %USERPROFILE%.claude\plugins\(ローカル)
同期範囲: PCのみ(アカウント同期は公式に無し)
追加方法: Claude Code 内で /plugin marketplace add owner/repo → /plugin install 名前@マーケット名
実行環境: ローカル(Claude Code)

node が入っていない PC では、Code に頼めば両方ともいれてくれます。
npx skills add https://github.com/vercel-labs/skills --skill find-skills -a claude-code -g
npx skills add https://github.com/anthropics/skills --skill frontend-design -a claude-code -g
npx skills add remotion-dev/skills --skill remotion-best-practices -a claude-code -g

論文作成に使えそうな Plugin, Skill では、以下が引っ掛かりました。
npx skills add dsebastien/ai-skill-scholar --skill  "*" -a claude-code -g
npx skills add dsebastien/ai-skill-arxiv --skill "*" -a claude-code -g

https://github.com/tam07pb915/ethical-academic-writing
これはclaude.aiでの利用が推奨されています。①クラウド型 Chat / Cowork ZIP 用です。
ダウンロード → claude.ai の Customize > Skills → Create skill でアップロード。
中身は Skill なので、②としても可能。
npx skills add https://github.com/tam07pb915/ethical-academic-writing --skill ethical-academic-writing -a claude-code -g

以下はフックの自動実行が将来的に不安だったので入れていません。が、プラグインの入れ方として残しておきます。
https://github.com/Galaxy-Dawn/claude-scholar/blob/main/README.ja-JP.md

インストール
/plugin marketplace add Galaxy-Dawn/claude-scholar
/plugin install claude-scholar@claude-scholar
/reload-plugins

削除
/plugin uninstall claude-scholar@claude-scholar
/plugin marketplace remove claude-scholar


研究にAIを使わないという選択肢はもうありません。有効な使い方、プロセスが提供されていますし、若い方にとっては標準ツールの一つになっているでしょう。
どう使うかが問われる中で、自分の使い方を模索しつつ、同時に対応も求められている──そのような状況です。




2026年6月9日火曜日

FGAM2

地形も入れたFGAM1よりも、雨だけFGAM2の方が汎化性能が良さそうなので、そちらでコードを動かしてみました。

が、得られた降雨応答局面 F(t, X)がおかしい。崩壊直前より33日前の方が効きが良い。実際は逆です。最初に確率を稼いでおいて、段々減じるような非物理的モデルになっています。



論文では「近い日が効いている」とのことなので、逆転しています。でも、得られた確率はあっている。うーん。
ふと、空間CVの一つを見てるからか!と気づきました。全データ使えばどうか?と思い、予測していた能登も学習データ(紀伊+宮城)に混ぜてみました。
結果はOK。論文通り、近い日も効きました。

mgcvのように省けそうなルーチンが含まれて手数が多くなっているのですが、その割に物理モデルとまでは言えない結果。これなら従来の実行雨量の方がシンプルでは?と思い試してみました。
実効雨量を説明変数にしたロジスティック回帰と、FGAM2 を、同じ学習/検証分割で比較。


半減期が短いほど能登で良い(3日 0.846 > … > 60日 0.770 > 単純累積 0.747)。=最近の雨ほど効く。これは能登の実態に合っています。
FGBM2が合うイベントではなかったのでしょう。

2026年6月7日日曜日

文献:On the use of rainfall time series for regional landslide prediction by means of functional regression

On the use of rainfall time series for regional landslide prediction by means of functional regression - ScienceDirect

コード/データ: GitHub - Vitorecacho/Functional-Regression-Landslide: This is a comprehensive R script designed for Landslide Susceptibility Modeling. It compares Functional Generalized Additive Models (FGAM) against standard Generalized Additive Models (GAM). · GitHub— R言語、`refund` / `mgcv` パッケージ使用

時空間という視点は以前私が寝かせた案の一つ。どのように扱っているのかな?と見れば日本のデータ。これは見なければ、ということで早速AIに投げました。

AI要約

 1. 背景
 降雨誘発型地すべりの早期警戒は、50年以上にわたり降雨閾値に依存してきた。降雨の強度・継続時間・累積量がある臨界値を超えると地すべり発生確率が急増するという経験的・統計的アプローチで、直感的で一般市民にも伝わりやすく世界的に成功してきた。
 降雨閾値は地形特性とは独立に推定され、後段で「掛け合わせ」によって統合されることが多い。しかし統計的には、確率の単純な積で同時確率を求められるのは変数が互いに独立な場合のみ。実際には地形は降雨の時空間分布に強く影響する(植生による蒸発散など)。したがって降雨と感受性は独立と仮定できず、両者の事後的統合は統計的に問題がある。
これを受けて、降雨を感受性モデルに直接組み込む時空間モデリング(space-time modeling)が登場。データを「データキューブ」(平面=空間、高さ=時間)として捉え、地すべりの有無を応答変数とする。
これまでの時空間モデルのほぼすべてが、降雨を時間窓ごとの累積値(スカラー値)に集約してしまい、時系列本来の豊かな情報を失っている。一方、連続した降雨信号をそのまま扱う試みでは、スカラー手法を大きく上回る性能が報告された。
深層学習(LSTM・CNN)の課題:①ブラックボックス性、②大量のラベル付きデータが必要(正確な発生時刻を持つインベントリは希少)、③学習された時間特徴に物理的意味づけができない。
関数回帰(functional regression)の利点:降雨時系列上に滑らかな係数関数 β(t) を明示的に与えるため、「どの時点の降雨が最も効くか」を直接解釈でき、早期警戒システム設計に有用。
Moreno et al. (2025) は関数回帰を試したが、地形+降雨を入れた場合、長い時間窓ではスカラー版と関数版の性能差が消えた。著者らは「これは時系列がわずか6日と短すぎたため」と仮説を立て、より長い時間窓で再検証することを本研究の目的とした。

 2. 手法
 2.1 対象データ(日本の3つの地すべりインベントリ)
国土地理院(GSI)の資料を基に、降雨誘発型地すべりの3事例を使用。

| 地域 | 誘発イベント | 時期 | 地すべりポリゴン数 |
| 紀伊半島 | 台風Talas | 2011年9月 | 1,902 |
| 能登半島 | 豪雨 | 2024年9月 | 1,540 |
| 宮城・福島 | 台風Hagibis | 2019年10月 | 847(土石流・表層崩壊のみ) |

2.2 データキューブの構築
マッピング単位: グリッドではなく斜面ユニット(Slope Units, SU)を採用(`r.slopeunits` + QGISのSZ-pluginで最適化)。
総観測数 64,250 SU(Kii 49,306 / Noto 6,056 / Miyagi 8,888)。不安定SUの割合はそれぞれ3%, 10%, 4%。
静的共変量(5つ): 傾斜(Slope)、断面曲率(Profile curvature)、斜面方位を分解した Eastness / Northness、岩相(Lithology:堆積岩・付加体・火成岩・変成岩の4分類)。すべてGSI DEM等から導出。
動的(関数)予測子:CHIRPS-GEFS による日降水量(予報データ、空間解像度5km)。発生日とその33日前まで=計34日の降雨時系列を、先行降雨(準備的)+誘発降雨を含む形で構築。

2.3 GAM と FGAM
GLM → GAM → FGAM という拡張系列
GLM(一般化線形モデル): 予測子と地すべり発生のlog-odds(対数オッズ)の間に線形関係を仮定する。この線形性が制約となる。
GAM(一般化加法モデル, Generalized Additive Model): 応答変数の期待値を、予測子の滑らかな(非線形の)関数の和で表せるようにしてGLMを一般化する。この滑らかな関数にはスプライン(spline)を用いる。加法構造(additive structure)のため、各共変量の寄与を個別に分離・解釈できる(機械学習のブラックボックス性と対照的)。
指数型分布族の応答を扱え、本研究では地すべり有無を二値(Bernoulli分布)して扱いロジットリンク関数 logit(p) = log(p/(1−p)) で線形予測子を [0,1] の確率に変換する。

FGAM(関数一般化加法モデル, Functional GAM): GAMをさらに拡張し、スプラインのような滑らかな関数項に加えて、関数項(functional term)=予測子そのものが時系列(関数)であるものを組み込めるようにしたもの(McLean et al., 2014)。
降雨時系列に対して回帰でき、地すべり過程に内在する非線形な時間ダイナミクスを表現できる。技術的には各時点での寄与を「ヒートマップ」として捉え、s次元×t次元のパラメータ空間になる。関数項は係数関数(無限次元)と降雨データ関数の L²内積で定義される。無限次元のままでは推定不能なので、K個の基底関数(B-spline)に展開して K次元の有限問題に変換する。

Y(s,t) ~ Bernoulli(p_s,t)

logit(p_s,t) = α + β1·eastness_s + β2·northness_s + γ·litho_s
              + f1(slope_s)          ← 1次元スプライン(基底7個)
              + f2(profcurvature_s)  ← 1次元スプライン(基底5個)
              + f3(precipitation_s,t) ← 2次元スプライン(各次元4基底)=関数項

降雨の関数項は、降雨曲線と各基底関数の積を積分してスカラー共変量 Zik を事前計算し、それを滑らか項としてモデルに投入する(**Penalized Functional Regression, PFR**)。

 2.4 推定
REML(制限付き最尤法)で平滑化パラメータを推定(Rの refund + mgcv バックエンド)。GCV(一般化交差検証)は過小平滑化・局所解の問題があるため不採用。
過学習を防ぐため、係数関数 β(t) の「うねり(wiggliness、2階微分の2乗積分)」に基づくペナルティを課す(平滑化パラメータ λ で適合度と滑らかさのトレードオフを調整)。
基底数 K は有効自由度(EDF)が K より十分小さいことを基準に選択。

 2.5 ベンチマーク(4モデルの比較設計)

| モデル | 降雨の扱い | 地形共変量 |
| FGAM1 | 関数(時系列) | あり |
| FGAM2 | 関数(時系列) | なし(降雨のみ) |
| GAM1 | スカラー(累積値) | あり |
| GAM2 | スカラー(累積値) | なし |

検証戦略: 時間窓を1日ずつ増やして34日まで性能変化を観察。
ランダム交差検証(訓練比率5%〜90%、各100回ブートストラップ)。
空間交差検証(leave-one-inventory-out):2地域で訓練・残り1地域で検証(転移性能を評価)。
評価指標:AUC(カットオフ非依存)、混同行列・TP/TN率(Youden指数でカットオフ設定)、Precision-Recall。

3. 結果
3.1 共変量の効果(FGAM1)
傾斜: ほぼシグモイド状。〜10°は低確率、10〜35°でほぼ線形に確率増加、その後変曲(最大傾斜で確率約0.3)。表層崩壊・土石流という地すべりタイプと整合(緩斜面は安定、急峻すぎると土層が乗らない)。
断面曲率: ほぼ平坦地形でピーク(確率〜0.55)、凸型・凹型では急減。
岩相: 付加体のみが有意に不安定と関連。
方位: 東向き・南向き斜面で不安定性が高まる。
降雨の関数効果: 33日前(day −33)はどんな強度でも発生確率ほぼゼロ。発生日に近づくと確率が急増し、ピークは発生の1〜2日前。3事例とも約3日続いた暴風雨で誘発されたことと完全に整合。

3.2 時間窓に対する性能
GAM2が一貫して最低性能(AUC開始点〜0.73)。
GAM1は地形予測子のおかげで〜0.80から開始。
関数モデル(FGAM1/FGAM2)はスカラー版を上回り、かつ挙動が安定(滑らかに性能向上、特にday −16以降)。GAMは時間窓に対し不規則変動。
GAM1とGAM2の性能差は大きいが、FGAM1とFGAM2の差は小さい。

3.3 データ量に対する安定性
訓練データ割合を変えたときのモデル安定性ベンチマーク。AUCは補集合(検証サブセット)で計算し、手順を100回ブートストラップして箱ひげ図を作成。
FGAMは一貫してGAMを上回り、少ない訓練データで早く性能の漸近線に到達。ランダム交差検証でFGAMはAUC > 0.81(acceptable〜good)を安定維持、GAMは0.81未満。
ランダムCVは過大評価しがち(Anderssen et al., 2006)。隣接SUは地形が類似し降雨も5km格子を共有するため、訓練と検証に近接SUが混在して空間的自己相関で結果が楽観的。 FGAM2は地すべり検出(TP/P, 平均83.8%)でFGAM1(80.7%)よりわずかに高いが、安定斜面の識別(TN/N)では76.2% vs 69.9%でFGAM1が優位=降雨のみのFGAM2はFN(見逃し)を多く出す。

3.4 空間交差検証(leave-one-inventory-out)
| 訓練 | テスト | モデル | AUC | 評価 |
| Miyagi & Noto | Kii | FGAM1 | 0.749 | Moderate |
| Kii & Miyagi | Noto | FGAM1 | 0.681 | Acceptable |
| Noto & Kii | Miyagi | FGAM1 | 0.613 | Acceptable |
| Miyagi & Noto | Kii | FGAM2 | 0.746 | Moderate |
| Kii & Miyagi | Noto | FGAM2 | 0.757 | Moderate |
| Noto & Kii | Miyagi | FGAM2 | 0.723 | Moderate |

FGAM1のAUCは地域により0.61〜0.75(ランダムCVより低い=地域間の一般化は難しい)。FGAM2は3地域すべてで安定して良好(0.72〜0.76)。地形相互作用を入れたFGAM1は日本の多様な地質で性能が落ちることがある。

4. 考察(Discussion)
4.1 支持する論点(強み)
多変量フレームの統計的正当性:感受性評価と降雨閾値を別々に行うのは数値的に妥当でない。多変量回帰は共変量の相互影響を同時推定できる。
解釈性: 統計モデルは回帰係数や確率を直接見ることでモデル自体の理解が得られる。機械学習のLIME・SHAPは事後的(post-hoc)な近似にすぎず、モデル内部の指標ではない。
コンカービティ(concurvity)検証: 加法FGAMが地形(静的)と降雨(動的)の効果を適切に分離できることを確認(降雨0.61/0.35、傾斜0.40等、いずれも0.8閾値以下)。
降雨閾値の概念を継承: 降雨を発生日から遡って累積する手法は従来の降雨閾値と類似で、過去50年の早期警戒の知見を関数回帰に直接統合できる。
運用上の意義: 誤りの種類が重要。FN(見逃し)は人命に直結、FP(空振り)は信頼低下を招く。
予報降雨を使用: あえて観測でなく予報降雨を使い、前向き(forward-looking)に検証。早期警戒システムの要件を満たす設計。

4.2 反対する論点・限界
時間窓の問題: 性能はday −23付近で漸近(GAMはday −29でピーク)。適切な時間窓の定義が未解決の大きな課題。
地すべりタイプ未分類: 3事例は主に表層崩壊・土石流(≒単一タイプ)。タイプ別早期警戒(浅い/深い地すべりの区別)ができず、降雨時系列の地形学的解釈にも制約。深い・大規模な地すべりはより長い時系列が必要と推測(浸透に時間がかかるため)。
データ要件の厳しさ: 高頻度降雨データと正確な発生時刻を持つインベントリが必須。多くのインベントリは時刻が月・季節単位で曖昧。時間的不確実性は係数関数 β(t) にノイズを注入し、特に発生直前の重要な数日で降雨効果を過小評価する。データ希少地域では従来の静的感受性マップ・経験的閾値の継続使用が依然適切。
空間転移の難しさ: Leave-one-out検証(未学習の別地域+別イベントへの転移)で性能が低下(FGAM1で0.61〜0.75)。日本の地質的多様性により、地形相互作用を含むFGAM1は学習データと条件が異なる地域で性能が落ち、降雨のみのFGAM2の方が転移には安定(0.72〜0.76)。

  検証の整理:①ランダムCV=同一イベント内でのSU内挿(リーク込みで楽観的)、②空間CV=未学習の別地域への転移(0.6〜0.76)。
社会・運用的側面: 降雨閾値が今も主流なのはシンプルさゆえ。「○○mm降ったら警戒」は専門知識不要で誰でも理解できるが、関数回帰の確率はそうではない。多くの人に理解される警報ほど従われやすく、結果的にリスク低減につながる。性能だけが最良の基準とは限らず、行政機関・住民との協働による警報設計が必要。

4.3 結論
連続降雨時系列を用いた関数回帰(FGAM)は、スカラー集約モデルより一貫して優れた地すべり予測を与えることを、日本の3事例・多様な交差検証で実証。総合的にはPrecision-RecallでFGAM1が最良。
研究コミュニティに対し、スカラー降雨集約値の慣習的使用を批判的に見直すよう提言。
地域→他地域の転移は性能が落ち(0.6〜0.76)、全国共通の単一式は難しい。転移設定では降雨のみFGAM2が比較的健闘。検証例はまだ少なく、地形・降雨・地すべりタイプを変えた系統的検証が必要。

今後の課題: ①地域差を説明する変数・階層/転移モデルでの汎化、②タイプ別かつ発生時刻精度の高いインベントリでの検証、③降雨の高解像度化・地域別の時間窓最適化、④発生確率(感受性)に加え規模(intensity)・完全なハザードへの拡張、⑤確率出力を行政・住民が受け入れる警報へ翻訳する社会実装。


雨についてはRのライブラリを利用しながら33日前からの崩壊確率を出されてています。実効雨量や近年の機械学習ではもっと前の雨を使いますが、3つのイベントは台風のような短期指標があればよいので、33日とされたのかもしれません。目的が長期なのであれば、違ったイベントで見たいですね。
ランダムCVはリークの可能性があるというのはよく見かけます。汎化の妥当な見積りは空間CV側でしょう。そのFGAM1,2の結果を見ると、地形・地質を加えた効果が相対的に小さい=地形・地質を交えた汎化が難しい→降雨だけの方(FGAM2)がまだ良い、でしょうか。結論を得るには、もう少し地域を増やす必要があるのでしょう。
各地域は1イベントのみのため、「同一地域の“次の”豪雨を当てる(時間的転移)」は本研究では検証されていません。その場合はもっと性能が上がると期待します。

ちょっと雨量の関数化がややこしいのでコードを見てみましょうか。


2026年6月5日金曜日

SPHのGPU化

SPH(粒子法)シミュレーションコードの GPU 化に取り掛かりました。

まずは、土のみ3Dコードから。テストには 斜面崩壊(粒子数77万弱、200,00step)を使用しました。実行環境は Dtransu と同じです。
GPU: NVIDIA RTX 4000 Ada(20GB、CC 8.9)
CPU: AMD EPYC 9754(128 コア)

いくつかの試行を得て、こちらは GPU 版が CPU 版に勝てない結果となりました。
OpenMP  32 / 64 / 128 スレッド 94.4 / 60.3 / 48.0s 
OpenACC 75〜84s 
CUDA Fortran + Thrust(set_box のみ)  41.7〜55.3s  

計算コードの変数を倍精度で計算していたため、FP64律速かつメモリ帯域律速となり、搭載GPU にとって二重に不利、CPU に有利でした。特に処理時間の約45%を占める make_interaction とkernel_correction は、GPU 側で改善できませんでした。粒子のセル順ソートは GPU では悪化、コアレス化は微妙でした。
  
セル分割処理だけはGPUで効果がありました。この処理は整数演算 が主体で、FP64律速にも帯域律速にも縛られなかったのでしょう。
  • セル分割(set_box):空間を格子(セル)に区切り、「どの粒子がどのセルにいるか」の対応表(名簿)を作る処理、近傍探索の前準備です。GPU 化では内部のソートに Thrust の sort_by_key (CUB の基数ソート) を使い、インデックス(cell_id と粒子番号)だけを並べ替えて名簿を作ります(粒子データ本体は動かさない)。これが GPU で効いた処理です。
  • 粒子のセル順ソート(reorder_particles):粒子データ本体そのものを、セルの順番に並べ替えておく「席替え」(50 step 毎)。近くにある粒子をメモリ上でも近くに置き、キャッシュ効率を上げる狙い。set_box内のソートと違い、倍精度の粒子配列を丸ごと移動するため、GPU では悪化しました (CPU ではキャッシュ効果で改善)。
  • メモリアクセスのコアレス化(pair_layout):粒子ペアのデータを GPU が読みやすい並び順に変える。GPU は隣り合うスレッドが連続したメモリを読むと速い(=コアレス化)ので、その並びに合わせる。
セル分割+ソート+コアレス化は DualSPHysics の講義で教えていただいたのを覚えていました。当時はメモリ上の最適配置程度で大きな影響があるとは思わず、ちょっとしたテクニック程度の認識でした。ほかにも、DualSPHysicsでは dx/dw など過去の値に依存しない変数は FP32、累積する変数は FP64 でドリフトを避ける工夫がなされています。

土のみコードは両者を倍精度で計算しており、一部を単精度にすると過去の結果(降伏、流体化の判定)の完全再現が困難。単精度化は周囲の応力均衡を変化させ、隣接粒子の降伏タイミングを次々とずらしていく連鎖を引き起こします。これは避けたいので、今回は速度を犠牲にして見送り。 

今回はここまで。次は、残したFP32化に手を付けるか、良いGPUに入れ替えるか、でしょうか。A100 / H100 クラスの GPU であれば、CPUを超えるかもしれません。