Trong thập kỷ qua, các lĩnh vực của các mạng noron nhân tạo đã phát triển. Mạng noron nhân tạo đã trở thành một công cụ mạnh mẽ cho các vấn đề điều khiển và nhận dạng các đối tƣợng. Nền tảng mạng noron – cả về mặt lý thuyết và trên một mức độ ứng dụng nào đó – phát triển ngày càng vững chắc, Việc triển khai thực hiện phần cứng cho các hệ thống hiệu suất cao đã bắt đầu xuất hiện. Trong luận văn tập trung nghiên cứu mạch VLSI tƣơng tự thực hiện tính toán mạng noron; với sự nhấn mạnh về việc triển khai phần cứng để thực hiện các thuật học. Trong phần này tìm hiểu việc sử dụng mạch VLSI tƣơng tự để thực hiện mạng noron nhân tạo và việc mô tả các thuật học nhƣ thế nàỏ
2.1.1 Thực thi mạng noron nhân tạo trong phần cứng tương tự:
Tại sao phải sử dụng phần cứng tƣơng tự? Mạng noron nhân tạo có thể dễ dàng đƣợc mô phỏng trên vật mẫu, máy tính kỹ thuật số, và nó đang phát triển rộng. Trong khi đó mạng noron tích hợp phần tử tƣơng tự vẫn đang còn là một vẫn đề bỏ ngỏ. Trong phần này chúng tôi sẽ xem xét chúng [9,10,11].
Sự tương đồng: Hiện tại, để xử lý dữ liệu nhanh hơn chúng ta có hai hƣớng có thể thực hiện: Một là sử dụng những hệ thống nhanh hơn (ví dụ: hệ thống có tần số cao hơn). Trong những năm gần đây, phƣơng pháp này đã đƣợc khai thác tối đa giới hạn: giao diện và giao tiếp với các hệ thống rất nhanh này là khó khăn. Một cách khác để tăng tốc độ xử lý dữ liệu là sử dụng các cơ sở xử lý dữ liệu song song. Mặc dù việc xử lý tín hiệu song song khá quan trọng, nhƣng nhiều vấn đề không thể đƣợc song song hóạ Mạng noron vốn đã là mạng song song và do đó có thể dễ dàng ánh xạ vào phần cứng song song. Hơn nữa, dù cơ sở xử lý dữ liệu tƣơng tự vốn đã chậm hơn các kỹ thuật số tƣơng đƣơng với chúng, các phiên bản tƣơng tự của mạng noron tính toán căn bản, phép nhân và phép cộng, có thể nhỏ hơn nhiều so với kỹ thuật số tƣơng đƣơng. Vì vậy, hệ thống noron song song cỡ lớn thì thực hiện có hiệu quả bằng cách sử dụng mạch VLSI tƣơng tự, đây là một tiềm năng cho việc xử lý dữ liệu nhanh.
Cần chú ý một số vấn đề: Nhƣ sự ánh xạ chính xác trên phần cứng song song phụ thuộc rất nhiều vào cấu trúc liên kết mạng (phụ thuộc vào chƣơng trình ứng dụng). Hệ
thống noron song song quan trọng nên đƣợc ứng dụng cụ thể chứ không phải là mục đích chung. Cũng phải chú ý rằng, yêu cầu các mạch kỹ thuật số với khả năng tính toán có độ chính xác cao, tuy nhiên chúng ta tin tƣởng rằng độ chính xác đƣợc cung cấp bởi các thành phần tƣơng tự là đủ trong nhiều hệ thống noron.
Sự không đồng bộ: Rất nhiều mạng noron thì không đồng bộ trong tự nhiên. Sự không đồng bộ này có thể đƣợc khai thác một cách hiệu quả. Hệ thống không đồng bộ (tự định thời) có một số lợi thế khác so với hệ thống chi phối bởi một bộ định thờị
Hệ thống đồng bộ phải đƣợc thiết kế để chạy ở một tần số xung nhịp vừa phải để đảm bảo chức năng trong các trƣờng hợp xấu nhất; hệ thống không đồng bộ chạy ở tốc độ tối đa của các phần cứng hiện tạị Hơn nữa, nếu có một số bộ phận là sự giới hạn của hệ thống; chúng có thể đƣợc thay thế bởi một bộ phận nhanh hơn với việc cải tiến ngay lập tức hiệu suất tổng thể.
Khi tần số xung nhịp hệ thống tăng lên, kết nối giữa các bộ phận trở thành một vấn đề vì rất khó khăn để phân phối xung nhịp hệ thống trên một diện tích lớn. Khi đó truyền thông không đồng bộ thì là giải pháp.
Tất cả các bộ phận trong hệ thống đồng bộ thay đổi trạng thái (theo cách giảm dòng điện từ nguồn cung cấp) đồng thời với giới hạn xung nhịp. Điều này đặt ra nhu cầu rất lớn trên nguồn cung cấp có thể chịu đựng đƣợc, về xung đỉnh dòng điện, điện dung cách ly…Các xung đỉnh dòng điện cũng gây ra rất nhiều tiếng ồn. Hệ thống không đồng bộ thì là hệ thống trung hòa năng lƣợng.
Giao tiếp với thiết bị thực về cơ bản là một nhiệm vụ không đồng bộ; sử dụng hệ thống không đồng bộ cho việc này là cách tiếp cận tự nhiên và loại trừ đƣợc các vấn đề liên quan với tính nửa bền.
Mặc dù với các tính năng rất hấp dẫn của hệ thống không đồng bộ, một vài hệ thống xử lý dữ liệu kỹ thuật số thông thƣờng đã đƣợc thực hiện bởi vì vấn đề chi phí cho thực hiện phần cứng. Hệ thống tƣơng tự thuần túy không có nhu cầu cao cho việc thực hiện và do đó rất thích hợp để thực hiện các hệ thống không đồng bộ (mặc dù các hệ thống cần phải xem xét với phản hồi ổn định.)
Sai lệch cho phép: Một mạng noron nhân tạo đƣợc huấn luyện tốt thì không nhạy với sự thay đổi trọng số nhỏ nhƣ J/kj 0 ở trạng thái cân bằng. (Trong đó: J là giá trị lỗi và kj là trọng số). Tuy nhiên nó không phải là không nhạy để mất kết nối hoàn toàn (nguyên nhân do ngắn mạch, Ram lỗi, bức xạ…) nhƣ các mạng phải có một
cấu trúc đơn giản có thể để đảm bảo khả năng tổng quát tốt. Để đảm bảo sai lệch cho phép, xuống đến cấp độ phần cứng, thì cần thiết phải có phần cứng dự phòng. Điều này là có lợi cho việc khai triển thực hiện phần cứng của mạng noron; đặc biệt trong phần cứng tƣơng tự nhƣ các chi phí một khớp thần kinh bổ sung tƣơng đối thấp. Trong bối cảnh này, một công nghệ mới đang nổi lên, tích hợp lớp mỏng (WSI). Xứng đáng đề cập đến, với các hệ thống cho phép sai lệch thì việc ứng dụng WSI rất quan trọng. Công nghệ này đƣợc đáp ứng tốt cho việc thực hiện mạng noron song song lớn.
Ứng dụng năng lượng thấp: Việc sử dụng MOSFETS đƣợc điều khiển ở ngƣỡng thấp cung cấp các khả năng của hệ thống năng lƣợng thấp. Mặc dù hệ thống kỹ thuật số có thể hoạt động trong ngƣỡng thấp, hệ thống tƣơng tự mang nhiều thông tin qua dây dẫn và một vài bóng bán dẫn cho điều khiển và chúng sử dụng năng lƣợng thấp.
Thiết bị ghép nối thực: Cũng nhƣ là không đồng bộ, thiết bị ghép nối thực thƣờng yêu cầu là thiết bị tƣơng tự. Mạng noron tƣơng tự hiển nhiên loại trừ đƣợc chuyển đổi A/D và D/A, đó là một tính năng hấp dẫn. Tuy nhiên, điều này trở nên hết sức quan trọng khi mà dữ liệu thì đƣợc xử lý trong mạch song song cỡ lớn. Việc sử dụng hàng trăm, hàng nghìn bộ chuyển đổi A/D tốc độ cao không phải là hợp lý. Đối với các hệ thống năng lƣợng thấp với thiết bị ghép nối thực tế cũng rất quan trọng do không có năng lƣợng bị lãng phí trong quá trình chuyển đổi A/D và D/Ạ
Tính quy luật: tính quy luật của mạng noron nhân tạo làm cho chúng rất thích hợp cho việc hệ thống xử lý song song cỡ lớn. Các nỗ lực thiết kế có thể đƣợc đƣa vào thiết kế một vài thành phần hiệu quả mà đƣợc sử dụng nhiều lần và kết nối với nhau một cách thƣờng xuyên.
Kết luận: Ít nhất là hai hƣớng cho hệ thống noron tích hợp tƣơng tự tồn tạị
Song song lớn, hệ thống ứng dụng đặc trƣng có một thiết bị ghép nối thực song song.
Hệ thống ứng dụng nhỏ, năng lƣợng thấp với thiết bị ghép nối thực.
Trong công việc này chúng tôi quan tâm tới mạng noron tƣơng tự song song cỡ lớn hơn là mạng năng lƣợng thấp.
2.1.2 Thực thi các luật học trong phần cứng tương tự:
Nguyên nhân do những chỉ tiêu không lý tƣởng, mạng noron tích hợp tƣơng tự thƣờng đƣợc đƣa ra sử dụng để huấn luyện mạch vòng chíp – đúng hơn là giảm trọng
số đƣợc xác định trƣớc cho các ứng dụng nhất định, với mỗi chíp riêng lẽ (hoặc hệ thống) thì đƣợc huấn luyện bởi (i) áp dụng một đặc tính đầu vào cho chíp, (ii) tính toán sai số của mạng dựa trên cơ sở giá trị mục tiêu và kết quả đầu ra của chip thực tế, (iii) và điều chỉnh trọng số trên các chip theo các thuật học nhƣ giảm sai số của mạng. Điều này có thể phù hợp với việc bù sai số, không tuyến tính…
Có rất nhiều các phƣơng pháp tiếp cận huấn luyện khác nhau, cái mà dễ dàng đƣợc lập trình trên một máy tính chủ cho huấn luyện mạch chíp. Câu hỏi đặt ra bây giờ là: Tại sao chúng ta nên hy sinh sự linh hoạt của việc huấn luyện mạch chíp bằng cách sử dụng một máy tính chủ trong việc thực hiện các thuật học trong phần cứng tƣơng tự. Lý do thì tƣơng tự nhƣ lý do thực hiện mạng noron nhân tạo trong phần cứng tƣơng tự đã nói ở phần đầụ
Thực hiện các hoạt động tƣơng tự trên tất cả các khớp thần kinh/noron của một hệ thống thông thƣờng bao gồm khớp thần kinh và noron, nhiều thuật học có tính chất tƣơng tự nhƣ mạng noron khi thực hiện trong phần cứng tƣơng tự.
Sự tương đồng: Luật học là sự tính toán cần có thời gian xử lý nhanh và cho kết quả chính xác. Về tốc độ, sử dụng sự song song của các thuật học thì quan trọng hơn so với mạng noron. May mắn thay, nhiều thuật học có thể song song với một mức độ lớn. Những lập luận cho việc sử dụng phần cứng tƣơng tự giống nhƣ với thực hiện mạng noron với phần cứng tƣơng tự.
Khả năng thích nghi: Hệ thống noron thích ứng đƣợc tiếp tục huấn luyện khi đang sử dụng. Có ít nhất hai trƣờng hợp cùng tồn tại ở đó các thuật học phải đƣợc nhúng trong phần cứng hệ thống.(i) Trong các hệ thống thích nghi lớn, nó rất quan trọng để quyết định sử dụng sự song song vốn có của các thuật học.(ii) Trong hệ thống nhỏ, thích nghi, năng lƣợng thấp, không có sẵn máy tính chủ. Trong hai lĩnh vực ứng dụng này nó có khả năng nhƣ một mạng noron tƣơng tự - và các lập luận ủng hộ việc sử dụng phần cứng tƣơng tự cho các mạng noron cũng giữ cho việc thực hiện các thuật học.
Sự không đồng bộ: Rất nhiều thuật học có thể đƣợc xây dựng trong thời gian liên tục, điều đó cho phép không đồng bộ, triển khai phần cứng tƣơng tự thực hiện các thuật học.
Sai số cho phép: Một số thuật học có thể đƣợc xây dựng để hoạt động trong vùng dữ liệu theo cách mà các thuật học có thể đƣợc nhúng trong các khớp thần kinh
mở rộng và phần cứng noron. Trong một mạng noron tƣơng tự sai số cho phép, nhƣ một thuật học không chấp nhận sai số cho phép cho hệ thống.
Ứng dụng năng lượng thấp: Nhƣ là trƣờng hợp cho mạng noron tƣơng tự, thực hiện các thuật học tƣơng tự có thể sử dụng MOSFETS trong ngƣỡng thấp cho ứng dụng năng lƣợng rất thấp.
Chuyển đổi dữ liệu: Thuật học cần truy cập đến đầu vào, đầu ra và các biến trung gian của các mạng thần kinh. Nếu mạng noron là tƣơng tự, sử dụng phần cứng tƣơng tự cho các thuật học thì loại bỏ đƣợc sự cần thiết chuyển đổi A/D và D/Ạ
Tính quy luật: Giống trƣờng hợp mạng noron, rất nhiều thuật học là quy luật trong cấu trúc, nhƣ vậy việc thiết kế các phần cứng tƣơng đƣơng là không tốn kém.
Kết hợp các đặc tính này và kết luận trong phần 2.1.2, chúng ta kết luận rằng có ít nhất hai phƣơng pháp cho việc triển khai phần cứng tƣơng tự của các thuật học tồn tạị
Mạch song song lớn, có thể thích nghi, ứng dụng hệ thống cụ thể có thiết bị ghép nối thực tế song song.
Mạch nhỏ, thích nghi, ứng dụng năng lƣợng thấp cho hệ thống cụ thể với một thiết bị ghép nối thực.
2.2. Hệ thống xử lý của mạng noron:
Thay vì thực hiện một hệ thống tất cả luật học cùng một lúc, chúng tôi đã lựa chọn phƣơng pháp tuần tự, đầu tiên thực hiện một hệ thống noron đang hoạt động, và thứ hai thực thi phần cứng thuật học cho hệ thống nàỵ Việc thực hiện các mạng noron nhân tạo là cốt lõi của hệ thống sẽ đƣợc trình bầỵ Đƣa ra sự lựa chọn của các mô hình mạng và cấu trúc liên kết thích hợp cho hệ thống xử lý VLSI tƣơng tự. Ngoài ra sự lựa chọn của cấu trúc liên kết phần cứng và các mạch phụ cần thiết (bộ nhớ, bộ nhân và phần cứng tạo ngƣỡng) đƣợc thảo luận [11].
2.2.1. Mô hình mạng noron nhân tạo:
Chúng ta cần phải quyết định trên một hình mẫu của mạng noron nhân tạọ Có ba đặc tính mà mô hình mạng noron phải có; chúng là:
Mô hình có mục đích chung Mô hình phải đơn giản
Nhƣ đã đƣợc bàn luận ở phần trƣớc, mạng ANN tƣơng tự là ứng dụng đặc biệt. Vấn đề đặt ra là những ứng dụng thông thƣờng của mạng ANN, chúng ta sẽ đi xây dựng các khối thành phần hoặc một modul của mạng noron. Hệ thống ứng dụng đặc biệt có thể bao gồm một phần của chúng.
Phần cứng có sử dụng máy tính tƣơng tự là giới hạn đặc trƣng với một độ chính xác tƣơng đối khoảng 1%. Với lý do này, và cho giới hạn của giá thành phần cứng, thích hợp hơn so với sử dụng mô hình ANN đơn. Một vài nghiên cứu đã cố gắng để tạo ra kiểu bộ phận sinh học nhƣ mạng noron rất bền chặt hoặc sử dụng một kiểu mạng khác rất phức tạp. Điều này không phải là cần thiết cho mạng noron có sử dụng máy tính nhƣ rất nhiều đặc tính của những mô hình còn thiếu và tính không phi tuyến của hệ thống.
Một điều quan trọng, mô hình ANN này thì phù hợp với các hạn chế của kỹ thuật VLSI tƣơng tự. Cần phải tuyệt đối chắc chắn rằng chúng ta không thể đảm bảo thực thi với một mô hình bất kỳ (nhƣ chúng ta không thể đảm bảo sử dụng mạng noron tích hợp tƣơng tự cho một ứng dụng bất kỳ nhƣ lý luận trong phần trƣớc); Mô hình mẫu thì phải dễ dàng để lập bản đồ trên phần cứng trong giới hạn của cả hai cấu trúc liên kết và tính toán ban đầụ
Mục tiêu đầu tiên của chúng tôi sẽ là lắp đặt một hệ thống có khả năng hoạt động, chúng mà có thể đƣợc thực hiện sau này khi cần thiết.
2.2.1.1. Noron:
Sử dụng những noron ngẫu nhiên để đƣa ra khả năng thực thi mạng rất có hiệu quả. Sự kích hoạt, yk , của noron k ngẫu nhiên, đặc thù của sự thay đổi 1 hoặc -1, là xác suất rõ ràng:
Pr(yk = 1) = 1 – Pr(yk = -1) = gk(sk) (2.1) Trong đó sk là noron k ở mạng đầu vào và gk(.) là hàm hoạt động. Những hệ thống ngẫu nhiên có thể khảo sát rất hiệu quả không gian trạng thái với tham số độc lập của hệ thống trong khi một quá trình học. Cách này thì có thể là chậm, tuy nhiên, nhƣ những đầu ra cần phải lấy trung bình trong một khoảng thời gian để tìm phân bố tần suất đầu ra, và quá trình ngẫu nhiên thì đƣa ra dãy tín hiệu không tốt cho quá trình xử lý tín hiệu tƣơng tự.
1 2 1 2 1 2 3 1 2 3 1 2 1 2 3 ' " k k k k kj j kj j j j kj j j j j j j j j j j j y g (s ) g ( w z w z z w z z z ...) (2.2)
Trong đó wkjs, w’kj1j2s, w”kj1j2j3s, . . .là trọng số liên kết và zjs là noron k đầu vàọ Chỉ số cao nhất của Zj – chỉ số đƣa ra bậc của noron. Mặc dù mạng bậc cao rất hiệu quả để so sánh với mạng thông thƣờng, lập bản đồ thô trên VLSI bởi vì cấu tạo bậc cao của chúng. Do đó, sử dụng những noron tiền định bậc một thì thích hợp hơn khi quan sát các điểm hệ thống xử lý VLSỊ Điều này luôn là tiêu chuẩn khảo sát dễ nhất