Как стать автором
Обновить

Варим кашу из нечеткой логики и вариационных автоэнкодеров

Уровень сложностиСложный
Время на прочтение13 мин
Количество просмотров3K
Всего голосов 15: ↑15 и ↓0+15
Комментарии8

Комментарии 8

Спасибо! Очень интересно. Буду ждать статью про детекцию аномалий. И если есть что-нибудь про шумопонижение.

Денойзинг для VAE является чуть ли не встроенной опцией, вопрос, наверное, больше в том, как этим процессом управлять. На мой взгляд тут пока способов делать правильную аугментацию данных и хорошего датасета нет.

Интересный подход. А экспериментировали ли вы с triplet loss? Он тоже справляется неплохо с кластеризацией.
Возможно в связке с предложенным вами слоем нечеткой логики позволит улучшить результат?

Triplet loss интересная штука, обязательно повозимся с ней как руки дойдут.

Triplet loss на эмбеддинги накидывать?

На центроиды гауссиан)

Хм... А зачем?)
Вообще мой вопрос относился скорее к ванильному VAE - как отметил комментатор выше: "triplet loss тоже справляется неплохо с кластеризацией." - вот интересно, на что он навешивается.
А по поводу Вашего подхода хотел уточнить кое-что (попробую сформулировать).
Допустим, у меня датасет кошечки/собачки (разметка точная, ошибка разметки <0.001%, дисбаланс классов, скажем, до 1:4), есть разметка на породы как кошечек, так и собачек, причем не полная (как не для всех данных есть разметка, так и не для всех пород), с ошибками, дисбаланс по породам может быть и того сильнее, а также есть разметка на условия съемки (допустим, в помещении / на улице), так же не полная и так же с ошибками, плюс есть корреляция с целевым классом (кошечки чаще в доме, собачки - на улице). Если вопрос формулировать кратко, то в таком сеттинге какие задачи может помочь решить Ваш подход? Например, исправить ошибки разметки, доразметить датасет на условия / породы, выявить породы, которых нет в разметке, распутать условия и метку и т.п.

С ошибками все просто - их должно быть существенно меньше, чем правильно размеченных классов, тогда функция принадлежности будет близорукой, не давать строгую 1 там, где хочется, а где то 0.8, но... Такова цена.

По поводу доразметки - к примеру, вы разметили датасет кошек и собак и среди собак выделили один класс собак - питбули, допустим, десять картинок отметили. После этого запустили кое-как обученную модель нечеткого CVAE, посмотрели, что сработало на новом классе и отметили, что является питбулем, а что не является питбулем. Как правило пары итераций на это дело хватает, чтобы получить приемлемый результат, да и общий размеченный датасет меньше.

Выявление классов, о которых вы ранее не знали - это, к сожалению, не про этот подход. Вы можете сами начать изучать латентное пространство, разбираться что там есть что и замкнете цикл привнесения экспертного знания в модель через разметку ;)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории