タグ

2015年2月3日のブックマーク (8件)

  • CodePlex Archive

    An archive of the CodePlex open source hosting site

    CodePlex Archive
  • Rでk-means法とその拡張2 x-means編 - サボタージュ禁止のおさぼり日記

    あっ, どーも僕です。 注意!!エントリーの記述はRソースを含めて全面的に書き直しています!!(なぜかこのエントリーはアクセス数が多いので(汗))@2014/9/11 Python版はこちらから. github.com クラスター数が自動で決まるkmeans法 前回はk-means法の実装を示しました。 kmeans法は近い者同士を集めるという直感的に理解しやすいシンプルなクラスタリングですが、そのシンプルさゆえにいくつか欠点(?)があります。 その一つはクラスター数の設定です。 kmeans法ではクラスター数をパラメータとして与えます。...しかし、どうやってクラスター数を設定するればよいのでしょう。...わかりません。職人芸でしょうか。 素人にはクラスター数は決められないでしょうか? 考えるめんどくさいのでアルゴリズムに決めてもらいたいです。 そんなクラスター数をアルゴリズムに決めて

    Rでk-means法とその拡張2 x-means編 - サボタージュ禁止のおさぼり日記
  • 2010-06-10

    SVM使って何かしたという論文は山ほどあるけど、十分実用的なアプリケーションでSVMが役立ってる例ってあるんだろうか。思うに、SVMの評価関数は、理解しやすいものではあるけれど、あんまり自然な感じのする代物ではない http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.19.3377 クラスタリングの方法は、色々あるけども、わたしの知る限り、ほとんどの方法では、事前にいくつのクラスターに分かれるか決める必要がある。クラスタリングしたい多くの状況で、いくつのクラスターに分かれるか事前には分からないというシチュエーションは山ほどあると思う。 ネットワークのクラスタリングには、Newman法とかあるらしいけど、x-meansはk-meansの最適なkを自動で決定するアルゴリズムであるらしい。やってることは単純で、k=2でk-meansを使

    2010-06-10
  • Pythonでx-means法を実装した - WEB SALAD

    はじめに 最近、このままだと修士論文がすごくシンプルな内容になりそうなことに気づいたので、ページ数を稼ぐためによりよい示唆を得るために、何か分析を足す必要が出てきました。 色々考えた結果、x-means法によるクラスタリングを行うことにしたのですが、同手法のPythonによる実装が見つからなかったので、勉強も兼ねて自分で書くことにしました。 x-means法とは x-means法はk-means法を拡張したものであり、後者が実行時にあらかじめクラスタ数を指定しなければいけないのに対し、最適なクラスタ数を自動で推定できる点が優れています。 その基となるアイデアはPelleg and Moore(2000)で初めて提案されました。 今回は、これに改良を加えた石岡(2000)の手法を実装しました。 実装 肝心のコードですが、ここに掲載するには少し長いので、Gistに上げておきました。 Impl

    Pythonでx-means法を実装した - WEB SALAD
  • http://www.nag-j.co.jp/lapack/lapack-ex/lapack-ex.html

  • 分散共分散行列 - 大人になってからの再学習

    まずは復習。 分散とは「各データが平均値からどれだけ離れているか」という、データの散らばり具合を表す。 具体的には、分散は「(各データの平均値からの距離)の2乗の平均」。 分散は2乗であることに注意。単位をそろえるために、分散の平方根を取ったものが標準偏差。 標準偏差をσで表すと、分散はσ^2で表される。 式で表すと次のようになる。 ここで、次のようなベクトルを導入する。(なぜ? あとで値を複数持つデータに拡張するのに便利だから) すると、さきほどの分散の式は、次のような縦ベクトルと横ベクトルの積の形で書くことができる。 (’は転置を表す) これまでの話で、たとえば、数学のテストの点数がどれくら散らばっているか、ということを知ることができる。 ここで、英語のテストも行った場合、数学英語の点数の関係を知りたい、という場合には、複数のデータ群を扱う必要がある。 例えば、生徒の「数学の点数」と

    babydaemons
    babydaemons 2015/02/03
    “「データから平均値を引いて、標準偏差で割る」という操作(基準化)をすると、この分散共分散行列の対角成分がすべて1になる。このようにして得られた行列を「相関行列」と呼ぶ。”
  • ヤコビ法 - Wikipedia

    となり、変形していくと元の連立方程式の形に戻る。 したがって、ヤコビ法で解が収束した場合、その解は連立方程式の解となる。 また、その収束の十分条件は、係数行列の対角要素の絶対値が非対角要素の絶対値よりも相対的に大きい場合、すなわち対角優位な行列である場合に収束する。これはガウス=ザイデル法も同様である。 ヤコビ法の式はベクトルの各成分ごとに次のような式で書くことができ、数値解析ではこの式が用いられる。 ガウス=ザイデル法とヤコビ法を加速する方法としてはSOR法が知られている。 具体例[編集] 3元の連立一次方程式、すなわち、 を解くことを考える。回目の反復で得られたの値をと書く。 初期値は、適当な値、例えばゼロベクトルでもかまわない。 という反復を繰り返していく。 ヤコビ法は、直列計算ではガウス=ザイデル法よりも遅いが、ガウス=ザイデル法と異なり各式が他の式に依存せず並列性があるため並列計

  • VirtualBoxで仮想diskのUUIDを変更する - リジェクトされました

    はじめに VirtualBoxでひとつのvdiをコピーして使いまわすと,「そのUUIDのdiskはすでに存在するよ!」というエラーがでる.このvdiにはOSはすでに入っていて,コピーして使いまわしたいので,diskのUUIDを書き換える方法を紹介. UUIDを書き換えることによって発生するデメリットはよくわかりません. 環境 OSX: 10.7.5 VirtualBox: 4.3.0 r89960 発生したエラー こういうエラーが出た. ハードディスクファイル<PATH>を開けませんでした。 Cannot register the hard disk '<PATH>'{<UUID>} because a hard disk '<PATH>' with UUID {<UUID>} already exists. 終了コード: NS_ERROR_INVALID_ARG (0x80070057)

    VirtualBoxで仮想diskのUUIDを変更する - リジェクトされました
    babydaemons
    babydaemons 2015/02/03
    “VBoxManage internalcommands sethduuid”