Trang chủ Chuyên gia viết Mạng nơ-ron tăng vọt trong hệ thống Neuromorphic hiện đại (Phần 1)

Mạng nơ-ron tăng vọt trong hệ thống Neuromorphic hiện đại (Phần 1)

Giới thiệu về mạng nơ-ron tăng vọt

Mạng nơ-ron tăng vọt (Spiking Neural Network – SNN) được giới thiệu bởi các nhà nghiên cứu tại Đại học Heidelberg và Đại học Bern. Mạng nơ-ron tăng vọt bắt chước gần giống mạng nơ-ron tự nhiên, có khả năng xử lý thông tin theo thời gian thực và tiết kiệm năng lượng. SNN sử dụng các xung điện (spikes) để truyền thông tin giữa các nơ-ron. Thay vì truyền tín hiệu liên tục như các mạng nơ-ron truyền thống, SNN truyền các xung điện rời rạc tại các thời điểm cụ thể khi điện thế màng của nơ-ron vượt qua một ngưỡng nhất định. SNN lấy một tập hợp các xung tăng vọt làm ngõ vào và tạo ra một tập hợp các xung tăng vọt làm ngõ ra (một loạt các xung tăng vọt thường được gọi là các chuỗi xung tăng vọt). Tế bào thần kinh kích hoạt khi điện thế màng chạm ngưỡng, gửi tín hiệu đến các tế bào thần kinh lân cận, làm tăng hoặc giảm điện thế của chúng để đáp lại tín hiệu. Các thành phần quan trọng của mạng SNN là mô hình nơ-ron thần kinh, khớp thần kinh (synapse), STDP (spike-timing-dependent plasticity), v.v.

SNN được ứng dụng trong nhiều lĩnh vực như nhận dạng mẫu, điều khiển robot, và các hệ thống thông minh nhân tạo khác. Chúng cũng đang được nghiên cứu để phát triển các hệ thống phần cứng như mạch điện, FPGA (field-programmable gate array), chip.

Một tế bào thần kinh sinh học trong não nhận ngõ vào synapse từ các tế bào thần kinh khác trong mạng nơ-ron. Khi điện thế màng của tế bào thần kinh sau synapse đạt đến một ngưỡng, hoạt động của tế bào thần kinh trước synapse ảnh hưởng đến điện thế màng của tế bào thần kinh sau synapse, dẫn đến hình thành điện thế hoạt động hay xung tăng vọt. Các tế bào thần kinh tăng vọt và các khớp thần kinh liên kết được mô tả bằng các trọng số vô hướng có thể định cấu hình trong một kiến ​​trúc SNN. Dữ liệu ngõ vào tương tự được mã hóa thành các chuỗi xung tăng vọt bằng cách sử dụng kỹ thuật dựa trên mã hóa tỉ lệ, mã hóa thời gian hoặc mã hóa phổ biến như là giai đoạn đầu trong việc xây dựng SNN. SNN đóng vai trò quan trọng trong định hình, thiết kế, triển khai, và ứng dụng trong các hệ thống Neuromorphic (mô phỏng thần kinh).

SNN trong hệ thống Neuromorphic

