2020年3月31日火曜日

判別分析

他支店の方から、SPSS を買ったと伺いました。

判別分析などを実施する目的で購入されたとのこと。
描画は遅いものの計算部分は高速で、数百万行のデータでも容易に扱えるそうです。さすがに商用ソフトは最近のハードに最適化されているのでしょう。逆に、数百万行を高速に扱えないソフトは売れないでしょうね。

聞いたところ、数量化2類が入っていないとのことでした。
調べてみると、ずいぶん前にオプション販売は終了しています。ま、判別分析が入っているのなら前処理としてダミーデータを作成( integer encoding )しておけば良いだけなので、オプションとしての需要がなくなったのでしょう。あるいは、GBM など性能の良い判別機が出ていますので、アルゴリズム自体をあえて利用する機会が減ったのかも。

最初、判別分析は SVM など Classification Algorithm の総称を指しているのかと思って聞いていたのですが、異なっていたようです。scikit-learn で言うところの LDA, QDA アルゴリズムを指していたようです。見る限り、分布のピークを分離しているようですね(利用を迫られた段階で調べます)。
https://scikit-learn.org/stable/modules/lda_qda.html

GUI で高速というのはありがたいでしょう。備えていなくても迫られた際にすぐに答えが出せる点で実務向き。
個人的には Python で十分なのですが、どのような機能があるのか知りたいところです。


2020年3月28日土曜日

RFEM & FORM

昨日と同じ文献です。
Man-Yu Wanga et al.(2020) Probabilistic stability analyses of multi-stage soil slopes by bivariate random fields and finite element methods

RFEM はガウス分布に従ったモンテカルロシミュレーションによって不均質性を表現し、FEM や FDM モデルとした後に SSR 法により安全率を求めるという手法(空間にかかわるパラメータの扱い方がまだ理解できていません)。
知らなかったのですが、比較的多くの事例がありますね。

RFEM に至る流れは、おそらく以下の通り。
3つのレベルで確率を考慮する手法が紹介されています。FORM は通過点でしょう。
https://ieaghg.org/docs/General_Docs/5th_Risk_Assess/VaughanGriffithsieaghg_secured.pdf

FORM において標準正規分布を盲目的に当てはめるのが乱暴で、全体の分布を把握しないといけないというのが直感的にわかる図、言葉も含まれています。
The "safer" slope has a higher "probability of failure"!

FORM は国総研資料第379号でもを扱われています。正規分布でない2次元の確率分布を正規分布で近似し、性能関数に直行する1軸で評価する手順を示されています。取り扱いを簡易にしたいということなのでしょう。ちなみに、扱われた例では second-order でも精度は変わらないという結果でした。
http://www.nilim.go.jp/lab/bcg/siryou/tnn/tnn0379.htm


10年以上前の資料まで追いかけてみましたが、知らないことが多くありました。確率論を避けていたからかもしれません。
ありがたいことに10年以上前では取り扱いが難しい不規則な2次元確率密度分布でも、今ではPython のおかげで誰でも容易に取り扱うことができるようになっています。2変量を標準化しなくても、そのままカーネル密度推定で表現できますし、ある領域化の確率密度を積分することが可能です(手を動かしたことはないですが)。
試してみましょうか。


2020年3月27日金曜日

安定計算と崩壊確率

災害や崩壊にかかわる危険度として相対値なり確率なりの導入を試みる事例を時折目にします。

斜面安定計算でも確率を扱えます。

安定計算に強くかかわるキーパラメータに c・φ があります。この2軸上で確率密度分布を表現するには多くの試験が必要になります。
円弧すべりを考える場合に1軸+簡易CUを多数実施し、cの1次元分布を把握する。それをカーネル密度分布などで連続関数にしてFs=1.0未満の累積確率を求める。このような手順を踏めば、ある条件下での崩壊確率は得られるでしょう。
港湾分野では他分野よりも対象とする土質が比較的均質で室内試験を多く実施する傾向にあるため、上記のような確率の考え方を導入することは容易です(平成19年版設計事例集でも FORM として触れられていました。最新版では消えましたが)。

これが斜面だと難しい。基本は水も土質も均質ではない条件下で、円弧にならないすべり面形状が前提のため、多数の観測や室内試験が必要となります。この点で難色を示される方が多くいらっしゃるでしょう。仮に、試験結果が多数得られたとしても、基準にない確率の考え方を受け入れてもらうことへの抵抗が予想されます。基準に載っており、簡単で、実績のある手法以外を導入し難い気持ちはある程度理解できます。

