2008-01-01から1年間の記事一覧

非線形サポートベクターマシン

とりあえず最適化の問題は置いておいて、ここを参考に非線形分離できるようにしてみました。 http://www.neuro.sfc.keio.ac.jp/~masato/study/SVM/SVM_3_1.htm さぁ,これで君も非線形SVMのコーディングができちゃうのだ.素晴らしき哉. ほんとにできた。 …

線形サポートベクターマシン失敗

とりあえずの目標はサポートベクターマシンてことで、次のサイト参考に組んでみました。*1 http://www.neuro.sfc.keio.ac.jp/~masato/study/SVM/index.htm なんか、なぜかちゃんと角度的にはいい感じになってるけど、ぜんぜんマージン最大化していません。見…

imaizumi.web

tenjin.webよりも範囲をせばめてマニアックにやる集まり

挨拶全否定?

コミュニケーションに中身があるとかないとか関係ないでしょ。 「こんにちは」とか「おはよう」というのは大事なコミュニケーションだけど中身はないよね。 そういう意味で、コミュニケーションということをわかってないだけだと思われる。 コミュニケーショ…

POI3.1でPowerPointを画像にエクスポートできると聞いたのだが

ここを見ると Export PowerPoint slides into image と書いてあってパワポのスライドを画像にエクスポートできると書いてあるのだけど。 Apache POI 3.1-FINAL - DZone パワポ中の画像を取得するAPIしか見つからんでごんす。

バックプロパゲーションでニューラルネットの学習

ニューラルネットというのは、入力があって、複数の階層を経て出力を得るようなグラフ構造のことです。通常は、入力層・中間層・出力層のように層構造になっているようなものを差します。中でも、中間層が1層の、3層構造になっているものが多くとりあげられ…

WindowsXPでJFileChooserがZIPファイルのあるフォルダの表示が遅い

JDKは最新版の6u6なんですけど、困ります。 ZIPファイルの中をみてるかなんかで、1.5GbyteのZIPファイルなんかがデスクトップに置いてあると数分帰ってこない人になります。 6u4で修正されたってのとは別の問題ですよね? bug-paradeにはあがってるのかな?

混ざると管理しにくいすごいコード

すごいコードとそうではないコードが混じると管理しにくいということですが、実際そうですよね。 すごくセンスのある人がいて、ビックリするようなテクニックを使って追いにくいコードを書く人がいます。 すごいな〜とは思うけど、できればやめて欲しいです…

プロファイラって不要じゃない?

NetBeansには出来のよいプロファイラがついてて、それはひとつのウリだったんですが、メモリプロファイルに関しては不要かもねという話。 ていうのは、これ、デバッガの画面だから。 デバッグ中に「読み込まれたクラス」のウィンドウで、生成されているイン…

ということで、バイトコードコンパイラを作ってみる。

おとといと昨日のプログラムを組み合わせて、数式をバイトコードにコンパイルして実行させてみました。

ちょっとバイトコードを生成してみる

バイトコードを生成してみました。 ここでは、次のようなコードを生成しています。 public class ByteCodeGenerator{ public static int eval(){ return 34; } } なので、下のプログラムを実行すると34が表示されます。 クラスファイルの仕様はここ Java SE …

ちょっと数式パーサー

なんかバグある気がするけど、整数の数式処理してみた。

最近のバージョン管理

いままで、成果物をメールで送ったりしたついでにzipファイルに日付つけて管理してたというか、ついでに残してたのですが、今はMercurial使ってバージョン管理しつつ、そのリポジトリごと圧縮して日付つけて残してます。 Mercurialだと、そんな感じで、日付…

NetBeans6.1日本語版とMercurial

リリースされました。 NetBeans IDE 6.1 ダウンロード 個人的に、今回一番ありがたいのは、Mercurial対応です。 今まで、ひとりでモノを作ってたので、バージョン管理してなかったのですが、Mercurialのような分散リポジトリに対応したバージョン管理システ…

このHMMがこんな出力をする確率は?