Tính toán Neuromorphic đã xuất hiện trong những năm gần đây như một kiến ​​trúc bổ sung cho các hệ thống kiến trúc Von Neumann. Thuật ngữ tính toán Neuromorphic được đặt ra vào năm 1990 bởi Carver Mead. Vào thời điểm đó, Mead đề cập đến mạch tích hợp quy mô rất lớn (VLSI – Very large scale integration) với các thành phần mạch tương tự mô phỏng hệ thống thần kinh sinh học gọi là hệ thống “Neuromorphic”. Gần đây Neuromorphic thực thi dựa trên các mạng nơ-ron nhân tạo hoặc lấy cảm hứng từ sinh học hoặc sử dụng các kiến ​​trúc không phải Von Neumann. Các kiến ​​trúc thần kinh cấu trúc này đáng chú ý vì có tính kết nối cao và song song, yêu cầu năng lượng thấp, đồng thời tập hợp bộ nhớ và xử lý. Các kiến ​​trúc Neuromorphic đã nhận được sự chú ý ngày càng tăng do định luật Moore sắp kết thúc, nhu cầu điện năng ngày càng tăng liên quan đến việc mở rộng quy mô Dennard và băng thông thấp giữa CPU (đơn vị xử lý trung tâm – Central processing unit) và bộ nhớ được gọi là nút cổ chai Von Neumann. Máy tính cấu trúc thần kinh có tiềm năng thực hiện các phép tính phức tạp nhanh hơn, hiệu quả hơn và tiết kiệm điện hơn so với các kiến ​​trúc Von Neumann truyền thống. Những đặc điểm này đưa ra những lý do thuyết phục để phát triển phần cứng sử dụng kiến ​​trúc Neuromorphic.

Lý do quan trọng thứ hai cho sự quan tâm mạnh mẽ đến tính toán Neuromorphic là thuật ngữ “học máy” (machine learning). Phương pháp này cho thấy có nhiều hứa hẹn trong việc cải thiện hiệu suất học tổng thể cho các nhiệm vụ nhất định. Điều này cho thấy những lợi ích trên phần cứng trong việc ứng dụng tiềm năng của tính toán Neuromorphic, với hứa hẹn phát triển các thuật toán có khả năng học trực tuyến, thời gian thực tương tự như những gì được thực hiện trong não sinh học. Các kiến ​​trúc Neuromorphic dường như là nền tảng thích hợp nhất để triển khai các thuật toán học máy trong tương lai.

Cộng đồng Neuromorphic khá rộng, bao gồm các nhà nghiên cứu từ nhiều lĩnh vực khác nhau, chẳng hạn như khoa học vật liệu, khoa học thần kinh, kỹ thuật điện tử, kỹ thuật máy tính và khoa học máy tính. Các nhà khoa học vật liệu nghiên cứu, chế tạo và mô tả đặc tính của các vật liệu mới để sử dụng trong các thiết bị Neuromorphic, tập trung vào các vật liệu thể hiện các đặc tính tương tự như các hệ thống thần kinh sinh học. Các nhà khoa học thần kinh cung cấp thông tin về các kết quả mới từ các nghiên cứu của họ có thể hữu ích về mặt tính toán và sử dụng các hệ thống Neuromorphic để mô phỏng và nghiên cứu các hệ thống thần kinh sinh học. Các kỹ sư điện tử làm việc ở mức linh kiện với mạch tương tự, mạch kỹ thuật số, mạch tương tự/kỹ thuật số hỗn hợp và phi truyền thống để xây dựng các loại linh kiện mới, đồng thời xác định các hệ thống và sơ đồ giao tiếp mới. Các nhà khoa học máy tính và kỹ sư máy tính làm việc để phát triển các mô hình mạng mới lấy cảm hứng từ cả sinh học và máy học, bao gồm các thuật toán mới có thể cho phép các mô hình này được đào tạo và/hoặc tự học. Họ cũng phát triển phần mềm hỗ trợ cần thiết để cho phép sử dụng các hệ thống tính toán Neuromorphic trong thế giới thực.

Hình 1. Kiến trúc mạng SNN [4].

Ý tưởng sử dụng phần cứng tùy chỉnh để triển khai các hệ thống lấy cảm hứng từ thần kinh cũng lâu đời như khoa học máy tính và kỹ thuật máy tính, với cả Von Neumann [1] và Turing [2] đều thảo luận về máy tính lấy cảm hứng từ não bộ vào những năm 1950. Các nhà khoa học máy tính từ lâu đã muốn tái tạo nơ-ron sinh học. Phần cứng mạng nơ-ron và cấu trúc thần kinh hoạt động theo thời gian hệ thống trong máy tính. Việc theo đuổi này đã dẫn đến những khám phá quan trọng trong lĩnh vực mạng nơ-ron nhân tạo (Aritificial Neural Network – ANN), trí tuệ nhân tạo và học máy.