多量のN値があれば、その確率密度推定結果をφの分布に変換することは、場合によってはありかもしれません。が、数がないので標準正規分布といった仮定を持ち込むのは、乱暴でしょう(数値実験なら良いのですが)。ちなみに、数値実験では標準正規分布ではなく、対数正規分布が多く使われているようです(∵non negative)。例えば以下の文献。
Man-Yu Wanga et al.(2020) Probabilistic stability analyses of multi-stage soil slopes by bivariate random fields and finite element methods

仮に2次元の確率密度分布が得られたところで、それを扱うにも精度の問題が生じます。安全率では計画安全率の0.1%の不足は認められません。確率密度の積分で、その精度が必要とは思えないのですが、基準などで「確率〇%以上を要求」などと決まってしまえば、安全率同様に0.1%の誤差は許されなくなります。計算時間がかかっても、精度の良い積分方法を選択せざるを得ないでしょう。


確率を論じるにはデータが必要になり、それには費用と時間を要します(リスク発現時の対応費用を考えると、微々たる金額ですが)。
こうなると純粋な技術論ではなくマネージメントの領域になります。その判断を経験に依存する分野では、確率論との併用化を進めることは難しいでしょう。

確率を導入する流れに反対ではありません。が、実務上、クリアすべき問題点は多くあるように感じます。

2020年3月25日水曜日

出張

今年度の納品は対面であったりテレビ会議であったり。

テレビ会議は御客様側で戸惑いがあるかな?などと思っていましたが、周りを見ていると案外スムーズに進行しているようです。営業さんに話を聞くと、お客様側では次年度から実施予定でテスト中だったとのこと。それを前倒しされたようです。次年度からは増えるでしょうね。

対面を望まれた場合は伺うのですが、遠方の方は長時間の移動を気にされています。新幹線は空いていますが(感覚的に1/2~1/3程度)、咳き込む方が長時間いらっしゃると私も気になります。

今回の新型コロナウイルス感染症の件では組織の有するリスクマネージメント能力、危機管理能力が露呈したように感じています。前者に成功したという優秀な例は少ないように感じます。個人も同様。私も準備していた使い捨てマスクが底をつきそうです。リスク管理は失敗ですね。

まだ出張はあります。お子様連れの長時間移動を避けられない方もいらっしゃるでしょう。通院が必要で出かけないといけない方もいらっしゃるでしょう。病で免疫力の落ちた方は特に心配です。
個人でできる対策は限られていますが、常に配慮する意識を共有できれば良いと思います。

2020年3月21日土曜日

前処理としての CNN

Zhice Fang (2020) Integration of convolutional neural network and conventional machine learning classifiers for landslide susceptibility mapping, Computers & Geosciences, Volume 13

この文献では特徴量抽出の1手法として CNN を提示。中間層の出力を特徴量としてRF 等に与えています。この実装によりどの学習モデルでも精度向上を成し遂げた点に価値を見出せます。
コードはGitHubで公開されています。読んでみましたが、非常にシンプルで難しいことはされていません。

(良し悪しは別として)こういった方法で実施しましたという報告も参考になります。
Finally, the landslide inventory map was converted into raster data with a grid size of 25 x 25 m. A simple and commonly used sample strategy was used in this study . 70% (255) landslide locations were randomly selected as a training set, and the other 30% (109) landslides were used for validation. In addition, to maintain class banlance, the same number of non-landslide locations (255 and 109) were randomly drawn from areas free of landslide to construct the training and testing sets.
素因を利用したシンプルな報告なのですが、国内での地すべり(地形、すべり面など)に対する機械学習アプローチの報告との差を感じる文献でした。

2020年3月16日月曜日

斜面崩壊と振動

斜面崩壊の振動伝播をシミュレーションで再現できないかと考えていました。

発生源については数年前からいろいろな方にアドバイスをいただいていました。基本、伝播とは別ソフト(DEMなど)で作るほうが良いようです。特に、機械分野の方々はこの意見でした。機械分野や自動車分野では振動解析が死活問題になりかねないのでお詳しいのでしょう。
伝播部分に関しては、いくつかのソフトがあります。当初は GMS を利用するつもりでしたが、プロ曰く、発生源入力部分が難しいようでした。

振動波形とシミュレーションを用いて崩壊のメカニズムを検証する試みは、これまでいくつかなされています。
残念ながら、最近まで知りませんでした。考え選択する方法は、どなたも同じようです。それだけスタンダードな方法になるのでしょう。

