Я хочу использовать pdist()
в MATLAB и использовать пользовательскую функцию «Extended Jaccard» определено, как показано ниже:Реализовать Extended Jaccard Similairty в pdist MATLAB
S_EJ(X_a, X_b) = (X_a . X_b)/(||X_a||^2 + ||X_b||^2 - X_a . X_b)
где X_a . X_b
представляет собой скалярное произведение между векторами X_a
и X_b
и | | ||^2 - норма_2 данного вектора.
Настоятельно рекомендуется использовать bsxfun()
, поскольку он основан на многопоточности. Конечно, если это возможно.
Что вы думаете о:
SEJ(x,y) = bsxfun(@(x, y) (x.*y)./(norm(x)^2 + norm(y)^2 - (x.*y)) , x, y);
Спасибо за Ваше мнение заранее.
так этот дом работа для нас или для вас? По крайней мере, покажите нам, что вы пробовали и сделали до сих пор, пожалуйста. – GameOfThrows
GameOfThrowns, конечно, это не домашнее задание. Мое единственное сомнение состояло в том, чтобы правильно использовать bsxfun(). Функция должна была бы выглядеть так: S_EJ = @ (X_a, X_b) (bsxfun (xxxxxx, X_a, X_b)) – Yas
Я отредактировал вопрос, пожалуйста, посмотрите :-) – Yas