Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Чистое питоническое попарное евклидово расстояние строк numpy ndarray

Автор вопроса: AshОтветов: 1

У меня есть матрица размера (n_classes, n_features), и я хочу вычислить попарное евклидово расстояние каждой пары классов, чтобы на выходе была матрица (n_classes, n_classes), где каждая ячейка имеет значение euclidean_distance (class_i, class_j) .

Я знаю, что есть эти scipy пространственные расстояния (http://docs.scipy.org/doc/scipy-0.14.0/reference/spatial.distance.html) и sklearn.metric.euclidean расстояния (http://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise.euclidean_distances.html), но я хочу использовать это в программном обеспечении Theano, поэтому мне нужна чистая математическая формула, а не функции, вычисляющие результаты.

например, мне нужна серия преобразований, таких как A = X * B, D = X.T-X, results = D.T, что-то, что содержит только матричные математические операции, а не функции.

  • Возможный дубликат stackoverflow.com/questions/25886374/pdist-for- теано-тензор ? eickenberg 28.10.2014
  • Да, спасибо, это дубликат. Ash 29.10.2014

numpymatrixeuclidean-distancetheano

Ответы

Ответ 1 · рейтинг 3 · Kyle Kastner

Вы можете сделать это, используя широковещательную рассылку numpy, как показано в этой сути. Должно быть просто преобразовать это в код Theano или просто сослаться на комментарий @eickenberg выше, так как именно он показал мне, как это сделать!

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы