Czy można używać autokoderów do nauki nadzorowanej?

9

Czy autokoderów można używać do nadzorowanego uczenia się bez dodawania warstwy wyjściowej ? Czy możemy po prostu nakarmić go połączonym wektorem wejściowo-wyjściowym do treningu i zrekonstruować część wyjściową z części wejściowej podczas wnioskowania? Część wyjściowa byłaby traktowana jako brakująca wartość podczas wnioskowania i zastosowano by pewną imputację.

rcpinto
źródło
Nie do końca rozumiem. Jeśli trenujesz go za pomocą wektorów wejściowych i wyjściowych, będziesz również potrzebował wektorów wyjściowych podczas wnioskowania o dostarczenie go do sieci. Co zamierzasz z tym zrobić?
Didam I
Nie, byłyby traktowane jako brakujące wartości i w jakiś sposób przypisane. Autoencoder próbowałby go zrekonstruować (konieczne może być wielokrotne iterowanie). Pytanie dotyczy właśnie wykonalności tego pomysłu. Przeredaguję, aby wyjaśnić.
rcpinto

Odpowiedzi:

2

Jednym z takich artykułów, które znam i które wdrożyłem, jest częściowo nadzorowane uczenie się przy użyciu sieci drabinkowych . Cytuję tutaj ich opis modelu:

Nasze podejście podąża za Valpolą (2015), która zaproponowała sieć drabinkową, w której zadaniem pomocniczym jest odtajnianie reprezentacji na każdym poziomie modelu. Struktura modelu to autoencoder z pomijanymi połączeniami z enkodera do dekodera, a zadanie uczenia się jest podobne do tego w denoising autoencoderów, ale jest stosowane do każdej warstwy, nie tylko danych wejściowych. Połączenia pomijane zmniejszają nacisk na reprezentowanie szczegółów w wyższych warstwach modelu, ponieważ dzięki połączeniom pomijanym dekoder może odzyskać wszelkie szczegóły odrzucone przez koder.

W celu uzyskania dalszych wyjaśnień na temat architektury sprawdź Dekonstrukcja architektury sieci drabinowej autorstwa Yoshua Bengio.

AlexGuevara
źródło
1

Pamiętam czytanie artykułów o takich systemach, jeśli dobrze cię rozumiem, ale w tej chwili nie pamiętam tytułów.

Pomysł polegał na wykorzystaniu generatywnych RNN opartych na znakach, wytrenowaniu ich w sekwencjach zakodowanych jak „datadatadatadata | answer”, a następnie podczas wprowadzania „otherdatadata |” to nadal generowałby oczekiwaną odpowiedź.

Ale, o ile pamiętam, była to tylko zgrabna ilustracja, ponieważ jeśli masz dane do zrobienia czegoś pod nadzorem, to uzyskasz lepsze wyniki konwencjonalnymi metodami.

Piotr jest
źródło