Chíp thần kinh đầu vào rời rạc

Một phần của tài liệu Nghiên cứu thiết kế mạng nơron truyền thẳng nhiều lớp bằng các phần tử điện tử thông thường (Trang 57 - 92)

Thông thƣờng , đầu vào của một mạng noron thì đƣợc lấy từ ký tự đầu vào riêng biệt bao gồm một số, NA, của ký tự (hoặc chữ cái), 1, 2, …, NA. Để tránh sai nhịp quan hệ giữa các chữ cái khác nhau, mã hóa đơn phân của các chữ cái thì đƣợc sử dụng; điều này là, NA đầu vào noron tuyến tính thì đƣợc giao cho mỗi đầu vào logic (hoặc đầu vào chữ cái), X:

Chúng ta chú ý rằng đầu vào mạng thì đƣợc sử dụng phân bố thƣa thớt. Ta có thể dùng -1 thay thế 0 nhƣ giá trị không hoạt động, nhƣ thảo luận trong 2.2.2.4. Tuy nhiên trong trƣờng hợp này, sự lựa chọn 0 thực sự tăng cƣờng khả năng học: Không chỉ trọng số liên quan tới ký tự đầu vào hiện này trong mỗi đầu vào ký tự sẽ đƣợc sửa đổị

2.2.4. Đo lường chíp: 2.2.4.1 Chíp noron:

Trong hình 2.19 đo đạc đặc điểm chuyển đổi noron cho các giá trị khác nhau của phạm vi điện áp đầu vào VIS có thể nhìn thấy đƣợc. Hàm chuyển đổi tối đa không tuyến tính (so với một tanh lý tƣởng) là Dg  2% của biên độ đầu ra và sự không tuyến tính bắt nguồn từ Ddg  10%

Sự không tuyến tính thấp này chứng tỏ khả năng áp dụng của LBM MOST cặp chênh lệch và khả năng tính toán chính xác của thiết bị tích phân trên cơ sở của đầu ra noron. A A A A A 1 A N 0 N 1 N 2 N N 1 2 N X x , x , x ,..., x . 1 0 0 ... 0 0 1 0 ... 0 0 0 0 ... 1             

Hình 2.19: Đo lường chức năng truyền tải noron.

2.2.4.2 Chíp khớp thần kinh:

Đo lƣờng đặc điểm chuyển đổi khớp thần kinh cho một khớp thần kinh đơn có thể thấy trên hình 2.20. Nhƣng đặc điểm chỉ ra là tuyến tính tốt (Dwz  3% hoặc 5% bít độ chính xác) – ngoại trừ vùng diện tích với giá trị âm Vwkj và giá trị dƣơng vzj (Dwz  16%). Điều này là bởi vì cần thiết để giảm VSS, để đảm bảo một phạm vi dòng điện đầu ra hợp lý. Sự không tuyến tính là không có ý nghĩa cấm các ứng dụng cho chip khớp thần kinh; huấn luyện chíp theo vòng lắp hoặc một cơ chế luật học trên chip tƣơng lai có thể dễ dàng bù đắp cho nó.

Hình 2.20: Đo lường đặc điểm khớp thần kinh.

Độ phân giải ma trận trọng số đã đƣợc đo với Vwres  2mV hoặc 10 bit tại ít nhất một dải tần 2V của “ma trận điện áp”. Những thay đổi nhỏ thì có thể nhƣng nằm ở giữa mặt phẳng nhiễu của đầu ra chip khớp thần kinh. Đối với một hệ thống chế độ gọi lại độ phân giải là đủ cho một phạm vi rộng của các ứng dụng.

Chíp khớp thần kinh thế hệ thứ hai: Để đo lƣờng trên một chíp khớp thần kinh với chuyền tải dòng điện dựa trên các khớp thần kinh khác nhaụ

Dòng điện sai lệch đầu ra trên chip khớp thần kinh và dòng điện sai lệch đầu vào trên chip noron thì khá lớn; tiếp cận ở mức độ dòng điện đầu ra khớp thần kinh lớn nhất. Lý do có thể (ngoài việc không phù hợp thành phần) là khuếch đại thuật

