タグ

ブックマーク / qiita.com/yu4u (13)

  • モダンな深層距離学習 (deep metric learning) 手法: SphereFace, CosFace, ArcFace - Qiita

    はじめに 顔認識 (face recognition) 等の個体識別問題において、距離学習は非常に重要です。ここで個体識別問題というのは、顔認識を例に取ると下記のようなものです。 2つの顔画像ペアが与えられた際にその顔画像ペアが同一人物のものであるかを判定する1:1認証 N人の顔画像データが予め与えられた状態で、個人が特定されていない顔画像が入力された際に、その顔画像がN人のうちどれであるか、またはどれでもないかを判定する1:N認証 何故距離学習が重要かというと、クラス分類問題とは異なりクラス数が不定で各クラスに属する画像を事前に得ることができず1、クラス分類問題として解くことができないためである。このため、何かしらの学習済みモデルを利用して各画像から特徴ベクトルを抽出し、その特徴ベクトル間の距離がしきい値以下であれば同一人物、しきい値より大きければ異なる人物と判定する(コサイン類似度等の

    モダンな深層距離学習 (deep metric learning) 手法: SphereFace, CosFace, ArcFace - Qiita
    yu4u
    yu4u 2019/03/06
    深層距離学習 (deep metric learning) について、どうせ結局contrastive/triplet lossを使うんだろと思っていましたが、今回KaggleでArcFaceを利用してその学習の簡単さと性能にびっくりしたので解説しました。手法自体も納得性が高いで
  • ランダムな幾何変換を行いながら画像をクロップするデータ拡張ライブラリを作った - Qiita

    はじめに 深層学習を用いた画像認識では、学習時に訓練画像に対してランダムな画像処理を行いデータを水増しする、データ拡張が重要です。データ拡張を実現するため、imgaug1, Augmentor2, albumentations3といった高機能なライブラリを利用することができます。これらのライブラリは非常に多機能で素晴らしいのですが、あくまで同じ大きさの画像に対して処理を行うことが想定されているのか、様々な大きさの画像から学習に利用する画像をクロップしながら利用するような用途で下記のような不満がありました。 パイプラインで処理を行うため、質的には1回の射影変換で実現可能なクロップ、回転、スケーリングといった処理が複数回に分かれて行われる クロップを行いながら幾何変換を行うことができないため、画面外のピクセルが出力画像に混じってしまう Augmentorはランドマークのような点座標の変換に対

    ランダムな幾何変換を行いながら画像をクロップするデータ拡張ライブラリを作った - Qiita
    yu4u
    yu4u 2018/10/22
    車輪の再発明感半端ないけど、ランダムな幾何変換を行いながら画像をクロップするデータ拡張ライブラリを作りました。PyPIデビュー!
  • MobileNet(v1/2)、ShuffleNet等の高速なモデルの構成要素と何故高速なのかの解説 - Qiita

    はじめに MobileNet系の高速なモデルアーキテクチャに利用される構成要素と、それらを利用したモデルについて、何故高速なのか観点と、空間方向の畳み込みとチャネル方向の畳み込みがどのようになされているかという観点で整理を行う。 高速なモデルアーキテクチャに利用される構成要素 まず、高速なモデルに利用される畳み込み構成要素について、計算量と、空間方向の畳み込みとチャネル方向の畳み込みがどのようになっているかを説明する。 まず、一般的な畳み込みの計算量を確認する。 入力特徴マップのサイズを$H \times W$、入力チャネル数を$N$、カーネルサイズを$K \times K$、出力チャネル数を$M$とすると、一般的な畳み込み層の計算量は、$H W N K^2 M$となる。 これは、入力特徴マップの1箇所につき畳み込みのコストが$K^2 N$で、これを入力特徴マップの$H W$箇所に適用する

    MobileNet(v1/2)、ShuffleNet等の高速なモデルの構成要素と何故高速なのかの解説 - Qiita
    yu4u
    yu4u 2018/04/17
    MobileNetの亜種について、高速化のポイントの解説と、空間方向/チャネル方向の畳み込みがどうFactorizeされているかを可視化してみました
  • みんな大好き物体検出のデファクトスタンダードFaster R-CNNの特許を読んだ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Faster R-CNN1 の特許らしいです。 各位 Faster R-CNN特許です。ご査収ください。 Faster R-CNN patent was granted.https://t.co/Bxnjz5s1WU pic.twitter.com/MwAohEN712 — Yosuke Shinya (@shinya7y) 2018年1月8日 わたし、気になります!ということで、どんな感じか翻訳&解説してみます。 (2018/01/15 追記)弁理士の先生にコメントを頂きましたのでまとめに記載しました! Disclaimer

    みんな大好き物体検出のデファクトスタンダードFaster R-CNNの特許を読んだ - Qiita
    yu4u
    yu4u 2018/01/15
    Faster R-CNNの特許を翻訳&解説してみました
  • 畳み込みニューラルネットワークをKeras風に定義するとアーキテクチャの図をパワーポイントで保存してくれるツールを作った - Qiita

    (2018/01/05 追記)ちょうどpython-pptxを調べていたので、pptx形式で図を保存できるようにし、タイトルも修正しました。 はじめに 論文やスライドで、畳み込みニューラルネットワークのアーキテクチャを良い感じに表示したいときがありますよね?スライドだとオリジナル論文の図の引用でも良いかなという気がしますが、論文の図としては使いたくありません。 ということでKerasのSequentialモデルのような記法でモデルを定義すると、そのアーキテクチャを良い感じに図示してくれるツールを作りました。言ってしまえばテキストを出力しているだけのツールなので依存ライブラリとかもありません。 https://github.com/yu4u/convnet-drawer ここまで実装するつもりはなかったので綺麗に設計できていませんが、バグ報告や追加機能要望welcomeです! 経緯 元々は、

    畳み込みニューラルネットワークをKeras風に定義するとアーキテクチャの図をパワーポイントで保存してくれるツールを作った - Qiita
    yu4u
    yu4u 2018/01/04
    畳み込みニューラルネットワークをKeras風に定義するとアーキテクチャを図示してくれるツールを作ってしまった
  • 畳み込みニューラルネットワークの最新研究動向 (〜2017) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 昨年に引き続きDeep Learningやっていき Advent Calendar 2017の25日目の滑り込み記事で,畳み込みニューラルネットワークの歴史および最新の研究動向についてのサーベイです.2017年12月のPRMU研究会にて発表した,畳み込みニューラルネットワークについてのサーベイをベースに追記を行ったものになります. はじめに 畳み込みニューラルネットワーク (Convolutional Neural Networks; CNN) (以降CNN)は,主に画像認識に利用されるニューラルネットワークの一種である.CNNの原型は

    畳み込みニューラルネットワークの最新研究動向 (〜2017) - Qiita
    yu4u
    yu4u 2017/12/25
    Deep Learningやっていき Advent Calendar 2017の25日目の記事です。PRMU研究会にて発表した畳み込みニューラルネットワークに関するサーベイを追記・編集しました。
  • 新たなdata augmentation手法mixupを試してみた - Qiita

    はじめに 最近arXivに論文が公開されたdata augmentation手法であるmixupが非常にシンプルな手法だったので試してみました。 mixup mixup1は、2つの訓練サンプルのペアを混合して新たな訓練サンプルを作成するdata augmentation手法の1つです。 具体的には、データとラベルのペア$(X_1, y_1)$, $(X_2, y_2)$から、下記の式により新たな訓練サンプル$(X, y)$を作成します。ここでラベル$y_1, y_2$はone-hot表現のベクトルになっているものとします。$X_1, X_2$は任意のベクトルやテンソルです。 import numpy as np class MixupGenerator(): def __init__(self, X_train, y_train, batch_size=32, alpha=0.2, shu

    新たなdata augmentation手法mixupを試してみた - Qiita
    yu4u
    yu4u 2017/11/03
    mixupされた訓練データ吐き出すジェネレータ作った
  • 府大生が趣味ではなくニューラルネットワークの認識精度世界一を奪還してしまった論文を読んだ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 記事の前に下記の記事をどうぞ。 府大生が趣味で世界一の認識精度を持つニューラルネットワークを開発してしまった論文を読んだ (2017/10/24追記)ご人よりShakeDropの論文では、2つを比較した上でCutoutではなく、Random Erasingを利用しているとコメントを頂きましたので修正しました。 はじめに 府大生がニューラルネットワークの「認識精度世界一」を奪還してしまったようです。 一般物体認識分野「認識精度 世界一」を奪還! 府大生が開発したニューラルネットワーク https://t.co/9HSt7iGl55 —

    府大生が趣味ではなくニューラルネットワークの認識精度世界一を奪還してしまった論文を読んだ - Qiita
    yu4u
    yu4u 2017/10/23
    府大生がニューラルネットワークの「認識精度世界一」を奪還してしまったようなので書きました
  • 「破滅的忘却」を回避する Overcoming Catastrophic Forgetting by Incremental Moment Matching, NIPS'17. 読んだ - Qiita

    はじめに ニューラルネットワークにおいて、新たなタスクの学習を逐次的に行うと、以前学習したタスクに対する性能が急激に低下にcatastrophic forgetting(破滅的忘却)が発生してしまうことが課題となっており、それを解決するための手法を提案している。 Overcoming Catastrophic Forgetting by Incremental Moment Matching, NIPS'17. https://arxiv.org/abs/1703.08475 以前にDeepMindのアプローチを読んで、これ系には興味があるので読んだ。背景や既存手法(EWC)の詳細は下記の記事に書いた。 ニューラルネットワークが持つ欠陥「破滅的忘却」を回避するアルゴリズムをDeepMindが開発した論文を読んだ アプローチ 目的は、タスク1に関する学習データ$\mathcal{D}_1 =

    「破滅的忘却」を回避する Overcoming Catastrophic Forgetting by Incremental Moment Matching, NIPS'17. 読んだ - Qiita
    yu4u
    yu4u 2017/10/10
    以前にDeepMindのアプローチを読んで、これ系には興味があるので読んだ
  • 最新の物体検出手法Mask R-CNNのRoI AlignとFast(er) R-CNNのRoI Poolingの違いを正しく理解する - Qiita

    最新の物体検出手法Mask R-CNNのRoI AlignとFast(er) R-CNNのRoI Poolingの違いを正しく理解するDeepLearningR-CNNfaster-r-cnnfast-r-cnnmask-r-cnn はじめに CNNベースの高速な物体検出の先駆けであるFast R-CNN1やFaster R-CNN2、最新のMask R-CNN3では、まず物体の候補領域をregion proposalとして検出し、そのregion proposalが実際に認識対象の物体であるか、認識対象であればどのクラスかであるかを推定します。 Fast R-CNN系の手法のベースとなったR-CNN4では、region proposalの領域を入力画像から切り出し、固定サイズの画像にリサイズしてからクラス分類用のCNNにかけるという処理を行っていたため、大量のregion proposa

    最新の物体検出手法Mask R-CNNのRoI AlignとFast(er) R-CNNのRoI Poolingの違いを正しく理解する - Qiita
    yu4u
    yu4u 2017/10/01
    RoI AlignはともかくRoI Poolingについてもあまり詳細な説明を見たことがないので頑張って解説してみました
  • 研究における評価実験で重要な7つのこと - Qiita

    はじめに 自身の研究を論文としてまとめる際には、自分の提案手法の有効性を、理論的な説明だけではなく実験的にも示す必要があります。トップカンファレンスにおいては評価実験は網羅的で隙がないことが前提となり、中堅カンファレンスでは評価実験をしっかりしていれば大体通るという印象があります。 ポエムでは、卒業研究の季節に向けて、評価実験において個人的に重要だと思っていることを書いていきたいと思います。 突っ込み、改善提案、最後のTIPSの拡充等、大歓迎です。 前提 コンピュータサイエンス分野を想定としています。また、筆者の専門はコンピュータビジョンであるため、ピュアな機械学習に関する研究等では当てはまらない内容もあると思います。 また、ある程度確立された問題設定下での研究を想定しています。研究自体が全く新しい問題設定を行っているケースでは、ベースラインとなる手法自体も自分で考えないといけないなど、

    研究における評価実験で重要な7つのこと - Qiita
    yu4u
    yu4u 2017/09/22
    卒研シーズンに向けて研究における評価実験で気をつけるべきことについてポエムを書きました
  • フィルタサイズに対して定数オーダーの計算量のmin/maxフィルタを実現するvan Herk/Gil-Wermanアルゴリズム - Qiita

    はじめに 入力信号に対し、あるフィルタサイズでmax/minをとっていくような処理が必要なケースがある。一番のユースケースは、画像処理におけるdilation(膨張)やerosion(収縮)処理である。個人的には、昔、ある幅を持ったnon-maximum suppression処理を行うために実装したことがある。 この処理は、ナイーブに実装すると信号長×フィルタサイズのオーダーの計算量が必要となるが、信号長のオーダーの計算量に抑えることができる「van Herk/Gil-Wermanアルゴリズム」というものが存在し、なるほどーという感じなので紹介する。 なお、長い信号に対してあるフィルタサイズのmin/maxをずっとかけていった際に、計算量がフィルタサイズに依存しないようにできるということなので、1回のmin/maxが定数オーダーということではない。 ちなみにこのアルゴリズムは、文献1 2

    フィルタサイズに対して定数オーダーの計算量のmin/maxフィルタを実現するvan Herk/Gil-Wermanアルゴリズム - Qiita
    yu4u
    yu4u 2017/09/11
    久々にこのアルゴリズム見たらやっぱり面白かったので解説書いた。これとかintegral imageとかDCT/FFT組み合わせて良い感じのCNNとかできないかな
  • 『Instagramに投稿された写真から投稿者が「うつ病かどうか」を人間の医師を上回る70%の精度で判定するAI登場』で「精度」を振り返る - Qiita

    全てのサンプルが4種類に分類され、例えばTrue Positiveは正解が陽性であり、予測結果も陽性と正しく判定されたサンプルの数になります。名前の読み方としては、前半が予測が合っているかどうか(合っていればTrue)、後半が予測結果を表しています。 上記の混同行列を元に、下記のような精度指標を求めることができます。 正確度(Accuracy):(TP+TN)/(TP+FP+FN+TN) サンプル全体の判定自体の精度 適合率(Precision):TP/(TP+FP) 陽性と判定されたサンプルのうち、実際に正解が陽性である率(誤検出の少なさ) 再現率(Recall)、感度(Sensitivity)、真陽性率(True positive rate):TP/(TP+FN) 正解が陽性であるサンプルのうち、正しく陽性と判定された率(見落としの少なさ) 偽陽性率(False positive ra

    『Instagramに投稿された写真から投稿者が「うつ病かどうか」を人間の医師を上回る70%の精度で判定するAI登場』で「精度」を振り返る - Qiita
    yu4u
    yu4u 2017/08/16
    最近AIで○○が精度××%で実現!みたいなニュース記事をよく見かけるのでポエム書いた
  • 1