Linuxカーネル Docker関連 namespaceのメモ

最近はやっとまともにDockerを使い始めたということもあり、基盤技術を追う必要性も強く感じてきました。Linuxカーネルのコンテナ技術周りのコードリーディングを再開しているのですが楽しいです。 環境 * CentOS 7.2 (kernel-3.10.0-327.4.5.el7.x86_64) * Ubuntu 14.04 (3.13.0-77-generic) 読んでいるのはほとんどnamespaceとcgroup周りですけれど、この2つは違う機能なのでごっちゃにして覚えないようにしたいとこ…

OpenCVのDeep Learningモジュールの紹介

opencv_contrib レポジトリに dnn という名前のディレクトリがひそかに出来ており、中を覗いてみると cv::dnn モジュールにDeep Learning関連の実装が含まれていたので軽く試してみました。Google Summer of Code (GSoC) 2015で発表され、GitHubにて実装が公開されたという経緯のようです。 It would be cool if OpenCV could load and run deep networks trained with p…

TypeScript入門 – 機械学習の実装 1 Denoising Autoencoder

以前からなんとなく興味があった TypeScript を初めて使ってみましたので感想などを。 TypeScript lets you write JavaScript the way you really want to. TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. Any browser. Any host. Any OS. Open Source. TypeScriptとは T…

Packt Publishingのテクニカルレビュアーになった話

Packt Publishing という出版社がイギリスにあるんですが、多種多様な技術書を数多く出版しています。O’Reilly本のように翻訳はされてないので日本のエンジニアにはあんまり知られていない(? のかなと思います。 日本の出版社だとまず企画が通りそうにないマニアックなラインナップになっており、例えば scikit-learn や matplotlib などPythonモジュール単体のみを扱ったエッジの効いたタイトルも多いです。表紙のデザインはO’Reillyより…

RedisのHyperLogLogを使ってユニークユーザー数を推定する

去年の内に公開することが出来ず、ずっと下書き状態だったエントリーをちょっとずつ消化していきたいと思います。ネタとして古いものも含まれていたりすると思いますがしばらくご辛抱ください。。 Redis 2.8.9から追加された HyperLogLog をちょっと触ってみました。 環境 * CentOS 7.0 (x86_64) / Intel Xeon E312xx (Sandy Bridge) 2.4GHz 仮想3コア / 2GB RAM * Redis 2.8.17 * redis-py (Pyt…

ねこと画像処理 part 3 – Deep Learningで猫の品種識別

ねこと画像処理。 (みかん – 吉祥寺 きゃりこ) 前回の ねこと画像処理 part 2 – 猫検出 では画像内の猫の顔を検出する方法を紹介しましたが、今回はディープラーニングの技術を用いて猫の品種を識別したいと思います。 学習データ ねこと画像処理 part 1 – 素材集めでは、自分で撮影した写真を学習データとして使うと書いたのですが、都内の猫カフェ等で出会える猫に限ってしまうと品種の偏りが大きくなってしまうので、ここではしぶしぶ研究用のデータセットを使うことにします。。ただ、S…

ねこと画像処理 part 2 – 猫検出 (モデル配布)

ねこと画像処理。 (アイシャ – 池袋 ねころび) 前回のねこと画像処理 part 1 – 素材集めでは猫画像の集め方について整理しました。今回はその集めた猫画像を使って猫検出用の学習モデル(分類器)を作成したいと思います。それにはいろいろと準備が必要です。 モデル(分類器)の配布についてはこのエントリーの後半で説明します。 アノテーションデータの収集 学習モデルを作る前に猫のどの部分を検出するかを決める必要がありますが、今回は猫の顔(頭)部分の検出を行おうと思います。そのためのアノ…

C/C++のユニットテストフレームワーク CppUTest が便利

今回はC/C++のユニットテストフレームワークのひとつである CppUTest について調べてみました。TDDと相性が良いと言われている Google Test と比較して、CppUTest はマルチプラットフォーム対応がより充実しているためWeb系に限らず組み込み系などでも幅広く使われているとのことです。 参考: テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計 これまで不満はありつつも使い慣れているからという理由で CppUnit をずっと使ってい…