Kosugitti's BLOG

アンドロイドは正規分布の夢を見るか

この画面は、簡易表示です

研究メモ

日本心理学会の引用スタイルjecon_jpa.styを作った

PDFが静的でリッチではないフォーマットだ,という意見はよくわかるけど,記録として残るものは静的であるべきで,統一のフォームとしてトーシロからプロまで行き渡っているフォーマットであることは間違いないから,アカデミア業界では断然必要なフォーマットなわけで。

TeXがスマートでないコーディングを要求し,過去の財産に足を引っ張られていて規格が乱立している,最近はMac/WindowsのOfficeソフトもTeX記法を許すようになっているから,わざわざ手を出したくないという意見もよくわかるけど,みんなが真似したがるほど完成された数式記述ルールだし,コンパイラはひとまずuplatexでいいと思うし,引用文献の作成や構造化された文書作成という設計理念まで合理的で美しい(そして当然アウトプットが美しい)組版ソフトであることは間違いないわけで。

最近はRStudioをテキストエディタとして使うこともできるし,TerminalもRStudioから使えちゃったりするから,ますます文書作成はTeXでいいかなと思い始めている。あと,新しい職場が親TeX的というのも心強い。
で,英語の論文を書いたりするときはrarticleパッケージがあったりするから,それでもう完結しちゃうじゃないと思うんだけど,日本語で論文を書く必要があって,その時は日本心理学会の執筆・投稿の手引きに準拠することになる。ところが,JPA(日本心理学会)準拠のbibtexスタイルファイルがないんだよな。今までは我慢して,似たやつ(jecon)を使って,細部はbblをいじって,という感じだったんだけど,流石にそれは少し手間だなと思うようになった。

そこで日本心理学会用のスタイルファイルを作ることにしました。作ると言っても,武田史郎先生のjecon.styをつかって,設定をポチポチするだけでほとんどOKなのよね。久しぶりに検索してみて驚いたんだけど,jecon.styはgithub上でまだ開発が続いています。unicodeに対応したりしてて。スバラシイ。一方,心理学系TeXといえば奥村泰之先生のスタイルファイルとかがあったんだけど,これは開発が止まってて(2009年からMS Wordで論文を書くようになってしまわれたらしい),イイトコどりをしないといけない。

日本心理学会のスタイルは妙なところがあって,特に翻訳書は原典で引用して,括弧付きで翻訳版を入れるなどしないといけない。んもー。ということで,その辺も関数見ながらなんとか調整しました。

はいこれ

謝辞にも上にも書いたけど,俺自身が何かしたところは少なくて,人の褌で相撲を取るみたいだから公開するのは少し気後れするところもあるんだけど,gitに上げておいたから,公共財としてみんなでどんどんよくしていきましょう。手引きのp.40にある引用書式の例をトレースできるように作ったけど,例に載ってない他の書式など,細部についてはまだ検証してませんので,使ってみていただいて不具合がありましたら,ご意見・コメント・プルリクなどください。

bibtexマクロの書式はわからないんだよなあ。マニュアルもみあたらないし。なのでテキストを目で読みながら,この辺を変えたらこうなるんじゃない?というトライアルアンドエラーの産物ですよ。なかなか面倒な作業だった(実は塾合宿の間,内職して完成させたなんて言えない)。まあでも,今支払う苦労は今後とりかえせるからね。日本語で論文書くならね。

どなたかのお役に立てれば幸いです。



文字数

小学生の頃の作文の授業。「たくさん書けば書くほど良い」というルールだった(と勘違いした)ので、遠足の思い出を書くときに、朝起きて玄関を出るまでのシーンの描画に原稿用紙11枚使った。流石にやりすぎたと思って,残りをぎゅっとまとめて13枚で完成させたら「バランスが悪い」と言われた。当然である。それでも,追加の原稿用紙を取りに行くたびに「すげえ」と教室がざわついたし,先生も分量があること自体は褒めてくれたので,自尊心が下がることはなかったが。

そのとき学んだのは、文字数を増やすなんてなんとでもなるということ。むしろ文章は短い方が良いと思ってる。その後,星新一にであって、ますむす短くしたいと思うようになった。「短くならない文章はない」である。

