タグ

アルゴリズムに関するni66lingのブックマーク (34)

  • 【2024年】Googleの検索アルゴリズム完全リスト200項目

    Googleは、検索順位を決定するための要因として200以上の検索アルゴリズムを使用しています。 今回、その全てをリスト化しました。 Googleが存在すると明言しているアルゴリズムから、その存在を隠すもの、はたまた噂レベルのものまでを含めた完全リストです。 リストは Search Engine Journal で公開された情報を基に独自に最新情報へアップデートしています。 アルゴリズムは非公開です。 そのため100%信頼できるリストではありませんが、世界中の専門家がどのような要因を重視しているかを知ることは、あなたの SEO にきっと役立つはずです。 Googleの検索アルゴリズムとは? Google が検索順位を決定するランキングシステムは、ユーザーが求めている情報と最も関連性が高いウェブページを、検索インデックスから検索して表示します。 そして、そのランキングシステムを構成しているの

    【2024年】Googleの検索アルゴリズム完全リスト200項目
  • diffの動作原理を知る~どのようにして差分を導き出すのか | gihyo.jp

    UNIXの基的なコマンドの1つであるdiff。 これに実装されているアルゴリズムは実に興味深い世界が広がっています。 稿では、筆者が開発した独自ライブラリ「dtl」をもとに「diffのしくみ」を解説します。 はじめに diffは2つのファイルやディレクトリの差分を取るのに使用するプログラムです。 ソフトウェア開発を行っている方であれば、SubversionやGitなどのバージョン管理システムを通して利用していることが多いかと思います。稿ではそのdiffの動作原理について解説します。 差分の計算の際に重要な3つの要素 差分を計算するというのは次の3つを計算することに帰結します。 編集距離 2つの要素列の違いを数値化したもの LCS(Longest Common Subsequence) 2つの要素列の最長共通部分列 SES(Shortest Edit Script) ある要素列を別の要

    diffの動作原理を知る~どのようにして差分を導き出すのか | gihyo.jp
  • 文書比較(diff)アルゴリズム

    文書比較(diff)アルゴリズム 前のドキュメント 次のドキュメント ViViの文書比較(diff)機能で使用しているアルゴリズムについて解説する。 これらのアルゴリズムは Myers 氏らの論文によるもので、氏は筆者のためにわざわざ論文をWebサイトで入手可能な形式にしてくださった。この場を借りてお礼申し上げる。 オリジナル論文は以下のWebサイトから入手可能である。 http://www.cs.arizona.edu/people/gene [1] E.W.Myers, "An O(ND) Difference Algorithm and Its Variations", Algorithmica, 1 (1986), pp.251-266 [2] S. Wu, U. Manber, G. Myers and W. Miller, "An O(NP) Sequence Comparis

  • vimdiffでより賢いアルゴリズム(patience,histogram)を使う

    vimdiff使ってますか?差分を取る際には非常に便利ですよね。git difftoolに設定して使っている人も多いと思います。しかしgit diffは差分計算のアルゴリズムを選択できますが、vimdiffはデフォルトでは差分計算のアルゴリズムを選択できません。 git diffの差分アルゴリズムには標準のもの以外にpatienceやhistogramがあり、より人間に読みやすい差分を表示してくれる「賢い」アルゴリズムになっています。それぞれgit diffコマンドのオプション--patienceや--histogramを付けるか、または~/.gitconfig設定ファイルにアルゴリズムを指定することで利用できます。 具体的なアルゴリズムの詳細は僕も詳しくないですが、patienceアルゴリズムは「ファイル内でユニークかつ比較ファイル同士で一致する行をなるべく"変化していない行"と認識する

    vimdiffでより賢いアルゴリズム(patience,histogram)を使う
  • 遺伝的プログラミング - Wikipedia

    遺伝的プログラミング(いでんてきプログラミング、英: Genetic Programming, GP)は、メタヒューリスティックなアルゴリズムである遺伝的アルゴリズムを拡張したもので、進化的アルゴリズムの四つの主要な方法論の内の一つでもある。 概要[編集] 遺伝的プログラミングは1990年にジョン・コザ(John Koza)によって提案された。他の進化的アルゴリズムの主要な方法論が同時期に提案され独立して研究が進められていたのに対し、遺伝的プログラミングは最初から遺伝的アルゴリズムの拡張として提案されており、他の三つの方法とは大きく立場を異にする。具体的な内容としては、遺伝的アルゴリズムにおける遺伝子型の表現が主に配列であるのに対し、遺伝的プログラミングでは木構造を用いる。このため、遺伝的アルゴリズムでは表現できなかった数式やプログラムのコードなど、構造を持ったデータを表現することができる

    遺伝的プログラミング - Wikipedia
  • Spotify: 曲をシャッフルするのは単純にランダムではいけない - ワザノバ | wazanova

    http://labs.spotify.com/2014/02/28/how-to-shuffle-songs/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約4時間前 SpotifyのLukáš Poláčekがプレイリストをシャッフルするロジックを改善した取り組みを紹介しています。 以前のロジック ランダムアルゴリズムには、Fisher-Yates shuffleを利用。 順次再生する曲を選ぶロジック同士には依存関係がなく、完全にランダムに選択される。よって、同じアーティストとの曲が連続して再生されることも可能性としてはある。 これはギャンブラーの誤謬と呼ばれる現象。例えば、コイントスで表が連続してでると、次は裏が出ると思いがちであるが、常に確率は1/2である。従前の結果が次の結果に影響を与えると考えてし

  • アルゴリズムで表層と深層を架橋せよ | 柄沢祐輔+南後由和+藤村龍至

    アルゴリズムで表層と深層を架橋せよ | 柄沢祐輔+南後由和+藤村龍至 Cross-link between Superficial Layer and Deeper Layer with Algorithm | Yuusuke Karasawa, Yoshikazu Nango, Ryuji Fujimura リバタリアニズムと不可視のマンハッタン・グリッド 柄沢祐輔──まず始めに討議の前提を少し話してから題にスライドさせていきたいと思いますが、二〇〇一年以降、東京では一八〇もの高層タワーが林立している状況があります。それまでは数十でしたが、ここ数年で倍増した。このような都市のスカイスケープの激変についてそれぞれの立場からコメントをいただければと思います。 藤村龍至──世界経済のグローバルな動きの反映として、高層ビルの林立のような現象が起こっているということはあると思います。しかし、

    アルゴリズムで表層と深層を架橋せよ | 柄沢祐輔+南後由和+藤村龍至
  • [SEO]大手サイトもやっているカテゴリーを使った内部リンク構築術

    Webサイトを上位表示させるためにはコンテンツの質が良いことは当然として、外部リンクの獲得、近年ではソーシャルの活用等も重要になってきています。 ですがそれだけではなく、特にWebサイトの設計段階においては検索エンジンによるWebページの評価の仕組みを理解して、適切にWebサイト内のリンクを構築していくということが重要です。 今回はその内部リンクについて、どういう内部リンクがその機能を果たしつつ検索エンジンに正当に評価されやすいのか、私の経験からその考え方をSEO初心者の方にも分かりやすく解説しようと思います。 内部リンク(Internal Link)とは 内部リンクとは、同じドメイン内から張られたそのドメイン内部のページへのリンクのことです。違うドメインから張られたリンクは外部リンク(External Link)といいます。 内部リンクの果たす役割 SEO的な観点で言うと、内部リンクは外

    [SEO]大手サイトもやっているカテゴリーを使った内部リンク構築術
  • 力学モデル (グラフ描画アルゴリズム) - Wikipedia

    力学モデルによる、wiki ページのネットワークの可視化。(辺はリンクを表す) 力学モデル(りきがくモデル)によるグラフ描画(力指向アルゴリズム)は、グラフを美しく描画するためのアルゴリズムの一つである。 このアルゴリズムは、グラフのノードを2次元空間や3次元空間に配置して、辺の長さをほぼ等しい長さにし、グラフの辺ができるだけ交差しないようにすることを目的にしている。 このアルゴリズムでは、グラフの頂点と辺に仮想的な力を割り当て、力学的エネルギーの低い安定状態を探すことで、この目的を達成している。もっとも直截的なモデルでは、それぞれの辺をフックの法則にしたがうばねとみなし、それぞれの頂点をクーロンの法則にしたがう電荷をもつ粒子とみなす。 そして、その力学系の挙動をシミュレートし、弾性力や静電気力が粒子を近づけたり遠ざけたりするようすを計算する。粒子が安定な配置になり、位置が変化しなくなるま

    力学モデル (グラフ描画アルゴリズム) - Wikipedia
  • wonderfl build flash online

    wonderflは、サイト上でFlashをつくることのできるサービス。 通常Flashをつくるためには、Flash IDEやFlex、FlashDevelop等といったツールを使って、コードを書き、コンパイルする必要がありますが、wonderflでは、サイトにあるフォームにActionscript3のコードを書けば、サーバサイドでコンパイルを行えます。 つまり、ブラウザさえあれば、Flashをつくれます。コンパイル結果はサイト上に表示され、作成されたFlash(swf)はページ上に自動的に表示されるので、完成したFlashをリアルタイムに見ながらコードを書くことができます。 ※APIとして、はてな OpenIDを使用してネットにさえつながれば、誰もがFlashクリエイターになれます。世界中のFlashクリエイターがユーザーになるwonderflは、 文字通り、世界のFlash図鑑となってい

    wonderfl build flash online
  • コンテンツを要約する画期的なiOSアプリ、16歳が開発

  • その9 4分木空間分割を最適化する!(実装編)

    ホーム<ゲームつくろー!<衝突判定編 2D衝突編 その9 4分木空間分割を最適化する!(実装編) 前章で4分木空間分割の最適化法を紹介しました。章ではその実装に目を向けてみたいと思います。 ① 実装ポイントをおさらい まず先に、実装のポイントをおさらいしておきましょう。 ○ 登録作業 衝突対象となるオブジェクトを4分木(線形4分木)に直接登録すると、更新時にそれをツリーから検索する非常な手数がかかるため、前章ではオブジェクトと登録空間を一緒にしたOBJECT_FOR_TREE構造体を登録するスタイルにしました。オブジェクトはその境界図形の大きさから適切な空間に置かれる必要があります。これは最下位空間にモートン順序を振り、境界図形範囲→モートン番号→線形4分木要素番号という連鎖的な変換関数を用いると、o(1)レベルで空間へ登録する事ができます。 ○ 空間は登録専門、オブジェクトは自主的にリ

  • LZ77圧縮 -DEFLATE用- - sileのブログ

    gzip圧縮/解凍器作成の3。 軽く整理 gzipはデータの圧縮に(主に)DEFLATEアルゴリズム(or DEFLATE圧縮データフォーマット)を利用している DEFLATEでは以下のような方法でデータの圧縮が行われる 入力データをLZ77アルゴリズムで圧縮する 上記圧縮データをさらにハフマン符号化を用いて圧縮する gzipはRFC1952で、DEFLATEはRFC1951で定義されている ※ 左のリンク先は、どちらもその日語訳 今回は、この内のLZ77による圧縮(及び解凍)を扱う。 LZ77 まず、RFC1951内でLZ77の要旨について言及している箇所を引用する。 圧縮データ(LZ77圧縮データ ※引用者注)は、2 種類の連続要素から構成されます。(前の 32K 入力バイトの中に複製されたと検出されなかったストリングの)文字バイトと、複製されたストリングへのポインターです。そのポイ

    LZ77圧縮 -DEFLATE用- - sileのブログ
  • ユークリッドの互除法 - Wikipedia

    英語版記事を日語へ機械翻訳したバージョン(Google翻訳)。 万が一翻訳の手がかりとして機械翻訳を用いた場合、翻訳者は必ず翻訳元原文を参照して機械翻訳の誤りを訂正し、正確な翻訳にしなければなりません。これが成されていない場合、記事は削除の方針G-3に基づき、削除される可能性があります。 信頼性が低いまたは低品質な文章を翻訳しないでください。もし可能ならば、文章を他言語版記事に示された文献で正しいかどうかを確認してください。 履歴継承を行うため、要約欄に翻訳元となった記事のページ名・版について記述する必要があります。記述方法については、Wikipedia:翻訳のガイドライン#要約欄への記入を参照ください。 翻訳後、{{翻訳告知|en|Euclidean algorithm|…}}をノートに追加することもできます。 Wikipedia:翻訳のガイドラインに、より詳細な翻訳の手順・指針につい

    ユークリッドの互除法 - Wikipedia
  • http://www.sky.sannet.ne.jp/kn_ishi/epgrec/epgrec_Reservation.class.html

    真の4ch同時録画機を目指して・・・・ epgrecをデフォルトのまま使用していると、連続した番組の予約を"行う"設定にしていても、PT2を2枚挿していて、地デジ4ch同時録画が可能なはずなのに、下図の様に@→A→B→Cの順に録画予約していくと、DやEが予約できません。予約する順番を@→B→D→E→A→Cの様にAとCを後から登録すれば予約できます。なぜこのようになるかというと、デフォルトのepgrecは、連続した番組の予約を"行う"設定のときでも、新規予約の直前と直後の予約との時間調整は行いますが、@とAや、BとCの様に直前直後でない重複予約との時間調整は行いません。これではせっかく搭載しているチューナー数を生かし切れておらず、不満を生んでいました。 そこで、搭載したチューナー数を最大限に活用するために録画アルゴリズム"Reservation.class.php"の改善に取り組みました。

  • 動的計画法は再帰で表せ

    動的計画法の説明は常に再帰関数で書き表すことにしています.いやゆるメモ化再帰です.参照透過な関数は,同じ引数に対して同じ値を返すので,保存しておけばいいという感覚です.計算量の見積もりも簡単で,引数の異なり数に関数中のループの上限をかければおしまいです.特に再帰で書くことに慣れていれば自明に書けますし,テーブルを使ったDPと違って,ループの順番を意識する必要がありません.このテクニックは学部時代に@ohkuraに教えてもらいました.関数型言語に触れた今でこそ当たり前に見えますが,当時は目から鱗だったのを覚えています. メモ化再帰と不動点に関する@kinabaさんの日記や,プログラミングコンテスト的には@chokudaiさんの記事が参考になります. 今更ですが,ちょっと例で説明します.フィボナッチ数を計算する関数fib(x)は再帰式で,fib(x) = fib(x - 1) + fib(x

  • Algorithms with Python

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

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

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

  • トップクラスだけが知る「このアルゴリズムがすごい」――「探索」基礎最速マスター

    トップクラスだけが知る「このアルゴリズムがすごい」――「探索」基礎最速マスター:最強最速アルゴリズマー養成講座(1/4 ページ) プログラミングにおける重要な概念である「探索」を最速でマスターするために、今回は少し応用となる探索手法などを紹介しながら、その実践力を育成します。問題をグラフとして表現し、効率よく探索する方法をぜひ日常に生かしてみましょう。 まだまだ活用可能な探索 前回の「知れば天国、知らねば地獄――『探索』虎の巻」で、「探索」という概念の基礎について紹介しました。すでに探索についてよく理解している方には物足りなかったかと思いますが、「問題をグラフとしてうまく表現し、そのグラフを効率よく探索する」というアルゴリズマー的な思考法がまだ身についていなかった方には、得るものもあったのではないでしょうか。 前回は、「幅優先探索」と「深さ優先探索」という、比較的単純なものを紹介しましたが

    トップクラスだけが知る「このアルゴリズムがすごい」――「探索」基礎最速マスター
  • 粒子解析(画像解析)

    詳細機能(目次)  PopImaging Top  画像解析の例  評価版ダウンロード  製品版の購入  お問い合わせ 前のページ  次のページ 4.粒子解析(パターン領域解析) 2値画像における粒子解析を行い、粒子形状の特徴量を計算します。個々の粒子にはラベル付け処理により番号が割り当てられ、その番号で粒子を識別します。解析できる粒子の数は約6万個です。画像計測機能を利用して1ピクセル当たりの実測値を設定すると、粒子形状の特徴量を実測値で表示することもできます(但し、試用期間中は実測値表示機能は御利用になれません)。原画像表示機能を利用すると、パターン領域と原画像を重ね合わせて表示することにより、パターン領域が確認できます。 また、粒子解析の結果はCSV形式のファイルに保存することができますので、解析結果をExel等の表計算プログラムで読み取り自由に処理することができます(但し、試用期間