タグ

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

  • 2つのベクトル集合の中で距離が小さい組み合わせを求める - Qiita

    毎回忘れるのでメモ。 1つのベクトル集合$X$内のベクトル間距離の場合、距離行列が対称行列なので、triu_indicesで狭義上三角行列のインデックスを取得して、その部分だけargsortする。 import numpy as np from scipy.spatial import distance_matrix sample_num = 100 dim = 8 X = np.random.randn(sample_num, dim) D = distance_matrix(X, X) ti = np.triu_indices(sample_num, 1) sorted_indices = np.argsort(D[ti]) ix, iy = ti[0][sorted_indices], ti[1][sorted_indices] print(D[ix, iy]) import num

    2つのベクトル集合の中で距離が小さい組み合わせを求める - Qiita
    ymym3412
    ymym3412 2019/03/11
  • 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
  • 1