nDiki : P3:PeraPeraPrv
スポンサード リンク
Related term
2007年11月28日 (水)
■ 今日のさえずり - 火葬って焼却処分?

- 18:57 Google ドキュメントで作った資料印刷したら、表が横方向全部印刷されてなかった。明日印刷しなおすか。 *Tw*
- 19:24 @daysgoon お誕生おめでとうございます![mb]
- 19:37 帰りの中で1回 iKnow! iアプリ版やった。ボリューム的にちょうどいいな。正解すると D703i ブルブルする。[mb]
- 19:43 @daysgoon 奥様にはボチボチ打っているの、とがめられませんでした?[mb]
- 19:49 火葬って焼却処分?[mb]
- 23:50 P3 2.07 にアップデートして起動。
- 23:59 郵便局株式会社のお客様サービス部の人が、干してある洗濯物を見てプロファイリングし保険の訪問営業かけてきたらしい。これが民営化?
- 今日のさえずり - 泣きながら 100g 少なくなったアタックを買った (2008-08-15)
- 今日のさえずり - 昭和通り側に鯛焼き屋あり (2008-09-30)
- ケータイ用にプライベート Wiki を設置 (2008-01-07)
- 生命保険証券 (2003-05-10)
- 今日のさえずり - ホームレスが電線の皮剥いてる (2008-07-30)
2007年11月29日 (木)
■ 今日のさえずり - 11時のアモーレの鐘が聴きたい

- 今日のさえずり - 「ドン吉くんの鳥グッズ展」終了間近 (2008-08-08)
- 今日のさえずり - 納豆にオリーブオイル+胡椒 (2008-08-02)
- 歯の治療9回目 - 抜歯後の消毒 (2004-12-16)
- 歯の治療14回目 - 左上型取り + 仮詰め (2005-01-20)
- [ 花粉症 ] 花粉アレルギー対策に診療所へ (2005-01-17)
2007年12月8日 (土)
■ 今日のさえずり - 付録ミニ万年筆のラピタ見てきた

- 10:37 東京電力から電話があった。10~15分でブレーカ交換しにくる。[mb]
- 10:46 東京電力きてる。[mb]
- 10:48 電気止まった。[mb]
- 10:53 新しいブレーカで電気復帰。[mb]
- 10:58 ブレーカ交換終了して東京電力の人帰った。背の高い人だったけれど脚立は使ってた。[mb]
- 21:45 P3 2.14 にして起動。今までの P3.properties がエラーになったので、設定しなおした。
- 21:49 夕方本屋に行って付録ミニ万年筆のラピタ見てきた。表紙の万年筆の写真にぐっとくるものがなかったので、買うのやめた。
- 22:12 nearmiss 興奮してるな。
- 22:22 1カ月ぐらい前に sid で WPA つながらなくなったので、しばらく自宅でも FON 接続していたのだが、今日試してみたらまた WPA つながるようになってた。
- 今日のさえずり - Naney を表す四字熟語は「初恋泥棒」 (2007-11-07)
- BOXY のノック式ボールペン (2005-10-11)
- 今日のさえずり - 金メダルのネックストラップには、ケータイ用のヒモが付い... (2008-08-24)
- 雑誌のおまけ万年筆「ミニ檸檬」 (2005-10-06)
- ミニ万年筆「WHITE」何に使う? (2008-09-07)
2007年12月11日 (火)
■ 今日のさえずり - 本当のご主人様になりませんかぁ

