タグ

*algorithmとcomputerに関するsh19910711のブックマーク (12)

  • PNGデコーダの調査結果:ESP8266でのデコードは厳しいかも

    ESP8266でJPEGとGIFがデコードできましたので、PNGも…と思い、仕様や既存のライブラリを調査していました。 その結果をここでまとめておきます。 結論としては、ESP8266でのPNG画像のデコードは不可能ではないものの、RAMの消費量や現時点で使えるデコーダライブラリの状況からは、JPEGやGIFに比べると課題が多いと言えます。 まず、PNGの圧縮方法について触れておきます。 PNGは、原理的には「ビットマップ画像をZIPで圧縮した」イメージに近いです。 圧縮アルゴリズムはDeflateと呼ばれているもので、ZIP、gzip等で使われているものと同じです。 Deflate圧縮は、出現頻度の高いビット列に短い符号を割り当てるハフマン符号化と、過去に既出のビットパターンを参照することでデータの繰り返しを圧縮するLZ77を組み合わせたものです。 Image compression D

    PNGデコーダの調査結果:ESP8266でのデコードは厳しいかも
    sh19910711
    sh19910711 2024/02/18
    "Deflate圧縮: 出現頻度の高いビット列に短い符号を割り当てるハフマン符号化 + データの繰り返しを圧縮するLZ77 / 過去に既出のパターンがあったかどうかを調べるための辞書が必要" / 2015
  • MKL-DNNで学ぶIntel CPUの最適化手法 - Cybozu Inside Out | サイボウズエンジニアのブログ

    初めに サイボウズ・ラボの光成です。 DNN(deep neural network : 深層学習)といえばGPUや専用プロセッサを使うのが主流です。 しかしIntelはCPUで高速にDNNをするためのライブラリ MKL-DNN を提供しています。 MKL-DNNはIntelの最新CPUに対応したオープンソースソフトウェアなのでコードを見ると勉強になります。 ここではMKL-DNNで使われているテクニックをいくつか紹介します。 概要 MKL-DNNの紹介 Xbyakの紹介 呼び出し規約 圧縮displacement ReLU exp 内積 vpdpbusd キャッシュコントロール 想定読者 C++11とx64 CPUのアセンブリ言語の知識をある程度仮定します。 機械学習についてはその知識がなくても最適化手法が理解できるよう、最小限の説明をします。 MKL-DNNの特長 まずMKL-DNNの

    MKL-DNNで学ぶIntel CPUの最適化手法 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sh19910711
    sh19910711 2023/04/18
    2019 / "Intelの第二世代Xeon SPで搭載されたDL Boost命令を使うと1バイト整数ベクトルの内積を高速に求められます / CPUがAVX512_VNNI命令セットに対応しているとvpdpbusdを使えます"
  • Jetson Nanoで動く深層強化学習を使ったラジコン向け自動運転ソフトウェアの紹介 - masato-ka's diary

    この記事について 深層強化学習を利用してAI RC Carの走行を学習させるソフトウェアをGithub上で公開しています。learnign_racerと命名しました。2020年4月29日の時点でのバージョンはv1.0.0です。この記事ではこのソフトウェアについて紹介していきます。 github.com なお、NVIDIAのJetson Community Projectsのページでも紹介されています。 developer.nvidia.com learning_racerの概要 このソフトウェアは10分から15分程度の学習時間で、コースに沿って走行する方法を獲得することができます。従来のAI RC Carでは人間のお手操作をDNNに覚えこませる手法が一般的です1。ですが、手法は教師なし学習の手法である強化学習をベースとしているため、教師データとなる人間のお手操作は必要ありません。さら

    Jetson Nanoで動く深層強化学習を使ったラジコン向け自動運転ソフトウェアの紹介 - masato-ka's diary
    sh19910711
    sh19910711 2022/09/10
    2020 / "画像から圧縮した特徴を入力として利用する / 今回は状態表現学習として千から1万程度の画像をVAEで学習 / 潜在空間を32次元の特徴量としてSACへ入力 / クラウドで学習できる部分を切り出しておく"
  • 1960年代初めに開発された物語自動生成システム | スラド サイエンス

    現代ではコンピューターに物語を生成させるさまざまな試みが行われているが、1960年代初めに言語学者Joseph E. Grimes氏が開発したコンピューターによる物語自動生成システムについて、人からの聞き取りも含めた幅広い調査結果の論文を米カリフォルニア大学サンタクルーズ校のJames Ryan氏が発表している(論文、The Register)。 現在、最古の物語自動生成システムとして広く知られているのは1971年に報告された言語学者Sheldon Klein氏によるミステリー小説自動生成システムだが、Grimes氏は1960年または1961年の夏にメキシコ国立自治大学のIBM 650を使用して物語自動生成システムの開発を始めていたそうだ。システムは機械語で書かれていたが、のちに使用したIBM 1401(メキシコ国立自治大学のものと米オクラホマ大学のものを使用)ではFORTRANでプログ

    sh19910711
    sh19910711 2022/09/03
    2017 / "Grimes氏は1960年または1961年の夏にメキシコ国立自治大学のIBM 650を使用して物語自動生成システムの開発を始めていたそうだ / モンテカルロ法により選択した要素を組み合わせて自然言語による文を生成"
  • 1988年

    1988年5月1日,私は PC-VAN の SIG SCIENCE(私が SIGOP をしていたところ) の第1ボード「オムニバス・ボード」(現「科学一般」)に次の書き込みをしました。 #1073/2867 オムニバス・ボード ★タイトル (SCIENCE ) 88/ 5/ 1 15:39 ( 49) LZSS法によるデータ圧縮プログラム/奥村 ★内容 依然ある雑誌にPascalで何かということで書いたのですが、その雑誌が休 刊中なので、TurboCで書き直したものをアップします。 特徴は、圧縮率が非常に良いことと、符号化が非常に遅いことです。2分木など を使えば符号化は1桁速くなりますが、LZSS法そのもののアルゴリズムをはっ きりさせるために、できるだけシンプルに作りました。符号化に時間がかかっても、 アップやダウンの電話代を考えれば、少しでも圧縮率の良いもののほうが良いとい う考え方

    sh19910711
    sh19910711 2022/05/27
    1988 / "PC-VAN のシステムは, 半角と全角を同じ行に混在させると行末部分が失われやすかった / 当時は Borland の Turbo Pascal が人気のコンパイラ / SIG SCIENCE は科学のフォーラムなのに, データ圧縮ばかりで燃えている状態"
  • オセロを速く解く話/solveothello

    京大マイコンクラブの春合宿で、オセロを速く「解く」ことについて特化して話したスライドです。

    オセロを速く解く話/solveothello
    sh19910711
    sh19910711 2022/03/21
    "オセロ専用回路: OthelloソルバーとFPGAは相性が良い > FPGAにとって苦手な演算がいらない + 乗算器の数も余裕がある + ビット演算などが得意"
  • Cloud TPUを用いたBERT推論処理基盤の開発

    Cloud TPUを用いたBERT推論処理基盤の開発

    Cloud TPUを用いたBERT推論処理基盤の開発
    sh19910711
    sh19910711 2021/09/18
    "これまで1週間程度かかっていた、数千万件のデータの処理を1日以内で完了できるように / TPUを用いるとGPUと比較して処理時間が73%、コストが51%削減"
  • 2値化CNN on FPGAでGPUとガチンコバトル(公開版)

    TensorFlow User Group HW部(2017年2月27日)で使ったスライドです。講演後、一部加筆・修正しています。Read less

    2値化CNN on FPGAでGPUとガチンコバトル(公開版)
    sh19910711
    sh19910711 2021/07/04
    "AlexNet: ディープラーニングブームに火をつけた記念的CNN / CNNの最適化手法: Pruning, Weight Sharing, Quantization, Binarized, Ternarized / 枯れる時期を見極める目利きが重要"
  • FPGAに機械学習モデルを実装する – その1:ランダムフォレストによるクラス分類 - GMOインターネットグループ グループ研究開発本部

    こんにちは,次世代システム研究室のS.T.です。普段はHadoopネタを書いていますが,今回はテーマをがらっと変えて,FPGAネタです。 「FPGA機械学習の推論部分を実装し高速に処理を行う」という技術は耳にしたことがありましたが,漠然としたイメージがあるだけで実際にどのように実装していくのかということは知りませんでした。調べてみると,高位合成を用いた手法(1)や,学術研究として開発されたアクセラレータとしてのアーキテクチャ(2)は存在するようですが,シンプルなサンプルコードの形で存在するものはないようです。 もちろん「ソフトウェアエンジニアやデータサイエンティストが作成したモデルを高位合成でFPGAに落とし込みアクセラレータとして使用する」というユースケースを考えれば納得がいきますし,応用できる範囲もHDLで直接実装するより広くなると思います。 しかし,「低コスト小規模なローエンドFP

    FPGAに機械学習モデルを実装する – その1:ランダムフォレストによるクラス分類 - GMOインターネットグループ グループ研究開発本部
    sh19910711
    sh19910711 2021/06/03
    "784次元のMNIST手書き文字画像をそのまま784ビットの入力信号 => 4ビットの識別結果(2進値) / 伝搬遅延を実質的な「推論に要する時間」と考え,ソフトウェア実装の「predictを呼び出してから結果を得るまでの時間」と比較"
  • FPGAでのDNN(Deep Neural Network)の整理(LUT-Netまとめ) - Ryuzのブログ

    はじめに 現在DNN(Deep Neural Network)の実装において、FPGAの活用はしばし議論の対象になっています。もちろんDNN分野全体からするとニッチな部類に入るとは考えますが、FPGAベンダーはここに非常に力を入れており、作成したネットワークのデプロイ先としてFPGAが選択しやすくなるような各種のソリューションが用意され始めており、日々進化しています。 ここでのFPGAのメリットは、低消費電力であったり、コストであったりします。DNNの実行にはクラウドであっても電力というランニングコストは馬鹿になりませんし、エッジコンピューティング、特にバッテリー駆動のモバイル分野においては電力は極めて重要です。またイニシャルコストの重要性はどちらも同じでしょう。 ここでFPGAベンダーはこぞって、「GPUと同じように開発できます」をキャッチフレーズに、GPUを使って研究開発をしている多く

    FPGAでのDNN(Deep Neural Network)の整理(LUT-Netまとめ) - Ryuzのブログ
  • バイナリニューラルネットとハードウェアの関係

    全脳アーキテクチャ若手の会 第26回勉強会 発表  :筑波大学 田尻 健斗 メンター:大阪大学 西田 圭吾 東京大学 八木 拓真 pdf化の際壊れてしまった図などがありますので後日訂正します 7/9:訂正しました

    バイナリニューラルネットとハードウェアの関係
  • QUBOを使って日本地図の彩色問題やってみた - Qiita

    量子アニーリングをする場合、QUBOというものを作って、それをイジング模型に変換することが多いようです。 日地図を四色に塗り分けるためのQUBOを作って、古典アニーリングをやってみた話をします。 #量子アニーリング? 組み合わせ最適化問題を解く確率的アルゴリズムの一種です。 解きたい問題をイジング模型という強磁性体を模したモデルに置き換えて、量子的な効果を含む項を付け加えてコンピュータでシミュレーションすれば、ある種の問題でよい結果が得られる、という論文が昔にあったようです。 これが元々の量子アニーリングです。当時は、量子コンピュータで解くといった話は無く、普通のコンピュータで解くアルゴリズムでした。 ところが、ある日、D-Waveという会社が、実機を使って高速にイジング模型を解く機械を作ってしまいました。 量子アニーリングをする専用機ができてしまったわけですね。 実は、普通に古典コンピ

    QUBOを使って日本地図の彩色問題やってみた - Qiita
  • 1