2012年12月30日日曜日

1日遅れの仕事納め

今日は1日遅れの仕事納めでした。

現場帰りの高速道路では事故渋滞の連発。
前を見ていないのか、渋滞後尾でキキー、バンと音がし、また 事故の発生。年末年始、警察の方も大変でしょう。

今年は現場が多く、7月以降はほぼ毎日現場漬け、夜内業の日々でした。踏査・コア観察・試験・観測といった自然を知る過程を多く経験できたと思います。対象も、地下水、地すべり、廃棄物、軟弱、トンネル、造成、その他いろいろ経験させてもらった1年でした。
残念ながら、有効応力解析や地震応答解析などの、実務的ノウハウ習得といった短期目標は全くダメな年でした(教科書的な話までで終わりました)。ま、この支店に着任した際、中期的な目標「多くの現場で経験をつむ」を設定したので、そういう意味では着々と目標達成に寄与した年でしたが。

一通り、興味のあることは試しましたので、来年はあまり興味が沸かない(しかし周りからは受けろと言われている)建設部門の技術士試験でも受けてみましょうか? まず、漢字の勉強からですが。

2012年12月28日金曜日

MyScript Calculator

引き続き App Store を見ていますと面白い電卓がありました。

MyScript Calculator

手入力>文字認識>計算といった流れ。しかも修正可。分数やLogも対応。画期的ですね。次は日本語メモ版でしょうか?既にありそうですけど。

音声認識精度は格段に上がっていますね。ただ、人前でも恥ずかしくない音声入力方法はないものでしょうか?


GeoClino for iPhone

でも、機能はアナログより豊富。XMLでメール転送可能ですので、EXCELで読み込み、StereoWinや Dips にはマクロで流し込めます。あとはCADへ走行傾斜のマーキングが流せると申し分ないです。

久しぶりに App Store を確認してみますと、下記の通り変化なし。ただ、iPhone5でも動きました。
 https://itunes.apple.com/jp/app/geoclino-for-iphone/id398949364?mt=8

■対応機種
・iPhone3GS,4
・iPad WiFi+3Gモデル

■対応OS
・iOS4.0以上
サポートリンク先を見ると、アンドロイド版アプリやマニュは変わっていました。App Store の表記は更新していないのでしょうね。


2012年12月27日木曜日

つらら

山の雪もずいぶん減りました。

珍しく晴天で温かい日差しが降り注いでいましたが、それでも気温はマイナス。孔内傾斜計のアルミケーシングのフタが凍りついて外せませんでした。ライターで温めると簡単に外れましたが、それをとりに行くため一度山を降りる羽目に(情けない)。


今日の一枚。綺麗でした(といいつつ、この下を通過せざるをえない状況)。


2012年12月26日水曜日

HP で主成分分析

主成分分析を調べていると、簡単に計算・作画可能なサイトがありました。

http://d.hatena.ne.jp/hoxo_m/20120106/p1

これは便利。
ただし、第2主成分の主成分得点がRや手計算(EXCELは手計算と言わない?)の結果と少し異なっていました。こういったサイトで傾向を見て、選別したものを R で計算しなおすのが良さそうですね。

計算サイトもそうですが、以下の部分も感心。R、深そうです。
data(iris)
data <- iris[1:4]
prcomp.obj <- prcomp(data, scale=TRUE) # 主成分分析

pc1 <- prcomp.obj$x[,1] # 第一主成分得点
pc2 <- prcomp.obj$x[,2] # 第二主成分得点

label <- as.factor(iris[,5]) # 分類ラベル
percent <- summary(prcomp.obj)$importance[3,2] * 100 # 累積寄与率

plot(pc1, pc2, col = label, main = paste(percent, "%"))

クラスター分析

主成分得点まで計算できたら、今度はクラスター分析。

いくつか手法があるようですが、所詮はデータ間の距離の取り扱い方・考え方の違いだけのよう。文献と同じK平均法だとコマンド1発でOKでした。簡単。
ただ、グラフ表示の仕方が分からないので、結果をEXCELで確認。

