ふわふわ ただきちさん

サーバーリソースモニター 
×
2009/06/20

■形態素解析を試してみた

結局、MeCabを採用して形態素解析を試してみた。
で、解析結果からキーワードに使えそうな単語を抽出してみたのがこれ↓

GIOS CANTARE nbsp 最近 雨 今日 雨 降る ジャマイカ 心配 幸運 雨 降っ Y sRoad 相棒 連れ帰り 私 今 安物 MTB 乗っ 完全 初心者 店員 ブレーキ 方 ギア チェンジ 注意 事項 最後 乗降 車 ワンポイント アドバイス 基本 的 豆 知識 的 教え 非常 親切 整備 担当 方 親切 親しみ 方 店 初乗り 家 車 通り 激しい 道 路 駐 激しい 道 ビビリ 私 最初 車道 走る 途中 自転車 専用 車線 設置 路 駐 少ない 広め 通り 気持ちよく 乗れ 分類 的 ロード バイク 入っ ギア クロス バイク 的 セッティング

これは5月30日の日記から抽出したキーワードの一部です。ちなみに、検索結果優先順位判定を行うために、重複単語の除外はしてません。
どの単語をキーワードとするかは「ただきちロジック」ですが、もっとまじめに作らないといけない雰囲気をかもし出してますね。
抜き出す単語の品詞種別(いわゆる名詞の中にもいくつか内部的な種別を持ってる)をあらかじめ決めておいて、それ以外を捨ててるだけなんですけど。
後は固有名詞を救う仕組みを用意しておけば、それなりに使える仕組みになるかな。あ、タグを組み合わせればいいのか。
んで、検索キーワードのほうも同じロジックで形態素解析をすれば、それなりに面白い検索結果が得られるかも。

検索機能にはMySQLのFULLTEXT機能を使用する想定ですが、このFULLTEXTインデックスをテーブルにはるとそのテーブルのINSERT/UPDATEが遅くなるとか。
ただ、このサイトのように極めて更新頻度の低いデータに関していえば、性能低下は実感できず。
過去記事を含めて一気に形態素解析&UPDATEをかけてみたけれども、2,3秒で完了した。とは言っても150件程度ですがね。MeCabが優秀なのかサーバリソースがありあまっているだけなのか…?
また、検索性能ですが、他サイトの情報によると通常の部分一致検索に比べて2倍〜100倍(!)の性能向上が期待できるとか。
検索機能は未実装なのでまだ実証はできてないけど。

▼コメント参照( 0件 ) お名前: コメント:
2009/06/19

■形態素解析を組み込んでみよう

記事の全文検索のようなことが出来る機能を実装してみようと思ってみたり。
そうなってくるとやりたいのが題の形態素解析。
要は、文章を最小の単語にまで分解するってこと。

英文の場合は基本的にはスペースで単語が区切られているので分かりやすいのだけど、日本語は単純ではない。
当然ながら私のような素人が一朝一夕で実装できるようなものではないはず。

ということで、やっぱりここは外部ツールに頼ってみましょう。
コマンドラインで実行できて、品詞とともに出力されるやつが希望!
何を使おうかなぁ。

今のところ「茶セン」が有力・・・ってセンの字が出てこねぇ!
追記MeCabの方がいいかも?

▼メモ
http://php.plus-server.net/function.proc-open.html


明日は天気もよさそうだし、CANTAREを初回点検に持っていこうかな。
走行距離も目安といわれていた100Kmをいつの間にか超えてたし。

▼コメント参照( 2件 ) お名前: コメント:
2009/02/08

PHPで作るWebメールシステム

つーことで、とりあえずはPHPのimap関数を使ってみようということで、相変わらず気持ち悪い体系の関数群をラップするクラスを作成。
そのうえで、メールボックス内のメールリストを出力するサンプルプログラムを作成してみた。

ところが、こいつのパフォーマンスがヘドが出るほど悪い。
メールボックスに50通程度のメールが入ってる状態で、30秒近くかかる。
・・・なぜ?

Webサーバかメールサーバか、プログラムか・・・悪いのは一体どこだろう?
自作クラスがクソなのかimap関数がクソなのか。

いずれにしても、現状はメールサーバのメールボックスの内容を単純に出力するだけのプログラムなので・・・
・取り込んだメールを保管してメールサーバ上のメールが削除されても問題なし!
・新着メールだけメールサーバから読み込んで、取り込みパフォーマンスの改善を!
といったところが次回の目標。

新着メールだけの取り込みってどうやるんだろう?

▼コメント参照( 0件 ) お名前: コメント:
2008/12/14

最近、痴呆が激しくて、本を買うときとかに
「あれ?この本もう買ってたっけ?」
っていうことが多い。多過ぎる。

