タグ

algorithmに関するendo_5501のブックマーク (54)

  • AlphaTensor :強化学習を利用した高速な行列積演算アルゴリズムの発見 - Qiita

    1. はじめに 記事では、2022年10月にNatureに掲載されたAlphaTensor[1]および関連分野を紹介します。AlphaTensorは「AIが行列積演算の新しいアルゴリズムを発見した」といううたい文句のもとSNSを中心に大きな話題となりました。具体的には、[1]でAIが”発見”したアルゴリズムのひとつでは2進数上の4×4の行列の積を47回の掛け算で計算することができ、これは[1]以前の最速49回(Strassenのアルゴリズム)を上回ったことになります。なお、Strassenのアルゴリズムの49回はその発見から[1]まで約50年間破られていませんでした。 「AIが新しいアルゴリズムを発見した」という広告ですが、実際は 「あるテンソルのよい分解方法を強化学習を利用して探索した」 といった方が正しいです。この 「あるテンソル」はその分解方法と「行列積のアルゴリズム」が自然と対応

    AlphaTensor :強化学習を利用した高速な行列積演算アルゴリズムの発見 - Qiita
  • テキストエディタで使われがちなデータ構造 Piece Table の概要と実装 - A Memorandum

    テキストエディタのデータ構造 Gap method Piece Table method Piece Table の構造 Piece Table の実装 Piece Table のメソッド まとめ テキストエディタのデータ構造 テキストエディタで採用されているデータ構造にはいろいろあります。 こちらの論文 Data Structures for Text Sequences では各種データ構造について比較検討されています。 多くは、Gap method や Piece table method をベースにしたものが多いのではないでしょうか(図で言う最下部の中心の丸印に当たります)。最近では Rope なども有名ですね。 Gap method Gap method では、現在のカーソル位置で、テキストバッファを2つに分割し Gap を間に挟み、カーソル位置に対する編集(テキスト追加/削除)を

    テキストエディタで使われがちなデータ構造 Piece Table の概要と実装 - A Memorandum
  • 十分大きな乱数をユニークな識別子として使うのがなぜ安全なのか|Rui Ueyama

    いろいろなソフトウェアで、大きいランダムな値をユニークな値とみなすということが行われている。例えばユニークな識別子としてよく使われるUUIDはただの122ビットの乱数だ。gitもSHA-1ハッシュ値が160ビットの乱数のように扱えることを期待して、それをユニークな識別子として使っていた。実際にはランダムな2つの値が同じになる確率はゼロではないのに、なぜこれが安全なやり方だと言えるのだろうか? それについてちょっと説明してみよう。 あるシステムが、乱数で生成された識別子の衝突のなさに依存しているとして、仮に衝突が発生した場合、相当悪い結果、例えば復旧不可能な形でデータベースが壊れてしまうとしよう。これはどれくらい危険なのだろうか? 数学の問題で、学校のクラスの中で同じ誕生日の人が1組以上いる可能性は思ったより高いという話を聞いたことがあると思う。あるランダムに生成された値が衝突する確率という

    十分大きな乱数をユニークな識別子として使うのがなぜ安全なのか|Rui Ueyama
  • TechCrunch

    Over the weekend, Paddy Cosgrave and Web Summit made the bombshell announcement that Cosgrave would step down from his post as CEO of the technology conference business — a move made to try to c

    TechCrunch
  • Deep Forest :Deep Neural Networkの代替へ向けて - Qiita

    技術動向についていくことは多くの労力を必要とする。次々に新しい論文が発表されるためだ。 一方で最新論文さえも長年の地道な積み重ねの上にあることを、その引用文献から気付かされる。 ディープラーニングブームの流れも変わるのだろうか? 勉強のため、2017年2月28日付けでarXivに投稿されたZhi-Hua Zhou, Ji Feng「Deep Forest: Towards An Alternative to Deep Neural Networks」を翻訳した。 訳には誤りがないよう注意を払いましたが、完全であることを保証できないため、実装等の際には元論文を参照願います。 原文: Deep Forest: Towards An Alternative to Deep Neural Networks https://arxiv.org/abs/1702.08835 https://arxiv

    Deep Forest :Deep Neural Networkの代替へ向けて - Qiita
  • Chromeのなかのコンピュータ・サイエンス

    Chromeのなかの コンピュータ・サイエンス * haraken@chromium.org 2015 Sep *

    Chromeのなかのコンピュータ・サイエンス
  • ディープラーニングを使ったイメージの切り抜き | カメリオ開発者ブログ

    こんにちは、シバタアキラです。この度PyDataの家であるアメリカのコミュニティーで半年に一度開催されているPyDataカンファレンスに出席するため、NYCに行って来ました。11/22-11/23の二日間の日程で行われ、延べ250人ほどが参加したイベントです。その時の模様は、先日のPyData Tokyo第二回ミートアップでもご説明させていただき、また後日記事化されると思いますので、そちらをぜひご覧いただければと思います。 今回はそのPyData NYCカンファレンスで私が発表してきたミニプロジェクトについてお話します。最近各所で話題に上がるディープラーニングですが、これを使った応用を「カメリオ」のサービス向上のために使えないか、というのがそもそものプロジェクトの着想でした。今回PyData Tokyoオーガナイザーとして、またディープラーニングで色々と面白い実験をしている田中さん(@a

    ディープラーニングを使ったイメージの切り抜き | カメリオ開発者ブログ
  • なんでGCCはa*a*a*a*a*a を (a*a*a)*(a*a*a) に最適化できないの?っと

    c - Why doesn't GCC optimize a*a*a*a*a*a to (a*a*a)*(a*a*a)? - Stack Overflow 俺は科学技術計算の数値計算の最適化をしてたんだけどさ。GCCはpow(a, 2)をa*aにしてくれるんだな。うん。で、pow(a, 6)は最適化されずに、ライブラリ関数であるpowを呼んじゃうんだ。パフォーマンス的に最悪。(Intel C++ Compilerはpow(a,6)のライブラリ関数呼び出しを消し去ってくれるんだけどな) どうもよくわからんのが、pow(a, 6)をa*a*a*a*a*aで置き換えて、GCC 4.5.1をオプション"-O3 -lm -funroll-loops -msse4"で使ったら、mulsd命令を5個使う。 movapd %xmm14, %xmm13 mulsd %xmm14, %xmm13 mulsd

    endo_5501
    endo_5501 2014/03/28
    「浮動小数点数は結合法則を満たさないからだ。浮動小数点乗算のオペランドの囲み方により、結果の数値精度に影響を及ぼす」
  • 自然言語処理まわりのDeep Learningを自分なりにまとめてみた — KiyuHub

    自然言語処理まわりのDeep Learningを自分なりにまとめてみた “自然言語処理のためのDeep Learning”というスライドを公開しました. 自然言語処理のためのDeep Learning from Yuta Kikuchi カジュアルな感じで自然言語処理まわりのDeep Learningの話題をまとめた感じになっています. きっかけは,勉強会をしていることを知ったOBのbeatinaniwaさんにお願いされたことで, 株式会社Gunosyの勉強会の場で,発表の機会を頂きました. それが,9/11で,その後9/26に研究室内で同じ内容で発表しました. どちらも思った以上に好評を頂け,公開してはと進めて頂いたので,公開することにしました. もちろん間違いが含まれている可能性も多分にあるので.気づいた方はご指摘頂けると幸いです. 内容ざっくり 前半は,ニューラルネットワークを図を使

  • 計量学習を用いた画像検索エンジンとアニメ顔類似検索v3について - デー

    まだgithubにはpushしていないのですが、さいきょうの組み込み型画像検索エンジンotamaに計量学習を用いて与えられたデータにあった画像間の距離関数を学習してそれを使って検索するというドライバを入れたので、先行的なデモとしてアニメ顔類似検索v3を作ってみました。 計量学習は、ベクトル間の距離の計り方を機械学習で決めるみたいな分野です。 アニメ顔類似検索v3 AnimeFace Search v3 - Otama LMCA_VLAD_HSV Driver randomボタンを押すと顔画像がランダムに出るのでどれかクリックするとそれをクエリに検索します。color weightは色の重みを調節するパラメーターで、1にすると色だけで検索します。0にすると形状やテクスチャだけで検索します。結果画像の上の数字は類似度的なもので、その横のgglは元画像をGoogle Search by Imag

    endo_5501
    endo_5501 2013/01/09
    すげえ!
  • ライフゲームの世界9 最終回【複雑系】

    自己複製編※訂正 constractor → constructorライフゲーム特集は今回をもって終了いたします紹介出来た魅力はライフゲームのほんの一部です是非みなさんライフゲームの世界へ冒険してみてはいかがでしょうか応援して下さった方,ありがとうございます.興味のある方は複雑系コミュニティ→co1665510前回→sm19509968 その1→sm19347846 まとめ→mylist/34610498追記正確に言うとgeminiは自己複製パターンではなく,"宇宙船"でした.訂正いたします.当の自己複製パターンは2013年12月に発見されています.

    ライフゲームの世界9 最終回【複雑系】
    endo_5501
    endo_5501 2013/01/08
    自己複製パターンって発表されていたんだ…
  • ライフゲームの世界8【複雑系】 - ニコニコ動画

    OTCA metapixelライフゲームでライフゲームを作る興味のある方は複雑系コミュニティ→co1665510前回→sm19470535 次回→sm19566296その1→sm19347846 まとめ→mylist/34610498

    ライフゲームの世界8【複雑系】 - ニコニコ動画
    endo_5501
    endo_5501 2013/01/08
    ライフゲームでライフゲーム!すげえ!
  • 自分だけのアルゴリズムで勝負。自動FX取引ソフトウェア·jiji MOONGIFT

    jijiはRuby製の自動FX取引ソフトウェアです。 FXで収益を出すというのはとても大変なことで、よく大損した人たちの阿鼻叫喚を聞きます。とは言えFXをはじめたいと思う人は多く、関連書籍もたくさんあります。自分なりの収益を出す方法がある、そう考える人はjijiを使ってみると面白いかも知れません。 グラフです。細かく描かれています。画像は全て公式サイトより。 統計情報です。 エージェント作成です。ここが肝になります。 開始を押すと実際のルールが運用開始されます。 ログです。 jijiは自分で記述した取引ルールに従って完全自動でFX取引を行います。もちろん必ず利益が出るという訳ではないのでご注意ください。スタンドアローンな状態で動き続けるので一日中相場を追いかけていられないサラリーマンなどに向いているかも知れません。 jijiが対応しているのはクリック証券とSBI証券になります。 jijiは

    自分だけのアルゴリズムで勝負。自動FX取引ソフトウェア·jiji MOONGIFT
  • Algorithm - 連想配列の実装としてのハッシュはオワコン? : 404 Blog Not Found

    2012年01月17日11:45 カテゴリアルゴリズム百選Tips Algorithm - 連想配列の実装としてのハッシュはオワコン? 珠玉のプログラミング Jon Bentley / 小林健一郎訳 つまり「終わったコンテナ」。 以前からうすぼんやりと考えて来た危惧が、すこしはっきりと見えてきた。 徳丸浩の日記: Webアプリケーションに対する広範なDoS攻撃手法(hashdos)の影響と対策 もうそろそろハッシュ(テーブル)以外の手段の連想配列の実装手段を格的に模索するべきではないか、と。 そのデータ構造は、君の魂を差し出すに足るものかい? 連想配列(Associative array)がコレクション(Collection)、すなわち数多のデータ構造をまとめるデータ構造としての覇者となったのはもはや疑いようがない事実でしょう「配列で実装されるデータ構造ではなくて、配列を実装するデータ構

    Algorithm - 連想配列の実装としてのハッシュはオワコン? : 404 Blog Not Found
  • TechCrunch

    It’s exciting times for growth-stage investment in Africa as Norrsken22, a Pan-African venture capital firm, achieves the final close of its debut fund, raising a total of $205 million, surpassing i

    TechCrunch
    endo_5501
    endo_5501 2011/12/08
    「ターゲットの画像(A)を大量の画像と比較して、最も著しい違いを記録する(Ra)。もう一つのターゲット画像(B)に対しても同じ記録を作成する(Rb)。RaとRbがほぼ同じなら画像AとBは類似性が高い」
  • 樹木や都市を自在に創造するチカラ - A Successful Failure

    2011年08月21日 樹木や都市を自在に創造するチカラ Tweet 図1:樹木生成文法により自然でリアルな樹木が生育しているが、 上部から見ると制約条件として与えたSIGGRAPHのスペルが見える 今年もSIGGRAPHが開催された。そこで今年もSIGGRAPH発表論文の中から幾つかピックアップしてblogで紹介したい*1。エントリで紹介するのは、スタンフォード大学の研究グループによるMetropolis procedural modelingだ*2。 高品質の3Dモデルを構築する作業は、数多くの研究成果のおかげでかなり簡略化がなされてきたとは言え、まだまだ困難であり、熟練したクリエイターでも数百時間という長い時間を必要とする。より簡単に3Dモデルを構築することを目的として、手続き型モデリング手法が提案されてきたが、研究は現時点における一つの解を与えるものだ。感覚的にはPhotos

  • 行列分解ライブラリredsvdを公開しました - DO++

    大規模疎行列向けの行列分解ライブラリredsvdを公開しました. redsvd 大規模疎行列向けの特異値分解や主成分分析,固有値分解を行うライブラリredsvdを公開しました. 修正BSDライセンスで公開しており,コマンドラインから使える他,C++ライブラリが用意されています. 例えば,行と列数がそれぞれ10万,非零の要素が1000万からなる疎行列に対する上位20位までの特異値分解を約2秒で処理します. 特異値分解とか,使っている技術の詳細とか応用事例を以下に簡単に紹介しましたので,興味のある方は参考にしてください. 特異値分解とは まず行列を適当に復習します.行列Xの転置をX^tと表すことにします.またIを単位行列とし,Oを全ての成分が0である零行列とします.また,行列XX^t=IであるようなXを直交行列と呼びます.Xが直交行列の時,Xvはベクトルvを長さを変えずに回転させます.ここでは

    行列分解ライブラリredsvdを公開しました - DO++
  • http://blog.moonshine-project.com/ja/?p=533

  • 要素の挿入、削除、ランダムアクセスが全部高速なリストを作った - kaisehのブログ

    スキップリスト(Skip List)は1990年に発表された比較的新しいアルゴリズムで、要素の挿入や削除、検索を平衡木と同等のパフォーマンスで実行可能なリスト構造です。 Skip Listは連結リストの多層構成になっています。路線に例えると、最下層のリンクは各駅停車のように、全要素を結んでいます。一方、上層のリンクは急行や特急のように、途中の要素をスキップするようになっています。この路線を特急→急行→…→各駅と乗り継ぐことで、目的の要素に高速に到達できる仕組みです。もっと詳しい解説はこちらやこちらにあります。 で、ここからが題です。Skip Listの実装はいくつも出ているんですが、Sorted Listとしての実装ばかりで、要素を任意順序で格納できてランダムアクセス(indexを指定してのアクセス)可能なSkip Listが見つからなかったので、自分で作ってみました。 通常のSkip

    要素の挿入、削除、ランダムアクセスが全部高速なリストを作った - kaisehのブログ
  • 荒い写真の空白を埋める数学の魔法「compressed sensing」!(動画あり)

    荒い写真の空白を埋める数学の魔法「compressed sensing」!(動画あり)2010.03.08 23:005,419 satomi 「もっとズームしてくれ...そうそこだ...そいつの顔をもっとエンハンスしてくれないか...」と頼むと技師がカチャカチャやって容疑者Aの顔がクッキリ―というドラマでお馴染みのシーンが現実に! これを可能にしたのはスタンフォード大学エマニュエル・キャンデス(Emmanuel Candes)教授とUCLAテレンス・タオ(Terence Tao)教授が開発した「compressed sensing(CS)」という技法です。 映画のフェイクUIとは別物。このオバマの写真みたいに、低画素のざらざらなイメージ(左)も高画素のきれいなイメージ(右)に加工できるんですよ。 主に研究目的で開発されたもので、例えばMRIスキャンもデータを丸々じゃなく、少量だけスキャン

    荒い写真の空白を埋める数学の魔法「compressed sensing」!(動画あり)
    endo_5501
    endo_5501 2010/03/09
    これはすごい。映画やドラマとかでよく見る、ピンボケ写真をコンピュータでくっきりはっきりさせることが出来るようになるのか。今の所は、MRIなどで撮った写真を明瞭に見えるようにするために使われている模様