タグ

Algorithmとalgorithmに関するcrafのブックマーク (346)

  • http://igda.sakura.ne.jp/sblo_files/ai-igdajp/academic/YMiyake_TEU_2014_4_25.pdf

  • 視覚的にイメージしにくいアルゴリズムを徹底的にイラストで表現するとこうなる

    近年、IT企業の社員研修ではアルゴリズムを理解することが重視されるようになってきました。しかし、文字とフローチャートだけでは仕組みをイメージしづらいのも事実。『アルゴリズム図鑑』ではアルゴリズムをまず視覚的にイメージできるように、26種類のアルゴリズムをイラストで解説。3種類のアルゴリズムを紹介します。 『アルゴリズム図鑑』の元となったのは、Appleが2016年末に発表した「ベストApp10選」に選ばれたアプリ「アルゴリズム図鑑」です。 勉強しようと思っても、文字や少数の図解だけでは仕組み・概念を理解しづらいのがアルゴリズム。アプリではイラストで表現することでその課題を解決し、大変な好評を得ました。書は紙幅を活かして一覧での見やすさを高め、26種類のアルゴリズムを徹底的にイラストで表現しました。 今回は書から、データ構造の「リスト」、グラフを探索するアルゴリズムの「幅優先探索」、デー

    視覚的にイメージしにくいアルゴリズムを徹底的にイラストで表現するとこうなる
  • Amazonの推薦システムの20年

    IEEE Internet Computingの2017年5・6月号に "Two Decades of Recommender Systems at Amazon.com" という記事が掲載された。 2003年に同誌に掲載されたレポート "Amazon.com Recommendations: Item-to-Item Collaborative Filtering" が Test of Time、つまり『時代が証明したで賞』を受賞したことをうけての特別記事らしい 1。 「この商品を買った人はこんな商品も買っています」という推薦で有名なAmazonが1998年にその土台となるアルゴリズムの特許を出願してから20年、彼らが 推薦アルゴリズムをどのような視点で改良してきたのか 今、どのような未来を想像するのか その一端を知ることができる記事だった。 アイテムベース協調フィルタリング 20年前も

    Amazonの推薦システムの20年
  • アルゴリズム図鑑:iOS & Androidアプリ

    What are "Algorithms"? アルゴリズム”とは広義には「ある問題を解くための一定の手続き」を意味するもので、私達の生活のさまざまな場面を支える知恵の結晶とも言えます。 「ソート」や「リスト探索」などの基的なアルゴリズムはもちろん、「暗号化」「セキュリティ」などの身近なものも満載。スマートフォンとタブレットの両方に対応した「アルゴリズム図鑑」なら、いつでもどこでもアルゴリズムを学ぶことができます。 さあ、アルゴリズムの世界に旅立ちましょう!

    アルゴリズム図鑑:iOS & Androidアプリ
  • 楕円曲線暗号に 512 bit は存在しない | はったりエンジニアの備忘録

    新しい SSH 鍵を作るために ssh-keygen のマニュアルを読んでいたら、おもしろい記述を見つけました。鍵のビット長を指定する b オプションの説明です。 For ECDSA keys, the -b flag determines they key length by selecting from one of three elliptic curve sizes: 256, 384 or 521 bits. 「ECDSA キーの場合、b オプションは 3 つの楕円曲線サイズのいずれかを選択することでキーの長さを決定する」。ここまでは理解できるのですが、示された 3 つ目のビット長が 521 bit なんです。 「えっ、2^9 の 512 bit じゃなくて 521 bit なの?」エンジニアなら違和感を感じて、まずタイポを疑いますよね。自分もタイポだと思って Fedora で試

    楕円曲線暗号に 512 bit は存在しない | はったりエンジニアの備忘録
  • L'eclat des jours(2017-05-21)

    _ 汐留に行く と飯いに出かけたら、目当ての店が改装中でしまっていた。 では神保町でロシア料理でもくおうかと思ったら、駐車スペースが空いてない。 では汐留はどうか? とが提案する。中国飯店のカジュアル部門が入っていて、それなりに美味しい(中国飯店のクラシック部門にやたらと好きな店があるのが前提としてある)。 では行くか、と行ったらさっぱりどこに停めれば良いのかわからない。 結局、首都高の駐車場に入れたら、驚いた。4箇所ある出口がすべて右側(車道は下り側)にしかない。だが、汐留のタワー群は左側なのだ。 しょうがねぇなあと面倒だがそのうち一つから出たら、番地がない中華料理店があった、とがはしゃぐ。しかし、おれはそれは見損なった。 地上に出ると、異様にさびれていてびびる。はて、これが汐留なのか? と、中銀カプセルタワービルが目の前にある。網がかかっている。 おお、こんな間近で観られるとは

  • フェデレーション ラーニング:集中トレーニング データを使用しない協調機械学習

    .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

    フェデレーション ラーニング:集中トレーニング データを使用しない協調機械学習
  • Google の Tensor Processing Unit (TPU) で機械学習が 30 倍速くなるメカニズム | Google Cloud 公式ブログ

    * この投稿は米国時間 5 月 12 日に投稿されたもの(投稿はこちら)の抄訳です。 Posted by 佐藤一憲, Staff Developer Advocate, Google Cloud Cliff Young, Software Engineer, Google Brain David Patterson, Distinguished Engineer, Google Brain Google 検索、ストリートビュー、Google フォト、そしてGoogle 翻訳。これらのサービスに共通するのは、いずれもニューラルネットワーク(NN)の計算処理の高速化のために Google の第一世代の Tensor Processing Unit (TPU) が用いられている点です。 Google の第一世代 TPU は、昨年の Google I/O で初めて紹介され、今年 4 月にはその性能

    Google の Tensor Processing Unit (TPU) で機械学習が 30 倍速くなるメカニズム | Google Cloud 公式ブログ
  • Word2Vec:発明した本人も驚く単語ベクトルの驚異的な力

    Word2Vecとは Word2Vecで演算処理する Word2Vecとニューラルネットワーク Word2Vecの仕組み CBoW Skip-gram Word2Vecを応用することができる分野 レコメンド 機械翻訳 Q&A・チャットボット 感情分析 Word2Vecの弱点 Word2Vecの派生系や類似ツール GloVe WordNet Doc2Vec fastText まとめ 参考 世界中のWebサイトの数は2014年に10億件を超えたようだ。そして、Facebookのユーザー数だけでも16億人を超えている。 そして、そのいずれもコンテンツの中身の大部分はテキストから成り立っていることだろう。 ということは、莫大に増大し続けるネット上のデータのほとんどはどこかの国の言葉だってことだ。世界中の人が毎日テキストデータを生成し続けたことはこれまでの歴史上無かったんじゃないだろうか。 もしそん

    Word2Vec:発明した本人も驚く単語ベクトルの驚異的な力
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 分子に1を足し、分母に2を足すだけで予測が良くなる話 - CARTA TECH BLOG

    コインを投げを観測し、コインの表になる確率を予測するとき、みなさんはどのように予測するでしょうか。 (コイン投げに限らず、表か裏のように二値になるような予測であれば、例えば、広告のクリック率や、単語の出現率、ナンパの成功率でもなんでもいいです。) コインが表になる確率が0から1まで一様だ(まんべんなく出る)とすれば、n回投げてs回表を観測したら、平均であるs/nをその確率として予測するのではないでしょうか。 この方法をもっと複雑な言い方をすれば最尤推定(maximum likelihood; ML推定)とよびます。コインが表になる確率が一様という事前確率まで分かっている前提ならば、これは最大事後確率推定(maximum a posteriori estimation; MAP推定)ともいえます。なんか最強っぽいですよね。 他に方法があるのでしょうか。スムージングという方法もあります。スムー

    分子に1を足し、分母に2を足すだけで予測が良くなる話 - CARTA TECH BLOG
  • Guetzli/Butteraugliに関するあれこれ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 2017年3月にGoogleから発表された新しいJPEGエンコーダ「Guetzli」と、同エンコーダが用いる画品質評価アルゴリズム「Butteraugli」について思うところとか。 Announcing Guetzli: A New Open Source JPEG Encoder GitHub google/guetzli GitHub google/butteraugli 多くのニュースサイトで『Google、JPEGを35%小さくできるエンコーダー「Guetzli」をオープンソースで公開』のようにセンセーショナルに紹介され、またG

    Guetzli/Butteraugliに関するあれこれ - Qiita
  • 効率的にゲームを更新する | POSTD

    先日、 Things that can go wrong when downloading(ダウンロード時に上手くいかないものごと) についての記事を書きました。その記事に、ネットワークの問題から妥当でないコンテンツ、不完全なハードウェアに至るまで、ゲームを最初にインストールする際に発生することがある一連の原因をリストアップしました。 今回の記事では、ゲームの前バージョンが正常にインストールされているときに、そのゲームを新しいバージョンにアップグレードするのにどんな方法が使えるかについて考えます。 圧縮 あるユーザが利用できる帯域の量は、通常、一定です。ユーザのインターネットアクセスの論理的な最大速度は20mbps、100mbps、1gbps、または、国によってはそれよりずっと低いものです。 私の自宅にはまだ光ファイバが引かれていないので、アクセスは20mbpsという遅さですが、インターネ

    効率的にゲームを更新する | POSTD
  • "Purely Functional Data Structures" の邦訳『純粋関数型データ構造』が発売されます - まめめも

    純粋関数型データ構造posted with amazlet at 17.03.16Chris Okasaki KADOKAWA (2017-04-28) 売り上げランキング: 266 Amazon.co.jpで詳細を見る 伝説の名著、"Purely Functional Data Structures"(通常 PFDS)を翻訳しました。4 月末にアスキードワンゴから発売されます。 『20分でわかる Purely Functional Data Structures』などを通じて日に PFDS を布教した @kinaba との共訳です。ちなみに編集さんはアスキードワンゴ編集長の鈴木嘉平さん。 関数型プログラマ向けの紹介 「リストの結合が O(n) で遅いな」とか「まともなキューはどうやって作るの」とかいった問題に一度は直面したことがありますよね。純粋関数型プログラミングではどうしても無理、

    "Purely Functional Data Structures" の邦訳『純粋関数型データ構造』が発売されます - まめめも
  • Amazon.co.jp: 純粋関数型データ構造: Chris Okasaki (著), 稲葉一浩 (翻訳), 遠藤侑介 (翻訳): 本

    Amazon.co.jp: 純粋関数型データ構造: Chris Okasaki (著), 稲葉一浩 (翻訳), 遠藤侑介 (翻訳): 本
  • 私たちはいかにして環状線で”悪さをする列車”を捕まえたか | プログラミング | POSTD

    文:Daniel Sim 分析:Lee Shangqian、Daniel Sim、Clarence Ng ここ数ヶ月、シンガポールのMRT環状線では列車が何度も止まるものの、その原因が分からないため、通勤客の大きな混乱や心配の種となっていました。 私も多くの同僚と同じように環状線を使ってワンノースのオフィスに通っています。そのため、11月5日に列車が止まる原因を調査する依頼がチームに来た時は、ためらうことなく業務に携わることを志願しました。 鉄道運営会社SMRTと陸上交通庁(LTA)による事前調査から、いくつかの電車の信号を消失させる信号の干渉があり、それがインシデントを引き起こすことが既に分かっていました。信号が消失すると列車の安全機能である緊急ブレーキが作動するため、不規則に電車が止まる原因となります。 しかし8月に初めて発生した今回のインシデントは、不規則に起こっているように見えるた

    私たちはいかにして環状線で”悪さをする列車”を捕まえたか | プログラミング | POSTD
  • カルマンフィルタってなに? - Qiita

    はじめに この記事について そもそもカルマンフィルタってなに?なんのためにあるの? 何を受け取って,何を出力しているの? どういう原理で動いているの? 最適カルマンゲインってなに? というところを解説していきます. わかりやすさの向上のため,わかりにくいところや気づいたことがあれば気軽にコメントしてください. 書かれていないこと この記事ではカルマンフィルタの考え方を知っていただきたいので,最適カルマンゲインの導出方法やその先のことは書かれていません. \newcommand{\Xtrue}{\mathbf{x}^{true}} \newcommand{\Xest}{\mathbf{x}^{est}} \newcommand{\Xodo}{\mathbf{x}^{odo}} \newcommand{\Xobs}{\mathbf{x}^{obs}} \newcommand{\xtrue}{x

    カルマンフィルタってなに? - Qiita
  • マリオメーカーはチューリング完全だった【万能計算機】

    マリオメーカーがチューリング完全であることの、数学的な証明に成功しました。ルール110セルオートマトンと、cyclic tag system(循環タグシステム)をコース内で再現しました。youtube 版(英語字幕付):https://www.youtube.com/watch?v=hd0EtsTUbmg マリオメーカー計算機マイリス:mylist/53578200コースID:[ルール110] 63FA-0000-02C4-B1CA [cyclic tag system] FA62-0000-02C9-A346マリオメーカーブックマーク:supermariomakerbookmark.nintendo.net/profile/yos1up連絡先:@yos1up (twitter)

    マリオメーカーはチューリング完全だった【万能計算機】
  • バージョンの充足可能性問題 | POSTD

    (注:2017/02/06、いただいたフィードバックを元に翻訳を修正いたしました。修正内容については、 こちら を参照ください。) Dependency HellはNP完全ですが、この状況から脱却できるかもしれません。 パッケージにおけるバージョン選択の問題とは、完全である(全ての依存関係を満たしている)かつ互換性のある(互換性のない2つのパッケージが選択されていない)トップレベルパッケージPをビルドするために使われる依存関係の集合を見つけることです。ただし、菱形依存問題があるので、このようなセットは存在しない可能性があります。菱形依存問題とは、AはBとCが必要、BはDのバージョン2ではなくバージョン1が必要、CはDのバージョン1ではなくバージョン2が必要といったような問題のことです。この場合、Dの両方のバージョンを選択することはできないため、Aをビルドすることができないわけです。 パッケ

    バージョンの充足可能性問題 | POSTD
  • Googleが考えるストリームデータ処理とは? - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事は? この記事は、ドワンゴ Advent Calendar 2016の14日目の記事です。 この記事で書いている内容は? Googleが出しているストリームデータ処理の資料を要約したものです。 つまり、「Googleが考えるストリームデータ処理とは?」ということになるかと。 趣味でストリームデータ処理について調べていたのでまとめてみます。 出来るだけよく出てくる固有の言葉を最初から使用せずに書いているつもりですが、 何かわかりにくい場所あればコメントいただけると。 「ストリーム処理」とだけ書くとストリーミング配信等とも微妙に混同

    Googleが考えるストリームデータ処理とは? - Qiita