Это не официальный сайт wikipedia.org 01.01.2023

Нейронная сеть Хэмминга — Википедия

Нейронная сеть Хэмминга

Нейро́нная сеть Хэ́мминга — вид нейронной сети, использующийся для классификации бинарных векторов, основным критерием в которой является расстояние Хэмминга. Является развитием нейронной сети Хопфилда.

Сеть используется для того, чтобы соотнести бинарный вектор x = ( x 1 , x 2 , x 3 , . . . , x m ) , где x i = { 1 , 1 } , с одним из эталонных образов (каждому классу соответствует свой образ), или же решить, что вектор не соответствует ни одному из эталонов. В отличие от сети Хопфилда, выдаёт не сам образец, а его номер.

Сеть предложена Ричардом Липпманном в 1987 году. Она позиционировалась как специализированное гетероассоциативное запоминающее устройство.[1]

АрхитектураПравить

 
Схема сети Хемминга

Сеть Хэмминга — трёхслойная нейронная сеть с обратной связью. Количество нейронов во втором и третьем слоях равно количеству классов классификации. Синапсы нейронов второго слоя соединены с каждым входом сети, нейроны третьего слоя связаны между собой отрицательными связями, кроме синапса, связанного с собственным аксоном каждого нейрона — он имеет положительную обратную связь.

Обучение сетиПравить

Матрица весовых коэффициентов первого слоя получается из матрицы эталонных образов X   как w i j = x i j 2  , где матрица эталонных образов — это матрица K × M  , каждая строка которой — соответствующий эталонный бинарный вектор. Функция активации определяется как f ( s ) = { 0 , s 0 , s , 0 < s T ; T , s > T  

где T = M 2  

Матрица весовых коэффициентов второго слоя имеет размер K × K  , и определяется как


  
    
      
        
          
            [
            
              
                
                  1
                
                
                  
                  ϵ
                
                
                  
                
                
                  
                  ϵ
                
              
              
                
                  
                  ϵ
                
                
                  1
                
                
                  
                
                
                  
                  ϵ
                
              
              
                
                  
                
                
                  
                
                
                  
                
                
                  
                
              
              
                
                  
                  ϵ
                
                
                  
                  ϵ
                
                
                  
                
                
                  1
                
              
            
            ]
          
        
        ,
      
    
    
   

где ϵ ( 0 , 1 K ]  

Таким образом, обучение производится за один цикл.

Работа сетиПравить

На вход подаётся классифицируемый вектор x  . Состояние нейронов первого слоя рассчитывается как s 1 j = w j i x i  . Выход нейронов первого слоя получается путём применения функции активации к состоянию, и становится начальным значением соответствующих нейронов второго слоя. Далее, состояния нейронов второго слоя получаются из их предыдущего состояния, исходя из матрицы весовых коэффициентов второго слоя, и процедура повторяется итерационно до стабилизации вектора состояния второго слоя — пока норма разницы векторов двух последовательных итераций не станет меньше определённого значения E m a x  (на практике достаточно значений порядка 0,1).

В случае, если в итоге один вектор положительный, а остальные отрицательные, то он указывает на подходящий образец. В случае же, если несколько векторов положительны, и при этом, не один из них не превышает E m a x  , то это значит, что нейросеть не может отнести входящий вектор ни к одному из классов, однако положительные выходы указывают на наиболее схожие эталоны.

ПримерыПравить

Сеть может использоваться для распознавания изображений, состоящих лишь из чёрных и белых пикселей, например, индекс, написанный на кодовом штампе конверта.

ПримечанияПравить

  1. Richard Lippmann. 1987. An introduction to computing with neural nets. IEEE Assp magazine

ЛитератураПравить

  • Владимир Головко. Нейронные сети. Обучение, организация и применение. Книга 4. — М.: ИПРЖР, 2001. — 256 с.
  • Осовский С. Нейронные сети для обработки информации. — М.: Финансы и статистика, 2002. — 344 с.