Mac で SimString を使ってみた

類似文字列検索ライブラリの SimString を Mac で使ってみました。
ちょっとググった感じだと Mac でのインストール方法が見つからなかったので、しょーもない内容ですが載せておきます。

Ruby で Crfsuite::ItemSequence を作成する処理を 2 倍以上速くした

CRFsuite は柔軟な素性を指定できることが特徴の一つですが、それ故に CRF++ と違って素性を全て与えてやる必要があり、オンラインで推定しようとするとこの処理がボトルネックになります。

R で擬似アクセスログを作ってみた

アクセスログっぽいものに対する単純な分析の練習用のデータがほしくて、擬似アクセスログを生成するコードを書いてみました。
https://gist.github.com/abicky/dfdeaec9efded25b733a#file-access_logs-r

MeCab で N-Best 解の累積コストを出力する

能動学習の考え方を適用すると、MeCab の学習データを作成する際には第 1 候補と第 2 候補の累積コストの差が小さいものを優先的にアノテーションすれば良さそうな気がします。

CRFsuite を Ruby から実行してみた

CRFsuite は最新バージョン1から SWIG のインタフェースが提供されており、SWIG がサポートしている言語であれば手軽に利用することができます。

  1. といっても 4 年ぐらい前にリリースされたやつですが 

情報抽出タスクで流行りの distant supervision について調べてみた

最近(?)、情報抽出の分野で distant supervision という学習方法が注目されているみたいなので概要と基論文の内容をまとめてみました。

コロケーション抽出に使われる C-value とは何か?

コロケーションの定義が割りと曖昧な気がしますが、ここでは「よく利用される連続した単語列」とします。
例えば「辞書を引く」(イディオム)、「濃いコーヒー」(形容詞+名詞)、「交通安全」(複合名詞)とかです。
以下、[1] の要約みたいなものです。1996 年の論文なので、コロケーション抽出に使われる最新指標ってわけではないはずです。

Rcpp と PCRE で R での文字列抽出を 20 倍速くした

R で最も辛い処理の一つに文字列抽出が挙げられるでしょう。
「R言語上級ハンドブック」では regmatches, str_match_all, strapply などによる文字列抽出の方法を紹介しましたが、やはり他の言語と比べると辛いものがあります。1

  1. じゃあ文字列処理は他の言語を使えばいいかというと、そのためだけにいちいち R で処理した結果を別の言語に食わせてその結果を R で読み込むとか面倒じゃないですか。 

position: sticky をエミュレートしてみた

エミュレートしてみました。動作確認は適当です。
https://gist.github.com/abicky/7c351a6ed1170d9a8c5f#file-sticky-js

R と SQL を対応付けてみた ~data.table 編~

data.table 便利ですよね。data.table::fread が read.table に比べて格段に速いので、データの読み込みのためだけに data.table を使うのもありかと思います。
ただ、data.table:::unique.data.table のように data.frame 感覚で関数を使うと意図しない結果になることもあるので、主要な操作を SQL と対応付けてまとめてみました。

広告