うーん。良い感じ。
これは数学というよりは、人間の感覚をPCで表現したと言う感じですね。クラスターの数や分析結果のプロットが感覚に合うまで試行錯誤が必要なのでしょう。
感覚に客観的根拠を与えるため、定量的評価のために統計的手法を用いること自体に興味はないのですが、実務では必要とされる場合が多いようです。実装しておいて損はないでしょう。

ま、文献の内容は理解できましたし、自分でもできるようになりました。
何が「画期的」だったかというと、今までヘキサで表現し、形の似ている似ていないを議論していたところが定量的になったところでしょうか?うーん。




2012年12月24日月曜日

R で主成分分析

R をインストールし、主成分分析を試してみました。

最初はEXCELでもできるかな?と思い、分散共分散行列まで作りました。が、固有値・固有ベクトルを簡単に出す方法が分かりませんでした。HPを探してみるとソルバーやマクロなど、繰り返し計算で解決している例がりありましたが、それなら最初からRを使った方がミスがなく正確だと思い、トライしました。(一応、EXCELでも答えはRと同じでしたが。)

基本CUIですが、コマンドの修正(打ち直し)やコピペができたり、クリップボード経由でEXCELからデータを読み込めたりします。DOSに比べると雲泥の差(EXCELシートを直接読めるパッケージもあるそうです)。さすが有名なオープンソース。
使ったコマンドは以下の通り。備忘録です。


クリップボードからの読み込み        
> sui <- read.delim("clipboard")
> sui

     pH 温度 電気伝導度mS.m
1  7.70 11.4           88.5
2  8.19 10.7           21.8
3  7.65  9.4           21.3
・  ・  ・       ・
・  ・  ・       ・

標準化                      
 
> sui.scale <- scale(sui) 
> sui.scale
              pH         温度 電気伝導度mS.m
 [1,] -0.6883099 -0.182747450     3.17019503
 [2,]  1.2956421 -0.856027531    -1.40223461
 [3,] -0.8907540 -2.106404823    -1.43651069
 ・      ・       ・        ・
 ・      ・       ・        ・
attr(,"scaled:center")
            pH           温度 電気伝導度mS.m
         7.870         11.590         42.255
attr(,"scaled:scale")
            pH           温度 電気伝導度mS.m
     0.2469818      1.0396862     14.5874306

主成分分析                       
> sui.sc.pc=princomp(sui.sc)
> summary(sui.sc.pc)
Importance of components:
                          Comp.1    Comp.2    Comp.3
Standard deviation     1.3646128 0.7299083 0.6745857 #固有値の平方根
Proportion of Variance 0.6533923 0.1869355 0.1596722
Cumulative Proportion  0.6533923 0.8403278 1.0000000

> sui.sc.pc$loadings #固有ベクトル(空白≒0)

Loadings:
               Comp.1 Comp.2 Comp.3
pH              0.568  0.731  0.379
温度           -0.571  0.681 -0.458
電気伝導度mS.m -0.593         0.804

> sui.sc.pc$scores #主成分得点
            Comp.1      Comp.2       Comp.3
 [1,] -2.166246269 -0.48843793  2.371942062
 [2,]  2.055847666  0.30255612 -0.244302505
 [3,]  1.549110746 -2.14863233 -0.526860394
 ・       ・       ・        ・
 ・       ・       ・        ・

生データを主成分分析にかけると、それぞれの測定項目の桁が同等に評価されるのか、圧倒的に電気伝導度のばらつきで規制されます。得られた固有ベクトルを使って主成分得点をEXCELで検算しても、結果は合いません。上記ト関連し、固有ベクトルの桁数が影響しているのでしょうか?詳細は分かりませんが。 標準化後に主成分分析を行うと、検算もあいました。OKです。データ項目の数値、桁の価値を見ることも大事なんでしょうね。あるいは適切な前処理が必要ということかな?

続きは後日。