Array


どうもこのページはリロードすると面白いらしい
(といってアクセスカウンター稼ぎをするほど私はせこくない(笑))。

mkoについて

mkoとは、あくまでも数学のある実験 (マルコフ連鎖)のためのプログラムです。

某『A』で始まる教団とは何の関係もありません(笑)。


マルコフ連鎖とわ?

mkoは、『入力データ』と同じような性質の 『出力データ』を 作り出すプログラムです。 たとえば単語を与えると、 『っぽい』単語を新たに作り出す訳ですね。

ではどういうものが『っぽい』のでしょうか。 入力データの例(笑)を見てください。 文字データ『マ』の後に、文字データ『ハ』が 来ることが多いような気がしませんか?

このような性質を数学的にあらわすと、つぎのように なります。

→ 次のデータ
前デ0.00.80.2
の |0.00.01.0
↓タ - - -

まあ、本当のデータ例を全〜部、表にしたらうっとうしいので、 『マ』『ハ』『ン』の3文字しかないと仮定していますけどもね。

さて、表がどういう事を示しているかというと、『マ』の次は 大体(確率0.8、つまり10回に8回は)『ハ』であるということです。 たまに(確率0.2で)『マ』→『ン』という並びが出ますが、 間違っても『マ』→『マ』という並びは出ない(確率0.0) ということですね。

このように、次のデータは乱数で、 つまりさいころみたいなもので『でたらめに』決まるのですが、 全くのでたらめではなく、 『前の1データによって次のデータの出方が決まる』 ことを、マルコフ連鎖といいます(マルコフさんが 研究したからですね)。 もちろん、『次のデータによって次の次のデータが決まる』…… と、どんどん続いていくので、連鎖というわけです。


逆に、さいころやクジなどは、各回の乱数の出方が 独立であるといいます。 さいころで『1』→『1』→『1』と3回続けて『1』が出たら、 さすがに次は『1』が出ないような気がしますが、 それは錯覚というものです。 さいころは「『1』が続いたから次は『6』でも出してやるか」 などと思っているわけはなく、『1』が3回連続で出ても 次にまた『1』が出る確率は、相変わらず1/6で変わりません。


さて、mkoが『っぽい』データを作れる理由はお分かり頂けた でしょうか。では実際に上の入力データの例 を読ませて、新たなホーリ……もとい、データを 作ってみましょう。

もちろんcgiスクリプトで毎回起動しているので、 ↑のボタンは押すたびに違う結果が得られるはずです。

ボタンの上に書いてある名前は、mkoコマンドを実行するときの コマンド行指定方法です。 データ例は『hoge.mko』に格納されています。また、 10個連続で生成してみなさい、という指定が『-n10』です。

また 別のデータ例『kusuri.mko』 で実験してみましょう。

いかがでしょうか。

ofiltについて

ofiltは、テキストファイル中のあるデータ並びを mkoの出力で置き換えるコマンドです。

ではやってみましょう。 まずは簡単に例が見られるように、 テキストファイル例『testnews』 を用意しました。 見ていただければ分かりますが、ここでは ネットワーク上の日本語ニュースサービスより ある日のニュースのごく一部を、ほぼ全文引用 (アスキーネット・時事ニュースサービス) したことをお断りしておきます。

下のボタンでコマンド『ofilt testnews』が実行できます。


さて、受け身でお腹をよじっているだけでは インターネットの醍醐味(※ 死語)は満喫できません。 下のフィールドに好きな文章を書き込んで ホーリ……もとい、mkoの出力データによる 置換をお楽しみ……もとい、ご覧ください。


文章データは……

どっかのページからコピー & ペースト するとよいでしょう。

お勧めリンク

コピー & ペーストの仕方

  1. どこか好きなページに飛ぶ。上のリンクを使うか ブックマークを使うか、 URLを手で打ち込むかするとよいでしょう。
  2. 好きな部分をマウスでドラッグ(なぞる)。 Windows (3.1、95、NT)やUNIX (Xゐんどう) ならば、左ボタンを、Macならボタンを 押したまま、文章の好きな部分の上で マウスを動かします。選んだ部分が黒く(?) 反転するはずです。
  3. コピーします。 Netscape、Ineternet Explorerなどなら『編集』(『Edit』)メニュー の中に『コピー』(『Copy』)があるはずですので それを選びます。 Windows (3.1、95、NT)なら『Ctrl』+『C』、 Xゐんどうなら『Alt』+『C』、 Macなら『アップル』+『C』でも同じことができます。
  4. このページに戻ります。
  5. 上のテキストフィールドの中をマウスでクリックして、 ペーストします。 『編集』(『Edit』)メニュー の中に『貼りつけ』(『Paste』)があるはずですので それを選びます。 Windows (3.1、95、NT)なら『Ctrl』+『V』、 Xゐんどうなら『Alt』+『V』、 Macなら『アップル』+『V』でも同じです。

mkoファイル募集

mkoは、このようにちょっとクールなアイディアと わずかの調査努力でさらに実用的(なんの?)になるのです。

このページでは、皆さんが作ったmkoファイルを随時募集 しております。身近な『あるジャンルの単語』を 列挙して、 taroh@taroh.orgまで お送り下さい(粗品はありません(笑))。

応募されるファイルは当ページでの公開、および プログラムアーカイブの配布条件にてアーカイブと一緒に 配布できるものに限ります。なおコメントに 著作権表示、一言書き添えて下さると幸いです。


Powered by ay.nu.
(c) copyright 1995-2006
by taroh@taroh.org,
all rights reserved.