最近読んだのはコチラ↓
C. Yi-fei, Y. Yan, G. Jian, et al., Landslide reconstruction
using seismic signal characteristics and numerical simulations: Case study of the 2017 “6.24” Xinmo landslide, Engineering Geology (2019)

  • Stationary stage:
  • Before the landslide starts.
  • random background noise

  • Slipping stage:
  • The slipping stage corresponds to the first principal signal.
  • high frequency and high energy
  • Numerical simulations indicate that the landslide body moves rapidly along the slip surface with a maximum velocity of 47 m/s.

  • Transition stage: 
  • micro-seismic signals
  • low amplitude and low-frequency
  • The DEM simulations indicate that part of the landslide body is deposited on the slopewash while the landslide head continues to move downward along the slope.

  • Entrainment-transportation stage:
  • The amplitude of the seismic signal first increases then decreases, and the frequency range first widens then narrows. 
  • Numerical simulations indicate that the landslide energy at this stage gradually increases and then decreases.

  • Deposition stage:
  • The signal amplitude and peak frequency gradually decrease and the frequency range gradually narrows, reflected by the gradually decreased energy of the landslide body from the simulations.
  • As the landslide body moves toward the valley bottom, the terrain becomes flatter, the migration path widens, and the movement rapidly slows down, resulting in deposition of the landslide mass.

発生前から停止まで、5つのステージに区分されています。
波形と数値シミュレーションを用いた内容ですが、これを読んだだけではよくわからない部分がありました(孫引きはまだ不完全)。

Feng, Z.Y., Lo, C.M., Lin, Q.F., 2017. The characteristics of the seismic signals induced by landslides using a coupling of discrete element and finite difference methods. Landslides, 14(2), 661-674.
  • The rupturing, separation, and sliding of rock mass from upslope (source area, Pt. A and B) generate larger amplitude and lower-frequency signals than those of debris flowing at the downslope (Pt. C and D).
  • The simulated velocity and acceleration are significantly larger than those field data of Station SGSB due to direct impact and near-field effect. Also, more high-frequency waves exist in the simulated signals than those field data because of the same reason, the near-field effect, and because that high-frequency waves attenuate very fast when traveling to the far-field Station SGSB.
  • A landslide with larger rock particles generates lowerfrequency content seismic signals; i.e., larger particles led to seismic signals with lower frequencies and also higher amplitude and stronger signals. For further study, we can observe whether lower frequency in the signal corresponds to large size rock fragments to explain landslide characteristics.
こちらは FLAC +PFC 2D 。先の文献とは異なる結果ですが、これはこれで納得。

シミュレーションで波形を(概ね)再現できて初めて、議論のステージに立てます。波の解釈のみ、あるいは地質屋さんが語るメカニズムのみでは議論になりません。時間の無駄とまでは言わないですが、ベクトルがズレており遠回りです。

いずれにしても、きっかけを掴むことができました。ようやくスタートラインに立てた気がします。


2020年3月15日日曜日

FloPy

FloPy Ver.3.3
https://www.usgs.gov/software/flopy-python-package-creating-running-and-post-processing-modflow-based-models
https://github.com/modflowpy/flopy

MODFLOW を Python で動かすパッケージです。USGS の HP でも紹介されていました。気づきませんでしたね。
Jupyter Notebook を利用する example が豊富です。これは GUI より過程を追いやすいですね。
MODFLOW を使いたかったわけではないので今回は眺めるだけでしたが、それでも多くの機能を扱えるツールであることはわかりました。

FloPy での地質の適用について調べていて、目に留まったのがコチラ↓
https://www.hatarilabs.com/ih-en/how-to-insert-a-3d-geology-into-a-modflow-model-with-python-and-flopy-tutorial
DL したデータには、Neural Net を使用して地質を推定する Notebook が含まれていました。 前処理に標準化も組み込まれていました。プチ衝撃ですね。こんなところにまで機械学習が適用されていようとは。
動かしてみると、学習毎に分布の予測が変化します。ランダムシードを固定すべきところがあるのでしょう。ま、固定しなくても "sequential" NN Model として透水係数場を選定するのに使えないことはないのですが、結果を見る限り日本人受けしないでしょうね。

この例では最後に PyVista といった VTK のラッパー?を使われていました。FloPy と同様に多機能です。凄い時代になりました。

知らない間に技術は進んでいます。遅れ気味ですが、その変化が面白いと感じます。将来が楽しみです。