というわけで、自分の持ってる書籍などを管理するデータベースを作成してみた。
趣味が駄々漏れになるのは恥ずかしいので公開はしないけどね。

こういうデータベースって入力がスゲー面倒だべ。
入力を簡略化する手段として、ISBNなどのコードから商品情報を自動入力するのはよくある方法で、
その元ネタにいつもお世話になってるAmazonを利用しようと思ったんだけど・・・
正直やり方がわからん(汗

仕方なく別の所から元ネタを引っ張ってきて、一応自動入力はできるようになったけど
こうなると次はコード入力するのが面倒になってくるんだよね。
携帯ならカメラを使用してコードコピー&ペーストができるけど、PCは・・・
てか、カメラ起動→撮影→コピー→貼り付けの手間と、入力する手間だったら、入力したほうが手間が少ないかw

▼コメント参照( 0件 ) お名前: コメント:
2008/10/26

久し振りに画像アップロードしようとして気が付いたんだが…
FlashPlayer10になってからJavaScript経由でFlashのファイル参照ダイアログ呼び出しができなくなってる…!
このサイトの作成ツールは複数ファイルのアップロードを簡便化するためにFlashを活用しているのだが、それが動作しなくなってたんすよ!

調べてみたら、その筋では既知の問題だったらしく、あっさりと原因が判明しました。
セキュリティ上の問題からの仕様変更だそうで、Flashのファイル選択ダイアログはユーザのクリック等によるアクションがトリガである場合のみ呼び出すことができるよう仕様が変更されたそうです。
当サイトではJavaScriptから直接呼び出していた為、この仕様変更にモロにキタわけですな。
対応方法は、トリガとなるユーザアクションがFlash上で発生するように変更する。
具体的には、うちのサイトを例にすると、今までHTML上で書いていた【参照】ボタンをFlash上に置きかえることで対応可能。

…やっぱりバージョン変更は恐ろしいっす。

▼コメント参照( 0件 ) お名前: コメント:
2008/10/13
なんか体調が悪いので、サーバーリソースモニタにネットワーク負荷状況を足してみた。
ネットワークの100%基準値は超個人的な感覚値です。w

リソースモニタの更新間隔を1分に伸ばしてみた。(今までは30秒)
これにより今までよりも長時間のログがグラフィカルに確認できるようになりました。

さらに、モニタの横幅を拡大。
更新間隔の拡張と合わせて、表示できる時間帯が3倍に拡大しました。

だから何?とかいう突っ込みは無しの方向で。
▼コメント参照( 0件 ) お名前: コメント:
2008/10/11

ブラウザ上の入力画面でもさもさ文章を書いてたら、キーボードショートカットの戻るで戻っちまった!
あわてて入力画面に進むも、残酷なことに入力内容はあっさり捨てられてた。
…やってらんねぇ…
自動保存機能を付けるかねぇ。あー、てか、画面アンロード時に保存を促せばいいだけか。

▼コメント参照( 0件 ) お名前: コメント:
2008/09/07

熊カレー

これが、なかなかウマイ。

それはさておき、ようやくいただいたコメントが表示できるようになりましたよ。
操作性云々を完全に無視したインタフェースですが!

…そもそも、あんまりコメント貰えてないですが!

▼コメント参照( 1件 ) お名前: コメント:
2008/08/14

Flashで遊ぶ

◆XMLConnector
サーバとの連携にXMLを採用しようと考えたわけですよ。
そしたらチョード良く、XMLConnectorなるコンポーネントが既に用意されているというではないですか。
サーバ側にHTTPのGETやらPOSTやらでリクエストを投げて結果を受け取る仕組みはあるようなので、後はXMLを返すプログラムを用意すればいいんですね。
すっごい簡単すね。

ちゅーわけで、さっそくXMLのフォーマット定義から初めて、Flashの作成、サーバサイドプログラムの作成…
なんと総作業時間15分

…挫折しました。だって、なんかFlashからリクエストが飛ばないんだもん…
ちゃんとリクエスト発行イベントを呼び出してるはずなんだけどなぁ。

潔い俺はPS3の電源を入れましたよ。

▼コメント参照( 2件 ) お名前: コメント:
2008/05/18

自分の腹を見てたら、やたらとヘソの汚さが気になったので、サーバリソースを可視化してみた。


水色っぽい線:CPU1占有率
黄緑っぽい線:CPU2占有率
赤紫っぽい線:物理メモリ占有率

リソース余りまくり…てか、変化が無いからつまらんな。

★追記
5分くらいのやっつけ作業で、適当にリソースモニタに日時を入れてみた。
見づらいが、右端が現在で左端が30分前くらいってのは分かるレベルかな、と。
あぁ、下端が0じゃなくなったから、0線を出さないといかんな。
CPUがずっと0付近を彷徨ってるから違和感無かったw

▼コメント参照( 2件 ) お名前: コメント: