Existem muitas abordagens que visam tornar uma rede neural treinada mais interpretável e menos parecida com uma "caixa preta", especificamente redes neurais convolucionais que você mencionou.
Visualizando as ativações e pesos da camada
A visualização de ativações é a primeira óbvia e direta. Para redes ReLU, as ativações geralmente começam relativamente esbeltas e densas, mas à medida que o treinamento avança, as ativações geralmente se tornam mais esparsas (a maioria dos valores é zero) e localizadas. Às vezes, isso mostra o que exatamente uma camada específica é focada quando vê uma imagem.
Outro ótimo trabalho sobre ativações que eu gostaria de mencionar é o deepvis, que mostra a reação de todos os neurônios em cada camada, incluindo as camadas de pool e normalização. Aqui está como eles descrevem :
Em resumo, reunimos alguns métodos diferentes que permitem “triangular” o recurso que um neurônio aprendeu, o que pode ajudá-lo a entender melhor como funcionam os DNNs.
A segunda estratégia comum é visualizar os pesos (filtros). Eles geralmente são mais interpretáveis na primeira camada CONV, que está olhando diretamente para os dados brutos de pixel, mas é possível também mostrar os pesos dos filtros mais profundos na rede. Por exemplo, a primeira camada geralmente aprende filtros semelhantes a gabor que basicamente detectam arestas e bolhas.
Experimentos de oclusão
Aqui está a ideia. Suponha que um ConvNet classifique uma imagem como um cachorro. Como podemos ter certeza de que ele está realmente captando o cachorro na imagem, em oposição a algumas dicas contextuais do plano de fundo ou a algum outro objeto diverso?
Uma maneira de investigar qual parte da imagem vem de alguma previsão de classificação é plotando a probabilidade da classe de interesse (por exemplo, classe de cães) como uma função da posição de um objeto oclusor. Se iterarmos por regiões da imagem, substituí-la por todos os zeros e verificar o resultado da classificação, podemos criar um mapa de calor bidimensional do que é mais importante para a rede em uma imagem específica. Essa abordagem foi usada nas redes convolucionais de visualização e compreensão de Matthew Zeiler (a que você se refere na sua pergunta):
Deconvolução
Outra abordagem é sintetizar uma imagem que provoca o disparo de um neurônio em particular, basicamente o que o neurônio está procurando. A idéia é calcular o gradiente em relação à imagem, em vez do gradiente usual em relação aos pesos. Então você escolhe uma camada, defina o gradiente para que seja zero, exceto um para um neurônio e backprop para a imagem.
Deconv realmente faz algo chamado backpropagation guiado para criar uma imagem mais bonita, mas é apenas um detalhe.
Abordagens semelhantes a outras redes neurais
Recomendo vivamente este post de Andrej Karpathy , no qual ele brinca muito com as Redes Neurais Recorrentes (RNN). No final, ele aplica uma técnica semelhante para ver o que os neurônios realmente aprendem:
O neurônio destacado nesta imagem parece ficar muito animado com os URLs e desliga fora dos URLs. O LSTM provavelmente está usando esse neurônio para lembrar se ele está dentro de um URL ou não.
Conclusão
Mencionei apenas uma pequena fração dos resultados nessa área de pesquisa. É bastante ativo e novos métodos que lançam luz ao funcionamento interno da rede neural aparecem a cada ano.
Para responder à sua pergunta, sempre há algo que os cientistas ainda não sabem, mas em muitos casos eles têm uma boa imagem (literária) do que está acontecendo lá dentro e podem responder a muitas perguntas específicas.
Para mim, a citação de sua pergunta simplesmente destaca a importância da pesquisa não apenas da melhoria da precisão, mas também da estrutura interna da rede. Como Matt Zieler conta nesta palestra , às vezes uma boa visualização pode levar, por sua vez, a uma melhor precisão.