しんさんのブログ

科学や技術のこと読書のことなど

2018-01-01から1年間の記事一覧

Deep learning を使ったobject_detectionの情報

Deep learning を使ったobject_detectionの情報は以下のサイトを見ればすべてまとまっています。 サーベイ論文をもとにして、各手法の論文や実装サイトへのリンクが時系列でまとめられています。 github.com

transfer learning, fine tunning, distillation, NNモデル圧縮について調べてみました

Transfer learning ある領域で学習したモデルを別の領域の学習に利用する手法のことです。 例えばimage netのような膨大な量の学習データを使用して1000カテゴリ分類の学習を行ったとして、その結果を用いて学習データの少ない10カテゴリ分類の問題を…

Anaconda でよく使うコマンド

Windows10でのpython環境の管理にAnacondaを利用していますが、Anaconda Navigatorが重いので大抵はコマンドラインで操作しています。 以下のサイトでよく使うコマンドがまとめられていましたのでご紹介します。 qiita.com仮想環境の構築をするときは conda …

tensorboardではまった話

最近久しぶりにtensorboarを使ったらはまったので顛末をメモ 動作環境はWindows10 + Anacondaでtensorflow1.9です。 現象 tensorboard --logdir LOG_FILE_PATH (LOG_FILE_PATHは絶対パス) でtensorboadは以下のメッセージが表示され問題なく動いているように…

論文: "CNN-PS: CNN-based Photometric Stereo for General Non-Convex Surfaces"

"CNN-PS: CNN-based Photometric Stereo for General Non-Convex Surfaces" https://arxiv.org/abs/1808.10093 ECCV2018 Accept論文 実装コード: github.com Photometric stereoで法線を取得する話。 複雑な光源環境でオブジェクトのphotometric stereo 画像…

論文: "UNet++: A Nested U-Net Architecture for Medical Image Segmentation"

"UNet++: A Nested U-Net Architecture for Medical Image Segmentation" https://arxiv.org/abs/1807.10165 医療画像のセグメンテーションや領域切り出しでよく使われているU-Netを変形してUNet++という新しいネットワークを 提案した論文。Unetはencoder-d…

論文: "Loosely-Coupled Semi-Direct Monocular SLAM"

"Loosely-Coupled Semi-Direct Monocular SLAM" https://arxiv.org/abs/1807.10073 https://www.youtube.com/watch?v=j7WnU7ZpZ8c&feature=youtu.beVisual SLAMの話です。 ピクセルの情報を直接使うDirectな方法と画像の特徴量を使うFeature-baseな方法を合…

はてなブログで数式をきれいに書く方法

TeX

はてなブログでtexを使って数式を書くときに、思い通りにきれいな式が出ないことがあります。 はてなブログ特有の方法があるようなのですが、以下のサイトにわかりやすくまとめてありました。 7shi.hateblo.jp 私のブログでも、下付きの添え字や上付きの添え…

論文:"The Double Sphere Camera Model"

論文:"The Double Sphere Camera Model" https://arxiv.org/abs/1807.08957自動運転やロボットARやドローンなどカメラ画像ベースで周辺のオブジェクトの3D構造を取得したり、自己位置を推定したいという要求はたくさんあります。 そんなとき、なるべく少な…

論文: "Deep Clustering for Unsupervised Learning of Visual Features"

"Deep Clustering for Unsupervised Learning of Visual Features" https://arxiv.org/abs/1807.05520教師なし学習の話。 クラスター分類をCNNで行うのだが、k-meansでクラスタ分類した結果を使用してCNNを学習することで高い性能が出たという話。 ImageNet…

論文: "A Framework for Evaluating 6-DOF Object Trackers"

[1803.10075] A Framework for Evaluating 6-DOF Object Trackers日々論文をタイトルだけ見たり、眺めるだけだったり、流し読みしたり、熟読したりしています。 その記録を簡単に書いていきます。今日は表題の論文についてです。[概要] 6DOFのオブジェクト…

Processingで超お手軽に物体認識をやってみる

Pythonでtensorflowはたくさん記事があり、お手軽に使えますが、Processingでも推論だけでしたら非常にお手軽に試すことができます。 私の実行環境は、以下のとおりです。 Windows10 64bit Processing 3.3.7この記事はつぎのブログを参考にしました。 Tensor…

「人工知能と経済の未来」 井上 智洋著 を読みました

人工知能と経済の未来 2030年雇用大崩壊 (文春新書)作者: 井上智洋出版社/メーカー: 文藝春秋発売日: 2016/07/21メディア: 新書この商品を含むブログ (31件) を見る人工知能が経済にどのような影響を与えるのかをテーマにした本です。 現在のAIは囲碁や将棋…

Kerasのコーディングではまったこと集

Kerasのsessionはきちんとclearさせてないとエラーがでます Tensoflow + Keras のコードの実行で、 TypeError: 'NoneType' object is not callableというエラーがでて原因がわからず少しはまりました。 どうやら、kerasのバックエンドのTensorFlowのsession…

Google のTPU v3について

Google I/O 2018で発表された、機械学習を効率よく演算できる専用ASICチップのTPUについてです。 第3世代の発表が今回行われていたので、メモってみます。彼らのアナウンスをまとめると:Today we're announcing our third generation of TPUs. Our latest l…