- 09:54 「本当のご主人様になりませんかぁ」社長募集 - という捨て看。L:千代田区神田佐久間町[mb]
- 10:10 Twit 0.96b4 にアップデートして起動。 *Tw*
- 18:36 痛恨のミス。久しぶりにコピペコーディングしたら、書き換え忘れを1箇所見落してはまった。 *Tw*
- 21:38 電気ご使用量のお知らせきた。昨年同月と比べて +267kWh。許容範囲のアップ。[mb]
- 22:39 P3 2.17 にアップデートして起動。
- 22:41 お、10分ぐらい前から大喜利か。
- 22:53 P3 でリスト高 20 表示にしていると、yamadakun のアイコンがちょっと怖くみえる。
- 24:37 ちょっとしんどいので、設定を all @ replies から @ replies to the people I'm following にした。
- 今日のさえずり - なんだ、この寒々しいペデストリアンデッキ (2007-11-26)
- 結婚式出席 (2004-11-06)
- 今日のさえずり - 昭和通りでホームレスがトロフィーかかげてる! (2008-08-31)
- 今日のさえずり - この冬初めて化粧水を塗った (2007-11-23)
- 今日のさえずり - プリントゴッコ販売終了か。家族でまだ使っている人いるぞ。 (2008-05-31)
2007年12月16日 (日)
■ 今日のさえずり - クリパにラブジェンガ

- 17:30 この冬、今初めて便座のヒーターをつけた。[mb]
- 17:39 クリパにラブジェンガを薦めたい。というか結果報告を聞きだい。[mb]
- 19:35 P3 2.18 にアップデートして起動。NGワード機能追加嬉しい。
- 今日のさえずり - 納豆にオリーブオイル+胡椒 (2008-08-02)
- 今日のさえずり - 「ドン吉くんの鳥グッズ展」終了間近 (2008-08-08)
- 今日のさえずり - 昭和通り側に鯛焼き屋あり (2008-09-30)
- 今日のさえずり - 港区出身者とはニコニコ学園ネタで盛りあがる (2008-06-24)
- Twitter を使い始めて1年 (2008-04-06)
2007年12月19日 (水)
■ 今日のさえずり - Perl v5.10.0 を sid 上で make

- 09:14 腹のもやもや感があるものの、ほぼ回復。[mb]
- 12:42 同僚に朝昼晩ロキソニンを飲んでいる人がいた。 *Tw*
- 18:01 久しぶりにダーっとコードを書いてた(でも間に合わない)。今日の残りの時間は RTM 上のアクション実行にあてるか。 *Tw*
- 18:27 そういえば明日ボーナスが支給されるらしい。 *Tw*
- 19:56 クリエイトSDに寄ったけど、欲しい商品無かった。なんか最近品揃えがおかしくなってきていると思う。L:大井町[mb]
- 20:05 エキナセア茶買った。この冬の残りは、これで乗り切りたい。[mb]
- 22:21 P3 2.19 にアップデート。前の P3.properties に1行 noenterpost= を追加して起動。
- 22:58 Perl v5.10.0 を sid 上で sh Configure -de -Dprefix=/usr/local/perl-5.10.0; make した。make test しかけて風呂入る。
- 23:27 風呂からあがった。
- 23:28 Perl v5.10.0 の make test の結果: Failed 1 test out of 1382, 99.93% okay.
- 23:31 lib/Archive/Extract/t/01_Archive-Extract.t line 350 で失敗か。ま、とりあえず make install しておく。
- Twitter ベイジアンフィルタプロキシ (2007-12-29)
- 今日のさえずり - RTM 上でプライベートと仕事についてタグで分けることにした (2007-11-21)
- 今日のさえずり - 「ドン吉くんの鳥グッズ展」終了間近 (2008-08-08)
- 今日のさえずり - 100g 減る前にアタック買いだめ (2008-05-28)
- 今日のさえずり - サーバ止めた。この静寂がたまらない。 (2008-11-16)
2007年12月24日 (月)
■ 今日のさえずり - スーツに着た回数を記録する仕組みが欲しい

