Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

Googleは9月22日(米国時間)、「Google Open Source Blog: Introducing Brotli: a new compression algorithm for the internet」において、新しい圧縮アルゴリズムおよびその実装系「Brotli」を発表した。実装系はApache License Vresion 2.0の下、オープンソース・ソフトウェアとして公開されている。 Googleは2年前にZopfliと呼ばれる圧縮アルゴリズムを公開している。ZopfliはDeflateと互換性を持っていたが、今回発表されたBrotliはまったく新しいデータフォーマットを採用しており、Zopfliと比較して20%から26%ほど圧縮率の引き上げに成功している。また、BrotliはzlibのDeflate実装と同程度の速度を実現しているほか、Canterbury co
Redirecting… Click here if you are not redirected.
Deep Neural Networkを使って画像を好きな画風に変換できるプログラムをChainerで実装し、公開しました。 https://github.com/mattya/chainer-gogh こんにちは、PFNリサーチャーの松元です。ブログの1行目はbotに持って行かれやすいので、3行目で挨拶してみました。 今回実装したのは”A Neural Algorithm of Artistic Style”(元論文)というアルゴリズムです。生成される画像の美しさと、画像認識のタスクで予め訓練したニューラルネットをそのまま流用できるというお手軽さから、世界中で話題になっています。このアルゴリズムの仕組みなどを説明したいと思います。 概要 2枚の画像を入力します。片方を「コンテンツ画像」、もう片方を「スタイル画像」としましょう。 このプログラムは、コンテンツ画像に書かれた物体の配置をそのま
これまで数カ月にわたり、私たちはAtomのパフォーマンスの改善に取り組んできました。その結果、最適化するための課題として特に興味深いのが マーカ という構造体だと分かりました。マーカはバッファの内容が変更されても、バッファの論理的な領域を追跡することができます。例えば、以下の図で緑色のハイライトがかかった部分のマーカは、文字列を書き換えたとしても同じ領域に残り続けます。 マーカは、Atomの機能を幅広くサポートする基本的なプリミティブです。検索および置換を行う場合には、マーカを使うことで 検索結果のハイライト表示 ができます。スニペットの場合も、文字列を書き換える際にマーカを使い、 タブストップで移動する位置 を追跡することができます。さらにはスペルチェックの場合でも、マーカを使って スペルミスのある単語を抽出 したり、その単語を書き換える際の再チェックをしたりすることもできます。そもそも
Have you ever wondered how Shazam works? I asked myself this question a few years ago and I read a research article written by Avery Li-Chun Wang, the confounder of Shazam, to understand the magic behind Shazam. The quick answer is audio fingerprinting, which leads to another question: what is audio fingerprinting? When I was student, I never took a course in signal processing. To really understan
こんにちは。会員事業部ビジネス開発グループの高田です。 クックパッドは今年、株主優待制度として、プレミアムサービス一年間無料クーポンを贈呈しました。本エントリではクーポンコードを打ち間違えて、意図せず他の人のクーポンコードを使用するのを防ぐために工夫した話をご紹介します。 はじめに クーポンコードは入力のしやすさを優先して数字だけの文字列にしました。はじめは rand 関数を使って生成しようとしていたのですが、数字の打ち間違えや順序間違いで、意図せず誤使用してしまうのを防ぐためにチェックサムを加えるのがいい、と同僚から助言をもらいました。 いくつか調べて見たところ、Luhn アルゴリズムが上記を満たしていたので利用することにしました。 Luhn アルゴリズムの利用 Luhn アルゴリズムとは、誤り検出のためのチェックサム符号で、1 桁の間違いや隣接する数字の順序間違いを検出できるという特徴
出発点(問題)とゴール(解)が用意された時にどのような道順で進めばいいか調べるアルゴリズムが「探索アルゴリズム」です。この探索アルゴリズムには複数の種類が存在するのですが、中でも基本的なもの8つ+ゲームデベロッパーの@shohei909さん自作のアルゴリズム2つを合わせた全10種のアルゴリズムで迷路をクリアしようとすると、どのような探索が行われることになるのかを目で見て楽しめるようにしたのが「迷路で眺める探索アルゴリズム」です。 迷路で眺める探索アルゴリズム(Search algorithm visualize) - wonderfl build flash online http://wonderfl.net/c/hq8p 迷路で眺める探索アルゴリズム | 机上のにゅーろん http://spheresofa.net/blog/?p=1044 これが「迷路で眺める探索アルゴリズム」。 画
2024 Trend Updates: What Really Works In SEO & Content Marketing The future of SEO is trending toward a more human-first and user-centric approach, powered by AI intelligence and collaboration. Are you ready? Watch as we explore which SEO trends to prioritize to achieve sustainable growth and deliver reliable results. We’ll dive into best practices to adapt your strategy around industry-wide disru
Python で実装され、その後 Java にも移植されたソートアルゴリズムである TimSort が盛大にバグっていることが発見されました。 このバグがどのようにして発生するのかについては、以下のドキュメントを精査して下さい。 TimSort fails with ArrayIndexOutOfBoundsException on worst case long arrays OpenJDK’s java.utils.Collection.sort() is broken: The good, the bad and the worst case どんなことが起こるのか 通常の利用では想定しえない場所でArrayIndexOutOfBoundsExceptionが発生します。 例えば、以下のようなスタックトレースになります。 Exception in thread "main" jav
Initial hash returns (A,B), final hash is A^tab[B] The perfect hash algorithm I use isn't a Pearson hash. My perfect hash algorithm uses an initial hash to find a pair (A,B) for each keyword, then it generates a mapping table tab[] so that A^tab[B] (or A^scramble[tab[B]]) is unique for each keyword. tab[] is always a power of two. When tab[] has 4096 or more entries, scramble[] is used and tab[] h
2014年12月3日より2015年1月7日まで開催した、paizaオンラインハッカソンVol.4Lite「エンジニアでも恋したい」は、トータルで3問有りましたが全て解けましたでしょうか? 各問題の成否によりストーリーが変わるのであえて間違えて解いた方もいらっしゃると思いますがw (プレゼント対象期間は終了しましたが、問題チャレンジは可能なので、未チャレンジの方は是非チャレンジください!) 問題1、問題2は解説するほどのむずかしさでもないので省きますが、問題3は多少工夫が必要なので、問題3について今回もPOH恒例の「図解解説」をしてみたいと思います。既に解けた方もそうでない方も、今回の解説を読んで、それぞれの方法すべてを実装してみると勉強になると思いますので、是非試してみてください。 ■どのような高速化ステップがあるのか? 今回の問題ですが、解法の大きなパターンとしては、1.全てのパターンを
NTTは、現在の4K映像の圧縮と伝送に用いられている動画の符号化技術「H.265/HEVC」の“次々世代”という符号化技術を開発中だ。 同社の言う“次々世代”は、まだ実用段階にはない将来技術、という意味である。ただし、一度実用化されれば、“最後の符号化技術”になる可能性がある。理由は、人工知能の一種を用いることで符号化のアルゴリズムが勝手に進化し、自ら符号化性能を高めていくからである。 今回、符号化技術に用いている人工知能は、「進化的(または遺伝的)プログラミング(GP)」と呼ばれる技術である(図1)。GPを用いた動画符号化技術では、生物の進化のプロセスを模倣して、次第に圧縮率を向上させる。具体的には、遺伝子の突然変異による組み換えと環境適合性の結果としての自然淘汰を、乱数による関数や論理演算のランダムな組み換えと、圧縮率の向上に置き換える。関数などのランダムな組み換えで、結果として圧縮率
ほとんどの開発者は、自動のガベージコレクション(GC)を当たり前のように使っています。これは、私たちの仕事を容易にするために言語ランタイムが提供する素晴らしい機能の1つです。 しかし、最新のガベージコレクタの中をのぞいてみれば、実際の仕組みは非常に理解しづらいことが分かります。実装の詳細が無数にあるため、それが何をしようとしているのか、また、それがとんでもなく間違った事態を引き起こしかねないことについて十分理解していない限り、すっかり混乱してしまうでしょう。 そこで、5種類のガベージコレクションアルゴリズムを持つおもちゃを作ってみました。小さいアニメーションはランタイムの動作から作成しました。もっと大きいアニメーションとそれを作成するコードは github.com/kenfox/gc-viz で見ることができます。単純なアニメーションによってこうした重要なアルゴリズムを明らかにできることは
Photo by VFS Digital Design 皆さんはアルゴリズムやデータ構造について知っているでしょうか。情報系の学部出身の人は学校の授業でやったかもしれません。一方で学校で情報系の勉強をせずにITエンジニアになったという方は、アルゴリズムやデータ構造について一度は「勉強したほうが良いんだろうな」と思いつつも、実際の業務であんまり必要なさそうだし、難しそうだし、DevOpsやオブジェクト指向やフレームワークについて学ぶので手一杯で未着手、という人も多いのではないでしょうか。 今回はそんな方に向けて、アルゴリズム、データ構造を学ぶ意義と、それらを学ぶときに役立つ本とサイトについてまとめました。 ■アルゴリズム、データ構造を学ぶ意味 アルゴリズムやデータ構造について語られるときに、非常に良く言われる事として「そんなものは実務に役立たたないので必要ない」という意見があります。本当にア
あ、どうも。なんかアルゴリズムさんと気が合いそうかなって。 マッチングサイトは、人と人の色恋の場だけの話じゃないわけです。一緒に働く仲間や、旅するパートナーをマッチングさせる場合もあるわけです。そもそも、人と人だけがマッチングのすべてではないのです。アルゴリズムと私の出会いだって立派なマッチングですから。 とあるスタートアップサーヴィスのAlgorithmiaは、アルゴリズムのマッチングが目当て。研究者やデータ分析を行なう人が、自分の持つデータをどのようなアルゴリズムで解けばいいのか、それをマッチングしてくれます。 アカデミックな業界では、日々多くの研究で専用のアルゴリズムが作られ使われていますが、そのアルゴリズムが他の研究で使われることはあまりありません。たとえ1つの研究のために特別に作られたアルゴリズムでも、他の研究でちょっと目線を変えれば使えることが多々あるのに…これはもったいない。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 CEDECの講演 「ゲーム世界を動かすサイコロの正体 ~ 往年のナムコタイトルから学ぶ乱数の進化と応用」 より、 乱数を使った ドルアーガの塔の 迷路生成のアリゴリズムについて紹介です。 講演内容は、こちらです http://sekigames.gg-blog.com/Entry/288/ 講演者の方も、 「ナムコの乱数を取り上げるなら、ドルアーガの塔をせざるえない」 という程、外せない内容との事です 「このテーマだけで講演時間を全て使っても説明しきれない」 (講演では、時間の関係で 触りのみでしたので ある程度、せっき~の解釈で補完しています) -------------------------------------------------------------------
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く