toán có hệ số khếch đại thấp (< 60dB), cùng với cấp điện áp sai lệch khếch đại thuật toán là 2V sẽ cung cấp cho đo lƣờng sai lệch dòng điện đầu rạ Tuy nhiên, điều này không nhất thiết phải là một vấn đề lớn (cung cấp rằng mạng đƣợc huấn luyện và đang đƣợc sử dụng giống nhƣ chip) nhƣ dòng điện sai lệch chính là sự di chuyển những độ lệch. Tƣơng tự ma trận điện áp sai lệch (là tƣơng đối nhỏ) có thể đƣợc sử dụng nhƣ trọng số ban đầu, ngẫu nhiên, nhỏ khi mạng đƣợc huấn luyện. Cần chú ý rằng lỗi sai lệch thì không có hệ thống

Với mỗi một sai lệch dòng điện lớn, đặc điểm bộ chíp là tƣơng thích với rất nhiều ứng dụng ANN. Giới hạn chính của mạng là phạm vi giới hạn của các khớp thần kinh.

2.2.4.3. Chip đa hợp:

Một chip noron và một chíp khớp thần kinh liên kết với nhau, đặc điểm chuyển giao hỗn hợp có thể đo lƣờng đƣợc. Điều này thể hiện trên hình 2.21 cho giá trị khác nhau của độ bền khớp thần kinh, xác minh sự tƣơng thích chip noron và chíp khớp thần kinh. Phản ứng bƣớc nhảy của sự kết hợp noron-khớp thần kinh đƣợc chỉ ra trên hình 2.22. Sự chậm trễ thông qua một lớp của một ANN dựa trên chíp của chúng tôi có thể đo lƣờng trên đƣờng đặc tính này: cho một độ chính xác đầu ra 8 bit chúng tôi có tlpd  2.6 m, tƣơng ứng với 6MCPS cho mỗi con chíp khớp thần kinh. Nhƣ chíp khớp thần kinh trễ lan truyền nên phần lớn độc lập của số lƣợng khớp thần kinh, một chíp khớp thần kinh cỡ đầy đủ (100x100 khớp) đã đƣợc dự kiến sẽ làm 3.8 GCPS.

Hình 2.21: Đo lường đặc điểm chuyển đổi noron-khớp thần kinh.

Hình 2.22: Đo lương phản ứng bước nhảy noron-khớp thần kinh.

2.3. Kết luận chương:

Trong chƣơng này đã đƣa ra những lý thuyết để thiết kế một mạng noron nhân tạo VLSI tƣơng tự một lớp. Để xác định noron thứ tự đầu tiên đƣợc sử dụng bằng điện áp và dòng điện liên tục cho tín hiệu đã đƣợc lựa chọn và một noron định vị cấu trúc nhiều lớp trên một chip và khớp thần kinh trên chip.

Các khối thành phần của một mạng noron: bộ nhớ, mạch nhân và ngƣơng đã đƣợc nghiên cứu chi tiết. Bộ nhớ có thể sử dụng bộ nhớ lƣu trữ điện đơn giản, Ram kỹ thuật số, sử dụng lƣu trữ kỹ thuật số kết hợp với mạch điều chỉnh tƣơng tự. Mạch nhân chì có thể sử dụng mạch nhân bốn góc phần tƣ hoặc mạch nhân MRC gọn nhẹ. Hàm chuyển đổi sử dụng hàm chức năng hypebol không hạn chế khai triển luật học phần cứng. Cuối cùng là yêu cầu loại bỏ các thông số quá trình trong hệ thống thực.

Chương 3: Thực hiện on-chip lan truyền ngược