- 10:27 明日の浜松出張確定。
- 11:05 @lynmock P3 2.19 on Debian GNU/Linux sid です。Java(TM) SE Runtime Environment (build 1.6.0_03-b05)
- 11:13 P3 2.21 にアップデートして起動。
- 14:36 クリスマスケーキ行列の中。[mb]
- 15:16 ニッコールクラブきた。[mb]
- 15:30 アトレ大井町2008年1月28日から改装。3月中旬リニューアルオープン予定。[mb]
- 16:36 クリーニングに出す目安用に、スーツに着た回数を記録する仕組みが欲しい。あるいは不潔インジケータ。[mb]
- Twitter ベイジアンフィルタプロキシ (2007-12-29)
- 今日のさえずり - 港区出身者とはニコニコ学園ネタで盛りあがる (2008-06-24)
- 今日のさえずり - RTM 上でプライベートと仕事についてタグで分けることにした (2007-11-21)
- skkinput がよく落ちるので uim-skk に乗り換え (2005-09-22)
- 今日のさえずり - サーバ止めた。この静寂がたまらない。 (2008-11-16)
2007年12月25日 (火)
■ 今日のさえずり - 新幹線車内の電光掲示板に Twitter タイムラインが流れればいいのに

- 09:10 浜松出張。最近のぞみが多かったので、ひかりは久しぶり。L:品川駅[mb]
- 09:42 新幹線車内の電光掲示板に Twitter タイムラインが流れればいいのに。[mb]
- 09:49 この辺りの人はこんな大きな富士山見ながら生活しているんだ。L:三島駅[mb]
- 10:39 浜松駅新幹線待合室綺麗だな。スターバックスもある。[mb]
- 10:43 浜松駅。http://f.hatena.ne.jp/.../20071225104233
- 11:58 浜松でうな重。[mb]
- 12:26 小林着。[mb]
- 16:17 クライアントでの作業終了して帰路。タクシーの運転手が臭い。[mb]
- 16:43 乗っているタクシーのドライバー紹介「特にホテルや旅館での食事の時間が楽しみです。」見た目通り。[mb]
- 16:58 15秒間に合わなくて新幹線逃した。スイマセン。[mb]
- 17:03 浜松駅のスターバックス。L:浜松駅 http://f.hatena.ne.jp/.../20071225170102
- 22:34 P3 2.23 にアップデートして起動。
- 今日のさえずり - 把握される前から犠牲者 (2008-05-13)
- 修学旅行以来の京都 (2005-07-24)
- 時代祭の日京都観光ダイジェスト (2005-10-22)
- Give me chopsticks - 淡路島へ出張 (復路) (2004-10-26)
- 東京 - 品川間で新幹線に乗車したい (2006-06-22)
2007年12月29日 (土)
■ Twitter ベイジアンフィルタプロキシ

