蝉は、やがて死ぬる午後に気づいた。ああ、私たち、もっと仕合せになってよかったのだ。:2018年09月14日分

2018/09/14(Fri)

[自宅システム管理] チラシの裏(その6くらい?)

いつになればgensimまで辿り着くのかword2vecで遊ぶまでの前準備ですらめんどくさいもうヤダ *1

まず学習用のコーパスの作成と分ち書きの精度を上げる辞書が必要になるんだけど、検索汚染するだけのやってみた(だけ)記事での使用例が多いジャアアア日本語Wiki PedoPediaの全文データじゃアニメと声優そしてAV女優ばかり学習してしまうので、そこは日本語マニュアルを使って学習ですかねというのが前回まで。

日本語マニュアルについては、N方面は翻訳と口にしただけでアンチが西武打線ばりに山賊襲来して絶命するとの噂だけど詳しい事は知らん。 pkgsrc/misc/ja-manによれば最新版はNetBSD1.3I-jman-19990531でほぼ20年前。 しかもセクション3の翻訳状況は無し・零・絶無・皆無・ナッシング・ゼロ・死んだオウム以下略。 さすが使ってる人間みなlogin:が表示されたらそこで押入にしまうというだけはある、やはりワイは間違った側の空を10年飛んでいたわけですわ。

そんでFの方も ports/japanese/man-docにある最新版はman-doc-5.4.20050911でこちらも干支軽く一回転状態だし、セクション3の翻訳状況も芳しくない。

なので結局頼るのは戦いは数だよ!の言葉通り JM Projectすな、こちらは最新リリースはman-pages-ja-20180815でセクション3もようやっとる。 来世では「大松曰、寧為牛後、無為鶏後(大松「鶏の尾羽よりも牛の尻尾の方がマシだぞ」)」をモットーに生きよう、なお今生はまにあわんもよう。

これで足りないようならどーせコーパスと辞書は公開目的じゃないし商用UNIXのマニュアル関連食わせるでええかね。

んでroff形式のマニュアル整形するのにGNU troff(groff)なりmandoc(旧mandocml)に食わせる前に

あたりは取り除いておいた方がええのでスクリプト書かんとなという、あと同時にMeCabで分ち書きする時に例えばstrtok_rが

$ echo strtok_r | mecab -Owakati -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
strtok _ r
EOS

のように分割されてしまうのを避けるために辞書にせんとならんのだけど、これはNの場合マクロ使って

.Nm strtok_r

とこれは名前だよという意味が持たせてるんだけど、JMだと文中の

\fBstrtok_r\fP()

のような太字指示である\fB~\fPの間がおそらく関数名だろう(イタリックなら変数名)くらいしか判らんのがちょっとアレ。 まぁ関数名辞書は別にNのマニュアル原文の英文からも作れるしいいか…

そういえば分ち書きの辞書として mecab-ipadic-NEologdってやつがネットに強い 辞書というので導入してあるんだが

$ echo 常考 | mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
常考    名詞,固有名詞,一般,*,*,*,常考,ジョウコウ,ジョウコー
EOS

とあるけど「常識的に」「考えて」にはならんかさすがに。

それはそうとして

$ echo 33-3 | mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
33      名詞,数,*,*,*,*,*
-3      名詞,固有名詞,一般,*,*,*,-3,マイナスサン,マイナスサン
EOS

せやね、じゃあ

$ echo 33-4 | mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
33-4    名詞,固有名詞,一般,*,*,*,33-4,サンジュウサンタイヨン,サンジュウサンタイヨン
EOS

はい、皆さんご一緒に

$ echo な阪関無 | mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
な      助詞,終助詞,*,*,*,*,な,ナ,ナ
阪      名詞,固有名詞,人名,姓,*,*,阪,バン,バン
関      名詞,接尾,一般,*,*,*,関,セキ,セキ
無      助動詞,*,*,*,形容詞・イ段,ガル接続,無い,ナ,ナ
EOS
*1:これが終わったらスキャンした大量の写真の整理にOpenCVをだな…