学生にも文字数で縛ることはしたくないし、なんなら短い方がいい、と教えている。ダラダラしたのを読むのは大変だからだ。
でも短いものが出て来ると、「短すぎるけど、これほんまにお前の言いたいこと全部詰め込んだか?ひょっとして長い文書けないのか?」という疑念が湧いてくる。まあ俺の言い方が悪いんだけどね。

テストの論述も、簡単に論じなさい、と言う。回答欄も小さめに設定する。すると中には,ほんの一、二文しか書かない人がいる。間違ってはないけど足りてもない。ぎゅっと情報の詰まった,必要最小限の分量を産出してほしいものだ。

(今朝の一連のツイートを加筆修正)



教育心理学会2016で発表してきました

文系学生に対する心理統計教育,回帰分析編で発表してきました。

高松の宿が直前まで取れなくて,どうしたもんじゃろのう(とと姉ちゃん)と思っていたところ,二週間前にギリギリで一泊だけ取れて。とりあえず予定通り出張することができまして。教育心理学会のWSで発表してきました。

他の先生方の発表を聞きながら,自分の教育方針は間違ってるんじゃないだろうか,うわー違うわーとか思いながら,ときおり「ごめんなさい」を挟みながら,でもいつも通り自分の言いたいことを言い放ってきました。でもこの学会,オーディエンスに大物がいるんですよね!一緒に発表した先生が「緊張してきたー」っていうから,緊張をもらっちゃったじゃないですか。直前にたべたうどん大(ふた玉)がきつかったようで,発表が終わるとそそくさとトイレに移動してもう一つの戦いをこなす脆弱っぷり。

とまれ,みなさんに何らかの刺激を与えられたら,これ以上ない喜びです。

方向性は間違ってはないと思う。教え方が上手くはないかもしれないけど。



BSJ2016参加報告

行動計量学会第44回大会@札幌学院大学に,フル参加してきました!

例年,初日午後のチュートリアルセミナーはスケジュールの都合で参加できなかったりするんだけど,今年はベイズの話だしいけるぞ!とおもっていたら台風10号さんが大接近。羽田まで飛ぶかな?と心配になって便を変えてもらえないか,生協や事務に確認したところ,「じゃあ今日の17時の便で前入りしなさい」とのこと。これが決まったのが13時頃。慌てて帰宅して着替えを詰め,大学で資料を印刷して前入り。幸いホテルは駅近で,予定していたところの前日分追加で取れたのでずっと滞在できるし,ホテルの地下が居酒屋でルームーキーを持って行ったら20%オフだったし,チュートリアルセミナーは翌日午後からだから,体は疲れたものの結果オーライかな。

チュートリアルセミナーでしっかり勉強し,夜は馴染みのメンツで寿司を食べる。二日目は非対称セッションで非対称飲み会に参加,三日目は懇親会+懐かしの顔も加えて二次会。とにかく胃と肝臓と,もちろん脳みそフル回転の学会活動でした。

こうやって書くと「夜は飲んでばっかりじゃないか」と思われるかもしれませんが,そこで研究のアイデアを話し合ったり,普段会えない人からアイデアをもらったりして,とてもいい刺激になるのですよ。さすがに最終日は体力が尽きかけたけど,気合いを振り絞って飲みに行ったもんね。

学会はいつも余裕のあるスケジューリングで,プログラムが並列すぎないように,詰め込みすぎないようになっているから,空いているところで月末締め切りの仕事を片付けたりすることもできて,ほんとにこの学会はいい学会です。

二日目の自分の発表では,院生の頃のような「完璧にわかりきってないのに勢いで発表しちゃった」感が丸出しの話で,いろいろな人に突っ込まれても「この本にこう書いてあるからやってみたんすよ」ぐらいのお返事しかできなかったし,「こういう研究がありますよね」とかいわれても「へえそうなんですか」みたいな返事になって,いやあ恥ずかしいやら疲れるやらでした。でも,

のびしろですね!

頑張りますよ。刺激をもらった分,頑張り甲斐があるというか,発奮してるね。これが本当に学会に参加するいい効果なんだと思います。

やるぞ。やるぞ。いろいろやるぞ(仕事ももらってしまったし)。あー楽しかった。

 

追伸 次来るときはジンギスカンとビールもやりたいな。いや,海鮮と日本酒もよかったんだけどね。じゃがいも焼酎もね。

追伸2 現在帰りの飛行機が遅延中。行きも帰りもいろいろある旅だな,今回は。



読書会を始めます

