Cronback's Alphaという尺度がある。
これはアンケートとかを設計するときに使う方法で複数の同じような答えが期待される質問にどれくらい同じように答えてくれているかということをもってその質問の答えがどれくらい信頼出来るのかを計測する尺度らしい。
アンケートや心理テストで似たような質問や逆の質問が複数なされるのはこの手法をつかうためなのかな。
http://en.wikipedia.org/wiki/Cronbach's_alpha
Tuesday, October 22, 2013
Friday, September 27, 2013
ssh のクライアント側の設定メモ
手元のssh 関連の設定をまとめてみた。
・ControlMasterで接続を再利用すると高速になるので便利。
手元ではこんな設定にしている。
ControlMaster auto
ControlPersist 120
ControlPath ~/tmp/ssh-%r@%h:%p
ControlPersistとすると、ssh が親プロセスが1のdaemon プロセスになってくれてコネクションを張りっぱなしにしてくれる。
デフォルトで設定されているとマニュアルには書いてあるんだけど、手元ではControlPath指定しないと動かなかった。なんでだろう。
ホームディレクトリ以下の tmp にしているのはファイル名の衝突について心配しなくてよいように。
ControlMasterをAutoにしておくとすでにコネクションが開いていない場合はデーモンをたちあげてもしコネクションが開いている場合にはそれを利用するように。
・コネクション Keep-Alive 関連の設定
試行錯誤しているんだけどこれくらいがいいのかな。
ServerAliveInterval 3
ServerAliveCountMax 5
ServerAliveCountMax 5
・パソコンがsleep から復活した時に再接続する設定
大抵ネットワーク接続の構成が変わったらssh のコネクションは終了して再接続するべき、だと思うんだけどまだそういう設定ができる方法は発見しておらず。
dbusのイベントとかでおしえてくれないんだろうか。
・ホスト名を適当につける
DNSの登録設定とか面倒なのでsshでしか使えないホスト名みたいなものが作れる。ssh経由でつながるtrampとかではつかえるので便利。bash のsshのコマンドライン補完でも使えるし。
・*.local用の設定
Mac のRendezvousとかLinuxのAvahiとか設定しているとホスト名.local という名前で名前解決ができるようになるけどIPアドレスは毎回変わるのでホストIPをチェックしないようにする。
Host *.local
CheckHostIP no
あとついでに公開鍵認証にしておくとよさげ。
Host raspberrypi.vpn
Hostname そのホストのIPアドレス
IdentityFile ~/.ssh/ssh-keygenで作ったファイルのパス
IdentitiesOnly yes
dbusのイベントとかでおしえてくれないんだろうか。
・ホスト名を適当につける
DNSの登録設定とか面倒なのでsshでしか使えないホスト名みたいなものが作れる。ssh経由でつながるtrampとかではつかえるので便利。bash のsshのコマンドライン補完でも使えるし。
・*.local用の設定
Mac のRendezvousとかLinuxのAvahiとか設定しているとホスト名.local という名前で名前解決ができるようになるけどIPアドレスは毎回変わるのでホストIPをチェックしないようにする。
Host *.local
CheckHostIP no
あとついでに公開鍵認証にしておくとよさげ。
Host raspberrypi.vpn
Hostname そのホストのIPアドレス
IdentityFile ~/.ssh/ssh-keygenで作ったファイルのパス
IdentitiesOnly yes
mjpg-streamer on raspberry pi のすすめ
1FPS とかしかでないよという話題のでているraspberry piを使ったUVC 監視カメラですが、YUVとかの形式のデータを頑張って変換しようとしているからなんじゃないかと思ってます。手元の
UVC カメラではデバイス側で MJPEG形式でデータをはいてくるようになっていて、多分殆どのカメラではそうなってるんじゃないでしょうか。MJPEGはJPEGファイルを多数つなげたような形式でそれをほぼそのまま垂れ流せばいいだけのはずでraspberrypiがいくら遅いからってそれを使えばまともなFPSがでるんじゃないかとおもって調査してみました。
世間でmjpegをそのままHTTPサーバに出してくれるというツールが意外とないんですが、mjpg-streamerというツールがそれにあたるっぽいので試して見ました。
$ sudo apt-get install libjpeg-dev imagemagick libv4l-dev
$ svn co 'https://svn.code.sf.net/p/mjpg-streamer/code/mjpg-streamer' mjpg-streamer
$ cd mjpg-streamer
$ make USE_LIBV4L2=true clean all
$ LD_LIBRARY_PATH=. ./mjpg_streamer -o "output_http.so -w ./www" -i "./input_uvc.so -f 30 -r vga"
以上で http://hostname:8080/ にウェブサーバが立ち上がるのでそれにアクセスするとストリーミングで表示してくれます。
30fps, VGA でCPU負荷4%くらい。解像度あげるとフレームが落ちている気がするけど30fpsでてるのかどうかよくわからない。15fps以上は目で見ても差がよくわからないのでどうやって確認するのが良いのかな?
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6938 pi 20 0 47392 2528 2184 S 4.2 0.5 0:02.16 mjpg_streamer
2668 pi 20 0 17672 5220 1420 S 2.3 1.0 2:05.09 mosh-server
Sunday, September 15, 2013
tramp の設定つづき
忘れそうなのでまとめ。しかしまだいろいろと自分のネットワーク設定が解決してない
・ssh の速度
・接続される側の /etc/sshd_config
サーバ側の /etc/ssh/sshd_config を確認してもしDNSでリゾルブすることのできないホストを使っているなら UseDNS no を指定する
VPN 経由の通信の場合、MTUが1500になっていると多分大きすぎる?
mssfix, fragment あたりのオプションが必要か?
とりあえず適当に fragment 1280, mssfix としたら安定した(テストケース、ssh でログインして dmesg をながすと代替最大サイズのフラグメントをながそうとして消えてなくなるようだ)。
path mtu discovery がどっかの時点で失敗してるっぽい。
・接続する側の ~/.ssh/config
ssh のコネクションが死んだ時に tramp は検出できないので、ssh側で keepalive の頻度を上げる。
ServerAliveInterval 3
ServerAliveCountMax 3
/ssh: だと特にコネクションの再利用とかしてくれないので自動でコネクションの再利用をして、バックグラウンドで生き残るようにする
ControlMaster auto
ControlPersist 120
・tramp の設定
/ssh: hostname:/path でファイルが開ける
/sudo:root@hostname:/で一般ユーザ権限でログインして、root権限でファイルが開けるように .emacs に設定した。
(add-to-list 'tramp-default-proxies-alist
'("\\.local\\'" "\\`root\\'" "/ssh:%h:"))
・vcの設定
vc-handled-backends CVS Git のみにしてみた。RCSとかインストールしなくてすむように。
git の設定がなんかたりないきがする。RCS はもう使わないでしょう。
・リモート側の .bashrc
プロンプトがファンシーだといろいろとめんどうなのでシンプルにするために、.bashrcの頭に追加してみた。
if [ "$TERM" == 'dumb' -o "$EMACS" == 't' ]; then
return
fi
これでもなんか安定しないケースがある気がしたのでraspberrypi から .bashrc を消した。
raspbianの標準の.bashrcは.bash_profileでやるべき設定をやりすぎている気がする。
・shell-mode の設定
shell-mode-hookでPS1を設定するコマンドを送信するようにする
(defun dancer-set-prompt ()
(insert "PS1='\\w\\$ '\n")
(comint-send-input))
(add-hook 'shell-mode-hook 'dancer-set-prompt)
・リモート側のemacsclient の設定
未解決
・ssh の速度
・接続される側の /etc/sshd_config
サーバ側の /etc/ssh/sshd_config を確認してもしDNSでリゾルブすることのできないホストを使っているなら UseDNS no を指定する
VPN 経由の通信の場合、MTUが1500になっていると多分大きすぎる?
mssfix, fragment あたりのオプションが必要か?
とりあえず適当に fragment 1280, mssfix としたら安定した(テストケース、ssh でログインして dmesg をながすと代替最大サイズのフラグメントをながそうとして消えてなくなるようだ)。
path mtu discovery がどっかの時点で失敗してるっぽい。
・接続する側の ~/.ssh/config
ssh のコネクションが死んだ時に tramp は検出できないので、ssh側で keepalive の頻度を上げる。
ServerAliveInterval 3
ServerAliveCountMax 3
/ssh: だと特にコネクションの再利用とかしてくれないので自動でコネクションの再利用をして、バックグラウンドで生き残るようにする
ControlMaster auto
ControlPersist 120
ControlPath ~/tmp/ssh-%r@%h:%p
・tramp の設定
/ssh: hostname:/path でファイルが開ける
/sudo:root@hostname:/で一般ユーザ権限でログインして、root権限でファイルが開けるように .emacs に設定した。
(add-to-list 'tramp-default-proxies-alist
'("\\.local\\'" "\\`root\\'" "/ssh:%h:"))
・vcの設定
vc-handled-backends CVS Git のみにしてみた。RCSとかインストールしなくてすむように。
git の設定がなんかたりないきがする。RCS はもう使わないでしょう。
・リモート側の .bashrc
プロンプトがファンシーだといろいろとめんどうなのでシンプルにするために、.bashrcの頭に追加してみた。
if [ "$TERM" == 'dumb' -o "$EMACS" == 't' ]; then
return
fi
これでもなんか安定しないケースがある気がしたのでraspberrypi から .bashrc を消した。
raspbianの標準の.bashrcは.bash_profileでやるべき設定をやりすぎている気がする。
・shell-mode の設定
shell-mode-hookでPS1を設定するコマンドを送信するようにする
(defun dancer-set-prompt ()
(insert "PS1='\\w\\$ '\n")
(comint-send-input))
(add-hook 'shell-mode-hook 'dancer-set-prompt)
未解決
Wednesday, September 4, 2013
tramp のための ssh 設定
.ssh/config に
ServerAliveCountMax 10
ServerAliveInterval 10
を追加した。
適当だけど接続が切断した場合にsshが死ぬように。
あと、ControlMaster の設定を適切にやってくれてコネクションを使いまわしてくれるscpc が良い気がする。
/scpc:hostname:... でファイルをひらけばよい。
raspbian のデフォルトの.bashrc で tramp が動かないので少しハマった。
colorを有効にしていると期待している形でプロンプトが出ないらしい。
なんで.bashrc でやってるんだろう。
bashrcを変更して TERM=dumb の場合になにもしないようにした。
ServerAliveCountMax 10
ServerAliveInterval 10
を追加した。
適当だけど接続が切断した場合にsshが死ぬように。
あと、ControlMaster の設定を適切にやってくれてコネクションを使いまわしてくれるscpc が良い気がする。
/scpc:hostname:... でファイルをひらけばよい。
raspbian のデフォルトの.bashrc で tramp が動かないので少しハマった。
colorを有効にしていると期待している形でプロンプトが出ないらしい。
なんで.bashrc でやってるんだろう。
bashrcを変更して TERM=dumb の場合になにもしないようにした。
Friday, August 30, 2013
trampをもうちょっとはやくする
Gitで管理しているファイルをみようとするとほぼハングするということがわかったので参考にして設定を追加。
vc-handled-backends をけずってみて、vc-ignore-dir-regexp に追加。
でもなんでハングするんだろうなぁ。
Thursday, August 29, 2013
tramp
emacs-tramp をつかってみようかとおもってファイルを開く練習。
emacsでファイルを開く際にホスト名を指定する形式、たとえば
/ssh:ホスト名:/home/pi/hogehoge
のようにひらくだけでよし。
.ssh/configにホストの設定を書いておくのは重要かも。
ping time 100ms の環境でやってみてるけど数分たってもファィルが開かない。これは厳しいかも。
Subscribe to:
Posts (Atom)