/etc/init.d/httpd restart
.
ちょっと調べてみる.
わからん.
cgiwrap
ほうむった今となっても残存する CGI まわりの面倒といえば
……
/usr/sbin/suexec
か?
とりあえずこいつを不活性にしてみる.
動作問題ナシ.
それから昨日の自動点検プログラム,
root
で動かしてもしょうがないんで
sudo -u www
で動作させる.
他にも次の事故発生にそなえた仕掛けを.
cgiwrap
にしろ suEXEC
にしろ,
web service 提供妨害といった何か邪悪な目的のためではなく,
むしろユーザーの利便のためにもうけられたしくみに他ならぬわけだが
……
まあ,
使いこなせるようになるには研究が必要ですなあ.
geoRglm
で計算するようなやつね).
plugin/ref.inc.php
内で
<img ...>
タグを出力する直前で
$url = str_replace("http://LOCAL", "../..", $url);なる行を追加. こうすると
#ref(http://LOCAL/img/img.jpg)
などと指定すれば,
PukiWiki ディレクトリの「外」にある画像ファイルをはりつけることができる.
spamcop.net
のブラックリストに登録されていた
(11/8-11/9)
========================================== 登録番号: 00194 お名前: 久保 拓弥 (くぼ たくや) 様 ... 一般講演: ポスター発表希望 演題: 林冠三次元構造を推定する MCMC 計算法 演者: ○久保拓弥 (北大・地球環境)・小林剛 (香川大・農)・加藤京子 (北大・低温研) 希望セッション: 2.植物個体群(第一) 28.物質生産(第二) 0.なし(第三) ==========================================はい, 内容はくだんの (八月末ごろ計算してた) MCMC 林冠 のハナシです. まあ, MCMC 計算というのを生態学で応用する実例のひとつ. これは非べいづな推定計算 …… ということで MCMC という考えかたの説明に専念できる.
suEXEC
不活性化というごまかし対処療法によってその後は一度も再発していない.
ということで,
安心して登録なさってください
(早めに!).
suEXEC
にしろ cgiwrap
にしろ「避けるべきもの」ではなく積極的に使いこなすべきツールなんだけどね
……
いやはや.
geoRglm
に関するご質問いただいたので,
回答を試みてみる.
> geoRglmにおいてMCMCって何をするために > 使われてるんですか?
いやはや,これはやはり難問というべきでしょう.少なくとも geoRglm に関 するもっとも重要な質問であることはまちがいありません.
> MCMCは任意の確率分布に従う変数を発生させる方法 > だと思っているのですが、ちがいますか…?
そういうことです.ではここで考えている「任意の確率分布」とは何か? これ は観測点ごとに与えられる正規分布で,しかもそれに空間相関がある,という 確率分布です.これは Gaussian Random Field (GRF) とよばれ,geoRglm の 姉妹 package である geoR の grf() で生成されます.
ここで格子空間上の格子点上にいる架空の植物の開花をかんがえてみましょう.
格子点 (各点) 独立に確率 0.3 で開花するとしましょう.このとき「見えな い確率地形」は空間全体どこでも高さ 0.3 のまったいらな平面になっている, という描像です.開花観測データを glm() にほうりこむと (Intercept) が log(0.3 / 0.7) = -0.85 ぐらいと推定されるはずです.
開花確率 p = 1 / (1 + exp(-r)) とします.このときの GRF は各点にける 「r の確率分布」あらわしており,どの点でも平均 -0.85 で分散ゼロの正規 分布 (つまり定数 -0.85) になっていると考えます.
つぎに開花確率は全体で平均 0.3 なんだけど,場所ごとにでたらめに決まっ ている場合を考えてみましょう.このとき GRF は各点独立で平均 -0.85 で分 散がゼロより大きい量になっています.つまり「r の地図」を作るとすごくで こぼこしてるんだけど,空間平均とると -0.85 になっている,という状況で す.
開花データにそういう ``overdispersion'' ありそうなときは,一般化線形混 合モデルを推定させる glmmML() などに開花データほうりこめば (Intercept) が -0.85 だの標準偏差の推定値がこれこれだのとでるはずです.
このときに各点独立のことを GRF の分散共分散行列の共分散項がゼロ (空間 相関がゼロ) というふうに表現します.
さて geoRglm が取り扱うのはこの GRF の空間相関がゼロではない場合,とい うのを考えています.つまり「r の地図」はでこぼこというより,もっとなめ らかに変化している場合です……すると開花パターンは目でみてもわかりやす い開花個体の集中分布になるはずですよね.
geoRglm の MCMC 計算がやっていることは,この空間相関のある GRF,なめら かな「r の地図」のサンプリングです.データとは無関係な GRF を生成する ためにも MCMC 計算は必要になります (多変量正規分布の生成なので).しか しながら,ここでやっていることは「データによくあてはまっていそうな」 GRF を MCMC に生成させている,ということです.
……とりあえず,こういう説明でよろしいでしょうか?一般化線形混合モデル (GLMM) であつかう場合 (つまり「すごくでこぼこ GRF」) に関する補足. 過分散 (overdispersion) の例としては …… たとえば上でいう「植物」個体にたくさんの花がついていると考えてみよう. どの個体も三割ぐらいの花が咲いているのが overdispersion ナシ, な状況. これに対して overdispersion ある状況では, 「咲く個体では一斉に開花,咲かないのはぜんぜんダメ」 という「個体差」が発生している.
geoRglm
やりとりつづく.
アタマの中で GRF と
zero-inflated モデル
のこんびねいしょんワザが必要かも,
といった考えがうろうろしはじめた
……
えーい,
そんな計算がめんどくさそうなアイデアはぼつだ.
しかしすでに誰かやっていそう.
order()
で並べ換えてからタテ (またはヨコ)
に「掃いて」いくという方法にしてみる.
これってコードは短くなるけどあまり速くないような気がする.
他の代案としては,
R-help で見たんだけど,
matrix()
の要素を list()
にする,
という奇妙な手口がありうるわけだが
……
r <- 1.5 n <- 100000 hist.sample <- hist(log(rexp(n, rate = r)), 50) plot(hist.sample) y <- hist.sample$mids dy <- (max(y) - min(y)) / (length(y) - 1) lines(y, r * exp(y - r * exp(y)) * n * dy)むろん R は何でもアリ, なんで極値分布 (extreme distribution) を直接あつかう package が CRAN にある.
Date
のあつかいで苦闘する.
ありがちなループ
for (date in vector.date) { ... df.sub <- df.x[df.x$date == date,] ... }というふうに
Date
おぶぢぇくとの vector
vector.date
とやっても (いちおう) 動作はする.
というのも
for (...)
の中で Date
おぶぢぇくとは
(たのみもしないのに)
numeric
に変換されて date
に代入されるからだ.
たとえば
"2005-07-08"
という日づけが 1970 年 1 月 1 日からの「日数」 (整数)
である
12972
に変わってしまう
(しかしこちらの意図どおりには動作する).
"2005-07-08"
に復元したい,
という場合だ.
これはたぶん自分で換算関数を書かねばならぬ.
for (date in format(vector.date)) { ... df.sub <- df.x[df.x$date == as.Date(date),] ... }こうすると
date
には
12972
といった「日数」ではなく,
"2005-07-08"
といった文字列が代入されることになる.
で,
この文字列と Date
オブジェクトを比較するためには as.Date()
なる変換が必要になる.
gstat
インストールしたり.
Pcy
)
:
アオノツガザクラ
(Pa
)
= 13788 : 30237
となっているんだけど
(ただし開花の季節性を考慮すると上の図のごとく
差がちぢまる),
コエゾがすごーく集中分布 (下の図参照)
してるんで局所開花量では「負けていない」
(つまりコエゾの花はコエゾの花に包囲されている確率が高い)
Pc
)
●,
コエゾツガザクラ
(Pcy
)
○,
アオノツガザクラ
(Pa
)
+,
ニシキツガザクラ
(Pam
)
●.
一点 10 花.
dput()
だの,
数値微分を計算する
numericDeriv()
だの
……
こういった関数などをいちいち記憶することは不可能なので,
うまい検索 (技術と「こういうのがあるはずだ」感覚)
が必要とされるのだろう.
Content-Type: text/plain; charset=CP932; format=flowedなるヘッダーつけた非常識の限界を突破したメイルが (おそらく原因は腐れわーどファイルからのこぴぺ) …… 何のことやらといぶかしく思われるやもしれませんが, 要約すれば「めちゃくちゃ」「読めないヒトたち続出」 ということです. 私のとこでは解毒できましたが.
PostScript printer driver
(これは universal)
のたぐいを使うのがよい.