タグ

kmeansに関するyukimori_726のブックマーク (26)

  • クラスタリング - てきとーなブログ

    どこかででた問題。 折角なのでpythonでてきとーに実装してみた。 ソースコードは以下に。 hcluster.py · GitHub k-means 1次元ベクトルのデータ集合 {(2),(3),(4),(10),(11),(12),(20),(25),(30)} をk-means法でクラスタリングする。 その際(a)-(c)の場合において、収束するまでのクラスタとセントロイドを示せ。 (a) k=2, 初期値(2,20) 1回目 data : [ 2. 3. 4. 10. 11. 12. 20. 25. 30.] prof : [ 0. 0. 0. 0. 0. 1. 1. 1. 1.] cluster: [ 6. 21.75] 2回目 data : [ 2. 3. 4. 10. 11. 12. 20. 25. 30.] prof : [ 0. 0. 0. 0. 0. 0. 1. 1.

    クラスタリング - てきとーなブログ
  • The Society for Industrial and Applied Mathematics

  • pythonで非階層クラスタリング - frontier45の日記

    scipy.cluster.vqを使ったK-Meansとscikits.learn.gmmを使ったGMM(gaussian mixture model)によるクラスタリングです。GMMの理論についてはこのPDFが詳しいです。(もとは変分ベイズの記事です。) これらのライブラリをそのまま使っても結果はまだソートされていないのでクラスタの番号を要素の多い順にソートし、各クラスタ内のメンバーも中心までの距離や確率で近い順にソートするラッパーを作成しました。 GMMの場合はAICやBICを使ってクラスタの数の評価もできます*1。 こんな感じのサンプルデータを用意しました。作り方はここを参照。 K-Meansだとこんな感じで GMMだとこんなクラスタリングができます。 ちなみに現在公開中のPyNumPDBにもこれが実装されていてMDのトラジェクトリから生成た複数のPDBファイルを読み込んでこんな感じ

    pythonで非階層クラスタリング - frontier45の日記
  • マハラノビス距離を用いたk-means法 | Sunny side up!

    先日,HAD10.204をアップしました。そのときに新機能として搭載したのが,マハラノビス距離を用いた非階層クラスタ分析(以下,改良k-means法)です。 さて,この方法は,豊田・池原(2011;心理学研究)に掲載されたものです。従来のk-means法のアルゴリズムを改良して,より精度の高い手法となりました。アルゴリズムもとてもシンプルで,すぐにHADに実装できました。今回の記事は,この改良k-means法を紹介します。 k-means法ってそもそもなんぞや 最初に,k-means法について説明します。 クラスター分析には,階層クラスタ分析と,非階層クラスタ分析(SPSSでは大規模クラスタという名前)に分けることができます。 階層クラスタ分析は,クラスタに階層性を仮定しています。すなわち,下位のクラスタを統合して新しい上位のクラスタを作り,そのクラスタ同士をまた統合して・・・という感じに

  • R K-means法のクラスタ数を機械的に決定する方法 | トライフィールズ

    K-means法(K平均法)を用いてクラスタリングする場合は、あらかじめクラスタ数を指定しなければならない。 このときのクラスタ数をどのように決めてよいか迷ったことはないだろうか。 ここでは、K-means法のクラスタ数を機械的に決定する方法をお伝えする。 K-means法のクラスタ数を機械的に決定するために用いるのが、Gap統計量である。 Gap統計量を用いたクラスタ数の決定のアイディアを簡単にご紹介すると、クラスタ数1、2、・・・と順に、一様分布から作成されたクラスタ内の距離の平均と元データのクラスタ内の距離の平均とを比べて、より密集しているクラスタ数を採用するという方法である。 詳しくは、Estimating the number of clusters in a data set via the gap statisticを参考にしてほしい。 ここからは、Rを用いて具体的に見ていこ

  • k-meansの最適なクラスター数を調べる方法 - Qiita

    背景 お手軽なクラスタリング手段としてk-meansが有名であるが、以下の様な困ったポイントがある k-means法の問題点の一つは、クラスタの個数kを指定しなければならないことだ。 クラスタリングは探索的 (exploratory) なデータ解析手法であって,分割は必ず何らかの主観や視点に基づいているということです.よって,クラスタリングした結果は,データの要約などの知見を得るために用い,客観的な証拠として用いてはなりません. 参照元 それは知っている。で、結局クラスター数は当に分析者の決め打ちでいいのか? 「このクラスター数はどうやって決めたの?」「これまでの分析結果からソーゴー的に考えて決定しました」とか言いたくない このページの目的 「最終的には分析官の判断でクラスターは決定しました」といいつつも、何かしら数値としての根拠を持ってクラスター数を決定したい 何か良い判断基準は無いの

    k-meansの最適なクラスター数を調べる方法 - Qiita
  • k-meansを用いた画像の色クラスタリング - kivantium活動日記

    ご注文は機械学習ですか?を改良するべくDeep Learningなどに手を出しているわけですが、Deep Learningを行うためには大量の学習データが必要になります。学習データを一から手動で分類するのも馬鹿らしいので、今出来ている部分を使ってある程度自動化したいと思います。現状のプログラムだと精度が低いので何らかの方法で精度を上げたいと思います。というわけで、 アニメ作品における人物キャラクター画像の萌え特徴分析とその応用にある手法を用いて髪部分のみを抽出することで精度を上げてみようと試してみました。 処理の流れ 元論文ではメディアンカットによる減色→クラスター併合とK-means法を用いて6クラスタに併合→肌・髪・目レイヤーの特定という流れで進んでいます。実装が公開されていないのでこの情報から手法を再現する必要があります。 とりあえず、減色・クラスタリングまでを行ってみようと思います

    k-meansを用いた画像の色クラスタリング - kivantium活動日記
  • K-meansクラスタリングで何かつくる

    DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ........................................

    K-meansクラスタリングで何かつくる
  • k-means をさらに速くする - ny23の日記

    昨日,今日と電車に乗っている時間が長かったので,暇つぶしに論文を読んでいた. Making k-means even faster (SDM 2010) この論文では,Elkan の三角不等式を用いた k-means の高速化手法 Using the triangle inequality to accelerate k-means (ICML 2003) のアイデアを元に,空間計算量を悪化せず k-means を高速化する手法を提案している.手法自体の新規性はそれほどない感じだけど,空間使用率を大幅に改善しつつ,かつ実際に幾つかのデータで Elkan の手法以上の高速化が得られたことに意義があるのかな. [追記; 2013/02/20] 別解出力をサポートした高速 k-means の C++ 実装を公開 - ny23の日記 で実装を公開しました.自分の専門分野だと,クラスタリングする対象

    k-means をさらに速くする - ny23の日記
  • K-means hashing (CVPR'13) とハッシング周り

    K-means hashing (CVPR'13) の論文解説と、関連する iterative quantization や optimized product quantization の紹介、最近のhashing系論文リスト。Read less

    K-means hashing (CVPR'13) とハッシング周り
  • pythonでクラスタリングと表示 - 東邦大学理学部情報科学科 山内のサイト

    x-meansという論文 † クラスタリングのk-means法は広く使われ、パッケージも各言語環境で作られている。Pythonの 場合、scipyにあるkmeansと、多分その導出系のscikit-learnにあるKMeansが利用可能になっている。 k-means法はあらかじめクラスタ数を決めて分類するので、クラスタ数が不明なときにそのままは対応できない。 それに対して、BIC(ベイズ情報量規準)やAIC(赤池情報量規準)などを使って、最適なモデルを 選択しようという考え方があり、その選択のロジックを含めたのがxmeansパッケージらしい。 xmeanについては http://web-salad.hateblo.jp/entry/2014/07/19/200347 ↑ Scikit-learnでのk-meansパッケージ † Scikit-learnのkmeansパッケージの使い方は、n

  • Doc2Vecとk-meansで教師なしテキスト分類 - Qiita

    人間が分類したデータを教師データとしてテキスト分類をしている際に人間がデータの間に介在することによる弊害が出てきたので、教師なしのテキスト分類器を作ってみました。 人間がラベル付けすることによる問題点 階層構造にあるデータを並列にラベル付ける 人によって大きく判断が違ってくるようなラベルをつける 作業開始時点と終了時点でラベルの付け方が変わる 参考資料 コンピュータビジョン最先端ガイド6 (CVIMチュートリアルシリーズ) Deep Learning Tutorials Distributed Representations of Sentences and Documents, Le+, 2014 やったこと Doc2Vecで各文書について他の文書との類似度ベクトルを作成 SVDで次元圧縮 k-meansでクラスタリング k-meansでなくてグラフアルゴリズムで分類した方が良かったな、

    Doc2Vecとk-meansで教師なしテキスト分類 - Qiita
  • PCAとkmeansを組み合わせた分析 - 新kensuke-miの日記

    いままで知らなかったのだが、常套手段らしい。 どういう時に役にたつか? 大目的 あるデータがあって、そのデータをクラスタリングしたい。(つまり、データをkmeasnで分離したい。) 問題どころ データの状況によっては、実数空間のままではうまく分離ができないことがある。 つまり、データの性質から望ましくない分離がなされてしまう(であろうとすでにわかっている) どう解決するか? あらかじめ、別の空間に射影しておき、その空間でクラスターに分離してしまえばよい。 つまり、PCAで新しい軸ではられる空間に射影しておき、その空間上でkmeansクラスタリングを行うのだ。 ちょっとした言い訳 自分はいままでPCAと言えば、「次元圧縮をするもの」と理解していたので、この使い方がはじめは理解できなかった。 でも、このページの主成分分析でも解説されているように、PCAには「データの特徴を表す新しい指標を見つけ

  • K-means 法を D3.js でビジュアライズしてみた

    クラスタリングの定番アルゴリズム K-means 法(K平均法)の動作原理を理解するために、D3.js を使って可視化してみました。 図をクリックするか [ステップ] ボタンを押すと、1ステップずつ処理を行います [最初から] ボタンを押すと、最初の状態に戻ります [新規作成] ボタンを押すと、N (ノード数) と K (クラスタ数) の値で新しく初期化します 古いブラウザーではうまく表示できない可能性があります (IE 10、Firefox 25、Chrome 30 で動作確認しています) K-Means 法とは 英語Wikipedia の k-means clustering - Wikipedia, the free encyclopedia の手順に沿って実装しています。 英語版の手順をザックリと書くとこんなイメージになります。 初期化: N 個のノード (丸印) と K 個の

    K-means 法を D3.js でビジュアライズしてみた
  • クラスタリングの定番アルゴリズム「K-means法」をビジュアライズしてみた

    集合知プログラミング を読んでいたら、K-means 法(K平均法)の説明が出てきました。 K-means 法はクラスタリングを行うための定番のアルゴリズムらしいです。存在は知っていたんだけどいまいちピンときていなかったので、動作を理解するためにサンプルを作ってみました。 クリックすると1ステップずつ動かすことができます。クラスタの数や点の数を変更して、Restart を押すと好きなパラメータで試すことができます。 こうやって1ステップずつ確認しながら動かしてみると、意外に単純な仕組みなのが実感できました。 (追記) HTML5 版の K-means 法を D3.js でビジュアライズしてみた も作成しました。Flash を表示できない環境ではそちらをご覧ください。 K-means 法とは K平均法 - Wikipedia に詳しく書いてあるけど、もうすこしザックリと書くとこんなイメージに

    クラスタリングの定番アルゴリズム「K-means法」をビジュアライズしてみた
  • Google グループ

    Google グループでは、オンライン フォーラムやメール ベースのグループを作成したり、こうしたフォーラムやグループに参加したりすることで、大勢のユーザーと情報の共有やディスカッションを行うことができます。

  • Jubatus Casual Talks #2 : 0.5.0の新機能(クラスタリング)の紹介

    Jubatus Casual Talks #2(URL : http://connpass.com/event/3968/ ) の発表資料です。 質問があれば気軽にお問い合わせください。Read less

    Jubatus Casual Talks #2 : 0.5.0の新機能(クラスタリング)の紹介
  • [Spark][TF-IDF][テキスト処理] Reuters21578 を K-means 法でクラスタリングする | DevelopersIO

    文書をグループ分けしたい ネット上やDBの中にある文書をグループ分けしておいて、新しい文書が現れたときにそれが既存のどのグループに属しているか判断したい場合があります。 今回はApache Sparkを使って文章から取得できる TF-IDF を用いた K-means クラスタリングを実行し、分類を行ってみました。 クラスタリング 入力ベクトルのみから類似したベクトルのグループを見出すような機械学習の手法をクラスタリングと呼びます。 例えば、2次元 x-y 平面上における以下のようなデータ・セットがあった場合には クラスタリングによって以下の様なグループ分けがなされると期待されます。 通常、訓練データ中の入力ベクトルに対応した目標ベクトルがあるような手法は教師あり機械学習と呼ばれますが、今回扱う K-means クラスタリングについては目標ベクトルがありません。そのため、教師なし機械学習とも

    [Spark][TF-IDF][テキスト処理] Reuters21578 を K-means 法でクラスタリングする | DevelopersIO
  • jubatus-kmeans-sample.py

  • katsyoshiのブログ

    株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 おめでとう!!!!!!! チッ 株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 例のやつ行ってきた https://hiwell.connpass.com/event/57695/ ここにある程度まとまってるので http://yutaszk23.hatenadiary.jp/entry/2017/06/02/234505 ここから感想 運営ぐだぐだ ぐだぐだは文句言えないですが、間を持たそうとしてるトークがとてもつらい 女の子は可愛いし綺麗で美人だった どうやって集めたのかちょっと

    katsyoshiのブログ