タグ

algorithmとAlgorithmに関するyokochieのブックマーク (186)

  • データ圧縮法概説 目次

    最終更新日:2001年7月2日 第1章へ webmaster@snap-tck.com Copyleft (C) 2000 SNAP(Sugimoto Norio Art Production)

  • C - でOpenMP使ったら、+二行で範囲10億が2秒 : 404 Blog Not Found

    2010年08月06日05:30 カテゴリMath C - でOpenMP使ったら、+二行で範囲10億が2秒 ぬあんと 素数10億まで3秒 - JGeek Log danさんの場合, 1bit でフラグを記憶してるのでメモリが1/8 で済む。そこでメモリアクセスの時間が効いてるんだろう。それならキャッシュに収まる位のブロックに計算を分割しその内側で素数pのループ回せばもっと速くなるかも?と思いやってみた。見事3秒で終わった! これを上回ることは出来るか? 出来ました。 以下、証拠。 % gcc -W -Wall -O6 -fopenmp primes_ita.c primes_ita.c: In function ‘main’: primes_ita.c:69: warning: unused variable ‘p’ % time ./a.out 06.983u 0.084s 0:01.

    C - でOpenMP使ったら、+二行で範囲10億が2秒 : 404 Blog Not Found
  • GC on C++

    でちまるさん(実際かわいい) @decimalbloat コンパクションをC++でやるには色々障害がある(GCがオブジェクトをコピーする方法を知っていないといけない、オブジェクトがコピーされたとき、コピー前のアドレス全てをコピー後のアドレスへと書き換えないといけない)けど、GCのためのメモリ消費を抑えつつこれらのことができるのだろうか… 2010-08-04 13:36:31

    GC on C++
  • http://1978th.net/tech/promenade.cgi?id=88

  • C - で私も素数を数えてみた : 404 Blog Not Found

    2010年07月26日18:30 カテゴリMath C - で私も素数を数えてみた 世間は夏休みだそうだし、連日の猛暑で体調も底だし、というわけで私も素数を数えてみた。 10兆までの素数のリストを作ってみませんか? - 記者の眼:ITpro もしあなたがプログラマだったら、プログラムを書いて10兆までの素数のリストを作ってみてほしい。情報システムの開発に携わる人であれば、10兆までの素数のリストを出力するシステムの見積もりを考えてみてほしい。費用はどれくらいかかるか、納期はどれくらいか、あなたはどんな答を出すだろうか。仕様書はうまく書けるだろうか。 プライムナンバーズ David Wells / 伊知地宏監訳 / さかいなおみ訳 [原著:Prime Numbers: The Most Mysterious Figures In Math] といっても原田記者と同じように書いても芸がないので

    C - で私も素数を数えてみた : 404 Blog Not Found
  • 第2回 確率の初歩 | gihyo.jp

    今回は、機械学習で使う「確率」のお話です。 確率は、統計的な機械学習のもっとも重要な基礎知識です。とはいえ、確率についてゼロから説明するというのは紙数的にも厳しいため、高校の確率を少し憶えているくらい(期待値や標準偏差など)を前提とし、「⁠高校の確率」と「機械学習の確率」の質的な相違点について、少し丁寧に見ていく、という形で進めていきます。 機械学習と確率 最初に、機械学習にとって確率はどういう役割なのかを確認しておきましょう。 実のところ、機械学習に確率が必須というわけではありません。ニューラルネットワークやサポートベクターマシンなどの有名な手法も「確率を用いない機械学習」ですし、その他にも数多くの手法があります。しかし、「⁠確率を用いない機械学習」の多くは、「⁠結果のランキングを作りづらい(評価値の大小に意味がない⁠)⁠」⁠「⁠条件が異なる場合の結果を比較できない」などの欠点がありま

    第2回 確率の初歩 | gihyo.jp
  • 自然言語処理勉強会@東京 第1回 の資料 - 木曜不足

    日の tokyotextmining こと 自然言語処理勉強会@東京 第1回 で話す「Webページの文抽出 using CRF」の資料(自己紹介は除く)です。 以前、Ruby で作った文抽出モジュール を機械学習技術を使って作り直してみたら、というお話。 CRF は Conditional Random Fields の略。 Web文抽出 using crf from Shuyo Nakatani 実装はこのあたり。 http://github.com/shuyo/iir/blob/master/sequence/crf.py http://github.com/shuyo/iir/blob/master/sequence/pg.py http://github.com/shuyo/iir/blob/master/extractcontent/webextract.py 【追記】

    自然言語処理勉強会@東京 第1回 の資料 - 木曜不足
  • マナビット - 学び × IT のコミュニティサイト - — Groups — ZIP実装会

    yokochie
    yokochie 2010/07/01
    参加するにはどうしたらいいんだろう?
  • 機械学習 はじめよう 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2025 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    機械学習 はじめよう 記事一覧 | gihyo.jp
  • 10兆までの素数のリストを作ってみませんか?

    もしあなたがプログラマだったら、プログラムを書いて10兆までの素数のリストを作ってみてほしい。情報システムの開発に携わる人であれば、10兆までの素数のリストを出力するシステムの見積もりを考えてみてほしい。費用はどれくらいかかるか、納期はどれくらいか、あなたはどんな答を出すだろうか。仕様書はうまく書けるだろうか。 記者がこんなことをいうのは、自分で10兆までの素数のリストを作ってみて、とても面白かったからだ。図1のプログラムを書いて出力が成功するまで約2週間、夢いっぱいの楽しいひとときを過ごせた。予期せぬ問題も発生したけれど、最後にはコンピュータがまだまだ発展する可能性を持つと感じられた。素数のリストを作る演習は、プログラミングと情報システムにおける有益な演習の一つである。 アルゴリズムの有効性が納得できる この演習の面白い点は、まずアルゴリズムの有効性を納得できる点だ。素数(prime)は

    10兆までの素数のリストを作ってみませんか?
  • ブルームフィルタ - Wikipedia

    この項目では、確率的データ構造について説明しています。画像にぼかし効果を付加する画像フィルタについては「川瀬のブルームフィルター」をご覧ください。 ブルームフィルタ(英語: Bloom filter)は、1970年に Burton H. Bloom が考案した空間効率の良い確率的データ構造であり、あるデータが集合の要素である(集合に含まれている)かどうかの判定に使われる。ただし判定は正確ではなくて、含まれていないのに含まれていると誤って判定すること偽陽性(false positive)の可能性がある。しかし含まれているものを含まれていないと誤判定すること偽陰性(false negative)はない。なお集合に要素を追加することはできるが、集合から要素を削除することはできない(ただし、拡張をした counting filter であれば削除もできる)。集合に要素を追加していくにつれて偽陽性の

    ブルームフィルタ - Wikipedia
  • Google Prediction API - Google Code

    How do I start? Learn more about Google Prediction API. Request access. Try out the sample code. What is the Google Prediction API? The Prediction API enables access to Google's machine learning algorithms to analyze your historic data and predict likely future outcomes. Upload your data to Google Storage for Developers, then use the Prediction API to make real-time decisions in your applications.

  • SVMによる予測変換 - nokunoの日記

    Google日本語入力のOSS版であるMozcが公開されたので、ソースコードを読んでみました。Google Japan Blog: Google 日本語入力がオープンソースになりました mozc - Project Hosting on Google Code変換アルゴリズムや学習のロジックに関しては、id:tkngさんが早速ブログにまとめていますので、そちらを読むとよいと思います。また何か気づいたことがあったら書いてみたいと思います。Mozc(Google日本語入力)のコードを読んだメモ - 射撃しつつ前転 Mozcのコードで個人的に興味深かったのは予測変換のアルゴリズムでした。私はもともと修論の時に予測変換の研究をしていて、予測変換のトレードオフという問題に取り組んでいました。予測変換は、単純に考えると候補の頻度が高ければ高いほど良いのですが、それだけだと常に最も短い候補が出力されてし

  • Mozc(Google日本語入力)のコードを読んだメモ - 射撃しつつ前転 改

    Google日本語入力がOSS化されたということで、気になっていたところをいくつか確認してみた。 変換アルゴリズムはどんな感じか? twitterの工藤さんの発言にも「わりと古典的な最小コスト法」とあるけれど、まさにそんな感じ。人名の処理とかでちょっと特別なコードが入ったりもしているが、ほぼ基的な統計的かな漢字変換のモデル。係り受けの情報とかは使っていない。Viterbiでベストパスを求めて、品詞ベースで文節にまとめあげている。コストモデルは接続コストが品詞対品詞で、単語コストの方は単語毎に設定されているっぽい。 src/converter/immutable_converter.ccのImmutableConverterImpl::ViterbiがViterbiアルゴリズムの部分で、その後にMakeSegmentsで文節にまとめている。読むならImmutableConverterImp

    Mozc(Google日本語入力)のコードを読んだメモ - 射撃しつつ前転 改
  • LSH (Locality Sensitive Hashing) を用いた類似インスタンスペアの抽出 - mixi engineer blog

    GW 中の長距離移動のために体調が優れない takahi-i です. 今回は巨大なデータをマイニングする一つの技術として LSH (Localtiy Sensitive Hashing) を紹介させていただきます. LSH とは LSH は大量なデータから類似度が高いインスタンスのペアを高速に抽出してくれるアルゴリズムです. ここでインスタンスはデータ集合の一つの要素を表します. たとえば扱うデータが E-コマースサイトの購買ログであれば, インスタンスは各ユーザですし, 画像データ集合であれば, インスタンスは個々の画像データです. LSH の詳しい解説については以下のサイトがあります. Wikipedia のエントリ LSH に関する論文がまとめられているページ 稿ではE-コマースサイトの購買履歴データを基に LSH の機能について述べてゆきます. 以下のような E-コマースサイトの

    LSH (Locality Sensitive Hashing) を用いた類似インスタンスペアの抽出 - mixi engineer blog
  • LZ78方式符号化をRubyで実装、を改良 - yasuhisa's blog

    Trieちゃんと使ったので、それなりの速度になりました。100MBくらいのテキストが40MBくらいまで縮んだかと思えば、2.8MBのテキストが2.6MBにしかならなかったりと圧縮したいテキストの性質によって圧縮率が全然違う感じでした。WEB+DB PRESS Vol.54によると、LZ78方式符号化はXMLのような文章では強いらしい。 #!/opt/local/bin/ruby1.9 # -*- coding: utf-8 -*- require 'pp' module Trie class Node attr_accessor :sym, :code def initialize(code) @code = code # 番号 @sym = Hash.new end def insert_child(sym, code) @sym[sym] = Trie::Node.new(code)

    LZ78方式符号化をRubyで実装、を改良 - yasuhisa's blog
  • アルゴリズムクイックリファレンス

    George T. Heineman、Gary Pollice、Stanley Selkow 著、黒川 利明、黒川 洋 訳 TOPICS クイックリファレンス , Programming , C/C++ 発行年月日 2010年04月 PRINT LENGTH 396 ISBN 978-4-87311-428-6 原書 Algorithms in a Nutshell FORMAT 障害に強い、問題が起こりにくいコードにはまず正しいアルゴリズムの選択から。理論だけでなく実践的側面を重視した、新しいタイプのアルゴリズムの書籍です。適切な問題解決、性能改善という、現場が求める2つの大きな要求に応えるため、どのアルゴリズムを使うべきか、どう実装するのか、さらに性能を向上させる方法はあるのかを、C、C++JavaRubyなど、さまざまな言語を使って説明します。図、表、サンプルコードがふんだんに盛

    アルゴリズムクイックリファレンス
  • モテるアルゴリズム講座  第1回 グラフでモテたい|株式会社 フラッツ

    天方です。 今日からモテるアルゴリズム講座を始めたいと思います。 それでは、第1回グラフでモテたいの講義を始めようと思います。 なんといってもアルゴリズムができるとかいうと、いろいろモテます。 この講座を通じて、皆さんもアルゴリズムをマスターしてモテてください。 日は、モテるアルゴリズムを考える上で重要な グラフのデータ構造について話をしたいと思います。 グラフというと、普通思い浮かべるのは棒グラフとか円グラフとかかもしれませんが、今回は違います。そんな反応をしていると婚期を逃します。 グラフというのは、点と枝かつながってできるものをグラフと言います。 グラフの例 グラフはいろいろな分野で使われていると思いますが、 あのGoogleも検索エンジンのページの順位付けのためにグラフの概念を利用していたいりします。 さて、グラフをコンピュータ上で扱おうとすると、そのデータ構造の持たせ

  • 「ガベージコレクションのアルゴリズムと実装」という本を書きました。

    gcbook, gcai, GCGCLoverのみなさん、お待たせしました。「ガベージコレクションのアルゴリズムと実装」の情報公開です。 書名:ガベージコレクションのアルゴリズムと実装 著者:中村 成洋/相川 光 監修:竹内 郁雄 ページ数:472ページ 体価格:3,200円 発売開始日:2010年3月17日(水) ※地域・書店によって遅れることがあります ISBN:978-4-7980-2562-9 C3055 読み所 書は次の2つのテーマを扱います。 1.GCのアルゴリズム(アルゴリズム編) 2.GCの実装(実装編) アルゴリズム編では、これまでに考案されてきた数多くのGCアルゴリズムの中 から、重要なものを厳選して紹介します。伝統的かつ基的なものから、やや 高度なアルゴリズムを選定しています。GC独特の考え方や各アルゴリズムの特 性などを理解していただくのがアルゴリズム編の最大

  • 動的計画法とナップサック問題を学びたい人におすすめのサイト - ダウンロードたけし(寅年)の日記

    組み合わせ最適化の手法として「動的計画法」というモノがあります。 wikipediaから抜粋 動的計画法(どうてきけいかくほう、英: Dynamic Programming, DP) コンピュータ科学の分野において、ある最適化問題を複数の部分問題に分割して解く際に、そこまでに求められている以上の最適解が求められないような部分問題を切り捨てながら解いていく手法 一見難しそうですが、実は理解するのは以外と簡単です。いろいろな場面で応用が利く便利な手法ですので、覚えておいて損はないものです。コンピュータ系、情報系のお勉強をする人であれば、おそらく一度は習ったりするかもしれません。 ナップサック問題と動的計画法 動的計画法の一番親しみやすそうな例として「ナップサック問題」というのがよく取り上げられます。 こんな感じの問題です。 今ここに様々な大きさの品物が置いてあるとします。そしてそれらの品物は各

    動的計画法とナップサック問題を学びたい人におすすめのサイト - ダウンロードたけし(寅年)の日記