Trong chƣơng này chúng tôi sẽ nghiên cứu đƣa luật học lan truyền ngƣợc trên bộ chip ANN tƣơng tự bằng cách sử dụng một đƣa thêm vào lƣợng nhỏ phần cứng. Trƣớc tiên là các thuật toán lan truyền ngƣợc đƣợc miêu tả, sau đó nó đƣợc trình bày nhƣ thế nào để có thể đƣợc đƣa vào cấu trúc ANN - và chúng tôi sẽ trình bày về giải pháp phần cứng hiệu quả. Các thiết kế của một bộ chíp VLSI (một khớp thần kinh và một noron) và các phép đo trên bộ chip này thì đƣợc đƣa rạ Chúng tôi cũng trình bày thiết kế của một hệ thống lan truyền ngƣợc đầy đủ bao gồm cả phần cứng luật học không có mặt trên bản thân các chip. Các vấn đề liên quan đến tính toán đạo hàm và luật học trong một hệ thống sử dụng lƣu trữ trọng số kỹ thuật số đƣợc đƣa ra thảo luận. Thuật học lan truyền ngƣợc không tuyến tính mới thì đƣợc trình bày và chúng tôi cho thấy rằng thuật toán có tính chất tốt trong mối quan hệ với việc thực hiện một phần cứng tƣơng tự.

3.1. Thuật toán lan truyền ngược:

Sai lệch thuật học lan truyền ngƣợc thì đƣợc giám sát, thuật toán giảm độ dốc. Trong phần này chúng tôi sẽ miêu tả thuật toán cơ bản và điều chỉnh hiển thị ứng dụng thông thƣờng cho nó [2,4].

3.1.1. Các khái niệm cơ bản:

Thuật học sai lệch lan truyền ngƣợc cho một mạng noron truyền thẳng phân tầng (perceptron nhiều lớp) có thể đƣợc miêu tả nhƣ sau: đƣa ra một vecto đầu vào

( )

x t theo thời gian t, sự kích hoạt noron k trong lớp l nhƣ sau: ( ) ( ( )) ( w ( ) ( )) l l l l k k kj j j y tg s tgt z t (3.1) Trong đó chúng tôi giả thiết rằng gkl(.)g(.)và trong đó:

1 ( ), 1 ( ) ( ), 1< j l j l j x t for l z t yt for l L      

Dự kiến noron thì ngầm đƣợc đƣa ra nhƣ kết nối bền từ đầu vào hằng số zol 1. Đƣa

ra một bộ giá trị đích dk cho noron trong lớp đầu ra L, chúng tôi định nghĩa các saiblệch noron nhƣ sau:

1 1 ( ) ( ), ( ) w ( ) ( ), 1 l k k l k l l jk j j d t y t for l L t t t for l L              (3.2)

Ở đây các sai lêch trọng số đƣợc tính bằng:

( ) ( ( )) ( )

l l t

j t g s tj j t

    (3.3)

Bằng cách sử dụng một chƣơng trình cập nhật trọng số luật học on-line thời gian gián đoạn, các kết nối bền phải thay đổi phù hợp với luật cập nhật trọng số:

w (lkj t 1) w ( )lkj t  w ( )kjl t w ( )lkj t kl( ) ( )t z tlj (3.4) Trong đó  là hệ số luật học.

3.1.2. Những thay đổi thuật toán:

Mặc dù vẫn thƣờng đƣợc bảo dƣỡng nhƣ điểm chuẩn cho các thuật học MLP mới, hiệu quả của thuật toán lan truyền ngƣợc cơ bản đặt ra vấn đề khi thực thi: thuật toán thì chậm và mạng noron thƣờng có đƣợc dƣa vào vùng địa phƣơng mức tối thiểụ Vì vậy, một trọng số của thuật toán gần giống lan truyền ngƣợc (hoặc hoàn thiện của các thuật toán) thì đã xuất hiện. Rất nhiều sự hoàn thiện không thể thay đổi cấu trúc liên kết cơ bản của thuật toán và do đó thì dễ dàng đƣa vào trong cấu trúc VLSI điều này sẽ miêu tả ngắn hơn. Tuy nhiên, giá trị của sự hợp nhất thì phụ thuộc vào sự thực hiện chính xác.

Giảm bớt trọng số: Điều chỉnh luật cập nhật trọng số theo (3.4) nhƣ sau: w (lkj t 1) (w ( )lkj t  w ( ))(1kjl t dec) (3.5) Trong đó 0dec1 là tham số giảm trọng số, ngăn cản độ lớn trọng số lớn và trọng số nhỏ thì bị loại trừ. Điều này hoàn thiện khả năng tổng quát hóạ Từ quan điểm một VLSI tƣơng tự, sự ngăn cản các trọng số lớn thì cũng có ƣu điểm nhƣ dải trọng số động giới hạn thì có thể đúng ít hơn thì vƣợt quá.

