1999-07-22[n年前へ]
■失楽園殺人事件の犯人を探せ
文章構造可視化ソフトのバグを取れ
今回は
夏目漱石は温泉がお好き? - 文章構造を可視化するソフトをつくる - (1999.07.14)
の続きである。やりたいことは以下の3つ
- WordFreqのバグを取る。
- 定量化に必要な数値を出す。
- とにかく遊んでみる。
WordFreq.exe 1999.07.21Make版 wordfreq.lzh 338kB
本WEBサイトのモットーは「質より量」である。...これはちょっと何だな...「下手な鉄砲も数撃ちゃ当たる」...これもちょと...「転がる石に...(もちろん日本版でなくて西洋版のだ)」といった方がニュアンスが良いかな?... 転がる石は精度を求めないのである。数をこなせば精度が悪くてもいい方角に転がっていくと思っているのだ。モンテカルロ理論である。「遊び」だし。というわけで、これはバグがあった言い訳である。
さて次は、「定量化に必要な数値を出す」である。前回の題目で使った「ホトトギス」版「坊っちやん」のダウンロード元のWEBの作成者である木村功氏より、前回の話以後にいくつかアドバイスを頂いた。それが「定量化するにはどのようにしたら良いか」ということであった。それについては、最低限の機能をつけてみた。やったのはただひとつ。出現頻度の分散を計算するようにしただけである。この数値と出現平均値を用いて、色々な文章を解析すれば、このプログラムの返す値の出現分布の分散・平均値・有意水準などを導くことができるだろう。色々な時代の、色々な作家の、色々なジャンルの文章を解析し、それらから得られた値を調べてみればもしかしたら面白いことがわかるかもしれない。
それでは、今回のプログラムを使って遊んでみよう。
今回用いるテキストは小栗虫太郎の「失楽園殺人事件」だ。
青空文庫 ( http://www.aozora.gr.jp/)
から手に入れたものだ。今回のタイトルどおり、「失楽園殺人事件」において「犯人」を探してみよう。
ラストのほうに向かうに従い犯人の登場が増えて、山場を迎えているのがわかるだろう。「犯人」で検索したら次は探偵の番だ。「法水」で検索し、探偵がきちんと働いているか見てみよう。
なかなか出ずっぱりで活躍している。もちろん、探偵役もラストでは活躍しているようだ。
ここまで見ていただくとわかるだろうが、画面は前回のバージョンとほとんど同じである。前回は、1物理行あたり検索単語は1個までしか見つからなかったが、今回はきちんと複数見つかっているのがわかると思う。1物理行中でもきちんと結果が出るようになったおかげで、文章中から「。」を検索すると、物理行(段落と近いもの)中に含まれる「文」の数を調べることが出来る。妙に長い文節の出現頻度などを調べることが出来るのだ。こういったものは定量化にふさわしいのではないだろうか?
また、C++プログラマーのあなたは自分のプログラム中から「//」などを検索すると面白いのではないだろうか。コメントの出現頻度が手に取るようにわかるだろう。
というわけで、今回はバグ修正のご報告である。
2000-12-24[n年前へ]
■サンタクロースを捜して
Double Role on Christmas Eve
2002-03-23[n年前へ]
■インドで考たこと Dualの有効性編
「負荷がかかる処理は用途ごとに複数台準備する方がよいのかな」には、「処理を操作・連携せさる処理を作業者がスムーズにできる限りは賛成」です。あと、単なる処理速度の話にはもう全然異議などありません。
だけど、それが実際に作業を人間がするときの話だと、少し別。「処理を操作・連携せさる処理を作業者がスムーズにできる」ってなかなかWindows環境では難しかったりする場合も多いようにも思ったりします。
例えば、ちなみに私のデスクトップのPCではMathematica、Photoshop, Premire, Illustrator, InDesighn, After Effects辺りが常時立ち上げて、連携させながら作業するわけです。片方で処理した結果をコピペしつつ違うソフトに突っ込んで処理させたり、Googleに色んなことを教えてもらいながら、VisualC++でソフトを書いてコンパイルして、何ていう風に。そんなタスク切り替えが頻繁におきる仕事が普通かどうかはさておき…。
ところが、作業するワタシは一人なので、複数のソフトを色々切り替えるのにあまりに複数のPCでやるとワンクッション入って不便なんですねぇ…。モニタやキーボードやマウスを切り替え機で切り替えるのは、面倒ですから。一応今でもドコドア+LANクリップボードで二台のPCを使ってはいるのだけど、それですでに液晶ディスプレイ三枚…。なんか居室の作業では、複数のPCを切り替える時に、自分の頭の中のタスク切り替えが上手くいかない(というか次に頭の中のタスクを元に戻すのに時間がかかるような感じがする)ので、結局二台に戻してしまいました。
プログレ・キーボード派だったワタシとしては、前は複数のPCに囲まれていたし、実験室ではそれぞれ1制御1PCで結局多数のPC群に囲まれているのですが、それが居室だとどうも感覚的にストレスがたまりましたね…。あと何よりデュアルのありがたいのはオンボロプログラムが暴走しまくっても、操作感覚は素早いままってとこ。(何だそりゃ…)
もちろん、Mathematicaなんかはネットワークがらみがちゃんとしてるので、フロントエンドだけ自分のPCでカーネルは他のPCで動かしてますし、他のUNIX系のマシンで動くソフトに関してはもちろん処理だけそっちでやらせて、自分のPC上ではXクライアントしか動いてないわけです…。こういった、ソフトの表示系と内部処理を別のマシンで動かせるようになると、複数台使っていても操作感覚は変わらないし、とても便利なんですけどWindowsだとなかなかないですよねぇ、そんなの…。
なので、ワタシはよく雑誌記事の単なるベンチマークを見ると、実際に行う作業を人間がしてるときの、操作性を確かめてみてもらいたいなぁ、と思うのです。「仕事はコンピューターがするんじゃない、人間がするんだぁ」って踊る大走査線風に言いたくなるのです。
ただ、こうも思います。ささっと違う仕事に頭を切り替えるわけには行きづらいタイプの仕事、例えばソフトのプログラマーや込み入ったメカを設計するタイプの仕事などでは、こんな風な仕事の要求はされないだろうなぁ、とも思います。
あっ、念のため、タイトルには意味無いです。あと、「それは、こーすりゃ解決さ」っていうツッコミなんがのどから手が出るほど欲しいです、ハイ。
2003-06-13[n年前へ]
■シミュレーション・プログラマーに向く適性を見分けられるか?
「シミュレーション・プログラマーに向く学生は初対面で判るか?あるいは、その初印象と結果は違っているものか?」という質問が、プログラマーでない私も面白かった。というわけで、午前お茶の水で午後はパシフィコ横浜。
2004-01-31[n年前へ]
■例えばこんな質問ひとつ
「○×△の20の質問」なんていうのがよくある。私は、
車を持っていますか?持っているとしたら、どんな(色や車種や…)車ですか?持っていないとしたら、どんな車が欲しい(それとも欲しくない)ですか?という質問を一つしてみたいかも。そして、それだけでなくて
(あなたも知ってる)○×△さんはどんな車に乗っていると思いますか?という質問をしてみたいかも。色んなサイトのWebmasterや色んな日記の書き手たち、あるいは、あのプログラマーの方々は…、あんな色んな人達がどんな車に乗っていると思いますか?逆に言えば、そんな人達は「どんな車に乗っていそう」って受け取られているんでしょうね?そして、実際は一体どんな車に乗っているのでしょうね?と聞いてみたいかも。