タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

svmに関するtodogzmのブックマーク (2)

  • サポートベクターマシンであいさつbotを作るためのカーネル関数 - きしだのはてな

    Twitterの発言に、「おはよう」かどうかのフラグをつけてSVMにわせると、その発言が「おはよう」かどうか判定できるようになるので、「おはよう」判定したら「おはよ〜」と返すようにするとあいさつbotのできあがり。 というときに問題になるのが、カーネル関数をどうするかということ。文字列カーネルというのがあるようなんだけど、詳しいことがわからなかったのと、ちゃんと調べて実装するのもめんどかったので、とりあえず2文字ずつを比べてみるようなカーネル関数を考えてみた。 2文字の頻度=√(2文字の出現回数/全体の長さ) としておいて 一致度=Σ(発言1での頻度 * 発言2での頻度) とするようなカーネル関数を作成。完全に一致すると1、まったく一致しないと0になるはず。これがカーネル関数として使えるかどうかわかんないけど、内積の計算っぽいから大丈夫なはず。 そう。計算としては超高次元の内積を計算して

    todogzm
    todogzm 2008/08/12
  • ところでサポートベクターマシンって何なの? - きしだのHatena

    最近、機械学習とか、そのアルゴリズムのひとつであるサポートベクターマシンとかやってるわけですが、そもそも機械学習ってなんなんでしょか? 機械学習ってのは、なんとなく与えられた点の分類から、新たに与えられた点の分類を推測するのですが、ようするに、点が与えられたときにそこから分類の領域を推測しておいて、新たな点がきたときにはどの領域に入るかを判別するのです。 ニューラルネットワークは、名前にニューロンとかついてて、とてもステキな響きがするのですが、あれは関数のあてはめを行っているのです。そうやって関数をあてはめることで、領域の境界面を求めます。 NN法は、学習とかせず、一番近いデータが同じ分類になるはずという戦略でやってます。 サポートベクターマシンも考え方としてはNN法と同じで、新しい点がやってくると、学習したそれぞれの点までの近さを計算して、一番ちかい分類を求めます。そのため、学習データが

  • 1