Xung lượng: điều chỉnh thay đổi trọng số, xác định tính delta bởi (3.4), nhƣ sau:

w ( )lkj tmtm w (lkj t 1) kl( ) ( )t z tlj

     (3.6)

nhiên” và khuếch đại trọng số thích hợp. Điều này thì làm giảm các dao động thƣờng đƣợc tìm thấy trong các luật học. Nhƣợc điểm của việc sử dụng xung lƣợng là sự cần thiết phải bổ sung bộ nhớ (đặc biệt là yêu cầu khắt khe cho một hệ thống xử lý VLSI).

Giá trị của hàm chuyển: Sử dụng bình phƣơng giá trị hàm chuyển điều khiển sai lệch trọng số l

j

 trong (3.3). Bằng cách sử dụng một hàm chuyển đổi là một sigmoid đặc biệt, những sai lệch trọng số này sẽ giảm về 0 khi đầu vào mạng noron

l j

s thì lớn về số lƣợng; do đó làm bằng phẳng sai lệch noron lớn lj, không thay đổi trọng số sẽ diễn rạ Vấn đề này có thể loại trừ bằng cách sử dụng hàm chuyển giá trị entropi hoặc sự nhiễu loạn Fahlmann. Kết luận cuối cùng trong sai lệch trọng số tiếp theo:

( ) ( ( ( )) ) ( )

l l l

j t g s tj F j t

     (3.7)

Trong đó F 0 là sự nhiễu đạo hàm. (hàm chuyển giá trị entropi

( ) ( )

L L

j t j t

  ). Về mặt lý thuyết, sai lệch trọng số nên đƣợc chỉnh sửa duy nhất cho lớp đầu ra (l=L). Tuy nhiên, trong một hệ thống xử lý VLSI tƣơng tự bằng cách sử dụng sự nhiễu đạo hàm trên tất cả các sai lệch trọng số có thể đảm bảo

( ( ))lj F 0

g s t   đúng hơn so với g s t( ( ))lj 0 cái mà sẽ có lẽ tính toán khác bởi phần cứng không lý tƣởng và sẽ pha hủy quá trình luật học.

Trong hệ thống có khả năng thích nghi thì đặc biệt quan trọng rằng các luật học có thể diễn ra cân bằng mặc dù các noron thì bão hòa nhƣ hàm chức năng hệ thống thay đổi theo thời gian. Trong một khoảng hàm chuyển giá trị entropi hoặc sự nhiễu loạn Fahlmann thì mạnh hơn hàm chuyển giá trị bình phƣơng.

Chỉ tiêu luật học động lượng: Chỉ tiêu luật học là tham số quan trọng nhất: Nếu nó qua lớn, sự giảm độ dốc thì dao động; nếu nó quá nhỏ, độ dốc hội tụ rất chậm. Một chỉ tiêu luật học thích hợp với sự gia tăng hàm chuyển đổi giá trị khi thiết lập cuối cùng của các thay đổi trọng số, J t( )J t( )J t( 1):

( ) , ( ), ( -1), ..., ( - ) 0 ( 1) (1 ) ( ), ( ) 0 ( ), t a for J t J t J t T t b t for J t t otherwise                  

Trong đó 0 < a,b << 1 và T là hằng số. Mặc dù không phải không thể thực hiện trong VLSI tƣơng tự, một chƣơng trình chỉ tiêu luật học động lƣợng thì hơi

phức tạp và đòi hỏi bộ nhớ (O(1)) (Ngoài ra, hàm chuyển đổi giá trị phải đƣợc đơn giản để tính toán). Ngoài ra, trong việc thực hiện một phần cứng cũng phải đảm bảo chỉ tiêu luật học không giảm dƣới một giá trị quan trọng critở đây thay đổi trọng số là không đáng kể so với rời rạc hóa trọng số hoặc sai lệch bù thay đổi trọng số, điều này là ngƣờng quá trình học.