出力があるとして、HMMがその出力をする確率がどれだけあるか求めてみます。 前向きアルゴリズムといいますが、ほとんどビタビのアルゴリズムと同じプログラムになってます。 出力はこんな感じになりました。 出力:serrar rer te rr rrsertah reht 確率:0.00…

HMMの隠れたマルコフを覗いてみる

HMMではマルコフモデルが隠れていたのですが、こういう隠れているものを覗いてみたくなるのが人情というものです。 ということで、出力からマルコフ遷移を推定してみます。これにはビタビ(Viterbi)のアルゴリズムを使います。 ビタビのアルゴリズムは、要す…

隠れマルコフモデル(HMM)で遊ぶ

出力と状態が1対1に対応していなくて、状態を直接知ることができないようなものを隠れマルコフモデル(HMM:Hidden Markov Model)といいます。 で、その隠れマルコフモデルで遊ぶために、とりあえず状態遷移と出力文字候補を作ってみます。 この隠れマルコフモ…

マルコフモデルで遊ぶ

マルコフモデルというのは、要するに確率付きの状態遷移で状態ごとに出力があるものです。 このときの確率は、その状態だけではなく、一つ前の状態やもうひとつ前の状態に影響されたりもします。 で、これを言葉の単語の遷移でやったりすると、n-gramとかい…

Java5以降でXPathを使う

メモ //TestXpath.java import java.io.StringReader; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathConstants; import javax.xml.xpath.XPathFactory; import org.w3c.dom.Document; impo…

積分でのsinとcosの関係をみてみる

微分と積分は逆の関係になります。 sinを微分するとcosになってたので、cosを積分するとsinになります。cosの微分は-sinだったので、-sinの積分がcos、つまりsinの積分は-cosになります。 このことがわかるプログラムを考えてみる。 dx間隔にデータを取ると…

三角関数のグラフの描き方

微分でのsinとcosの関係

微分でのsinとcosの関係がわかるようなプログラムを考えてみる sinは微分するとcosに、cosは微分すると-sinになります。 f 微分 sin cos cos -sin で、これがどういうことかと。 sinは、0から始まって、だんだん増えていきます。で、その増え方はだんだん減…

ついでに、2階微分の差分式

上のふたつのテイラー展開を足すと となります。 ※f'''が消えたのでいままで省略されてたf''''をちゃんと書きました。 これを変形すると となります。 を誤差として切り捨てると、2階微分の差分式 が出てきます。 追記: これを使って、ラプラス方程式など2…

差分の数学的意味と誤差

数学では、なんとなく同じような値になるからといって、無条件に使えるような都合のいい話はゆるされません。 差分が微分の近似として使えるのにもちゃんとした理由があります。 ここで、テイラー展開を持ってきます ここで、x=x0+d、a=x0と置くと、次のよう…

微分は引き算

微分は引き算ってことがわかりやすくなるようなプログラムを考えてみる。 微分というのは、関数の傾きを求める操作です。 で、これを式として求めるときの規則として簡単なものに次のようなものがあります。 例えば次のような式を微分します。 そうすると、…

積分は足し算

積分は足し算だということを説明するためのプログラムを考えてみる。 aが加速度。dx,dyが速度。x,yが座標。 毎回x,yにdx,dyを足す。で、dyにaを足す。dxは一定。 そうすると、こんな動きに。 小学生のころ、わけわからず1、2、3、4と足していくとジャンプの…

サイン・コサインと円の関係

サインが縦、コサインが横 っていうのがわかりやすくなるようなプログラムを考えてみる //SinCos.java import java.awt.*; import java.awt.image.BufferedImage; import javax.swing.*; import static java.lang.Math.*; public class SinCos { public stat…

カニ食ってきた。

JavaOne恒例のカニパーティー ひとり一匹です。 残骸 30人分の会計はすごい光景に

JavaOne終了

片付けもはじまってます。 また来年。

Integrated Web Testing With Selenium

JavaOne最後のセッション 「これが最後だからいいセッションするぜ!」とか言ってた。 Seleniumについては、Javaでテストかけるようになってたんだね、と。 とにかく、プレゼンおもしろかった。 これが最後のセッションでよかったよかった。