Phần cứng cập nhật trọng số:

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 82 - 92)

Giá trị bù và độ phân giải trọng số trong các hệ thống VLSI tƣơng tự hạn chế tỷ lệ học ở một phạm vi cao hơn so với trong phần mềm mô phỏng. Nhƣ chúng tôi đang sử dụng một O(1) chƣơng trình cập nhật trọng số – và nhƣ chúng tôi sử dụng bộ nhớ lƣu trữ trọng số độ chính xác cao – chúng tôi có thể giảm ảnh hƣởng của bù thay đổi trọng số và rời rạc thay đổi trọng số, và do đó giảm tỷ lệ học đến mức nhỏ nhất, bằng cách thêm vào sự thay đổi trọng số với trọng số cũ trong kỹ thuật số. Sử

dụng một ADC 12 bit để chuyển đổi tín hiệu thay đổi trọng số tƣơng tự sang tín hiệu số và để trọng số 16 bit, chúng tôi mở rộng sự bù thay đổi trọng số có hiệu quả bởi một yếu tố ½4. Điều này đƣợc minh họa trên hình 3.12. Các sơ đồ mạch thực tế là hơi phức tạp hơn nhƣ các trọng số lƣỡng cực và các thay đổi trọng số cần phải đƣợc xử lý và nhƣ vƣợt qua trong bộ cộng kỹ thuật số phải đƣợc ngăn chăn. Ngoài ra, một bộ dồn kênh thì cho phép kiểm tra phần cứng cập nhật trọng số tƣơng tự on- chip.

Hình 3.22: Nguyên tắc phần cứng cập nhật trọng số kỹ thuật số.

Nghiên cứu sơ đồ khối noron lan truyền ngƣợc trong hình 3.18. Chúng tối sẽ thấy rằng tín hiệu wkj thì không phải truy cập trực tiếp; áp dụng các tín hiệu w ( )kj t và dec trên chip noron nhƣ điểm không cho thay đổi trọng số mong muốn tại đầu ra (mặc dù không thể tránh khỏi với một lƣợng bù lớn hơn nội bộ wkj).

Khi các đầu ra chip khớp thần kinh, đầu ra wkj thì đƣợc bù độ lệch trƣớc khi học

(bằng cách áp dụng các yếu tố đầu vào điểm không trong chế độ học và điều chỉnh tín hiệu w ( )kj t nhƣ vậy mà đầu ra cũng bằng không)

Ngoài chi phí phần cứng nhỏ, lợi thế của việc sử dụng chƣơng trình cập nhật trọng số nối tiếp là khả năng để sử dụng chính xác chƣơng trình cập nhật trọng số không có một chi phí phần cứng giới hạn. Các thuật học vốn đƣợc sử dụng trong cập nhật trọng số nối tiếp (nhƣ nhiễu loạn trọng số) nên tận dụng điều này; ví dụ bằng cách sử dụng chƣơng trình cập nhật trọng số. Tất nhiên, chƣơng trình cập nhật trọng số trên yêu cầu một sự lƣu trữ trọng số với sự sao lƣu trọng số kỹ thuật số; đối với hệ thống lớn điều này là một lựa chọn tốt khi sử dụng chƣơng trình cập nhật trọng số nối tiếp.

3.6. Lan truyền ngược không tuyến tính:

giảm độ dốc giống nhƣ các thuật học trong phần cứng là các tính toán của đạo hàm noron. Nhiều cách tiếp cận khác nhau để làm gần đúng giá trị đạo hàm đã đƣợc đề xuất trong luận văn: tỉ số chênh lệch (tính toán địa phƣơng hoặc trên toàn bộ) hoặc các phƣơng pháp gần đúng khác, nhiễu loạn để làm giảm lƣợng bù liên quan đến lƣợng sai lệch, cũng nhƣ triển khai thực hiện phần lớn bỏ qua đạo hàm [11].

Những khó khăn liên quan đến việc thực hiện gần đây đã thuc đẩy sự phát triển của một thuật toán giảm độ dốc mới, lan truyền ngƣợc không tuyến tính (NLBP), trong đó thì việc tính toán giá trị đạo hàm thì đƣợc tránh. Trong phần này, chúng tôi sẽ đƣa ra các thuật toán và trình bầy nhƣ thế nào để kết hợp nó trong một cấu trúc lan truyền ngƣợc có sẵn.

