Binary 2.0カンファレンス 2006 発表資料とレポート Binary 2.0 カンファレンス 2006 は大盛況のうちに無事終了いたしました。開催にご協力いただいた皆様、スピーカーの皆様、参加していただいた皆様、大変ありがとうございました。当日の発表資料とレポートをこのエントリでまとめます。
Binary 2.0カンファレンス 2006 発表資料とレポート Binary 2.0 カンファレンス 2006 は大盛況のうちに無事終了いたしました。開催にご協力いただいた皆様、スピーカーの皆様、参加していただいた皆様、大変ありがとうございました。当日の発表資料とレポートをこのエントリでまとめます。
この記事はCompetitive Programming Advent Calendar Div2012、20日目の記事です。(余談:そういえば本日2012/12/20は良い日ですね!) はじめに 今回はDonald.E.Knuth著”The Art of Computer Programming”のVolume4-1の前半パートであるBitwise Tricks & Techniquesで取り上げられているビット演算について記事を書きたいと思います。ただし、ここで取り上げられているものは必ずしも競技プログラミングにおいて実用的とは限りません。すでに関数として定義されているものはそれを使った方が実装量が減らせてよいと思います。なので、「ビット演算やべぇおもしれぇ!!」と思ってもらう一助となることを目指した読み物、という感覚で読んでいただけると幸いです。 今回はC++言語を基本としてコードを
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 disruptions like SGE, how to navigate the top challenges SEO professio
gccでwrapオプションを利用すると、main関数を別の関数から実行することができます。 コンパイルの時にwrapオプションで指定した関数を実行する時、その前にwrap関数を割りこませる、という表現の方が実態に近いかもしれません。あと、これでwrapできるのはlibcでサポートしているシステムコール限定かもしれません。 ソースコードをコンパイルし、生成されたオブジェクトファイルをリンクしていく仕組み、プログラムが起動する仕組みをちゃんと勉強すればもう少しまともな説明ができそうな気もしますが、その辺は後々。 サンプルコード 其の一 #include<stdio.h> #include<unistd.h> // こが実際のmain関数らしい... int __real_main(int argc, char *argv[]); // コンパイルする時「wrap,main」を指定するとmain
GCCのtreeを理解するために、treeをgraphvizで視覚化してみました。 treeはgccのfront endで使われている構文木を表すデータ構造です。 最初はテキストエディタでgraphvizのdot形式で書いてみたけど、変換ツールがあったので、変換ツールを使ってみました。 まとめ gccのオプション -fdump-tree-original-raw で 最適化前のtreeをdumpすることができる。 treeのdumpは独自のフォーマットで関数毎に生成する。 関数が一つの場合に、treeのdumpをgraphvizのdot形式に変換するツールがある。 変換したdotファイルをgraphvizで描画するとtreeが視覚化できる。 図の読み方は別エンントリで説明する予定とします。 テキストエディタで書いてみた 変数宣言のtreeを GCC 的语法树结构 の図を見ながらgraphv
ここでは都市iから都市jへの距離(コスト)は以下にあるような問題を例にします。 都市の数(ノード)は10。都市iから都市iの距離(コスト)は無限大。 このように表現される巡回セールスマン問題を分枝限定法で解くプログラムを作成せよ。 [ [ math.inf, 22, 16, 21, 19, 24, 17, 21, 30, 29], [ 16, math.inf, 16, 29, 16, 20, 20, 24, 26, 19], [ 19, 27, math.inf, 22, 18, 20, 30, 26, 21, 27], [ 28, 29, 24, math.inf, 28, 26, 18, 17, 16, 21], [ 18, 26, 24, 21, math.inf, 26, 20, 19, 24, 20], [ 16, 22, 26, 25, 26, math.inf, 26, 3
DEEP LEARNING LAB ディープラーニングに関連する、開発事例や最新技術動向を情報発信するコミュニティ ディープラーニング・ラボ とは Deep Learning Lab(ディープラーニング・ラボ)は、ディープラーニングを中心とした先端技術の持つ可能性を、実際のビジネスへ応用するべく、技術とビジネ... PyData.Tokyo Python+Dataをテーマにした「濃い」勉強会 in Tokyo PyData Tokyoの目標 「Python + Dataを通じて、世界の PyData エクスパートと繋がるコミュニティーを作る」 PyCon JP 2014ではデータ分析関連・機械学習関連... Machine Learning 15minutes! AI・機械学習に関するカジュアルトークイベント 【重要なお知らせ】 イベントに申し込む前に、twitterをフォローいただき、F
最近趣味で機械学習の勉強をしていて、中でもDeep Learningに興味を持って取り組んでいたので、備忘録としてブログにまとめておきます。 はじめに 本稿の目的は Deep Learning で実際に画像識別を行う Deep Leraning の特性を理解する(性能向上について考察を行う) の2点です。Deep Learningの概要・アルゴリズムについてはあまり触れません。ニューラルネットやDeep Learningについて参考にした書籍・Webサイトは以下の通りです。 書籍 深層学習(機械学習プロフェッショナルシリーズ) Python機械学習プログラミング 達人データサイエンティストによる理論と実践 データサイエンティスト養成読本 機械学習入門編 初めてのディープラーニング --オープンソース"Caffe"による演習付き はじめてのパターン認識 Web 初心者でも今すぐ機械学習・ディ
ひとつ前のエントリ id:naoya:20070924:1190653790 では Linux のコンテキストスイッチにおける、主にハードウェアコンテキストの退避/復帰の処理を追ってみました。その中で カーネルスタック (switch_to() 内で pushl %ebp とかして値が積まれるスタック)とはそのときの実行コンテキストに紐づくカーネルプロセススタックという理解でよいか。 という疑問がもやもや湧いて出てきました。ここ数日 はじめて読む486―32ビットコンピュータをやさしく語る を読んでいたのですが、その中にこの疑問への答えへの入り口が載っていまして、そこを糸口に調べてみました。で、結果としては 答え: 良い でした。 x86 は特権レベルの移行と連動してスタックポインタを切り替える仕組みを持っています。Linux の場合モードはカーネルモード(特権レベル0) とユーザーモード
連載6回目では、OSのメモリー管理の概要について話したが、今回はより詳しくWindowsのメモリー管理について解説しよう。だが本題に入る前に、まずはWindowsが動作するx86 CPUが持つ「仮想記憶機構」について解説しておく必要があるだろう。 次期Windowsである「Windows 8」にはARM版も登場する予定だし、過去の「Windows NT」では、RISCプロセッサー向けが提供されていたこともあった。そもそもNTは当初、インテルの「i860」プロセッサー用として開発されたという経緯もある。しかし、現在はほぼすべてのWindowsがx86(64bit版のx64)上で動作しているので、Windowsの仮想記憶=x86の仮想記憶として解説する。 2段階の変換テーブルを使って 物理メモリーの位置を示すx86 x86はプログラムやデータを、「セグメント」という単位で扱う。セグメントはメモ
x86アーキテクチャは、インテルが開発したマイクロプロセッサのアーキテクチャです。1978年に最初のx86プロセッサであるIntel 8086が登場して以来、x86アーキテクチャはPCおよび互換機市場で非常に広く普及しています。 このアーキテクチャは、以下のような特徴を持っています。 命令セット x86アーキテクチャは複数の命令セットを組み合わせています。初期のバージョンから現在のx86-64まで、多くの命令が追加され、命令セットが拡張されてきました。 互換性 x86プロセッサは、過去のアーキテクチャとの互換性を保持しています。これは、古いソフトウェアやシステムが新しいx86プロセッサで動作することを可能にしています。 アドレッシングモード x86アーキテクチャは複数のアドレッシングモードを持ち、メモリアクセスやデータ処理の柔軟性を提供しています。 セグメンテーション x86ではセグメンテ
この記事はC++ Advent Calendar 2014の21日目にエントリしています。 内容はC++メモリモデルと逐次一貫性についての概説記事となっています。 flickr / nomadic_lass もくじ 忙しい人のための「C++メモリモデル」 C++メモリモデル一問一答 ソフトウェアからみた「C++メモリモデル」 “メモリ”という共有リソース C++ソースコードが実行されるまで メモリの一貫性と整合性 逐次一貫性モデル is Easy ハードウェアからみた「C++メモリモデル」 ハードウェア・メモリ一貫性モデル C++コンパイラの責任と自由 強いメモリモデル vs. 弱いメモリモデル 逐次一貫性モデル is Hard (本文のみ約9600字) まえがき When your hammer is C++, everything begins to look like a thumb
max 関数や min 関数は C 言語だと自分で書かないといけないので int max(int a, int b) { return a>b?a:b; } などと書いたりするのだが,比較を行っているので分岐が発生するから遅くなると思い,これって本当に速いのかと思って調べてみた. 実験 以下の5つのコードを用意した.これらをそれぞれ max 関数の実装とした.検証用のコードは最後に載せる.PHP でランダムな2数値を作ったデータを 1,000,000 組用意し,入力データとして配列に読み込んだあと,ループで max 関数を実行した.このループの前後で gettimeofday で時間を測り,所要時間を算出した.それぞれの実装に対し所要時間の5回の平均をとって比較した.コードは gcc version 4.2.1 (Apple Inc. build 5664) でオプション無しでコンパイルし
この OS のシステム要件が求めるプロセッサーが、SIMD 命令を使用する最適化オプションに影響します。例えば Windows Vista Home Basic までをサポートすると想定した場合、800MHz 以上のプロセッサーが求められていますから、対象となるプロセッサーは一部の Pentium III(450MHz – 1.4Gseisei Hz)と Pentium 4(1.3GHz – 3.8GHz)以上となります。まあ、少しぐらい動作クロックが違っても問題はないのですが。 この2つのプロセッサーには、サポートする SIMD 命令セットに違いがあり(Pentium III – SSE、 Pentium 4 – SSE2)、コンパイラーは対象とするプロセッサーが実行できる命令セットを使用したバイナリーを生成しなければいけません。この場合、SSE2 を利用したバイナリーを生成すると、Pe
こんにちは、二台目のmbaを買うのをためらっている岡野原です。 アイテム集合に対し、与えられたアイテムと似ているアイテムを求める、という近傍探索問題は古典的な問題でありながら、現在でも多くの改善がされています。特に言語情報、画像情報、行動履歴情報、生物情報、購買情報などありとあらゆるデータが高次元中の点として表現されるようになってきており、こうしたデータの最近傍探索は広い分野で応用範囲がある技術になっています。 アイテムが低次元(例えば2, 3次元)の場合はkd木や最近だとwavelet木を使う方法がありますが、今回扱うケースは各アイテムが高次元(数百万次元)中の点であったり、アイテム間の距離のみが定義されている場合(カーネル関数など)です。アイテム数は数万から数億ぐらいを想定しています。 最近傍探索問題はいくつかありますが、例えばk近傍グラフ構築問題では、 「アイテム集合X = x1,
現在Flaskを用いてwebサービス的なものを作っているのですが、サーバーサイドからクライアントサイドに値を渡した後にJinja2の記法で詰まるときがよくあるのでメモしておきます。 概要 Flaskの使い方をちゃちゃっと紹介(インストール済みならばコピペで動作) Flaskの日本語版ユーザーガイドはあるけど、Jinja2のガイドは英語なのが厄介 Jinja2の構文を数種類紹介 基本的な構文を組み合わせた使用例を紹介 Jinja2を活用してクライアントサイドの記述をスマートにできる Flaskとは Python用のマイクロWeb開発フレームワークです。 RubyでいうところのSinatraといっても問題ないと思います。 Flaskのインストールや使い方は他にも色々記事があると思うのでここでは割愛します。 Flaskユーザーガイドのように日本語化されたガイドがあるのも嬉しいです。 Flaskは
2016 - 07 - 13 英語を本気でマスターしたい人のための学習サイト&良記事まとめ 英語 学習 生活&ライフハック サービス シェアする Twitter Google Pocket Line 英語に好かれるとっておきの方法――4技能を身につける (岩波ジュニア新書) posted with ヨメレバ 横山 カズ 岩波書店 2016-06-22 Amazon Kindle 楽天ブックス 記事の目的 ビジネスや大学受験などで英語学習の重要性とニーズが年々高まってきており、英語を学習したいと考えている方はいつも多くいらっしゃるのではないでしょうか。しかしながら、どのように英語を学んで行けばよいかを教わる機会自体は少ないと思います。 今回は英語学習者を対象に、英語の学習方法からリーディング・ライティング・リスニング・スピーキングまで、各項目に関するおすすめのサイトと良記事をまとめました。英
Dockerコンテナでsshdを動かしてはいけない この記事ではDockerコンテナにAnsibleで接続してプロビジョニングする方法を説明します。 その前に、Dockerコンテナでsshdを動かしてAnsibleで接続しているみなさん、Ansible 2.0からDocker Connection Pluginが導入されてsshは必要なくなったので今すぐsshdを停止してください。 Dockerコンテナでsshdを動かしてはいけない理由は以下を参照してください。 Dockerコンテナ内でsshdを実行してはいけない理由 今回のファイル一式をGitHubに置きました https://github.com/eyasuyuki/docker-ansible AnsibleとDockerのインストール この記事は以下の環境で試しています。 OS X 10.11.5Ansible 2.1Docker
作成:2016/07/11 更新:2017/04/16 Web制作 > 使い方 初めてデベロッパーツールを触る人でも分かるように、簡潔・シンプルに書きました。画像付きのチートシートのようなものですね。今回は初心者の方向けということでChromeデベロッパーツールの入門編。Chromeは最新版です。 エンジニア速報は Twitter の@commteで配信しています。 設定 背景色を黒にする タブの幅を変える エディタ エディタとして使う ローカルファイルのコードを整形する コンソール ログの閲覧・JavaScriptの入力や練習 エレメント 編集 CSS内の画像サイズと大きさを知る カラーフォーマットの変更 Breakpoints / クリックされた時のコードを見つける モバイル 回線速度のエミュレート 通信環境を選択 Androidデバッグ モバイルデバックの実機を増やす ネットワーク
マルチラベル (multi-label)† マルチラベル分類問題は,多クラス分類と同様に,クラスのとりうる値の数(定義域の大きさ)が3以上.しかし,通常の多クラス分類では,各事例はどれか一つのクラスに分類される.一方,マルチラベル分類では,一つの事例が複数のクラスに同時に分類されうる. 例えば,Webページを分類を考えたとき,機械学習について書かれたページを「機械学習」と「統計」の両方のクラスに同時に分類する. クラスの定義域を \(\mathcal{C}\) とすると,多クラスの訓練事例は \((c_i\in\mathcal{C},\mathbf{x_i})\) の形式だが,マルチラベルでは定義域の部分集合を使った \((C\subseteq\mathcal{C},\mathbf{x}_i)\) の形式. ↑ 解法† 文献1で照会された問題を変換する方法を紹介 binary releva
2016年7月12日に,Chainer v1.11.0がリリースされた. Chainer Meetup 03や,Amazon Picking Challenge 2016の準備もあったろうに…なんて速度だ! (第2位,おめでとうございます https://www.preferred-networks.jp/ja/news/amazon-picking-challenge-2016_result ) この記事では,Chainerの新機能を美味しさと共に紹介していきたいと思う. トレーニング部分のコードが抽象化できるようになった Chainer Meetup 03では,「beam2dさんがゲロ吐きながらTrainコードを抽象化してくれている」という話だった. あれからおよそ2週間,Chainerのコードは変化を遂げた.変化を遂げることを許された. 先日とあるライブコーディングイベントにて私が書
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く