タグ

algorithmに関するhoge_systemzのブックマーク (11)

  • プログラミングのための確率統計(仮)

    数学のプロをめざさない方に向けた確率・統計の解説. ちびちび執筆中. お気づきの点は 「なんでも」 までお知らせください. ダウンロード 原稿 PDF (未完成版のため誤りや抜けがあります) 冒頭 …… とりあえず雰囲気を見るにはこちら 全体 特徴 「確率は測度だ」という格的な見方を, アマチュア向けにかみくだいて解説しています (1章) そのおかげで, 条件つき確率だの期待値の性質だのにクリアなイメージが与えられます (2章, 3章) 「引きのばせば密度は薄まる」といった直感的な図解を多用し, さらに「何がしたくて」という意図の説明も重視しました (4章) 応用上必要なのに入門書では省かれがちな多変数の議論も, しっかりと (5章) リンク プログラミングのための線形代数 (前著の非公式サポートページ) ためし書き (稿の原型) 更新履歴 [2008-08-10] 演習 5.20 の

  • 第2回 階層的クラスタリングによる特徴抽出 | gihyo.jp

    はじめに 前回は、情報可視化の基的な考え方について、HatenarMapsなどの実例を示しながら説明しました。第2回以降は、Java言語を使用して実際にプログラムを作成することで、情報可視化の実践例を示していきたいと思います。 目標 連載では、はてなブックマークの人気エントリーのデータを可視化することを最終的な目標にします。可視化にあたっては、統計学的観点から「階層的クラスタリング⁠」⁠、視覚的観点から「ツリーマップ」の手法をそれぞれ用いることにします。 Java開発環境のセットアップ 手元にJavaの開発環境がなく、連載のプログラムを試したい場合には、Sun Microsystemsが提供している統合開発環境、NetBeansの導入をおすすめします。 NetBeansはオールインワン型のIDEですので、インストールするだけで特別な設定の必要もなく、一通りの開発環境を整えることができ

    第2回 階層的クラスタリングによる特徴抽出 | gihyo.jp
  • 形態素解析と検索APIとTF-IDFでキーワード抽出

    形態素解析と検索APIとTF-IDFでキーワード抽出 2005-10-12-1 [Programming][Algorithm] 形態素解析器と Yahoo! Web 検索 API と TF-IDF を使ってキーワード抽 出するという先日の検索会議でのデモ、KEYAPI[2005-09-30-3]。 教科書に載っているような基中の基ですが、あらためてエッセンスを 簡単な例で解説したいと思います。 目的:キーワード抽出対象テキストから、そのテキストを代表する キーワードを抽出します。TF-IDF という指標を用います。(この値が大 きいほどその単語が代表キーワードっぽいということでよろしく。) TF-IDF を計算するためには、 (1) キーワード抽出対象テキスト中の代表キーワード候補出現数 (TF)、 (2) 全てのドキュメント数 (N)、 (3) 代表キーワード候補が含まれるドキュメ

    形態素解析と検索APIとTF-IDFでキーワード抽出
  • Dynamic Programming による類似文字列マッチの実装例

    Dynamic Programming による類似文字列マッチの実装例 2007-01-22-4 [Programming][Algorithm] 「Modern Information Retrieval」(8.6.1 p.216) での Dynamic Programming (DP) の解説のところのアルゴリズムを 素直に Perl で実装したみた。 さらにマッチ箇所取り出しロジックも実装してみた。 # DP はいわゆる「類似文字列検索(あいまい検索)」に使うと 便利なalgorithm。 実は、大学院でも前の会社でも、PerlやらC++やらで実装して使ってた。 単純ながら使い勝手もよく、まさに現場向きかと。 grep 式に頭から見ていくので計算量的にはイマイチなのだが、 転置インデックス検索などで範囲を絞ってから適用すれば実用上問題ない。 ■定義みたいなの Q1. 二つの文字列 "

    Dynamic Programming による類似文字列マッチの実装例
  • クラスタリング (クラスター分析) - Toshihiro Kamishima

    クラスタリング (clustering) とは,分類対象の集合を,内的結合 (internal cohesion) と外的分離 (external isolation) が達成されるような部分集合に分割すること [Everitt 93, 大橋 85] です.統計解析や多変量解析の分野ではクラスター分析 (cluster analysis) とも呼ばれ,基的なデータ解析手法としてデータマイニングでも頻繁に利用されています. 分割後の各部分集合はクラスタと呼ばれます.分割の方法にも幾つかの種類があり,全ての分類対象がちょうど一つだけのクラスタの要素となる場合(ハードなもしくは,クリスプなクラスタといいます)や,逆に一つのクラスタが複数のクラスタに同時に部分的に所属する場合(ソフト,または,ファジィなクラスタといいます)があります.ここでは前者のハードな場合のクラスタリングについて述べます.

    クラスタリング (クラスター分析) - Toshihiro Kamishima
  • Google の秘密 - PageRank 徹底解説

    INDEX はじめに PageRank の基概念 どうやって PageRank を求めるか 現実に適用する際の問題 Namazu での実装実験 PageRank に対する個人的見解 参考文献 おまけ:「グーグル?/ゴーグル?」 Since: Thu Feb 1 18:22:44 JST 2001 Last Refreshed: Sat Jan 24 18:30:35 JST 2004 ★(2004/1/24) Yuan Huanglin氏によって ページの中国語訳 が作成されました。 ★(2003/7/1) 拙著『Namazuシステムの構築と活用』を改訂しました。 詳しくは サポートページをご覧ください。 ★(2003/5/20) Google に関するオンラインニュース記事一覧(日語記事のみ)を 別ページ(googlenews.html) として分離しました。 ★(2001/2/

  • グーグル、検索アルゴリズムを少しずつ明らかに

    Googleは、同社の検索エンジンの内部動作について、少し秘密にしすぎていたという結論に達した。 同社はこれまで、何を検索結果一覧の先頭に表示するかを決定するアルゴリズムについて、あえて公表を避けてきた。同社の検索品質に関するエンジニアリング担当バイスプレジデントを務めるUdi Manber氏は米国時間5月21日付けのブログ投稿で、その理由の1つは、競合他社による模倣を防止するためであり、また別の理由としてはそれを悪用するウェブサイトの出現を防ぐためであったと述べた。しかし今後は、もう少し公開していく予定である。 「完全な秘密主義を貫くのは理想的ではない。このブログ投稿は、今後はこれまでよりももう少し公開していこうという新たな決意を示すものである」とManber氏は述べている。「これからは定期的に新しい部分について語り、古い部分を説明し、アドバイスをし、情報を公開し、対話していくよう努力す

    グーグル、検索アルゴリズムを少しずつ明らかに
  • 本棚演算実験中 - Myrmecoleon in Paradoxical Library. はてな新館

    棚演算(Rubyのオリジナル)をだらだらみてて,棚に限らず任意のISBNのリストを投げて結果が拾えたら便利かなー,と思ってISBNのリストでの入力を試してみる。 また,基的には棚名とISBNのどっちからはじめてどっちで終わるかだけで,実はやってることはどちらの処理もあまり変わらないんだな,ってことをちょっと考えた。お奨め検索も処理する回数が多いというだけであるし。 で,実験的にこんなん作ってみる。 http://myrmecoleon.sytes.net/book/m_enzan.php?list=4044292019&time=4 何をしてるかというと, ID(ISBNまたは棚.orgのユーザー名)のリストを入力する 入力したIDのリストに対応するもう片方のIDのリストを抽出する 抽出した新しいリストから同様にもう片方のIDのリストを抽出する 指定の回数だけ繰り返す というだ

    本棚演算実験中 - Myrmecoleon in Paradoxical Library. はてな新館
  • Myrmecoleon in Paradoxical Library. はてな新館 - はてブ指数

    書誌学的方法による研究者評価の方法のひとつとしてh指数(h-index)というものがある。 その定義は 「その研究者が公刊した論文のうち、被引用数がh以上であるものがh以上あることを満たすような数値」 h指数 - Wikipedia というもの。イメージとしてはこのグラフをみるとわかるかなと。 要するにどの程度の質の論文をどれくらいの量書いているのか,というのが一発で分かる感覚的に優れた指標である。単純な被引用数(論文が引用された回数)の総和だと特定の論文が妙に引用されてて他はボロボロ,みたいな研究者も高く評価されてしまうのに対し,h指数を使うと質と量が同時に把握できるので分かりやすくてオススメ。 詳しいところはwikipediaが詳しいのと,あとオリジナルの論文(英文)も公開されてるので読むとよい。っても自分も読んでないが(マテ で,なんでこんなことをわざわざ説明してるのかというと, こ

  • スペル修正プログラムはどう書くか

    Peter Norvig / 青木靖 訳 先週、2人の友人(ディーンとビル)がそれぞれ別個にGoogleが極めて早く正確にスペル修正できるのには驚くばかりだと私に言った。たとえば speling のような語でGoogleを検索すると、0.1秒くらいで答えが返ってきて、もしかして: spelling じゃないかと言ってくる(YahooMicrosoftのものにも同様の機能がある)。ディーンとビルが高い実績を持ったエンジニアであり数学者であることを思えば、スペル修正のような統計的言語処理についてもっと知っていて良さそうなものなのにと私は驚いた。しかし彼らは知らなかった。よく考えてみれば、 別に彼らが知っているべき理由はないのだった。 間違っていたのは彼らの知識ではなく、私の仮定の方だ。 このことについてちゃんとした説明を書いておけば、彼らばかりでなく多くの人に有益かもしれない。Google

  • 定番アルゴリズムを徹底理解! - 今からでも遅くない!アルゴリズム入門:selfup

    このパートでは,プログラミングを勉強するうえで欠かせないアルゴリズムの中でも定番中の定番を紹介します。ソート(並べ替え)やサーチ(検索)などの機能は今では標準のライブラリとして提供されています。実用的なプログラムを作るときにそのものずばりをいちいち書く機会は少ないかもしれません。しかし定番のアルゴリズムは,様々に形を変えて普段のプログラミングに登場します。 解説を読んで仕組みがわかったら,ぜひそれをプログラムにしてみてください。読んだだけではプログラムを書けるようにはなりませんし,プログラムを書いてみて初めて,実は十分に理解できていなかったと気付くことがよくあります。しかもアルゴリズムは特定のプログラミング言語に依存しないので,一度身に付ければ,後でどんな言語を学ぶ場合でも役に立ちます。 1番目から6番目まではソートのアルゴリズム,7番目から9番目まではサーチのアルゴリズムです。一つひとつ

    定番アルゴリズムを徹底理解! - 今からでも遅くない!アルゴリズム入門:selfup
  • 1