3.6.1 Đạo hàm của thuật toán:

Đạo hàm của thuật toán lan truyền ngƣợc không tuyến tính trong khuân khổ của lan truyền ngƣợc lặp lại có thể đƣợc tìm thấy trong Hertz. Trong trƣờng hợp truyền thẳng, chúng tôi nhớ lại các quy tắc cập nhật trọng số (3.3) trong đó xác định thay đổi trọng số: ( ) ( ) ( ) '( ( )) ( ) ( ) = '( ( )) ( ) ( ) l l l l l l kj k j k k j l l l N k k j N w t t z t g s t t z t g s t t z t           (3.13)

Trong đó chúng tôi gọi N giá trị trong miền NLBP. Bây giờ, ý tƣởng cơ bản trong lan truyền ngƣợc không tuyến tính là để mô tả các phƣơng trình trên nhƣ là khai triển tailor thứ tự đầu tiên của phƣơng trình.

w ( )lkj N ( ( )lk kl( )) ( ( )) . ( )kl lj N tg s t   t g s t z t            (3.14) đó là hợp lệ nhỏ kl( ) N t  

 xác định lại định nghĩa sai lệch trọng số (3.2) để:

( ) ( ( ) ( )) ( ( )) l N l l l Nk k k k N tg s tt g s t              (3.15)

Trong đó Nkl ( )t là các sai lệch trọng số NLBP, phƣơng trình thay đổi trọng số NLBP có dạng giống nhƣ phƣơng trình lan truyền ngƣợc ban đầu:

w ( )lkj t Nkl ( ) ( )t z tlj

Khi giá trị trong miền NLBP N thì lớn, xấp xỉ Tailor thì tốt nhƣng đồi hỏi độ chính xác cao để tính toán. Khi N thì nhỏ, thuật toán là số lƣợng ổn định nhƣng đƣợc lấy từ hình dạng của độ dốc. Chúng tôi nghĩ rằng N thì nằm trong phạm vi

1

N

   . Trong giới hạn số lƣợng ổn định nhất – cái mà thú vị nhất trong việc thực hiện một VLSI vì độ chính xác giới hạn của công nghệ này – có dạng đơn giản.

( ) ( ( ) ( )) ( ( )) for

l l l l

Nk t g s tk k t g s tk N

      (3.17)

Nhƣ các lan truyền ngƣợc bình thƣờng, chúng tôi lựa chọn Nkl ( )t kL( )t cho các lớp đầu ra nếu chúng ta mong muốn sử dụng hàm chức năng giá trị entropị

Hình 3.23: Sai lệch huấn luyện NLBP .