学内で,読書会を始めます。

[amazonjs asin=”4254122144″ locale=”JP” title=”はじめての 統計データ分析 ―ベイズ的〈ポストp値時代〉の統計学―”]
これをみんなで読んでいきます。

Q&Aを読み終わって,自分も何か始めないではいられなかった。半ば強引に,ゼミ生を誘い込みました。
私の考えでは,ベイズ統計学になると,もっと情報仮説が増えてくるはず。そうでなければならなかったんだ。そして,そういう仮説を思い付くには,帰無仮説を立てる訓練をしたように,統計的枠組みの中で仮説を発想する力が必要になる。

この本にあるように,発想を自由にできるようになれば,そのあとのアプローチは伝統的仮説検定の枠組みよりもずっと簡単なはず。
この読書会ではRプログラムを走らせたりすることをメインにはしない。ゆっくり,データとともに本を読んで,考える時間を持ちたいです。
一時間と短いですが,毎週ちょっとずつでも,できるだけ前に進んでいきたい。

読書会フライヤー



RstudioとパッケージとGithubと

大事な午前中がまるまる潰れてしまった。

Rstudioでパッケージを作るのが楽になったのはわかる。RstudioでGithubのバージョンコントロールができることも知ってる。ちょっとできる。Githubで文章を加筆修正したりもできる。

その組み合わせがうまくいかぬ。

1.RstudioでFile>New Project>バージョンコントロール>Git

とすると,GitとRstudioの連携はうまくいく。が,パッケージを作るプロジェクトの雛形は用意してくれない。ここでpackage.skeleton()が必要なのか?

2.RstudioでFile>New Project>パッケージを作る>Gitにもチェック

とすると,create git repositoryのチェックボックスをオンにするも,レポジトリが作られるわけでもなく,gitがうまくいかない。パッケージの雛形は用意してくれる。

3.本日最大の問題点

mkmeans関数というのを作り,mkmeansパッケージというのを作ろうとしたら,いちおうエラーなくbuildするところまではできるのだけど,build>library(mkmeans)をしてもmkmeans関数が見つからないって言われる。関数名とパッケージ名が同じなのがまずかったのか,と思って変えてみたけどうまくいかない。どこに問題が・・・?

 

自分の悩みを整理するために日記にしてみた。順番にやっつけていくか。まだ負けてないよ,奮闘記録ですよちくしょう。

 

ちなみに,成果はGistに置いた。

解決編

3.について

exportの指定をしておかないと,外から触れない=見えない,ということ。内部だけで使いたい関数は隠しておけということね。外に出力するわけではなくて,解放するって感じか。この指定をしておかないと,サンプルコードすら走らない。ちなみに@exportsとスペルミス?してもアウトでした。

1と2について

パッケージよりもGithubとの連携が欲しいので,1.のやり方(githubと連携してからスケルトン)のほうがいいと思う。2のやり方はgithubとの連携ができないもん。

余談

roxygen2ってすげえ。すげえ便利。すげえ楽。

できた。

https://github.com/kosugitti/imKmeans

まとめ

  1. Githubにレポジトリを作る
  2. Rstudioでバージョンコントロール・フォルダをつくる。Githubと紐付ける。
  3. package.skeltom()で雛形を作る
  4. 作って上げる。修正する。enjoy Git.


YUEP読書会夏合宿

 

読書会の夏合宿2015@雲仙温泉でやってきました。課題図書はこちら。

[amazonjs asin=”4906519148″ locale=”JP” title=”フーリエの冒険”]

めいめいが黙々と読みながら,自分の理解を深めるという,まさに読書会。

というのも,この本はわかりにくい所はほとんどなくて,頑張って読めば誰にでも微分,積分,フーリエ展開,フーリエ級数,オイラーの公式がわかるようになっている。ちょっとノリについていくのが面倒なところもあるけどw

もっとも,わかったような気になってしまうポイントもあって,今回の一番の山場はP.299の「複雑な波f(t)をベクトルと考えて」の一言。これがどうやって「考え」ればいいのか,ちょっとイメージをつかむのに苦労しました。

というのも,我々はベクトルといえば変数のこと,というイメージがあって,その中にはN人のデータが入っているはず。N次元ベクトル,と考えるのか,一変数のベクトルと考えるのか,というところのジャンプにもにた,メタファーがあるようで・・・?

 

 

