← Tous les exercices
Max pooling : effacer un petit décalage
Partie 2 · ★★
Après la convolution, on résume chaque zone de 2 × 2 cases par son maximum : c'est le max pooling. Voici la carte du coin (un seul 1) pour un organe, pour le même organe décalé d'un pixel vers la droite, puis pour l'organe un pixel plus bas.
Écris max_pooling (zones sans chevauchement) et compare les trois résumés : le petit décalage doit être effacé, mais pas celui qui change de zone.
carte_coin = [[0, 0, 0, 0], [0, 0, 1, 0], [0, 0, 0, 0], [0, 0, 0, 0]] carte_decalee = [[0, 0, 0, 0], [0, 0, 0, 1], [0, 0, 0, 0], [0, 0, 0, 0]] carte_bas = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 1, 0], [0, 0, 0, 0]] def max_pooling(carte, t=2): n = len(carte) return [[max(carte[i + a][j + b] for a in range(t) for b in range(___)) for j in range(0, n, t)] for i in range(0, n, ___)] r1 = max_pooling(carte_coin) r2 = max_pooling(carte_decalee) r3 = max_pooling(carte_bas) meme_resume = r1 == r2
Ctrl/⌘+Entrée