印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます 前回は、ECサイトのレコメンド技術の種類として、ルールベース方式、コンテンツベースフィルタリング方式、協調フィルタリング方式、ベイジアンネットワーク方式の4つを紹介した。今回は、これらのレコメンド方式をより細分化した上で、協調フィルタリングのロジックについて解説したい。 4つのレコメンド方式は、「レコメンドするために必要な情報は何なのか」、「何をもってレコメンドするためのルールとするか」という切り口で分類していると解説した。それぞれのレコメンド方式は、さらに「どの判別属性を軸にレコメンドアイテムを決定しているのか」という切り口によって細分化できる。その判別属性とは、アイテムベース、ユーザーベース、ユーザー提示情報ベースの3つだ。 例えば
ハッシュテーブルからエントリーを検索する処理は,一般に定数時間で済むとされている。つまり,どんなにエントリーが増えても検索の速さは変わらない,ということ。データ構造の教科書には必ず載っていることだね。 でも実際には,ハッシュの衝突が起こった場合に,速度の低下が発生する可能性がある。例えば,一般的なチェイン法(オープンハッシュ)だと,衝突したエントリーに関して線形検索を行うことになるから,衝突が多ければ多いほど,定数時間からは遠のいてしまう。 この速度低下を防ぐ方法はいろいろある。なかでも cuckoo hashing (カッコウ・ハッシング)は仕組みが面白い。こいつは,エントリーの検索を必ず定数時間で済ませてくれるという優れものなんだ。 Cuckoo hashing では,2つのハッシュ関数と,2つのテーブルを用いる。ここでは,2つのハッシュ関数をそれぞれ h1, h2 として,2つのテー
最近、「Introduction to Information Retrieval」というStanfordの大学院向け教科書のドラフトを読んでいます。id:naoyaあたりが勉強会で読んでいる教科書です。この教科書には、効率のいい全文検索システムを作るにはどうすればいいか、という(まさに)教科書的手法が網羅的に書いてあり、そのあたりに興味がある人には、非常に興味深く読めるお勧めの本です。 ただ、面白い面白いと言っているだけでは、エンジニアとしては価値半減ですので、GW中にrubyで一日かけて実装してみました。 さすがに実装は、一日で作ったものですから、非常に素朴です。マルチバイト文字はbi-gramで、シングルバイトはスペースなどの区切り記号で認識しています。インデックスは、rubyの処理系のHashやArrayで保持しており、外部にMarshallで書き出す、というものです。検索エンジン
"MapReduce" は Google のバックエンドで利用されている並列計算システムです。検索エンジンのインデックス作成をはじめとする、大規模な入力データに対するバッチ処理を想定して作られたシステムです。 MapReduce の面白いところは、map() と reduce() という二つの関数の組み合わせを定義するだけで、大規模データに対する様々な計算問題を解決することができる点です。 MapReduce の計算モデル map() にはその計算問題のデータとしての key-value ペアが次々に渡ってきます。map() では key-value 値のペアを異なる複数の key-value ペアに変換します。reduce() には、map() で作った key-value ペアを同一の key で束ねたものが順番に渡ってきます。その key-values ペアを任意の形式に変換すること
CÉGEK, RENDEZVÉNYSZERVEZŐK, ÖNKORMÁNYZATOK! Szórakozási lehetőség gyermekeknek! Rendezvényekre, partikra rendelhetők, vagy bérbe vehető szórakoztató eszközök. Bővebb felvilágosításért kattintson a képekre vagy válasszon a lenti elérhetőségeink közül. További képek Bővebb szöveges cég és szolgáltatás tájékoztató ITT! Elérhetőségeink Telefonszám: +36-30/9659-614
最終更新日:2001年7月2日 第1章へ webmaster@snap-tck.com Copyleft (C) 2000 SNAP(Sugimoto Norio Art Production)
GCアルゴリズム詳細解説 日本語の資料がすくないGCアルゴリズムについて詳細に解説します トップページページ一覧メンバー編集 × GC 最終更新: author_nari 2010年03月14日(日) 20:47:11履歴 Tweet このWikiが目指す所 GCとは? GCを学ぶ前に知っておく事 実行時メモリ構造 基本アルゴリズム編 Reference Counter Mark&Sweep Copying 応用アルゴリズム編 IncrementalGC 世代別GC スナップショット型GC LazySweep TwoFinger Lisp2 Partial Mark and Sweep -Cycle Collection- Mostly Parallel GC train gc MostlyCopyingGC(Bartlett 1989) TreadmillGC(Barker 1992)
飛び飛びの点を滑らかにつなぐ「3次スプライン補完」という方法があります.ここでは非周期関数用のスプライン補完を取り上げます. コード † ↑ spline.rb † class Spline # 初期化.3次スプライン補間曲線を求める def initialize(x, y) @x = x @y = y @z = [] n = @x.length h = [] d = [] @z[0] = @z[n-1] = 0 for i in 0...n-1 h[i ] = @x[i+1] - @x[i] d[i+1] = (@y[i+1] - @y[i]) / h[i] end @z[1] = d[2] - d[1] - h[0] * @z[0] d[1] = 2 * (@x[2] - @x[0]) for i in 1...n-2 t = h[i] / d[i] @z[i+1] = d[i+2]
Matz日記 で紹介されている google-sparsehash を眺めてみた. ひさびさに Google 気分. :~/src/sparsehash-0.8 omo$ wc `find src/google/ -type f` 253 1348 10336 src/google//dense_hash_map 237 1309 9884 src/google//dense_hash_set 238 1244 9616 src/google//sparse_hash_map 223 1214 9245 src/google//sparse_hash_set 919 4776 37957 src/google//sparsehash/densehashtable.h 42 189 1187 src/google//sparsehash/sparseconfig.h 884 4642 371
3次元コンピュータ・グラフィックス(3DCG)の世界で,リアリティは非常に重要なテーマです。リアルな3DCGを作るため,これまで様々な研究/開発がなされ,その成果は映画やビデオ・ゲームなどで誰でも目にすることができるようになっています。そして,現在でもさらなるリアリティの追求のため,日々研究や開発が続けられています。このパートでは,そうしたリアルな3DCGの裏側にある技術の一端をお見せします。 3DCGのリアリティは「形状」「色/質感」「動作」という三つの要素に分けて考えることができます。これらが技術的にどのような難しい点を含んでおり,どのように解決されてきたかは,最後のカコミ記事「3DCGのリアリティを実現する三つの要素」を参照していただくとして,これらの三要素が一定の水準に達したところで浮かび上がってきた,ある問題に焦点を合わせてみましょう。それは自然な動作の大量生成が難しい,という問
HowGoogleEarthReallyWorks - Google Earth の <ほんとの> 仕組み 目次 この文書について Google Earth の <ほんとの> 仕組み パート1 終幕: 3D の仮想地球を描画する 基本 より良いフィルタリングを持ち込む さあ本題に入ろう Google Earth の <ほんとの> 仕組み この文書について RealityPrime > How Google Earth [Really] Works の日本語訳です。 推敲添削歓迎: 誤訳、タイポ、不統一、そのほか ... 有名サイト HowStuffWorks.com の記事 "How Google Earth Works" を読んだら, この記事が "それがどれだけスゴいか" や "その使い方" を書くだけで "それが(ほんとは)どんな仕組みで動いているのか" を説明していないこと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く