2015-08-16 23.20.23

 

懐かしい卒業生にも会えたし,長崎ちゃんぽんも食べられたので,大変有意義な時間でしたことよ。



ベイズ塾例会にて発表してきました

ベイズ塾のミーティングがありました。

一人一つ,担当の「分布」を決めて発表するというお話。私はコーシー分布を担当。たまたま先日読んだ本にコーシー分布のことが書いてあったので,話が膨らんでよかったわ。

資料を公開しておきます。あんまり役に立つかどうかわからんけど。



2群の平均の差について,あるいはGitHubデビューの件

基礎からのベイズ統計学: ハミルトニアンモンテカルロ法による実践的入門に打ち震えたという話から,学部生の統計の授業でもベイズを紹介したくなった。

ということで,とりあえずt検定をベイズ流にはこうやりますよ,というコードをこの本の6章を参考に書いてみた。

ただ書き写すだけでは面白くないので,ここら辺でかねてより気になっていたGitHubでの関数公開といこうじゃないか。Rstudioでバージョン管理もできるらしいしね?

ということで,GitHubやそれとRstudioの連携などに悩まされながら,なんとか書き上げてみたものがありますので,興味がある人は寄ってってねー。

 

こちらです。>> ttest2stan関数



科学的実在論を擁護してきました;YUEP2015

土曜日はYUEP読書会でした。

課題図書はこちら。[amazonjs asin=”4815808015″ locale=”JP” title=”科学的実在論を擁護する”]

最初の方はこれまでの理論の整理,最後の方に著者の主張が来るんだけど,擁護するという著者の主張が「公理系=モデル=実在(世界)」という形にすると,モデルはいろいろ否定されても公理系は傷つかないからいいよね,というところ。

この話は,自然科学系の科学論,という意味では非常にわかりやすいんだけど,我々は心理学という変な領域をやっているので,イマイチしっくりこない。というのも,心理学はそもそもの成り立ちがモデル論的(S-Rの間に心というブラックボックス・モデルを仮定する)なわけです。だからモデルが乱立するし,モデルとデータの適合の程度を統計学で担保してもらったりする。あるいは,モデルを拡張したり批判するために,新しい現象を見つけてきたりする。だから,わざわざ「これからはモデルを挟んで,世界と公理系の間を橋渡ししたら?」という主張が,我々にとっては当然の前提で・・・という感じになってしまうというところだろうか。

ただ面白いのは,心理学は公理系を作ろうとしないんだよね。しない,というかできない,というべきだろうか。

で,読書会メンバーで,例えば認知心理学における公理系(どの認知心理学者も認めている前提)って何があるだろう,といいながら次の二つを思いついた。

  1. 人間は情報処理機械である
  2. 人間の情報処理能力(速度、容量)には上限がある

これに加えて,@FUJIKIDaisuke 先生が「活性化拡散理論はもう公理といっていいんじゃないか」と言ってくれました。ネットワークモデルか,なるほど。

残念ながら,特に私のいてる社会心理学においては,そういう話が全く出てこない。社会とは何か,社会と個人の関係はどうあるべきかについて,共有している前提ってないのかしら。以前「数理社会心理学の基礎」というエントリを書いたんだけど,こういう話を共有できればなぁと思います。

ところで,先日stanをつかってモデリングをしていた時に,不思議な感覚を覚えた。モデルを書いてMCMCしていたんだけど,そのモデルの書き方がシミュレーション研究のパラメタ設定をしている感覚だったんだよね。となると今後,階層ベイズが一般的な手法になってきて,「データを生成するモデル」を考える必要が出てくるだろう。そしてそれを考えていくと,そのモデルを支えている世界観=公理系が必要になってくるはず。そのことになって,やっとソシオン理論が日の目をみるのかな,と思ったりしています。

相対主義が身体化されきった世代の人間にとって,どの研究・モデルも「お前がそう思うんならそうなんだろう,お前ん中ではな」という考え方はもう当たり前,それ以外がイメージできないほどに身に染み付いているわけです。そうすると,ますます論理実証主義的な考え方の世代とは会話がずれていくなあ,と思いますが,そういう時代が来ると「モデルとそれを支えている世界」の適応範囲の広さや説得力が重要になってくるはず。

教養を積まないとなぁ。

 

追伸 ちなみに,ツイッター上で一番面白かった反応はこれ。


さすがやで…




top