タグ

関連タグで絞り込む (535)

タグの絞り込みを解除

algorithmに関するmanabouのブックマーク (720)

  • 世界で闘うプログラミング力を鍛える本 - カメヲラボ

    前著『世界で闘うプログラミング力を鍛える150問』から4年、米国ベストセラーの"Cracking the Coding Interview"の新版(第6版)の邦訳『世界で闘うプログラミング力を鍛える 〜コーディング面接189問とその解法〜』が完成しました!2月27日発売予定です!! 世界で闘うプログラミング力を鍛える ~コーディング面接189問とその解法~ 作者: Gayle Laakmann McDowell,岡田佑一,小林啓倫出版社/メーカー: マイナビ出版発売日: 2017/02/27メディア: 単行(ソフトカバー)この商品を含むブログ (7件) を見る 発売記念プレゼント問題! CodeIQから発売記念プレゼント問題を出題しています!(3月7日AM10:00まで) 不正解でも挑戦していただければ抽選対象になりますので、プログラミングに自信のない方も是非チャレンジしてみてくださ

    世界で闘うプログラミング力を鍛える本 - カメヲラボ
  • FPGAでフィボナッチを計算してみる - Qiita

    フィボナッチをFPGAで書いてみた http://qiita.com/kazunori279/items/70030eaa08fe632b6b49 こちら方の記事をみて、高位合成ではなく、ガチのRTLでフィボナッチ数を計算したらどれぐらいの速さでできるのかやってみた。 #ソースコード とりあえずこんな感じ? n_inに0~127をセットしてstartを'1'にすると計算を開始して、 計算が終わるとend_flgが’1’になってresultに計算結果が出力される。 LIBRARY ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity fib is port( clk : in std_logic; rst : in std_logic;

    FPGAでフィボナッチを計算してみる - Qiita
  • アルゴリズム取引のシステムを開発・運用してみて分かったこと

    最適輸送問題(Wasserstein 距離)を解く方法についてのさまざまなアプローチ・アルゴリズムを紹介します。 線形計画を使った定式化の基礎からはじめて、以下の五つのアルゴリズムを紹介します。 1. ネットワークシンプレックス法 2. ハンガリアン法 3. Sinkhorn アルゴリズム 4. ニューラルネットワークによる推定 5. スライス法 このスライドは第三回 0x-seminar https://sites.google.com/view/uda-0x-seminar/home/0x03 で使用したものです。自己完結するよう心がけたのでセミナーに参加していない人にも役立つスライドになっています。 『最適輸送の理論とアルゴリズム』好評発売中! https://www.amazon.co.jp/dp/4065305144 Speakerdeck にもアップロードしました: https

    アルゴリズム取引のシステムを開発・運用してみて分かったこと
  • Intro to Machine Learning at Udacityを修了した. - SE Can't Code

    Udacityの機械学習コースの「Intro to Machine Learning」を修了した。内容自体は割と簡単で、機械学習を勉強すると避けては通れない数式は一切出てこなくて、機械学習モデルの概念を実際にScikit-Learnのライブラリを使ってコード書きながら学んでいく形式だった。機械学習とはなんぞや、というプログラマにとっては良い講義だと思う。ただ、数式出てこない時点で各モデルを深く学ぼうというスタイルから外れるので、こいつで機械学習で何が出来るのか、であったり、機械学習のプロセスをイメージ出来るようになったあとで、細かいところを他のコースやコンテンツで学んでいくやり方になると思う。なので、個人的には若干物足りない講義ではあったが、断片的に学習していた機械学習の知識を整理することが出来たので良かった。 www.udacity.com しかし最後の方の講師のムービーで、「シリコンバ

    Intro to Machine Learning at Udacityを修了した. - SE Can't Code
  • すばらしいビット | POSTD

    unsigned int v; //only works if v is 32 bit v--; v |= v >> 1; v |= v >> 2; v |= v >> 4; v |= v >> 8; v |= v >> 16; v++;

    すばらしいビット | POSTD
  • Union Findアルゴリズムの様々な実装とパフォーマンス計測 - $shibayu36->blog;

    CourseraにAlgorithms Part1という授業があり、これが非常に評判が良いので、会社で勉強会をしている。Week1にUnion Findというアルゴリズムが出てきて、その実装パターンがいくつかあった。それぞれ計算量が違うらしいのだけど、速度がどのように変化するか試したかったので、実装してパフォーマンス計測をしてみた。それぞれの実装の詳しい説明が知りたかったら、https://www.coursera.org/learn/algorithms-part1 を見ると良い。 Union Findとは何か 二つのノードを繋いでいき(Union)、あるノードとあるノードがつながっているか(Find or Connected)を判定するアルゴリズム。 例えば、union(1,6)、union(5,6)、union(2,7)、union(3,8)、union(4,9)、union(8,9

    Union Findアルゴリズムの様々な実装とパフォーマンス計測 - $shibayu36->blog;
  • テーブル参照を用いた三角関数値出力アルゴリズム - Qiita

    だいぶ前にFPGAで作ったアルゴリズムをメモとして書いておきます。 概要 入力角度をテーブル参照を使って求めています。 テーブル参照というのは、メモリ内にsin値、cos値をあらかじめテーブルとして用意しておいて、角度が入力されたときに、テーブルからsin値、cos値を返す方法です。 下記のようにメリット・デメリットがあります。 メリット ・演算がないため処理が高速 ・簡単に作れる デメリット ・精度を高めるほどメモリをう テーブルを分割しよう 上のデメリットはテーブルを分割することで緩和できます。 テーブルを分割すると、参照した値を結合するための演算が増える代わりに、必要なデータ数を大幅に削ることができます。 データ量=2^(入力のビット幅)×出力のビット幅 入力、出力を2Byteとすると、テーブルのサイズは128kByteになります。大きいですね。 分割した場合のデータサイズは下記の

    テーブル参照を用いた三角関数値出力アルゴリズム - Qiita
  • コンセンサスアルゴリズムの比較メモ · JoeMPhilips

    元々Bitcoinで使われたいたProof of Work(PoW)は色々と問題があった。[^1] 専用のハードウェアが有利すぎるためマイナーの集中を招く アルトチェーンが普及すると、それらのマイニングパワーを一つのチェーンに一時的に集めることで容易に51%攻撃が行えるようになる。 手数料はマイニングノードが持っていくため、P2Pノードを立ち上げるモチベーションがない この記事を書いた当初はこれらは大きな問題だと考えていたが、現在の意見は少し違う。 1は「集中化」の意味が3つあってややこしいのだが、a) 物理的な集中、は大きな問題ではない。b) マイニングする「主体」の集中は不可知なので議論の対象にならない。 3) 固定費用の増額は「マイニングが自由市場から遠ざかる」という意味で長い目で見れば問題である可能性が高い。 したがってBTCはコンソーシアムチェーンのような方式(PoSではない!)

    コンセンサスアルゴリズムの比較メモ · JoeMPhilips
  • 『暗号技術入門』や『数学ガール』をどう書いたか、手書きメモを公開します(本を書く心がけ)|結城浩 / Hiroshi Yuki

    ※ほぼ半分を無料公開しているノートです(結城メルマガVol.032より) 今回の「を書く心がけ」は「手書きノートのスナップショット」をお送りします。 このコーナーは、結城が書籍を書くときにノートに手書きしていたメモをお見せするというものです。メモが何を意味しているか、書籍にはどう反映されたのかを合わせて解説します。執筆の舞台裏をちょっぴりお見せしているといえるかもしれません。 ●「自然な流れ」を作り出すまずは、『暗号技術入門』という書籍を書いていたときのメモです。執筆のためのメモはたくさん書いているのですが、そのうちのとある一ページです。 ◆『暗号技術入門――秘密の国のアリス』(手書きメモ) 上のメモは、日付によると2002年9月24日に書いたものですね。いまからざっと10年くらい前になります。このメモは、「どんな内容のにしていこうかな」と考えているときに書いていたものです。 この時点

    『暗号技術入門』や『数学ガール』をどう書いたか、手書きメモを公開します(本を書く心がけ)|結城浩 / Hiroshi Yuki
  • カジュアルトーク Vol.20 NLP×CNNの実現性は? 〜自然言語処理の最先端はココまで来ている!〜 | AI専門ニュースメディア AINOW

    最終更新日: 2017年7月3日 こんばんは!AINOW編集長のかめきちです。 先週開催された、全脳アーキテクチャ若手の会主催によるカジュアルトーク Vol20の模様をお届けしたいと思います。 今回のテーマは「自然言語処理」。 日AI界における永遠のテーマでしょうか… 難易度の高いこの分野の最新研究を聞くことが出来ましたので、まとめていきます。 ・イベントの詳細はコチラ https://wbawakate.connpass.com/event/48610/presentation/

    カジュアルトーク Vol.20 NLP×CNNの実現性は? 〜自然言語処理の最先端はココまで来ている!〜 | AI専門ニュースメディア AINOW
  • Unicode Collation Algorithm - tmtms のメモ

    文字コードは面白いね! わーい! たのしー! 🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾🐾 MySQL で utf8mb4_unicode_ci コレーションを使用した時に「🍣」=「🍺」や「ハ」=「パ」になる問題があります。 この utf8mb4_unicode_ci ってなんぞや?と思ってマニュアルを見てみると、 MySQL は、http://www.unicode.org/reports/tr10/ で説明している Unicode 照合順序アルゴリズム (UCA) に従って xxx_unicode_ci 照合順序を実装します。照合順序は、バージョン 4.0.0 UCA 重みキー (http://www.unicode.org/Public/UCA/4.0.0/

    Unicode Collation Algorithm - tmtms のメモ
  • 『プロセッサの性能を引き出すのは大変だよというお話(行列積チューニング)』へのコメント続き - Qiita

    100401600: c4 c2 7d 19 77 c8 vbroadcastsd -0x38(%r15),%ymm6 100401606: c4 c1 4d 59 ba c0 24 vmulpd -0xdb40(%r10),%ymm6,%ymm7 10040160d: ff ff 10040160f: c5 d5 58 ef vaddpd %ymm7,%ymm5,%ymm5 100401613: c4 c2 7d 19 7f d0 vbroadcastsd -0x30(%r15),%ymm7 100401619: c4 41 45 59 82 00 44 vmulpd -0xbc00(%r10),%ymm7,%ymm8 100401620: ff ff 100401622: c4 c1 55 58 e8 vaddpd %ymm8,%ymm5,%ymm5 100401627: c4 42

    『プロセッサの性能を引き出すのは大変だよというお話(行列積チューニング)』へのコメント続き - Qiita
  • いまどきのmatmul

    概要 経緯 : http://d.hatena.ne.jp/w_o/20141021#1413893835 Host 1700msec、Epiphany 170msecとかになって、さすが、16coreだから10倍速いみたいな話になったが、 経験的に、こういうのってナイーブCと比較してるから、普通にマルチスレッド & NEON使えば、10倍差ぐらいすぐはやくなんじゃね? と、思ってNEON + スレッド化matmulを探したのだけど、見当たらなくて、探すより書いたほうがはやそうだったので書いた。 というのがあって、今更matmulを実装したのでその話について書く。 1ノード Haswell 正方行列 単精度 サイズは128の倍数だとか制限付けてもよい という条件でどうやって効率上げていくかについて説明する。 今日の結果は N = 2000〜3000 で効率 80% ぐらい。 まあ多分もっと

    いまどきのmatmul
  • レコメンドつれづれ ~1-1. 協調フィルタリングのコンセプトを知る~ - Platinum Data Blog by BrainPad ブレインパッド

    記事は、当社オウンドメディア「Doors」に移転しました。 約5秒後に自動的にリダイレクトします。 こんにちは、アナリティクスサービス部の小田です。 寒くなるとクシャミをするたびにギックリ腰の予感がします。 このところ業務でレコメンデーションに触れることが多いので、ブログではレコメンドについて、実際にRやPythonでコードを書きながら、ゆるゆると考察していきたいと思っています。 今後複数回にわたってレコメンド手法の概念や実装方法を中心に、基礎的な内容から最近流行りの技術まで幅広く触れる予定です。また手法以外にも、評価方法やコールドスタート問題に代表されるレコメンデーションの課題など、様々なトピックに触れたいと思っています。不定期に書いていく予定ですが、その辺はゆるふわということでご了承ください。 さて、今回はレコメンドアルゴリズムの基とも言える「協調フィルタリング」について、機械

    レコメンドつれづれ ~1-1. 協調フィルタリングのコンセプトを知る~ - Platinum Data Blog by BrainPad ブレインパッド
  • 動的計画法の基礎と応用 ~色々使える大局的最適化法

    動的計画法(DP)は,バイオインフォマティクスのペアワイズアライメントの基技術として,生物学においても広く知られていることと思います.古典的ながら,大局的最適解が保証される点をはじめ,実装が簡単、数値的に安定、学習も不要、多様な応用・拡張が可能といった利点を持っています.この性質から,画像情報学分野においても,アライメント(マッチング)だけでなく,トラッキングやセグメンテーションなど様々に利用されています.講演ではDPの原理や用途,使いこなすためのノウハウ,そしていくつかの発展形についてご紹介いたします.

    動的計画法の基礎と応用 ~色々使える大局的最適化法
  • 2016年のOSS圧縮ツール選択カタログ - Qiita

    まだgzipで消耗し(略) 2016年、人類が待ち望んでいた、gzipを圧倒するOSS圧縮ツールzstd(Zstandard)がリリースされたにも関わらず、なんかあんまり話題になっていなくて寂しいので、ちょろいかんじの賑やかし比較記事を書きました。圧縮ツールのカタログ的に眺めていただけるかと思います。 はじめに (この記事で言う)圧縮ツールとは何か 圧縮ツールという呼び名は正確ではない(はず)です。平たく言えば、gzipやbzip2、xz、lz4などですが、人によっては、tarの裏側としてしか使ってなくて、聞いたこともないかもしれませんね。そういうときはまずgzipのmanpageとか読んでください。 しかし、そういうツールを何と呼べばいいのかわからないので、ここでは圧縮ツールと呼んでいます。 ややこしいですが、アーカイバではありません。アーカイブとは実態が一つのファイルになっているフォル

    2016年のOSS圧縮ツール選択カタログ - Qiita
  • AI Platform | DataRobot

    Why DataRobot Why DataRobot Discover the benefits and impact of DataRobot. Discover AI Leaders AI Practitioners Validation Awards and Recognition Customers Product Product Our AI applications and platform integrate into core business processes so teams can develop, deliver, and govern AI at scale. Enterprise AI Suite Agentic AI Apps AI Platform Enterprise AI Suite Agentic AI Generative AI Predicti

    AI Platform | DataRobot
  • そうだ車輪と名づけよう

    n次元の距離と類似度を計算する 類似度と距離 – CatTail Wikiのサイトを見ながら、簡単そうなのをPHPで書いてみた。探せば普通にライブラリがありそうだが、はじめに手を動かすくらいはする。他にも色々載ってるのだけど、簡単そうなものだけピックアップ。 ミンコフスキー距離 ユークリッド距離が,各次元の差の平方和の平方根であったが,それをある種の一般化として,a乗和のb乗根としたのが,ミンコフスキー距離である.なお,a=bとして扱う定義もある.aが大きいほど,次元軸にとらわれない移動(斜め方向のショートカット)を重視する距離である. a=b=1がマンハッタン距離に,a=b=2がユークリッド距離に,a=b=∞がチェビシェフ距離に一致する. <?php $x = array(2, 3, 1); $y = array(4, 6, 1); print getMinkowskiDistance(

    そうだ車輪と名づけよう
  • 初心者でもOK!レベル別・アルゴリズムをすぐに学べる書籍とサイト12選 - paiza times

    Photo by Tim Samoff 秋山です。 皆さんはアルゴリズムについてどれくらい知っていますか?というか勉強したことありますか? 私はもともと情報系だったので学校でも習いましたが、paizaのプログラミングスキルチェック問題を作るときなどはいまだにいろいろ調べることもあります。 アルゴリズムについて勉強したことがない人の中には「ずっと気になってはいるものの、各プログラミング言語の書き方やフレームワークの使い方などを学ぶことに手一杯で、アルゴリズムはつい後回しになっている…」という方も多いと思います。 ただ、アルゴリズムを知らないままプログラミングを続けていると、少し複雑な処理を考えなければならなくなったときなどに、力技のやり方しか考えつかなくて「すごい人だったらもっとスマートな書き方ができるんだろうな……」と悶々としてしまうことがあるはずです。 今回はそんな方に向けて、アルゴリズ

    初心者でもOK!レベル別・アルゴリズムをすぐに学べる書籍とサイト12選 - paiza times
  • Crochemore-Perrin アルゴリズム - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? どうも、文字列大好き @hdbn です。「文字列アルゴリズム Advent Calendar 2016」 には間に合いませんでしたが、1月10日は「糸 (string) の日」ということで文字列 (string) アルゴリズムの記事を書くことにしました。この記事では文字列照合アルゴリズムの中で最も美しいアルゴリズムの1つである Crochemore-Perrin のアルゴリズムを紹介します。 アルゴリズムの正しさの証明はほぼ元の論文をなぞっていますが、説明を簡単にするために計算量に影響を与えない範囲でオリジナルのアルゴリズムから少し変更

    Crochemore-Perrin アルゴリズム - Qiita