Программирование/математика
May. 9th, 2018 02:41 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
На совсем другую тему. У меня есть вопрос об описании одного алгоритма. Я положу это все под кат.
Я читаю статью "Towards Open Set Deep Networks" с целью применить содержащуюся в этой статье идею для отбрасывание картинок, не принадлежащих ни к одному из классифицируемых классов.
Возможно, то, что это все для классификации, networks эти -- возможно, этого всего даже не нужно знать, чтобы ответить на мой вопрос.
Вроде бы, статья весьма просто написана, и идея, вроде, мне понятна -- по крайней мере, я думаю, что понятна. Но я не могу понять описанные в этой статье алгоритмы. Мне кажется, что дело в том, что я не понимаю notation, но может я и чего-то более фундаментального не понимаю. В общем, если кому-то написанное понятно, то я был бы благодарен за помощь.
Я вставлю сюда первый алгоритм, как картинку.

Я плохо понимаю значение i. x_i_j -- это что, все inputs, которые сеть классифицирует, как класс j? И, соответственно, S_i_j -- это что? Согласно определения, получается, что j-координата activation of x_i_j.
Дальше, mu_j -- это вектор или число? По идее, как я ее понимаю, должен быть вектор, но по определению вроде как число, или нет?
Что такое S_hat? Я нигде не вижу определения, вообще.
Идею я понимал так. Для каждого класса берем activation vectors всех inputs, которые сеть классифицирует как данный класс. По каждой координате отдельно вычисляем mean, и таким образом получаем mean activation vector для этого класса. А потом уже смотрим на distribution расстояний этих верно классифицированных inputs до mean activation vector.
Но сейчас я уже сомневаюсь, что правильно понял.
Я читаю статью "Towards Open Set Deep Networks" с целью применить содержащуюся в этой статье идею для отбрасывание картинок, не принадлежащих ни к одному из классифицируемых классов.
Возможно, то, что это все для классификации, networks эти -- возможно, этого всего даже не нужно знать, чтобы ответить на мой вопрос.
Вроде бы, статья весьма просто написана, и идея, вроде, мне понятна -- по крайней мере, я думаю, что понятна. Но я не могу понять описанные в этой статье алгоритмы. Мне кажется, что дело в том, что я не понимаю notation, но может я и чего-то более фундаментального не понимаю. В общем, если кому-то написанное понятно, то я был бы благодарен за помощь.
Я вставлю сюда первый алгоритм, как картинку.

Я плохо понимаю значение i. x_i_j -- это что, все inputs, которые сеть классифицирует, как класс j? И, соответственно, S_i_j -- это что? Согласно определения, получается, что j-координата activation of x_i_j.
Дальше, mu_j -- это вектор или число? По идее, как я ее понимаю, должен быть вектор, но по определению вроде как число, или нет?
Что такое S_hat? Я нигде не вижу определения, вообще.
Идею я понимал так. Для каждого класса берем activation vectors всех inputs, которые сеть классифицирует как данный класс. По каждой координате отдельно вычисляем mean, и таким образом получаем mean activation vector для этого класса. А потом уже смотрим на distribution расстояний этих верно классифицированных inputs до mean activation vector.
Но сейчас я уже сомневаюсь, что правильно понял.
no subject
Date: 2018-05-10 12:15 am (UTC)Следовательно, я чуть более обоснованно могу предположить что функция принимает все значения в классе j и выдаёт максимальное. Если это так, то S-hat должно быть эмпирической функцией (построенной на значениях v_j(x_ij) ) от которых вычисляется расстояние до того самого muj. Но я бы задал прямой вопрос автору. Тем более я не знаком с этой малиной и их закидонами