Инвариантно ли вращение модели tenorflow inception-v3?

Я переобучил модель inception-v3 на своих собственных классах и столкнулся с проблемой:

Когда я предсказываю класс конкретного изображения, я получаю точно такой же результат, как когда я поворачиваю это изображение на 90 или 180 градусов и предсказываю класс повернутого изображения.

Вот и запуталась и спрашиваю себя: Инвариантно ли вращение модели tenorflow inception-v3?

В моем случае поворот объекта важен, и изображение x может относиться к классу A, но когда x поворачивается, оно становится объектом класса B (например, при классификации цифр: a на 180 градусов повернутый 6 становится 9).

1
0
155
1

Ответы 1

InceptionV3 не инвариантен относительно вращения. Действительно, InceptionV3 содержит сверточные слои, что означает, что небольшой блок (скажем, 3x3) умножается на обученный набор весов 3x3. Эти веса нет ограничены инвариантностью относительно вращения, поэтому сеть может и будет производить различные активации при вращении входа.

Тем не менее, Inception - довольно умная сеть, и если вы накормите ее (скажем) изображением повернутой собаки, у нее не должно возникнуть проблем с выяснением, что это все еще собака (или, по крайней мере, больше похожая на собаку, чем на собаку). к любому другому классу). Однако вы должны заметить, что вероятности классов для повернутого изображения несколько меняются.

На самом деле вероятности вообще не меняются, они действительно остаются прежними. Вот что меня смущает. Любая идея, почему это так? Что я могу сделать, чтобы различать повернутые версии изображения?

SinDemCos 11.04.2018 13:23

Другие вопросы по теме

Похожие вопросы