Twitter で following が増えてくるにつれて、タイムラインに目を通すのが大変になってきた(という程きちんと見ている訳ではないが)。 さっとタイムラインをなめて面白そうな情報をピックアップしたい時は、「おはよう」とか「風呂入った」とか「トイレ」とかは除外して読みたい(そういう書き込み自体は嫌いじゃないのだが、人生はあまりにも短い)。
Twit や P3:PeraPeraPrv では NG ワード指定ができて、それらを含むステータスは表示しないようにできるのだが、Twitter の書き込みは揺らぎが激しすぎて指定しきれないという弱点がる。
ということでベイジアンフィルタでフィルタリングしてみることにした。
自前で Twitter クライアントを作る気はないので、proxy の形でさっと実装してみた。
#!/usr/bin/perl
use strict;
use warnings;
use HTTP::Proxy;
use HTTP::Proxy::BodyFilter::complete;
my $proxy = HTTP::Proxy->new(port => 8088);
$proxy->push_filter(response => HTTP::Proxy::BodyFilter::complete->new,
mime => 'application/xml');
$proxy->push_filter(response => Bsfilter->new,
mime => 'application/xml');
$proxy->start;
{
package Bsfilter;
use File::Temp qw/tempfile/;
use XML::XPath;
use base qw(HTTP::Proxy::BodyFilter);
sub filter {
my ($self, $dataref, $message, $protocol, $buffer) = @_;
return unless defined($$dataref) && $$dataref ne '';
eval {
my $xml = XML::XPath->new(xml => $$dataref);
my @nodes = $xml->findnodes('/statuses/status/text/text()');
return unless @nodes;
for my $node (@nodes) {
my $text = $node->getNodeValue;
if (is_NG($text)) {
$node->setNodeValue("[NG] $text");
}
}
$$dataref = qq(<?xml version="1.0" encoding="UTF-8"?>\n);
$$dataref .= $xml->get_context->toString;
utf8::encode($$dataref);
};
if ($@) {
warn $@;
}
}
sub will_modify { 1 }
sub is_NG {
my ($text) = @_;
my ($fh, $filename) = tempfile();
utf8::encode($text);
print $fh $text;
close($fh);
my $result
= system(
"bsfilter --homedir ~/.twitter-bsfilter --ignore-header --auto-update $filename"
);
unlink($filename);
return !$result;
}
}
@ HTTP proxy の作成
Perl で HTTP proxy を作ろうとして真っ先に思い浮かんだのは POE だけれど、ちょっとヘビーなので今回は HTTP::Proxy をチョイス。 もともとフィルタリング HTTP proxy を作ることを念頭に置いた Perl モジュールなので今回の目的にぴったり。
1つはまった点といえば、filter の呼び出しがレスポンス全てを取得してからではなく一部分ずつの呼び出しになるところ。その仕様に気がつくのにちょっと時間がかかってしまった。 例えば XML 形式のレスポンスをフィルタしようとしても、普通に HTTP::Proxy を使うと XML の一部ずつがフィルタに渡されるため、XML のパースがうまくいかない。
これについては HTTP::Proxy::BodyFilter::complete を使うことで、まとめてフィルタに渡せるようになった。
@ レスポンスの処理
Twitter のタイムライン取得については P3:PeraPeraPrv が XML 形式で取得しているので、そのタイプのレスポンスをフィルタするようにした。
XML::XPath でステータス部分を抜き出して NG 判定し、NG であれば先頭に [NG] を追加する。 これで Twitter クライアント側で [NG] を NG ワード指定すれば、表示されないようにすることができる。
@ bsfilter による NG 判定
NG 判定は普段メールの spam フィルタとして使っている bsfilter を使った。 単純に system 関数で呼び出して結果を取得するだけ。
今回は対象がメールではないので --ignore-header を指定。また自動的に学習するように --auto-update を指定。 それと普段メールのフィルタリングに使っているのとは bsfilter のデータベースを別にしたいので、--homedir も指定しておく。
@ NG と非 NG の学習。
NG ワードを twitter-NG.txt に、非 NG ワードを twitter-clean.txt に書いて以下のコマンドを実行。
bsfilter --add-clean --ignore-header --homedir ~/.twitter-bsfilter twitter-clean.txt bsfilter --add-spam --ignore-header --homedir ~/.twitter-bsfilter twitter-NG.txt bsfilter --update --homedir ~/.twitter-bsfilter
自分の環境 (Debian GNU/Linux sid)では、UTF-8 で書いておいて問題なかった。
@ フィルタリングしてみる
あとは先の proxy を起動し、P3:PeraPeraPrv でプロキシとして localhost:8088 を指定すれば OK。
タイムラインを取得するたびに bsfilter が動いて NG なステータスには [NG] が挿入される。
@ フィルタリングの精度
これについては、まだまだチューンの必要ありかな。
- 事前の学習データが少ない。
- --auto-update していることもあり、最初に NG 判定が多いとそちら側に強化されすぎる。
- 毎回 bsfilter を呼んでいるため、同じステータスが何度も学習される。
まだ使える精度まで上がってないけれど、教師データを増やせばそれなりにいけるかもしれない。
proxy の枠組ができたので、(@~は抜いてから bsfilter に渡すとか、前後の文脈も含めるとか)いろいろ試して遊べそうではある。 別に bsfilter にこだわらず、正規表現による判定などをしてもよいし。
この辺り P3 は Java で書かれているので、プラグインを書いて拡張できるよう将来になると面白いなと思ってみたり。
- 今日のさえずり - 100g 減る前にアタック買いだめ (2008-05-28)
- PAR (2004-07-19)
- Twitter への書き込みを自動的に Skype ムードメッセージに設定する (2008-02-25)
- 今日のさえずり - Twitter 日本語表示みた (2008-04-23)
- MAILPIA による Twitter リプライチェック (2008-11-18)
■ 今日のさえずり - 「見え窓」はこの時の満足のためだけに使う