Phần lớn công việc ban đầu trong tính toán Neuromorphic được thúc đẩy bởi sự phát triển của phần cứng có thể thực hiện các hoạt động song song, lấy cảm hứng từ sự song song quan sát được trong não sinh học, được thực hiện trên một con chip. Mặc dù đã có sẵn các kiến ​​trúc song song, các hệ thống Neuromorphic nhấn mạnh vào nhiều thành phần xử lý đơn giản (thường ở dạng nơron), với các kết nối tương đối dày đặc giữa chúng (thường là synapse) như Hình 1. Trong các công trình từ thời kỳ đầu của tính toán Neuromorphic, tính song song vốn có của các hệ thống này là lý do phổ biến nhất cho việc triển khai trên phần cứng tùy chỉnh. Một lý do phổ biến khác cho việc triển khai phần cứng mạng nơron và cấu trúc thần kinh là tốc độ tính toán. Đặc biệt, các nhà phát triển của các hệ thống ban đầu nhấn mạnh rằng có thể đạt được tính toán mạng nơ-ron nhanh hơn nhiều với các chip được thiết kế tùy chỉnh so với những gì có thể với kiến ​​trúc Von Neumann truyền thống, một phần bằng cách khai thác tính song song tự nhiên của chúng như đã đề cập ở trên, nhưng cũng bằng cách xây dựng phần cứng tùy chỉnh để hoàn thiện tính toán kiểu nơ-ron. Sự tập trung ban đầu vào tốc độ này đã báo trước một tương lai của việc sử dụng các hệ thống Neuromorphic làm bộ gia tốc cho các nhiệm vụ học máy hoặc kiểu mạng thần kinh.

Hiệu suất thời gian thực cũng là động lực quan trọng của các hệ thống thần kinh sinh học ban đầu. Được kích hoạt bởi tính song song tự nhiên và tốc độ tính toán, các thiết bị này có xu hướng có thể hoàn thành các phép tính mạng nơ-ron nhanh hơn so với việc triển khai trên kiến ​​trúc Von Neumann cho các ứng dụng như điều khiển thời gian thực, tái tạo hình ảnh kỹ thuật số thời gian thực, và điều khiển robot tự động. Trong những ứng dụng này, hiệu suất ứng dụng được quan tâm hơn là yêu cầu tính toán nhanh. Các nhà phát triển ban đầu cũng bắt đầu nhận ra rằng mạng nơ-ron có thể là một mô hình tự nhiên để triển khai phần cứng vì khả năng chịu lỗi vốn có của chúng, cả trong biểu diễn song song có phạm vi lớn và khả năng thích ứng hoặc tự hàn gắn trong các biểu diễn mạng nơ-ron nhân tạo trong phần mềm.

Hệ thống Neuromorphic có khả năng hoạt động với công suất cực thấp. Nguồn cảm hứng là từ bộ não con người với khoảng 20 Watt điện để thực hiện các tính toán và nhiệm vụ cực kỳ phức tạp. Mong muốn tạo ra các hệ thống Neuromorphic tiêu thụ ít năng lượng tương tự đã là động lực nổi bật trong tính toán Neuromorphic. Tương tự như vậy, việc tạo ra các thiết bị có khả năng tính toán kiểu mạng nơ-ron với kích thước nhỏ (về kích thước thiết bị) cũng trở thành động lực chính trong nghiên cứu Neuromorphic này. Cả hai động lực này đều tương ứng với sự tăng cường sử dụng các hệ thống nhúng và bộ vi xử lý, tùy thuộc vào ứng dụng có thể có mức tiêu thụ điện năng rất thấp. Trong những năm gần đây, động lực chính cho sự phát triển của các hệ thần kinh đa hình là mức tiêu thụ điện năng thấp. Cho đến nay, nó là động lực phổ biến nhất cho máy tính Neuromorphic, như có thể thấy trong Hình 2.

