タグ

algorithmに関するkaorunのブックマーク (27)

  • データベースでユニークキーにUUIDを使うメリットは何ですか?連番やタイムスタンプまたは複合などではいけないのでしょうか?どうも視認性が悪く使いにくく感じますし連番でも衝突しない気もします。

    回答 (7件中の1件目) まずはUUID及びその対案として用いられる連番(自動採番)のメリット・デメリットを整理します。 (タイムスタンプキーや複合キーなどもその効率性から設計上有用なシーンはありますが、比較から除外します。) * UUIDを使うことのメリット * * データベースにSQLを送信する前からアプリケーションレイヤーでIDを生成できる。 * * トランザクション処理を実装しやすい場合がある。 * IDを推測しにくい。リソースが列挙可能ではない。 * UUIDを使うことのデメリット * * レコード・インデックスサイズが増加する。 * * ...

    データベースでユニークキーにUUIDを使うメリットは何ですか?連番やタイムスタンプまたは複合などではいけないのでしょうか?どうも視認性が悪く使いにくく感じますし連番でも衝突しない気もします。
  • https://twitter.com/boyney123/status/1691368802288533504

  • 徐々に高度になるリングバッファの話 - Software Transactional Memo

    リングバッファのイメージ図 1. リングバッファとは何か 機能的にはFirst In First Out (FIFO)とも呼ばれるキューの一種であるが、リング状にバッファを置いてそれの中でReadとWriteのインデックスがグルグルと回る構造をとる事によって容量に上限ができることと引き換えに高速な読み書き速度を得たものである。キューを単に実装するだけなら山ほど方法があって線形リストを使ってもいいしスタックを2つ使っても原理的には可能だ。その中でもリングバッファを用いた方法の利点はひとえに性能の高さでありメモリ確保などを行わないお陰でシステム系の様々な場所で使われている。 これの実装自体は情報系の大学生の演習レベルの難度であるが少し奥が深い。まずリングバッファのスタンダードなインタフェースと実装は以下のようなものである。 class RingBuffer { public: explicit

    徐々に高度になるリングバッファの話 - Software Transactional Memo
  • 中国当局、アルゴリズムの公的規制に乗り出す-大手ネット企業が標的

    中国当局は、大手インターネット企業によるアルゴリズムの乱用と見なす事業活動の公的規制に乗り出した。テンセント・ホールディングス(騰訊)や北京字節跳動科技(バイトダンス)によるソーシャルメディア・プラットフォームの運営手法が標的となる。 国家インターネット情報弁公室は8日の声明で、企業への立ち入り検査を実施し、検証のため各種サービス内容の提示を企業側に求めると発表した。大掛かりなウェブサイトやプラットフォームに加え、影響力の大きいサービスが対象だが、具体名は明らかにしていない。 テンセントは通信アプリ「微信(ウィーチャット)」などを展開し、バイトダンスは動画投稿アプリ「TikTok(ティックトック)」を運営している。 原題:China Targets Big Tech’s Algorithms as Crackdown Persists (1) (抜粋)

    中国当局、アルゴリズムの公的規制に乗り出す-大手ネット企業が標的
  • Apple製品でだけ違う表示にできる PNG ファイル

    PNG Parser Differential では、Apple のデバイスでだけ異なって表示される不思議な PNG ファイルが公開されています。 Windows + Chrome で見た同ページ iPad + Safari で見た全く同じページ (Chrome でも同じ) PNG の表示結果がまったく違い、”Hello World” が “Hello Apple” になっています。不思議ですね。 デビット・ブキャナン氏(David Buchanan)は、マルチスレッド対応のPNGデコーダを自作しようとしている時に、自分が作りこんだバグに気づいたということ。それは、一つのPNGファイルを分割してそれぞれを個別にzlibでデコードしたものを単純に結合しても、必ずしも元の画像に戻らないことに起因するバグだでした。リンク先には PoC のコードがあります。 もし分割の前半部分が非圧縮ブロックの途

    Apple製品でだけ違う表示にできる PNG ファイル
  • ロスレス画像圧縮: QOI(Quite OK Image) format

    QOI(Quite OK Image) format 2021年11月にDominic Szablewski氏(@phoboslab)の手による新しいロスレス画像圧縮「QOI(Quite OK Image) format」がアナウンスされました。 C言語のヘッダオンリー・ライブラリとしてわずか300行たらずで実装され、PNGフォーマットに近いデータ圧縮性能でありながら、20~50倍のエンコード速度、3~4倍のデコード速度を実現しています(作者自身によるアナウンス記事より)。 アナウンス記事: Lossless Image Compression in O(n) Time ソースコード: GitHub phoboslab/qoi ベンチマーク結果: QOI Benchmark Result この記事ではQOIフォーマットに関する個人的評価と、その画像圧縮アルゴリズムをざっくりと解説します。

    ロスレス画像圧縮: QOI(Quite OK Image) format
  • 圧縮ファイルの展開速度を最大1万倍超高速化するデータ構造を広島大が考案

    広島大学は8月31日、富士通研究所と共同で、多くのデータ圧縮方式で採用されている「ハフマン符号」の並列展開処理を高速化する新しいデータ構造「ギャップ配列」を考案したことを発表した。NVIDAのGPU「Tesla V100」を用いて実験した結果、従来の最速展開プログラムと比較して、2.5倍から1万1000倍の高速化を達成できたとしている。 同成果は、同大学大学院先進理工系科学研究科の中野浩嗣教授らの共同研究チームによるもの。詳細は、2020年8月に開催された国際会議「International Conference on Parallel Processing (ICPP)」において発表され、269件の投稿論文の中から最優秀論文賞に選ばれた。 インターネットを介して多数の画像ファイルや動画ファイルなどを転送したり、また記録メディアに保存したりする際、データの圧縮は誰でも日常的に行っている。そ

    圧縮ファイルの展開速度を最大1万倍超高速化するデータ構造を広島大が考案
  • https://github.com/ninjinkun/EDAMSync/blob/master/EDAM-Japanese.md

    https://github.com/ninjinkun/EDAMSync/blob/master/EDAM-Japanese.md
  • 僕らのデータ同期プラクティス #DroidKaigi - agri-note inside

    こんにちは。モバイルチームの中川[twitter:@Nkzn]です。 droidkaigi.github.io Androidエンジニアのためのカンファレンス「DroidKaigi」に登壇する機会をいただきまして、サイバーエージェントのセミナールームでお話してきました。 エントリは、発表原稿としてスライドの元にした文章です。技術的には同一の内容になっています。 スライド 僕らのデータ同期プラクティス from Yukiya Nakagawa www.slideshare.net はじめに ユーザーがどんな場所にアプリを持っていこうと、私達はそれを制止できません。自分たちのWebサービスを携帯網もWi-Fiもない場所でも使ってほしいと思ったとき、私たち開発者には何ができるでしょうか。 GmailアプリやEvernoteアプリのように、オフライン時に閲覧・作成・編集されたデータをサーバーと同

    僕らのデータ同期プラクティス #DroidKaigi - agri-note inside
  • リレーショナルデータベースの仕組み (1/3) | POSTD

    リレーショナルデータベースが話題に挙がるとき、私は何かが足りないと思わずにはいられません。データベースはあらゆるところで使われており、その種類も、小規模で便利なSQLiteからパワフルなTeradataまで様々です。しかし、それがどういう仕組みで機能しているかを説明したものとなると、その数はごくわずかではないでしょうか。例えば「リレーショナルデータベース 仕組み」などで検索してみてください。ヒット数の少なさを実感できると思います。さらにそれらの記事は短いものがほとんどです。逆に、近年流行している技術(ビッグデータ、NoSQLJavaScriptなど)を検索した場合、それらの機能を詳しく説明した記事はたくさん見つかると思います。 リレーショナルデータベースは、もはや大学の授業や研究論文、専門書などでしか扱われないような古くて退屈な技術なのでしょうか? 私は開発者として、理解していないものを

    リレーショナルデータベースの仕組み (1/3) | POSTD
  • 『みんなのデータ構造』発売および予約開始のお知らせ – 技術書出版と販売のラムダノート

    ご来店ありがとうございます。 日より、新刊『みんなのデータ構造』の発売を開始しました。紙書籍の発送は7月25日前後を予定しています。電子書籍は購入後すぐにお読みいただけます。 『みんなのデータ構造』は、Pat Morin氏による “Open Data Structures” を翻訳して書籍として出版するものです。Pat Morin氏による原文は、クリエイティブコモンズ継承ライセンス(CC BY)で公開されており、誰でも自由に教材として活用できるだけでなく、内容に手を入れて別のライセンスで再配布したり、販売したりできるようにされています。堀江氏、陣内氏、田中氏による翻訳と、ラムダノート株式会社による編集も、すべてCC BYで公開しており、同様に自由に利用していただくことが可能です。 書籍版『みんなのデータ構造』(紙書籍および電子書籍)につきましては、クリエイティブコモンズライセンスではなく

    『みんなのデータ構造』発売および予約開始のお知らせ – 技術書出版と販売のラムダノート
  • 青の時間はこうして決まる、信号機のアルゴリズム

    アルゴリズムは「何らかの問題を解決する手順」を指し、アルゴリズムの良しあしでソフトウエアの性能が決まってくる。私たちの生活は、高度なアルゴリズムで実装されたソフトウエアに支えられている。そこで特集ではエレベーターや信号機といった身近なアルゴリズムを例に、その一端を見ていこう。今回は、信号機のアルゴリズムの基を紹介する。 「朝はいつも赤になっている信号が、夜はなぜか青が多い」と感じたことはないだろうか。実は、信号機が青に変わるまでの時間は、いつも同じではない。交差点の交通量から最適な青時間を割り出している。この計算には、高度なアルゴリズムで実装されたプログラムが動いている。そこで今回は、信号機を制御するアルゴリズムに焦点を当てよう。 具体的なアルゴリズムを見ていく前に、信号機の青時間がどのように決められているのかを解説する。信号の青時間を決めるには「重要な要素が3つある」(住友電気工業

    青の時間はこうして決まる、信号機のアルゴリズム
  • ID生成大全 - Qiita

    セッションIDやアクセストークン、はたまた業務上で使う一意の識別子など、いろんなところで一意のIDを生成しなきゃいけないケースが存在します。 そこで世間で使われているIDの生成方法について調べてみました。 選択基準 ID生成における要求として、以下の観点が上げられるかと思います。 生成の速度 大量にデータを短期間で処理し、それらにIDを付与する場合、ID生成そのものがボトルネックとなることがあります。 推測困難性 IDを機密情報と結びつける場合、IDを改ざんされても、機密データが見れないようにできている必要があります。 順序性 採番した順にデータをソートする必要がある場合は、IDがソートキーとして使えないといけません。 それぞれについて各生成手段を評価します。 ID生成の手段 データベースの採番テーブル 採番用のテーブルを作り、そこで番号をUPDATEしながら取得していくやりかたです。古い

    ID生成大全 - Qiita
  • 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年
    kaorun
    kaorun 2017/06/12
    Amaoznのおすすめはまぁ実用的だけど、Netflixのおすすめが良いと感じたことはまだあんまり無いんだよなぁ...、自分の趣向がマイノリティだからなのかもだけど。
  • Elevator Saga - the elevator programming game

    Made by Magnus Wolffelt and contributors Version 1.6.5 Source code on GitHub Run tests

  • ビットコインは本当に安全なのか、理論研究が示す意外な落とし穴

    ビットコインにおけるブロックチェーンは、暗号技術を駆使することで、類い希な耐改ざん性を実現した。 しかし、暗号通貨としてのビットコインの安全性を論じるには、耐改ざん性の観点のみでは不十分だ。同じコインが二重に使用されることがない、取引記録に矛盾を生じさせたりサービス不能に陥らせたりする攻撃が成立しないといった、様々な観点の安全性について検証する必要がある。 ビットコインは、ブロックチェーン技術を用いたサービスとして最も歴史が長い。運用の開始から7年間、プログラムのバグ以外でシステムの停止やデータのロールバックなどを起こしたことはない。 だが最近の研究では、ビットコインのプロトコル設計や実装上の問題により、不正な支払い、データの改ざん、システムの停止などを引き起こしやすい状況を作り出せることが報告されている。 ビットコインにはどのような脆弱性が発見され、脆弱性を解決する修正案が提案されてきた

    ビットコインは本当に安全なのか、理論研究が示す意外な落とし穴
  • 円、アルゴリズム苦戦説 戦略ミスで共倒れも - 日本経済新聞

    コンピュータープログラムを用いた自動取引「アルゴリズム」が足元の不安定な相場に苦戦している――。こんな見方が外国為替市場などの一角で広がっている。米連邦準備理事会(FRB)と日銀の政策姿勢を巡る市場参加者の思惑は割れており、プログラムの前提となる「基ロジック(理論)」を固めにくい。外為証拠金(FX)取引の投資家は著名なアルゴに乗って売買するケースが多く、わずかなストラテジー(戦略)のミスが損失

    円、アルゴリズム苦戦説 戦略ミスで共倒れも - 日本経済新聞
  • GitHub - andrewssobral/bgslibrary: A C++ Background Subtraction Library with wrappers for Python, MATLAB, Java and GUI on QT

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - andrewssobral/bgslibrary: A C++ Background Subtraction Library with wrappers for Python, MATLAB, Java and GUI on QT
    kaorun
    kaorun 2015/08/12
    動画背景除去のライブラリとのこと。
  • [CEDEC 2014]七並べを遊ぶとAIが分かる! 「ゼビウス」の生みの親,遠藤雅伸氏のワークショップをレポート

    [CEDEC 2014]七並べを遊ぶとAIが分かる! 「ゼビウス」の生みの親,遠藤雅伸氏のワークショップをレポート ライター:箭進一 神奈川のパシフィコ横浜にて,日(2014年9月4日)まで開催されているCEDEC 2014。ゲーム開発者向けのイベントということで,高度な技術論にじっと聞き入るというイメージが強いが,中には体験と学習が合わさったワークショップなどがあるのも,魅力の1つだ。9月3日には,東京工芸大学芸術学部の教授にして,「ゼビウス」や「ドルアーガの塔」などの生みの親でもある遠藤雅伸氏による,「七並べで学ぶゲームAIの働き〜今さら聞けないAIって何?〜」というワークショップが実施されていたので,これをレポートしよう。 遠藤雅伸氏 ワークショップは立ち見が出るほどの盛況に 各テーブルには,ジョーカーを抜いたトランプと,プレイヤー各人のパス可能回数を示すチップが配られた 今回の

    [CEDEC 2014]七並べを遊ぶとAIが分かる! 「ゼビウス」の生みの親,遠藤雅伸氏のワークショップをレポート
    kaorun
    kaorun 2014/09/05
    楽しそうだけど、手書きで書くの超めんどくさいのでコードかせめてPCで書かせてくれと思ってしまうプログラマ脳...。
  • 何回で満点とれる?【ちょまど問題に挑む人々】

    @chomado さんの「社内のセキュリティ研修のテスト(4択全10問)」を満点をとるまで延々とやらされる場合に何回やり直せば満点を取れるかという問題に立ち向かった人々の記録です。 ■ちょまど問題(引用・加筆) 4択問題10問のテストを全部埋めて提出すると正解数がわかります。 何回提出すればすべての正解を知ることができますか。 続きを読む

    何回で満点とれる?【ちょまど問題に挑む人々】