- 11:44 しびれてた足を動かしたら、近くにあった年賀状イラスト集の表紙で小指を切った。イテ。というかしびれててどうにもできん。
- 17:38 ホタルック欲しかったけれど LABI には40形なかった。かわりにパルックプレミア買った。
- 18:37 5カ月ぶりにトレビーノ カセッティのカートリッジ交換。「見え窓」はこの時の満足のためだけに使う。
- 00:26 P3 用に Twitter ベイジアンフィルタプロキシ作ってみた。 http://tinyurl.com/yqt75p
- 今日のさえずり - 以前より全部精読しているという落し穴 (2007-12-30)
- 今日のさえずり - 78円の赤いきつねに、430円のかき揚げ (2007-12-31)
- 今日のさえずり - 鳩三郎が会社にきた (2008-09-25)
- 今日のさえずり - ビックカメラのポイントが失効しそうだった (2008-01-16)
- Twitter ベイジアンフィルタプロキシ (2007-12-29)
2008年1月3日 (木)
■ 今日のさえずり - 「はてなMobileGateway」かましてから、OKUZASHIKI に書き込む

- 24:02 mixi のコミュニティ・ニュースメール、最近 Subject にマイミクシィ最新日記のタイトルが書かれているんだけれど、これが「あけおめ」だと萎える。
- 24:15 P3 2.23 から 2.28 にアップデートして起動。P3.properties 非互換。
- 24:36 Bookmarklet で「はてなMobileGateway」かましてから、OKUZASHIKI に書き込むことにした。
- 24:38 もう布団に入って寝たいが、足がしびれて動けない。
- mixi のプロフィールをランダム更新 (2005-09-30)
- mixipress でコミュニティ掲示板もチェック (2005-10-01)
- Firefox mixiツールバー 0.0.4 (2005-02-04)
- 私的10大ニュース2004 [ web ] (2004-12-31)
- mixi の写真にメッセージを (2004-11-28)
スポンサード リンク
■よく検索されるキーワード
torrent(109) x31(45) thinkpad(31) 動画(29) 提案書(26) mp980(24) 手帳(24) windows(23) linux(23) 画像(21) 使い方(21) リフィル(21) debian(20) usb(20) tc-1(19) perl(19) 筆まめ(18) 壁紙(17) ほぼ日手帳(16) 冷蔵庫(14) ドラマ(13) wiki(13) 書き方(12) ダイソー(12) システム手帳(12) 宮根誠司(12) ノート(11) so905ics(11) 無印(11) バッグインバッグ(11) 映画(11) 設定(10) 修理(10) 宮根(9) ssh(9) a6(9) ほぼ日(9) 黒田征太郎(9) バッグ(9) gmail(8) 感想(8) 娘(8) f-01a(8) メモリ(8) gtd(8) ブログ(8) nikon(8) allinanchor:*.torrent(8) ボールペン(7) 方眼(7) ポイント(7) 4c(7) ヨドバシカメラ(7) ケース(7) twitter(7) apache(7) ht-01a(7) ヨドバシ(7) ubuntu(7) truecrypt(7) n-02a(7) 作り方(7) minolta(7) af(6) インストール(6) ガントチャート(6) mp3(6) zippo(6) hdd(6) emacs(6) レビュー(6) カバー(6) vq1005(6) 日本語(6) ハクキンカイロ(6) 無印良品(6) グレゴリー(6) 交換(6) nikkor(6) pixus(6)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.080256s / load averages: 0.24, 0.26, 0.23
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)




スポンサード リンク