TensorflowのTutorial "Deep MNIST for Experts"を試した時のメモ

wshinya.hatenablog.com前回は"MNIST For ML Beginners"の解説を読みプログラムを実行してみました。 今回は、以下のリンクから"Deep MNIST for Experts"の解説を読みプログラムを実行してみます。 Deep MNIST for Experts | TensorFlow前回のBeginners編と…

TensorflowのTutorial "MNIST For ML Beginners"を試した時のメモ

Tensorflowを勉強するにはTensorflowのTutorialを自分で入力して実行しながら理解するのが一番手っ取り早いです。 特に初めてTensorflowを動かすときには、以下のリンク先のMNIST for ML BeginnersというTutorialがおすすめです。 MNIST For ML Beginners | …

深層学習でよく使われる学習用データセットまとめ

3D系のデータセットは別の記事にまとめました wshinya.hatenablog.comarXivTimesに素晴らしいまとめがあります。 github.com 商用利用可能な6種類の最大4Kサイズの人物の肌テクスチャが無料配布されています 商用利用可能な6種類の最大4Kサイズの人物の肌テ…

Kerasを使っていてPILが必要になったときの対処法

conda install PILとやったらpythonのversionが3.5だと怒られてしまいます。 PILの代わりに、 conda install Pillowとすればいいようです。以下のサイトを参考にしました。 qiita.comPillowについては以下を参照 qiita.com

Tensorflow2.0 CPU/GPU版 + Keras + OpenCV ver3.0の環境構築

2019年10月 更新 インストール環境 - Windows64Pro - Nvidia Geforce2080TiAnacondaでよく使うコマンドは以下のサイトが便利です. qiita.com - Windows: tensorflow CPU版1) anaconda の仮想環境の作成 まずは、pipのアップデート python -m pip install --u…

NVIDIA GPUの歴史ざっくりまとめ

GPU

GPUのアーキテクチャの変遷について自分用のメモです 2006年 CUDA発表 G80アーキテクチャ発表 初めてのUnfied shader architecture GeForce88002007年 Tesla HPC用 TSUBAME1.2 Tesla S1070 2008年Top500で20位2009年 Fermi世代 double precisionの大幅な性能…

機械学習基礎の基礎: 過学習を防ぐ正則化

前回のブログでは2次元平面上の8つの点を10次関数でfittingしました。 すると、fittingする関数の自由度が高いために、8つの点すべてを通るようにうまくパラメータを調節できてしまい、学習データに対しては100%近い正解率がでるのに、新たなデータ…

機械学習基礎の基礎: 過学習

今回は過学習についてみて見ます。 まずは訓練データを作成します。 訓練データは3次関数にノイズを加えた8つの点(x, y)構成することとします。 プログラムの初めに8点生成して、それらの点を10次関数でfittingすることにします。 データの個数がfitti…

機械学習基礎の基礎: パーセプトロンで線形分離を実装してみる

今度は、パーセプトロンを使って線形分離をしてみます。 適当に線形分離できそうなデータを以下のように作ってみました。 データは2次元平面上の点の座標(x, y)とそれぞれの正解ラベル1 or -1をつけています。 10, 20, 1 11, 30, 1 15, 30, 1 17, 35, 1 5,…

機械学習基礎の基礎: 確率的勾配降下法の実装

前回のデータとコードを改造してStochastic gradient descent method(SGD)を実装してみました。 と言っても、大した改造ではなくパラメータの更新を1つの訓練サンプルごとに行うようにしただけです。 np.random.permutation(X.shape[0]) で、いったんランダ…

機械学習基礎の基礎: 非線形fitting

前回の線形fittingでは、身長が低いところでfittingのずれが大きくなっていましたので、今回は2次関数でfittingすることにします。 同時に、入力データやパラメータをmatrixで扱うことでコードをシンプルにしています。 前回との差分は、fitting関数を y = …

機械学習基礎の基礎: データ読み込みから線形fittingまで

機械学習の基本である線形回帰のコードを書いてみます。流れの説明: 1) データファイルの読み込み: データファイルはtextデータで x0, y0 x1, y1 ... のように格納しています。今回以下のような ダミーの(身長, 体重)データを使用しました. 85, 16.8 90.5,…

jupyterlabをインストールしてみた

jupyter notebookの次期バージョンとしてjupyterlabが予定されているらしいです。 以下の記事を読み、試してみたいと思いインストールしてみました。 http://www.publickey1.jp/blog/18/webidejupyterlabpythonrscala.htmlインストール方法 jupyterlabのgith…

Python + OpenCV3で顔認識

先日, Python + OpenCV3の環境を構築しましたので, この環境でWeb camからの映像を使用して顔認識してみました.初めにanacondaでopnecvの仮想環境をactivate して jupyter notebookを立ち上げます. 以下jupyter notebookのコードと解説を書きます. 顔認識用…

数理統計の勉強のための資料

機械学習やビッグデータを勉強していると根本的な数理統計の知識が足りないことに気づきました。 数理統計の勉強のための参考書をリストアップします。「Introduction to Mathematical Statistics」Introduction to Mathematical Statistics: Pearson New In…