2007-07-01から1ヶ月間の記事一覧

フィボナッチ数列をTrampolined Styleで

フィボナッチ数列を実装しようとしたら頭が混乱してきた。やっぱり、自分で手を動かしてみないと、きちんと理解できたかどうかは確認できないな。

MacBook音質悪い?

どうも、MacBookのヘッドホン端子に直接ヘッドホン端子をつないでると、プチプチノイズが乗るような気がする。USB-Audioを使えば問題ないんだけど、サスペンドから復帰すると音が出なくなるんだよなぁ…。こういうバグは原因がどこにあるのか見当がつかないの…

Texts Rasterization Exposures

Texts Rasterization Exposuresには、フォントラスタライゼーションに関して、今までの常識とはちょっと違うことが書いてある。要約してみると以下のような感じ? 水平方向のGrid Fittingはやめよう。カーニングがずれて汚くなるし、WYSIWYGなレイアウト調整…

So long, and thanks for all the fish

久々にOSNewsを読んだらWhy I Quit: Kernel Developer Con Kolivasなんて記事が出てた。ck patchの人はKernel開発やめたのか…。Con-Kolivasのページに行ってみるとなぜか日本語で「さようなら、いままで魚をありがとう」とか書いてあって面食らったんだけど…

JavaScriptでTrampolined Style

Trampolined Style (Steven E. Ganz et al. International Conference on Functional Programming, 1999)をざっと読んだ。ICFP…。 Trampolined Style(カタカナだとトランポリンスタイルでいいのかな?ああ、なんだか形態素解析が難しそう…)というのは、関…

二分探索は意外と重い

要素数が少ない配列に対して二分探索を行ってもパフォーマンスは向上しないどころか、微妙に低下することがある。問題設定によっても変わってくるかもしれないが、一般に二分探索では一回のループに3,4回は比較が必要であるのに対し、線形探索なら比較は1回…

EXA Performance Issues

Carl WorthのBlogでのEXAのi965用ドライバのパフォーマンス問題に関する一連の記事が面白かった。 EXA使うよりアクセラレート機能を使わない方が速い、おかしい!というところから、DRI有効にすると速くなるよ、でもそれでもまだいくつかのテストはEXA enabl…

sky2のその後の安定性向上について

sky2が不安定だと書いたけど、その後何回かKernelがアップデートされて、かなり不安定さは解消された。まだたまに刺さるけど、頻度は数日に一回とか、そんな程度のレベルになった。一ヶ月前には負荷をかけるとほぼ確実に刺さっていたことを考えると、劇的な…

TinySVMにあまり大きなインデックスをあたえるとOut Of Memoryエラーになる

1 svm_learnがOut Of Memoryで落ちた。しばらく原因がわからなくって困ってしまった。データの持ち方がハッシュじゃなくて配列になってるのかな?

正例と負例の数、もしくはSVMが対応できるスパースさの限界

これまでにあんまりやられてないタスク(だからもちろんメジャーなコーパスとかは無い)を機械学習でやってみようとして、とりあえず自分でちょろっとコーパスを作って、SVMで学習させて、それでまたコーパスを増やして、とブートストラップしていこうと思っ…

Rubyで各文字処理

Rubyでの文字単位での処理もちょっとだけ調べてみた。each_charはStringクラスにはデフォルトでは存在しないようだ。(require 'jcode'すれば使えるようになる。)str[2]みたいなアクセス法でアクセスした場合はバイトインデックスになる。これはjcodeを使って…

Perlで各文字処理のその後

案1. $str = substr($str, 0, 1);でループを回す→遅すぎ(7万文字程度で大体21秒。) 案2. メモリの事は気にせずsplit //, $strしてからループを回す→7万文字は一瞬で処理できたが、調子に乗って文字数を増やすとなんかOSごと固まった(もう怖いので試したく…

Perlで1文字単位で処理

Perlで1文字単位で処理をする方法を調べたんだけどと、正規表現で一回文字列を全部分解してその配列を処理しましょうとか、Perlは正規表現が充実しているので大抵のケースで1文字単位で処理をする必要はありません、もう一度よく考え直してみましょう、みた…

Perlはテキスト処理に向いている?

5.8になるまで文字数数えるだけでもあんなややこしいコード書かなきゃいけなかった言語のどこがテキスト処理に向いてんだよ!!と腹を立てたが、冷静に考えてみると、それでもC言語よりは楽にテキスト処理がかけるのも確かだな…。

ソフトウェア開発の複雑さ

先週の仕事の時間はほとんどずっと社内用のちっさなツールの設計をしていた。当たり前だけど、どんなプログラミング言語を使おうと、設計に費す時間は(あまり)短縮できない。どういうところに時間をとられると、関数の名前を考えるだとか、そもそもどうい…