Hình 2. Các động lực phát triển mô hình Neuromorphic [3]

Tính song song vốn có, hiệu suất thời gian thực, tốc độ trong cả hoạt động và huấn luyện, và đóng gói linh kiện nhỏ cũng tiếp tục là động lực chính cho sự phát triển của triển khai Neuromorphic như trong Hình 2. Một số phương pháp tiếp cận sử dụng kiến ​​trúc kiểu mạng nơ-ron (tức là kiến ​​trúc được tạo thành từ các thành phần giống nơ-ron và khớp thần kinh) vì đặc tính chịu lỗi hoặc độ tin cậy của chúng khi đối mặt với lỗi phần cứng. Điều này đã trở thành một động lực ngày càng phổ biến trong những năm gần đây trong việc sử dụng các vật liệu mới để thực hiện các hệ thống thần kinh sinh học. Một động lực chính khác để xây dựng hệ thần kinh trong những năm gần đây là nghiên cứu khoa học thần kinh. Các hệ thống Neuromorphic tùy biến đã được phát triển cho một số dự án dựa trên khoa học thần kinh, bởi vì việc mô phỏng hành vi thần kinh tương đối thực tế trên một siêu máy tính truyền thống là không khả thi, về quy mô, tốc độ hoặc công suất tiêu thụ. Do đó, các triển khai Neuromorphic tùy biến được yêu cầu để thực hiện các mô phỏng khoa học thần kinh có ý nghĩa với nỗ lực hợp lý. Tương tự như vậy, khả năng mở rộng cũng trở thành một động lực ngày càng phổ biến để xây dựng các hệ thống thần kinh sinh học. Hầu hết các dự án cấu trúc thần kinh lớn đều thảo luận về cách ghép tầng các thiết bị của chúng lại với nhau để đạt được số lượng rất lớn các nơ-ron và khớp thần kinh.

Các nhà nghiên cứu xem xét các hệ thống Neuromorphic như một kiến ​​trúc bổ sung tiềm năng trong máy tính ngoài định luật Moore. Mặc dù hầu hết các nhà nghiên cứu không mong đợi rằng các hệ thống Neuromorphic sẽ thay thế kiến ​​trúc Von Neumann, nhưng “xây dựng một máy tính tốt hơn” là một trong những động lực để phát triển các thiết bị Neuromorphic. Một động lực chung khác cho sự phát triển tính toán Neuromorphic là giải quyết điểm nghẽn trong Von Neumann, nảy sinh trong kiến ​​trúc Von Neumann do sự tách biệt giữa bộ nhớ và xử lý cũng như khoảng cách về hiệu suất giữa các công nghệ xử lý và bộ nhớ trong các hệ thống hiện tại. Trong các hệ thống Neuromorphic, bộ nhớ và quá trình xử lý được liên kết với nhau, giảm thiểu các vấn đề nảy sinh với nút cổ chai Von Neumann. Học trực tuyến, được định nghĩa là khả năng thích ứng với những thay đổi trong một nhiệm vụ khi chúng xảy ra, đã là động lực chính cho các hệ thống Neuromorphic trong những năm gần đây. Mặc dù các cơ chế học tập trực tuyến vẫn chưa được hiểu rõ, nhưng vẫn có tiềm năng cho các cơ chế học tập trực tuyến có mặt trong nhiều hệ thống Neuromorphic để thực hiện các nhiệm vụ học tập theo cách học không giám sát, tiêu tốn ít năng lượng.

Với sự gia tăng mạnh mẽ của việc thu thập dữ liệu trong những năm gần đây, các hệ thống có khả năng xử lý và phân tích dữ liệu này một cách trực tuyến, học không giám sát sẽ là một phần không thể thiếu trong các nền tảng máy tính trong tương lai. Hơn nữa, khi chúng ta tiếp tục hiểu biết về bộ não sinh học, rất có thể chúng ta sẽ có thể xây dựng các cơ chế học tập trực tuyến tốt hơn và các hệ thống tính toán Neuromorphic sẽ là nền tảng tự nhiên để triển khai các hệ thống đó.