Trong hình 3.23 sai lệch huấn luyện (sử dụng bộ dữ liệu NETtalk cho lan truyền ngƣợc bình thƣờng và NLBP thì đƣợc so sánh. Hiệu suất của NLBP là rất giống nhƣ lan truyền ngƣợc thông thƣờng trong các mô phỏng (chú ý rằng các thay đổi thuật toán thông thƣờng nhƣ làm suy giảm trọng số, xung lƣợng…v.v áp dụng với NLBP). Trong việc thực hiện một phần cứng, sẽ vƣợt trội hơn lan truyền ngƣợc thông thƣờng: Đƣợc dựa trên cộng và trừ các noron không tuyến tính, chứ không phải dựa trên phép chia và phép nhân, tính toán sai lệch trọng số NLBP là đơn giản hơn nhiều và do đó đƣợc liên kết để chính xác hơn. Cũng ƣu tiên hơn thực hiện phần cứng là dấu hiệu cho thấy rằng NLBP là tốt hơn cho lan truyền ngƣợc thông thƣờng cho tỷ lệ học lớn.

3.6.2 Thực hiện phần cứng:

Là sự khác biệt duy nhất giữa lan truyền ngƣợc bình thƣờng và lan truyền ngƣợc phi tuyến tính là cách thức các sai lệch bền trọng số thì đƣợc tính toán – và vì đây là những tính toán địa phƣơng – các bản đồ topo trên phần cứng trong cùng một

cách thức chính xác nhƣ lan truyền ngƣợc thông thƣờng; duy chỉ có việc thực hiện noron là khác nhaụ Trong phần này, chúng tôi sẽ trình bày cốt lõi của việc thực hiện hai noron cho một ANN với luật học NBLP.

Noron NLBP thời gian liên tục: Lấy cặp khác nhau giữa BJT của noron ban đầu của chúng tôi nhƣ là một điểm khởi đầu cho thực hiện NLBP với một hàm kích hoạt noron tang hypebol, dẫn đến các sơ đồ mạch trong hình 3.24. Để đơn giản, các cặp khác nhau đƣợc thực hiện với npn BJTs; trong việc thực hiện thực tế của CMOS, chế độ lƣỡng cực bên MOSTs kênh p sẽ đƣợc sử dụng trong thiết kế trƣơc đâỵ Khi hàm kích hoạt noron thực tế là không quan trọng cho NLBP, các cặp khác nhau MOST có thể đƣợc sử dụng thay thế mà sẽ có lợi cho tốc độ. Bằng cách sử dụng các cặp khác nhau LBM MOST, có thể có lợi cho độ chính xác. Ngƣời ta sẽ nhận thấy rằng các mạch đòi hỏi phải áp dụng các sai lệch noron phủ định, k. Do đó chíp khớp thần kinh sẽ cần phải đƣợc tính toán điều này trong chế độ đảo chiều, không phải là k(yêu cầu một thay đổi đơn giản).

Thật thú vị khi nhận thấy rằng cấu trúc mạch điện thì giống với một trong những cái đƣợc sử dụng bởi Bogason (hình 3.20) để tính toán các đạo hàm hàm kích hoạt noron: Thay thế vk bởi một giá trị nhỏ hơn, điện áp không đổi -V,

Dòng điện đầu ra ik sẽ gần đúng V. Ngƣời ta có thể giải thích NLBP nhƣ một cách để khai thác điều này mạch nhân tiềm ẩn sự khác biệt (3.17) cái mà loại bỏ "g s( ).kk"– mạch nhân – và do đó là một nguồn của các sai lệch. Hơn thế, vk thì không phải là “một điện áp nhỏ” (nhƣ trái ngƣợc với V) mà làm cho không chính xác vốn có ít hơn. Do đó, bằng cách sử dụng các mạch cho NLBP cho độ chính xác tốt hơn so với khi sử dụng nó cho lan truyền ngƣợc thông thƣờng.

Độ chính xác của mạch điện (tính toán sai lệch trọng số) đƣợc xác định bởi sự kết hợp của hai cặp chênh lệch và dòng điện đầu ra của chúng. Điều này có thể đƣợc theo các mức 1% của mức độ dòng điện đầu ra – Điều này thì tốt hơn nhiều so với tính chính xác của chíp hiện tại của chúng tôi và có lẽ sẽ nâng cao hiệu suất đáng kể. Tuy nhiên, vẫn còn điện trở chuyển đổi tuyến tính là cần thiết tại các đầu vào và đầu ra cho khả năng tƣơng thích với các chip khớp thần kinh. Điều này sẽ làm suy giảm hiệu suất.

Hình 3.24: Noron lan truyền ngược phi tuyến trong thời gian thực.

Các mạch nhƣ đƣợc trình bầy hàm chức năng trong thời gian thực và có thể thay thế bằng cấu trúc noron lan truyền ngƣợc của hình 3.2 trong một hệ thống sử dụng cập nhật phần cứng song song đầy đủ.

Noron NLBP thời gian rời rạc: Nhƣ hình dạng thực tế của hàm kích hoạt noron thì không thích hợp cho thực hiện lan truyền ngƣợc không tuyên tính, không cần thiết phải thực hiện trên các cặp chênh lệch. Một cách tiếp cận tốt hơn là sử dụng các mạch vốn có (các đầu vào dòng điện và các đầu ra điện áp là cần thiết). Ngoài ra, nhƣ các chức năng tƣơng tự đƣợc sử dụng để tính toán kích hoạt noron và các sai lệch noron, sẽ là thích hợp hơn để sử dụng cùng một phần cứng cho những tính toán, điều này giúp loại bỏ sự cần thiết cho các thành phần phù hợp. Điều này là có thể nếu hệ thống không cần thiết để thực hiện chức năng trong thời gian liên tục, mặc dù đầu ra sẽ phải đƣợc lấy mẫụ

Nhƣ chỉ ra trên hình 3.25 là sơ đồ mạch đơn giản nhƣ của một noron thời gian rời rạc điều này sử dụng lại các khối hàm kích hoạt và nó có dòng điện đầu vào/điện áp rạ Trong đó 1 bƣớc xung nhịp, vyk thì đạt đƣợc tại đầu ra và lấy mẫu ở tụ điện. Trong đó 2 bƣớc xung nhịp, vk thì đạt đƣợc tại đầu rạ Đó là các tụ điện chuyển mạch để tính toán sự khác nhau trong (3.17) và cái mà xác định tính chính xác của mạch điện. Lƣu ý rằng các bộ đệm đầu ra cần phải đƣợc tuyến tính nhƣng sự bù sai lệch của nó thì đƣợc loại bỏ bởi các tụ điện chuyển mạch. Ngoài ra, các khối hàm chuyển đổi noron (sáu MOSTs) có thể là một mạch đầu ra điện áp/đầu vào dòng

điện tùy ý; các sai lệch ổn định (nhƣ sai lệch điện áp đầu ra/dòng điện đầu vào) trong khối này là không thích hợp. Sử dụng kỹ thuật thiết kế để giảm đƣa vào và phần phối lại các điện lƣợng, độ chính xác có thể đƣợc đƣa ra trong khoảng 0.1% của phạm vi điện áp đầu rạ

Noron NLBP thời gian rời rạc này có thể thay thế trực tiếp để tính toán các yếu tố của noron lan truyền ngƣợc thông thƣờng trong hình 3.8. Do đó, giả sử rằng bộ đệm điện áp sẽ cần thiết trong một phiên bản chế độ gọi lại của noron, chi phí phụ NLBP thì có khả năng rất nhỏ: bao gồm duy nhất một tụ điện chuyển đổi tại các vị trí noron trong việc bổ sung để gia tăng phần cứng hạn chế nhất của “phần cứng hiệu qủa chip khớp thần kinh lan truyền ngƣợc” của chúng tôi và phần cứng cập nhật trọng số và thuật toán điều khiển tự động hữu hạn.

Hình 3.25: Noron lan truyền ngược không tuyến tính thời gian rời rạc.

Hoạt động các bóng bán dẫn đầu ra của khối hàm chuyển đổi trong chế độ ba cực, mạch điện áp đầu ra sẽ thể hiện một quá trình chuyển đổi đều đặn hợp lý từ Vmax đến Vmin khi dòng điện đầu vào thì tăng lên, đƣa ra một hàm chuyển đổi dạng hình S. Tuy nhiên, mạch điện có một hệ số loại bỏ nguồn năng lƣợng rất thấp (PSRR). Một mạch thực tế hơn đƣợc chỉ ra trong hình 3.26. Việc thêm vào các dòng điện phản chiếu trong các đƣờng chuyền tín hiệu cho một PSRR tốt hơn và khả năng của một trở kháng đầu vào thấp. Để tránh dòng điện lấy ra từ quy chiếu vùng đầu ra (điều này sẽ thỏa hiệp độ bền của chúng tôi) các bộ đệm khuếch đại đơn giản này

(NLBP không yêu cầu phạm vi đầu ra noron là đƣợc xác định rất rõ ràng, do đó sai lệch đầu vào lớn của bộ khuếch đại không cần phỉa phù hợp rất lớn). Độ dốc noron thì đƣợc điều khiển bởi dòng điện dịch chuyển thứ tự đầu vào, IB. Mô phỏng hàm chuyển đổi cho các dòng điện dịch chuyển khác nhau có thể đƣợc thấy trong hình 3.27.

Hình 3.26: Sơ đồ cấu trúc khối kích hoạt noron.

Hình 3.27: Mô phỏng hàm chuyển đổi noron.

3.7 Kết luận chương 3:

Chƣơng này nghiên cứu lý thuyết thiết kế bộ chip ANN ghép liên tầng, bao gồm luật học lan truyền ngƣợc. Đƣa ra các thuật học cơ bản đã đƣợc và khả năng áp dụng các thay đổi thuật toán phổ biến cho việc thực hiện VLSI tƣơng tự. Ứng dụng cụ thể cho bộ chip lam truyền ngƣợc với những đặc điểm nhƣ trọng số đƣợc lƣu trữ trọng một Ram kỹ thuật số, có thể biết đƣợc sự thay đổi trọng số thông qua sử dụng phần cứng kỹ thuật số rời rạc.

Nghiên cứu về thuật toán lan truyền ngƣợc không tuyến tính, không cần tính toán đạo hàm noron. Đề xuất các noron khác nhƣ noron lan truyền ngƣợc phi tuyến thời gian liên tục và thời gian rời rạc. Đƣa ra các mạch ngƣỡng thay đổi trọng số, xung lƣợng và sự suy giảm trọng số trong hệ thống.

Kết luận, kiến nghị và hướng nghiên cứu tiếp theo

Kết luận:

Luận văn đã nghiên cứu một số nội dung:

 Nghiên cứu tìm hiểu những lý thuyết cơ bản về mạng noron nhân tạo

 Trên cơ sở đó nghiên cứu tìm hiểu về việc xây một mạng noron nhân tạo VLSI một lớp, với các thành phần co bản bộ nhân, bộ nhớ…bằng cách sử dụng thiết bị tƣơng tự MOSFET.

 Đi sâu nghiên cứu đề xuất thiết kế một bộ chip noron VLSI với cấu trúc truyền thẳng nhiều lớp là thuật học lan truyền ngƣợc.

Kiến nghị và hướng nghiên cứu tiếp theo:

 Nâng cao chất lƣợng của bộ chip noron VLSI với cấu trúc truyền thẳng nhiều lớp là thuật học lan truyền ngƣợc.

 Tiếp tục nghiên cứu về cách thực hiện mạng noron nhân tạo với các cấu trúc mạng khác, và các thuật học khác.

Tài liệu tham khảo

[1]. Đỗ Xuân Thụ, Kĩ thuật điện tử, NXB Giáo dục, 2006.

[2]. Nguyễn Nhƣ Hiển, Lại Khắc Lãi, Hệ mờ và nơron trong kỹ thuật điều khiển, NXB Khoa học tự nhiên và công nghệ, 2007.

[3]. Phạm Hữu Đức Dục, Mạng nơron và ứng dụng trong điều khiển tự động,

NXB Khoa học và kỹ thuật, 2009.

[4]. Tống Văn On, Thiết kế vi mạch CMOS VLSI, NXB Phƣơng Đông, 2007

[5]. Antonio J. Montalvo, Ronal S. Gyurcsik, John J. Paulos, An Analog VLSI Neural Network with On-Chip Perturbation Learning, IEEE JOURNAL OF SOLID-STATE CIRCUIT, VOL. 32, NỌ 4, APRIL 1997.

[6]. Cyril Prasanna Raj P, S.L. Pinjare, Design and Analog VLSI Implementation of Neural Network Architecture for Signal Processing, European Journal of Scientific Research, ISSN 1450-216X Vol.27 Nọ2 (2009), pp.199-216.

[7]. Gert Cauwenberghs, An Analog VLSI Recurrent Neural Network Learning a Continuous-Time Trajectory, IEEE TRANSACTIONS ON NEURAL NETWORKS, VOL. 7, NỌ 2 MARCH 1996.

[8]. John Ạ Lansner and Torsten Lehmann, “An Analog CMOS Chip Set for Neural Networks with Arbitrary Topologies” IEEE Transaction on Neural Networks, vol. 4, nọ 3, pp. 441-444, May1993.

[9]. John Ạ Lansner, “Analog VLSI Implementation of Artificial Neural Network”

Ph. D. thesis, Electronics Institute, Technical University of Denmark, Lyngby, 1994 [10]. P. D. Moerland and Ẹ Fiesler, Hardware – Friendly Learning Algorithms for

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 82 - 92)