Bộ dò eta: Để tránh sự phức tạp của một chỉ tiêu luật học động năng, ngƣời ta có thể lựa chọn một tốc độ học tối ƣụ Reyneri and Filippi đƣa ra (cho

 ax, ax,  ax, ax) :

k m m j m m

y  y y z  z z

(3.8)

Trong đó: kl l thì là chỉ tiêu luật học lớp l. MklMl là số thứ tự đầu vào lớp l và t là độ dốc hàm chuyển chức năng noron. Có thể sử dụng:

l k l k M    (3.9)

Mà có thể đƣợc kết hợp với một quy tắc chỉ tiêu luật học động lƣợng. Đối với một mạng không có khả năng tái cấu hình, chỉ tiêu luật học có thể đƣợc tính trƣớc cho các kiến trúc mạng hiện tạị Đối với một mạng tái cấu hình đƣợc, thêm phần cứng ở mỗi khối tái cấu hình thì cần thiết nếu tính toán chỉ tiêu luật học là tự động.  Luật học hàng loạt: thực hiện giảm độ dốc thực trọng số thì đƣợc cập nhật duy nhất sau mỗi giai đoạn:

1 0 w ((1 ) ) w ( ) w ( 1) epc T l l l

kj epc kj epc kj epc

t

n T nT nT

      (3.10)

Trong đó Tepc là chu kỳ. Thƣờng các luật học on-line thì đƣợc coi là phƣơng pháp nhanh hơn; tuy nhiên bằng cách sử dụng luật học hỗn hợp, nó có khả năng cập nhật trọng số trong “khối” lớn, và làm cho chƣơng trình này có khả năng ít nhạy hơn để bù đắp và rời rạc trọng số (Điều này thì rất quan trọng cho một hệ thống sử lý VLSI tƣơng tự). Điều bất lợi là việc cần phải bổ sung bộ nhớ.(O(N2))

3.2 Sự sắp đặt các thuật toán trên VLSI:

Biểu thức toán của chế độ gọi lại MPL có thể viết ylg s( ),l sl (wlzl)

nhƣ chú ý trong phần 2.2. Hơn nữa, Chúng ta có thể viết một biểu thức tính sai lệch noron nhƣ sau: l1 (w )l Tl

 .Chúng ta nhận thấy hai đặc tính quan trọng của

2 2 2 ax ax 1 2 l k l m m t k y z M   

các phƣơng trình: (i) Ma trận đƣợc sử dụng để tính toán sai lệch noron là hoán vị của một ma trận sử dụng để tính toán đầu vào mạng noron. (ii) dòng tín hiệu thì đƣợc đảo ngƣợc. Đối với một hệ thống xử lý on-chip của thuật toán lan truyền ngƣợc, điều này có nghĩa là chúng tôi có thể tính toán sai lệch noron và cho phép các tín hiệu lan truyền từ lớp l tới lớp l-1 bằng cách sử dụng mạch nhân vecto-ma trận có đặc tính giống hệt nhau với các chip khớp thần kinh chế độ gọi lại nhƣng với sự trao đổi các vị trí của các đầu vào và đầu rạ Nói cách khác: chúng tôi sử dụng một phiên bản mở rộng của khớp thần kinh. Chíp noron phải lần lƣợt có thể đƣợc tính toán  nhƣ đƣa ra trọng (3.3).

Hình 3.1: Sơ đồ mạch khớp thần kinh lan truyền ngược.

Hình 3.2: Sơ đồ mạch noron lan truyền ngược.

Sơ đồ khối của khớp thần kinh và noron mở rộng có thể xem trên hình 3.1 và 3.2 tƣơng ứng. Trên khớp thần kinh cũng bao gồm phần cứng để tính toán thay đổi trọng số, wlkj phù hợp với (3.4). Các khớp thần kinh mở rộng có các đầu vào điện áp và đầu ra dòng điện cũng giống nhƣ khớp thần kinh nguyên bản. Lập bản đồ các

Một phần của tài liệu Nghiên cứu thiết kế mạng nơron truyền thẳng nhiều lớp bằng các phần tử điện tử thông thường (Trang 57 - 92)