Ưu điểm và nhược điểm của SNN

SNN có ưu điểm là một hệ thống động. Kết quả là nó vượt trội trong các quy trình động như nhận dạng giọng nói và hình ảnh thời gian thực. Khi SNN đã hoạt động, nó vẫn có thể được huấn luyện. Để huấn luyện một SNN chỉ cần huấn luyện các nơ-ron ngõ ra. SNN thường có ít tế bào thần kinh hơn. Bởi vì các tế bào thần kinh gửi các xung chứ không phải là một giá trị liên tục. SNN có thể hoạt động cực kỳ nhanh chóng. Bởi vì chúng tận dụng khả năng trình bày thông tin theo thời gian, SNN đã nâng cao năng suất xử lý thông tin và khả năng chống nhiễu.

Tuy vậy, SNN cũng có nhược điểm là rất khó huấn luyện. Hiện tại, không có thuật toán huấn luyện nào được xây dựng cụ thể cho SNN. Xây dựng một SNN nhỏ là việc không thể thực hiện được nên thông thường phải xây dựng SNN có quy mô khá lớn.

(còn nữa…)

Tác giả: PGS.TS. Lê Đức Hùng, Trường ĐH Khoa học tự nhiên, ĐH Quốc gia TP. HCM.

Biên tập: Quỹ Đổi mới sáng tạo Vingroup (VinIF).

TÀI LIỆU THAM KHẢO

[1]. J. Von Neumann and R. Kurzweil, The Computer and the Brain. Yale University Press, 2012.

[2]. A. M. Turing, “Computing Machinery and Intelligence,” Mind, Vol. 59, No. 236, pp. 433–460, 1950.

[3]. Schuman, Catherine & Potok, Thomas & Patton, Robert & Birdwell, J. & Dean, Mark & Rose, Garrett & Plank, James., “A Survey of Neuromorphic Computing and Neural Networks in Hardware”, arXiv:1705.06963, 2017.

[4]. https://analyticsindiamag.com/ai-trends/a-tutorial-on-spiking-neural-networks-for-beginners/

BÀI MỚI NHẤT

Mạng nơ-ron tăng vọt trong hệ thống Neuromorphic hiện đại (Phần 1)

Mạng nơ-ron tăng vọt (Spiking Neural Network – SNN) được giới thiệu bởi các nhà nghiên cứu tại Đại học Heidelberg và Đại học Bern. Mạng nơ-ron tăng vọt bắt chước gần giống mạng nơ-ron tự nhiên, có khả năng xử lý thông tin theo thời gian thực và tiết kiệm năng lượng. SNN sử dụng các xung điện (spikes) để truyền thông tin giữa các nơ-ron. Thay vì truyền tín hiệu liên tục như các mạng nơ-ron truyền thống, SNN truyền các xung điện rời rạc tại các thời điểm cụ thể khi điện thế màng của nơ-ron vượt qua một ngưỡng nhất định. SNN lấy một tập hợp các xung tăng vọt làm ngõ vào và tạo ra một tập hợp các xung tăng vọt làm ngõ ra (một loạt các xung tăng vọt thường được gọi là các chuỗi xung tăng vọt). Tế bào thần kinh kích hoạt khi điện thế màng chạm ngưỡng, gửi tín hiệu đến các tế bào thần kinh lân cận, làm tăng hoặc giảm điện thế của chúng để đáp lại tín hiệu. Các thành phần quan trọng của mạng SNN là mô hình nơ-ron thần kinh, khớp thần kinh (synapse), STDP (spike-timing-dependent plasticity), v.v.

Tạo hình cục bộ liên tục có hỗ trợ nhiệt và rung siêu âm – Công nghệ sáng tạo cho sản phẩm thay thế...

