Eu entendo como um artificial neural network (ANN)
, pode ser treinado de maneira supervisionada usando a retropropagação para melhorar o ajuste, diminuindo o erro nas previsões. Ouvi dizer que uma RNA pode ser usada para aprendizado não supervisionado, mas como isso pode ser feito sem uma função de custo de algum tipo para guiar os estágios de otimização? Com k-means ou o algoritmo EM, existe uma função para a qual cada iteração procura aumentar.
- Como podemos fazer cluster com uma RNA e que mecanismo ele usa para agrupar pontos de dados na mesma localidade?
(e quais recursos extras são trazidos com a adição de mais camadas a ele?)
Respostas:
As redes neurais são amplamente usadas no aprendizado não supervisionado para aprender melhores representações dos dados de entrada. Por exemplo, dado um conjunto de documentos de texto, o NN pode aprender um mapeamento de documento para vetor com valor real, de maneira que os vetores resultantes sejam semelhantes para documentos com conteúdo semelhante, ou seja, preservação de distância. Isso pode ser conseguido usando, por exemplo, auto-codificadores - um modelo treinado para reconstruir o vetor original a partir de uma representação menor (ativações de camada oculta) com erro de reconstrução (distância da função ID) como função de custo. Esse processo não fornece clusters, mas cria representações significativas que podem ser usadas para cluster. Você pode, por exemplo, executar um algoritmo de agrupamento nas ativações da camada oculta.
Clustering: Existem várias arquiteturas NN diferentes projetadas especificamente para clustering. O mais conhecido é provavelmente mapas auto-organizados. Um SOM é um NN que possui um conjunto de neurônios conectados para formar uma grade topológica (geralmente retangular). Quando algum padrão é apresentado a um SOM, o neurônio com vetor de peso mais próximo é considerado vencedor e seus pesos são adaptados ao padrão, bem como os pesos de sua vizinhança. Dessa maneira, um SOM encontra naturalmente clusters de dados. Um algoritmo um tanto relacionado está aumentando o gás neural (não se limita ao número predefinido de neurônios).
Outra abordagem é a Teoria da Ressonância Adaptativa, na qual temos duas camadas: "campo de comparação" e "campo de reconhecimento". O campo de reconhecimento também determina a melhor correspondência (neurônio) para o vetor transferido do campo de comparação e também possui conexões inibitórias laterais. Detalhes de implementação e equações exatas podem ser facilmente encontrados pesquisando os nomes desses modelos no Google, por isso não os colocarei aqui.
fonte
Você deseja pesquisar em mapas auto-organizados . Kohonen (que os inventou) escreveu um livro sobre eles. Existem pacotes para isso em R ( som , kohonen ) e implementações em outros idiomas, como o MATLAB .
fonte