タグ

algorithmとAlgorithmに関するsabroのブックマーク (155)

  • wat-array : wavelet木を利用した高速配列処理ライブラリ - Preferred Networks Research & Development

    こんにちは岡野原です。もう年末になりましたが、私の今年はこれからです。 wat-arrayというC++ライブラリを公開しました。 google code:wat-array wat-arrayはフリーソフトウェアであり、修正BSDライセンスに基づいて利用できます. wat-arrayはwavelet木と呼ばれるデータ構造を利用することにより、配列上の様々な処理を効率的に行うことができるC++ライブラリです。 例えば、 – 任意の連続した範囲内にある最大値 /最小値 / k番目に大きい値, またそれらの出現位置、頻度 – 任意の連続した範囲内にある指定した文字cの出現回数、c未満/より大きい文字の出現回数 – 任意の文字のi番目の出現位置 といったものを求めることが全て範囲長、入力長に対して定数時間で行うことができます。 例えば長さ10億、値の範囲が0から1000万であるような配列A中のA[

    wat-array : wavelet木を利用した高速配列処理ライブラリ - Preferred Networks Research & Development
  • Kazuho@Cybozu Labs: アクセスログからアテンション(注目情報)をデータマイニングする手法について

    多数のユーザーの行動記録からアテンション情報(注目されているデータが何か)をデータマイニングしたいというのは、大量のデータを扱っているウェブサイトにおいては自然と出てくる要求です。そこで、先月末にサービスを終了したサービス「パストラック」において使用していた、アクセスログから注目度(人気度)の高いウェブページや人名等のキーワードを抽出するためのアルゴリズムを紹介しておきたいと思います。 たとえばはてなブックマークのような、ユーザーの能動的な行為(「ブックマークする」という作業)から注目情報を抽出するのは決して難しいことではありません。それは、直近の一定期間内のブックマーク数=注目度、という前提が上手に機能するからです。現に、はてなブックマークの人気エントリーは、最近24時間程度の期間内にブックマークしたユーザー数の多い URL を降順で並べているように見受けられます。 しかし、アクセスログ

  • Free Dynamic DNS(DDNS) by POP3,IMAP4,FTP,HTTP-BASIC for Home Server, VPS | MyDNS.JP

    yambi.mydns.jp is not accessible... Sorry. I do not know why this site is not working. If you know Administrator of this site, please contact directly. You may be able to see it in Google cache. For administrator ... MyDNS.JP did not received IP address from you over One week. Please check your notify system. If you restart notification of IP address, MyDNS.JP will apply your IP address to DNS inf

  • われわれは100倍、速く書けない - やねうらおブログ(移転しました)

    西川 ええと……(笑)。受注生産って、人数に比例してもうけるじゃないですか。でも、われわれは人の100倍は速く書けると思っている。じゃあ、その人に1カ月、その分を払ってくれるのかというと、受注じゃ絶対、無理でしょう。でも、ソフトウェアだと可能。 (中略) 西川 同じ「エンジニア」という職種でも、生産性は100倍くらい違いますよね。コードをその人がただ書くという部分だけじゃなくて、例えばチューニングされたコードをすぐ書けるなら、結果的にシステムが速く動く。遅いコードを書いて100台マシンを使用するとなると、いろいろな人がシステム構築にかかわらないといけない。でも同じ条件で100倍速いコードを書けば、1台のマシンで済む。運用も圧倒的に楽になる。だから、生産性はそのくらい変わってくると思います。 第5回 「われわれは100倍、速く書ける」――PFI 西川徹 http://lab.jibun.at

    われわれは100倍、速く書けない - やねうらおブログ(移転しました)
    sabro
    sabro 2010/09/28
    100倍のパフォーマンスを出せる人が必要なほど難しい仕事って思ったより少ないんだよね。業務アプリとか半ば定型作業
  • パターン認識と機械学習(PRML)まとめ - 人工知能に関する断創録

    2010年は、パターン認識と機械学習(PRML)を読破して、機械学習の基礎理論とさまざまなアルゴリズムを身につけるという目標(2010/1/1)をたてています。もうすでに2010年も半分以上過ぎてしまいましたが、ここらでまとめたページを作っておこうと思います。ただ漫然と読んでると理解できてるかいまいち不安なので、Python(2006/12/10)というプログラミング言語で例を実装しながら読み進めています。Pythonの数値計算ライブラリScipy、Numpyとグラフ描画ライブラリのmatplotlibを主に使ってコーディングしています。実用的なコードでないかもしれませんが、ご参考まで。 PRMLのPython実装 PRML読書中(2010/3/26) 多項式曲線フィッティング(2010/3/27) 最尤推定、MAP推定、ベイズ推定(2010/4/4) 分類における最小二乗(2010/4/

    パターン認識と機械学習(PRML)まとめ - 人工知能に関する断創録
  • http://1978th.net/tech/promenade.cgi?id=88

  • ウェブコーパスの一部から形態素 N-gram コーパスを作成しました - やた@はてな日記

    追記(2010-09-22):完成版がこちら(N-gram コーパス - 日語ウェブコーパス 2010)にあります. 追記(2010-08-06):文末記号(</S>)を追加したものを作成しました(形態素 N-gram コーパスの修正版 - やた@はてな日記). ダウンロード 頻度が 100 以上の N-gram を収録したもの(over99)と,頻度が 10 以上の N-gram を収録したもの(over9)を用意しました.少しでも圧縮できるように,形態素数によるファイルの分割はおこなっていません. ファイル名 サイズ 展開時のサイズ over99-0000.xz 84,443,192 bytes 459,278,821 bytes ファイル名 サイズ 展開時のサイズ over9-0000.xz 329,101,340 bytes 2,147,483,623 bytes over9-0

    ウェブコーパスの一部から形態素 N-gram コーパスを作成しました - やた@はてな日記
  • 遺伝的アルゴリズムを楽しく理解できるサイトをまとめてみた - download_takeshi’s diary

    女優の菊川怜さんが学生時代に研究テーマにしていたという事で有名な「遺伝的アルゴリズム」ですが、名前の仰々しさとは裏腹に、意外と直感的に理解できる取っ付きやすいアルゴリズムだったりします。 それにしても菊川怜さん、美人ですねー。こんな先生にイロイロと教えてもらいたかったなぁ。。。 という願望はおいといて、「遺伝的アルゴリズム」を目で見て&手で触って、直感的に「理解したつもり」になれそうなサイトをまとめてみました! 学術的なことはガン無視でいきます。 動画で見て雰囲気を知る まずは動画で見て楽しみましょう。ニコ動から何か動画を紹介します。 【人工知能】物理エンジンで人工生命つくって学習させた http://www.nicovideo.jp/watch/sm6392515 いきなりですが、強烈なインパクトをはなつ動画です。 人工生命がうにょうにょ動きながら、勝手に「歩き方」を学んでいきます。超

    遺伝的アルゴリズムを楽しく理解できるサイトをまとめてみた - download_takeshi’s diary
  • UUID と Perl について - daily dayflower

    UUID がどういうものであるか,とか UUID の表現形については省略します。 UUID - Wikipedia が参考になるかと。 UUID の仕様として RFC 4122 を参照しました*1。なのでより細かいことについては原文を参照してください。策定されるまでにいろいろ経緯があるのですが,そのへんは http://www.rfcnews.jp/archives/2005/07/rfc_4122uuidurn.html に譲ります。 UUID の構造 UUID の内部構造をおおまかに表すと以下のようになります。 variant 2 bit (3 bit) version 4 bit time 60 bit clock_seq 14 bit (13 bit) node 48 bit 実際には variant フィールドは clock_seq フィールドのオクテットの中に埋め込まれています

    UUID と Perl について - daily dayflower
  • Google App Engineでランキングやページングを実現する - $koherent-&gt;diary

    昨日一昨日、Google App Engine (GAE)に関する日最大の勉強会(だと思う)appengine ja night #7 (ajn7)が行われました。 その中で『ランキング問題』が話題に上がりました。『ランキング問題』とは、何十万件もの点数のデータがあるときに、App Engine上で、「◯点は何位です」と高速に求めることは難しい、という問題です。(◯ページ目を表示、というページングもこれと同じ種類の問題になります。) ajn7では「上位でない限り正確な順位は必要ないのではないか」という話になりましたが、Skiplistを用いた検索アルゴリズムを使えば正確かつ高速に順位を求めることができるのではないかと思い、実装&検証してみました。 ランキング(順位取得)のデモ 下記ページで順位取得のデモを動かしています。スコア(点数)を入力すると順位と取得にかかった時間が表示されます(時

    Google App Engineでランキングやページングを実現する - $koherent-&gt;diary
  • たけまる / 第四回 Erlang 分散システム勉強会 - 閉幕

    このサイト内 ウェブ全体 書いてる人 たけまる はてブ数 注目エントリー 最近の記事 2010-02-26 第四回 Erlang 分散システム勉強会 - 閉幕 2010-02-24 第四回 Erlang 分散システム勉強会 - 懇親会に空きあり 2009-10-12 Voluntas さんの Erlang 講義 2009-07-29 Kai Plugin for Ruby on Rails 2009-07-04 第3回 Erlang 分散システム勉強会 終わりました 2009-06-15 7/3 第3回 Erlang 分散システム勉強会 2009-06-04 分散Key/Valueストア,Kaiを使ってみよう! 2009-04-30 Kai running in goo home 2009-04-04 プログラミング言語 Erlang の動向 2009-03-18 ets で bag と

  • QuickDrawはどのように素早く円を描いていたのか? - ザリガニが見ていた...。

    かつてのMac OS9までの描画エンジンの主役はQuickDrawが担っていた。GUIなOSでは、文字も含めてすべてをグラフィックとして扱うので、画面に見えているすべてのもの*1はQuickDrawによって描かれていたことになる。描画エンジンは、GUIなOS開発の要となる技術である。その出来が、GUIなOS開発の成否を分けるとも言える。 そして、最初期のQuickDrawは、ビル・アトキンソンがたった一人で開発したそうである。 当時(25年以上前)のCPUは、動作クロックが8MHzという性能だった。(現在は2GHz=2000MHzかつ、複数コアが当たり前) そのような性能であっても、違和感なくマウスで操作できるOS環境にするために、斬新な発想や試行錯誤を重ね、相当な努力の末に開発されたのがLisaやMacintoshであった。 Amazon.co.jp: レボリューション・イン・ザ・バレー

    QuickDrawはどのように素早く円を描いていたのか? - ザリガニが見ていた...。
  • 大規模ソーシャルサーチエンジンの構造 - file-glob こと k.daibaの日記

    はじめに Googleのように,どのドキュメントが適切なのかを選ぶのではなく,質問を誰にするのが適切かを選ぶ検索エンジンをAardvarkという会社が作り,その構造を論文で公開しました.この会社はもともとGoogleの社員だった人達が作った物で,最近Googleが買い上げました.今日はその論文の要旨をまとめてみました. タイトルと著者 タイトルはGoogle創始者のLarry PageさんとSergey Brinさんが1988年に発表した"Anatomy of a Large-Scale Hypertextual Search Engine"と韻を踏んでいます.論文を発表したのは,Aardvark社のDamon HorowitzさんとStanford Univ.のSepandar D. Kamvarさんです.以下小見出しが章,少々見出しが節という形式で進めます. ABSTRACT Aard

    大規模ソーシャルサーチエンジンの構造 - file-glob こと k.daibaの日記
  • Bayesian Setsによる関連文書検索システムStupa - mixi engineer blog

    都会よりも田舎が好きなfujisawaです。Bayesian Setsというアルゴリズムを使って、関連する文書を高速・高精度に検索できるシステムを作成しましたので、そのご紹介をさせていただきます。 Bayesian Setsとは Bayesian Setsはいくつかアイテムを入力すると、それを補完するようなアイテムを返してくれるアルゴリズムです。原著論文の先頭に"Inspired by Google Sets"と書かれているように、Google Setsを参考にして作成されています。実際にどのような出力が得られるか、Google Setsに以下の表のクエリを検索して試してみますと、 クエリ 出力 apple, banana chocolate, strawberry, vanilla, cherry, ... apple, macintosh software, windows, mac,

    Bayesian Setsによる関連文書検索システムStupa - mixi engineer blog
  • マルチコア時代のLock-free入門

    Please select the category that most closely reflects your concern about the presentation, so that we can review it and determine whether it violates our Terms of Use or isn't appropriate for all viewers.

  • 経路探索アルゴリズムの「ダイクストラ法」と「A*」をビジュアライズしてみた - てっく煮ブログ

    as詳解 ActionScript 3.0アニメーション ―衝突判定・AI・3DからピクセルシェーダまでFlash上級テクニック を読んでいて、経路探索のアルゴリズムで A* が取り上げられていました。A* については、いろいろ検索して調べたりもしたのですが、やっぱりに書いてあると理解しやすいですね。せっかくなので自分流に実装してビジュアライズしてみました。ダイクストラ法まずは A* の特別なケースでもあるダイクストラ法から見ていきます。クリックすると探索のシミュレーションが開始します。スタート地点(S)からゴール(G)への探索が始まります。色がついたところが「最短経路が決定した場所」です。スタート地点から少しずつ探索が完了していきます。半分ぐらい完了しました。まだまだ進みます。最後まで終わりました。最短経路を黒色矢印で表示しています。ダイクストラ法は、スタート地点から近いノード(=マス

  • 「最強最速アルゴリズマー養成講座」関連の最新 ニュース・レビュー・解説 記事 まとめ - ITmedia Keywords

    最強最速アルゴリズマー養成講座: そのアルゴリズム、貪欲につき――貪欲法のススメ アルゴリズムの世界において、欲張りであることはときに有利に働くことがあります。今回は、貪欲法と呼ばれるアルゴリズムを紹介しながら、ハードな問題に挑戦してみましょう。このアルゴリズムが使えるかどうかの見極めができるようになれば、あなたの論理的思考力はかなりのレベルなのです。(2010/9/4) 最強最速アルゴリズマー養成講座: 病みつきになる「動的計画法」、その深淵に迫る 数回にわたって動的計画法・メモ化再帰について解説してきましたが、今回は実践編として、ナップサック問題への挑戦を足がかりに、その長所と短所の紹介、理解度チェックシートなどを用意しました。特に、動的計画法について深く掘り下げ、皆さんを動的計画法マスターの道にご案内します。(2010/5/15) 最強最速アルゴリズマー養成講座: アルゴリズマーの登

  • 知れば天国、知らねば地獄――「探索」虎の巻

    いよいよ今回から、具体的なアルゴリズムの紹介に入っていきます。今回は、プログラミングにおける重要な概念である「探索」について考えます。グラフに変換し、探索する、という流れを知るとともに、そのグラフを効率よく探索する方法について紹介します。 今後紹介していくアルゴリズムについて お待たせしました! 「最強最速アルゴリズマー養成講座」という連載タイトルのとおり、今回の連載からいよいよ具体的なアルゴリズムの紹介に入っていきたいと思います。 しかし、それを読んでいただく前に、1つ注意してもらいたいことがあります。連載第3回でもお伝えしたように、「問題を、既存の適当なアルゴリズムに当てはめる」という考え方は、非常に危険である、ということです。 筆者の経験上、TopCoderでRedCoder以上を目指すのであれば、回答時間短縮のために、いままでのパターンを利用するのも方法の1つなのですが、連載では

    知れば天国、知らねば地獄――「探索」虎の巻
  • 人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。

    さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * ************************** という入力に対し、 ************************** *S* * $$$ * *$* *$$*$ ************

    人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。
  • やねうら王 公式サイト

    サイトのメインコンテンツ やねうら王 — 棋力的にトップ集団の将棋ソフトに比肩する将棋ソフト やねうら王オープンソースプロジェクト — やねうら王miniから最新のやねうら王までのソースコードと思考エンジン体 ふかうら王 — Deep Learningを採用した新しい時代の将棋ソフト たけわらべ — 利きだけを理解している新しい感覚の将棋ソフト Stockfish完全解析 — コンピューターチェスの強豪ソフトStockfishの完全解析 将棋電王戦  — 株式会社ドワンゴ主催の将棋電王戦。やねうら王は4年連続出場 コンピューター将棋全般 — コンピューター将棋全般の話題 プロコン — CODEVSなどプログラミングコンテストの話題 なお、この記事のここから下には新着記事が表示されています。