Trong thời kỳ kinh tế số và toàn cầu hóa, các doanh nghiệp đang đối mặt với nhiều thách thức như giảm chi phí, nâng cao chất lượng sản phẩm và nhanh chóng đưa sản phẩm ra thị trường. Để giải quyết những vấn đề này, việc áp dụng các công nghệ sản xuất tiên tiến kết hợp với kỹ thuật số hiện đại là chìa khóa thành công.Một trong những công nghệ nổi bật hiện nay là công nghệ tạo hình cục bộ liên tục (ISF – Incremental Sheet Forming). Đây là phương pháp gia công kim loại độc đáo, trong đó một tấm kim loại được tạo hình từng bước nhờ chuyển động liên tục của một công cụ chuyên dụng. Điểm mạnh của ISF là khả năng tạo ra các hình dạng phức tạp mà các phương pháp truyền thống khó thực hiện, với độ chính xác cao và chi phí thấp hơn.

Hệ thống IOT theo dõi điện tim thai nhi với cảm biến không tiếp xúc

Trong bối cảnh tỷ lệ thai chết lưu do dị tật tim bẩm sinh ngày càng tăng cao, đặc biệt tại Việt Nam với con số báo động 6% so với mức trung bình toàn cầu 1% [1, 2], việc theo dõi sức khỏe thai nhi trở thành một trong những ưu tiên hàng đầu. Tỷ lệ sinh non gia tăng, chiếm từ 5 - 9%, đòi hỏi sự chăm sóc đặc biệt để bảo đảm sự sống và phát triển khỏe mạnh của trẻ. Do đó việc theo dõi sức khỏe thai nhi trở nên vô cùng cấp thiết nhằm giảm thiểu nguy cơ thai chết lưu và sinh non, đảm bảo sự phát triển toàn diện cho trẻ. Hệ thống thông tin y tế đóng vai trò then chốt trong việc hỗ trợ các cơ sở y tế còn hạn chế, giảm tải áp lực cho bệnh viện và đảm bảo xử lý kịp thời các tình huống khẩn cấp, đồng thời tối ưu hóa năng lực của đội ngũ y bác sĩ. Hơn thế nữa, xây dựng một cơ sở dữ liệu về bà mẹ mang thai người Việt là bước đi quan trọng, giúp tìm hiểu nguyên nhân của những vấn đề sức khỏe của trẻ em, từ đó góp phần cải thiện chất lượng chăm sóc sức khỏe cho thế hệ tương lai.

Giải pháp công nghệ IoTs/5G sử dụng kỹ thuật xử lý dữ liệu lớn và trí tuệ nhân tạo cho đô thị thông minh

Công nghệ Internet của vạn vật (Internet of Things - IoTs), mạng không dây thế hệ mới 5G, và kỹ thuật xử lý dữ liệu lớn (Big Data), trí tuệ nhân tạo (AI) đóng vai trò quan trọng trong việc tạo ra những đổi mới đột phá trong CNTT và truyền thông, và trong các lĩnh vực ứng dụng liên quan. Thành phố thông minh (Smart Cities) là một trong những ứng dụng như vậy, đã thu hút được sự chú ý lớn từ các chính phủ, cộng đồng ngành học thuật và CNTT tại nhiều quốc gia.

BÀI ĐỌC NHIỀU

Khái quát về mô hình dữ liệu quan hệ

Phần lớn hệ thống cơ sở dữ liệu hiện nay đều được xây dựng bằng mô hình dữ liệu quan hệ. Vậy mô hình...

Supervised Learning và Unsupervised Learning: Khác biệt là gì?

Supervised learning (Học có giám sát) và Unsupervised learning (Học không giám sát) là hai trong số những phương pháp kỹ thuật cơ bản...

Transformer Neural Network – Mô hình học máy biến đổi thế giới NLP

Năm 2017, Google công bố bài báo “Attention Is All You Need” thông tin về Transformer như tạo ra bước ngoặt mới trong lĩnh...

Khái quát về Data Pipeline

Dữ liệu là chìa khóa trong việc khám phá tri thức sâu rộng, nâng cao hiệu quả quy trình và thúc đẩy đưa ra...