Uma memória com aproximação não linear dentro de clusters de dados é desenvolvida. Os clusters são propostos para serem alocados usando o método k-means. A aproximação deve ser realizada usando o treinamento de um conjunto de redes neurais. A memória de cluster é testada usando um filtro adaptável para converter as cores da imagem. De acordo com os resultados de experiências com computadores, esse tipo de memória mostrou boa capacidade de aprendizado seletivo. Pelo exemplo de um filtro adaptável, é possível treinar a memória para alterar toda a paleta de cores da imagem.
1. IntroduçãoUma desvantagem significativa das redes neurais do perceptron é sua pouca capacidade de generalizar dados multicluster. Em particular, o problema XOR para aprender uma função lógica não pode ser resolvido com um único perceptron, uma vez que duas tendências conflitantes podem ser rastreadas em uma direção dos pontos de dados para um aumento e diminuição da função decisiva de uma rede neural. Tais dependências conflitantes dentro da mesma matriz de dados de treinamento não podem ser generalizadas por uma única rede neural da forma de um perceptron multidimensional. Portanto, propõe-se dividir o conjunto de dados de treinamento em grupos dentro dos quais se aproximam redes neurais individuais. Um experimento em computador é realizado no artigo para testar esse tipo de memória na tarefa de um filtro de imagem adaptável para a conversão seletiva de uma paleta de cores.
Análise de cluster: método k-meansO método k-means é um dos métodos de cluster mais populares. Seu objetivo é obter esses datacenters que corresponderiam à hipótese de compactação de classes de dados com sua distribuição radial simétrica. Uma maneira de determinar as posições de tais centros, para um determinado número de
k , é a abordagem EM.
Neste método, dois procedimentos são executados sequencialmente.
- Definição para cada objeto de dados o centro mais próximo e atribuindo um rótulo de classe a este objeto . Além disso, para todos os objetos, sua pertença a diferentes classes torna-se determinada.
- Cálculo da nova posição dos centros de todas as classes.
Repetindo iterativamente esses dois procedimentos a partir da posição aleatória inicial dos centros de
k classes, pode-se conseguir a separação de objetos em classes que corresponderiam ao máximo possível à hipótese de compacidade radial das classes.
O algoritmo de classificação de um novo autor será comparado com o método k-means.
Cores da imagem primáriaO método k-means aplicado ao espaço de cores dos pixels em uma imagem permite destacar os tons básicos. Para fazer isso, propõe-se converter as cores dos pixels
RGB em
HSB usando o método da plataforma
Java Color.RGBtoHSB e obter a matiz da cor
H e o brilho
B. A distância entre os pixels no espaço de cores é proposta para ser determinada pela fórmula:
O arranjo inicial dos centros de cluster é proposto para ser calculado da seguinte forma.
- Encontre valores mínimo e máximo para todos os pixels.
- Divida o intervalo [ min , max ] em k partes.
- Calcular frequências de pixel em cada sub-intervalo por valor .
- Classifique os subintervalos pelo número de pixels em ordem decrescente.
- Calcular centros de pixels em subintervalos.
Análise de Cluster: Mapa de GradienteA abordagem para conduzir a análise de cluster com base no método k-means tem a desvantagem de que não há influência dos índices de imagem de saída. Para levar em consideração a alteração nos indicadores da imagem de saída, dependendo da alteração nos indicadores da imagem de entrada, é proposto o seguinte algoritmo.
- Classifique todos os vetores de entrada por tamanho
- Ao passar de um vetor de entrada para outro em uma matriz classificada, visualize a alteração na monotonicidade da quantidade vetores de saída correspondentes.
- Vetores de entrada monotônicos atribua os vetores de saída correspondentes não maiores que o limite escolhido p a uma classe.
- O limite p pode ser variado para dividir os vetores no número desejado de clusters.
Filtro adaptativoPara implementar a conversão de imagens, redes neurais são possíveis. A principal vantagem das redes neurais é sua capacidade de aprendizado automático. Nesse caso, propõe-se treinar um filtro adaptável [Shovin 2018] com base em uma rede neural para usar um par de imagens nas quais a imagem original é uma amostra e a segunda é alterada de uma amostra por qualquer filtro ou transformação existente. O filtro adaptativo precisa restaurar essa conversão. Para isso, é utilizada uma janela de tamanho
dx por dy e 3 canais de cores. Como resultado, os sinais de entrada
dx •
dy • 3 para os neurônios de entrada são usados na rede neural. A rede pode ser complementada por camadas ocultas do número de neurônios associados aos fatores de cor da conversão do filtro. É proposto o uso de 3 neurônios na saída de um neurônio, cujos sinais de saída são mapeados para três cores (
rgb - vermelho, verde, azul) no pixel central da janela a partir da imagem de saída. O sinal do canal de cores do pixel é convertido linearmente em uma faixa de valores [-
0,5 ;
0,5 ]. Considerando que uma função sigmóide antissimétrica com um intervalo de valores [-
1 ;
1 ] Para os pixels limites das imagens, quando a janela ultrapassa os limites das imagens, os valores de entrada dos neurônios da rede correspondentes a esses pixels são definidos como
0 . Uma rede neural é treinada no Windows para todos os pixels da imagem de saída pelo método de propagação reversa do erro.
Memória de clusterDepois que os tons básicos da imagem são encontrados, um filtro adaptativo é construído para os pixels de cada tom com uma largura e altura de janela de 1 pixel. Os filtros são treinados para cada cluster separadamente. Assim, usando as redes neurais do filtro adaptativo, é realizada a aproximação das cores dos pixels dentro do cluster (tom).
Experiência numéricaA memória do cluster foi treinada usando filtros adaptáveis como exemplo para transformar uma paleta de cores.
Fig. 1. Paleta original e modificada.Um filtro adaptável requer aprendizado para clarear seletivamente as cores da pele sem alterar outras cores.
Como resultado da aplicação de um filtro adaptável com memória de cluster (9 tons de clusters e clusters de acordo com o mapa de gradiente) à paleta original, foram obtidas as seguintes imagens:
Fig. 2. A paleta alterada para os tons básicos e o mapa de gradiente.ConclusãoUma abordagem é proposta para aprender funções complexas baseadas na memória de cluster com aproximação usando uma família de redes neurais e conduzindo análises de cluster dos dados de origem. Usando o filtro adaptativo como exemplo, é mostrada a possibilidade de conversão seletiva de cores da paleta. O uso de memória de cluster com aproximação é relevante quando tendências conflitantes nas mesmas direções de mudanças nos indicadores dos dados de origem são rastreadas no conjunto de dados de treinamento. Em particular, é possível resolver o problema XOR para aprender uma função lógica.
Referências- Shovin V.A. Filtro de imagem adaptável baseado em uma rede neural. // Modelagem matemática e computacional: uma coleção de materiais da VI Conferência Científica Internacional. 2018 .-- 198 p.