Professional Documents
Culture Documents
Tế bào Nơron nhân tạo có độ chính xác và tốc độ cao: Nguyễn Quang Anh, Nguyễn Hoàng Dũng
Tế bào Nơron nhân tạo có độ chính xác và tốc độ cao: Nguyễn Quang Anh, Nguyễn Hoàng Dũng
Tóm tắt: Bài báo này tập trung trình bày thiết kế tế bào nơron nhân tạo với phương pháp học giám
sát có khả năng thích ứng với nhiều thuật toán đòi hỏi độ chính xác và tốc độ cao. Dựa trên thuật
toán huấn luyện có giám sát và cấu tạo nơron thực, nhóm nghiên cứu xây dựng một kiến trúc
nơron nhân tạo có kiến trúc tương tự đi kèm bộ xử lý số thực. Kiến trúc này dễ dàng tăng tốc độ
xử lý bằng cách mở rộng số tầng thực hiện mô phỏng theo cấu trúc đường ống (pipeline). Để đảm
bảo tốc độ và độ chính xác cao, nhóm nghiên cứu đã thực hiện tối ưu một số kiến trúc bộ dịch và
bộ xử lý số thực song song. Chính vì vậy khi tăng thêm số tầng cho kiến trúc thì tốc độ tăng lên rất
nhanh trong khi tài nguyên tăng lên không đáng kể. Kết quả tổng hợp trên chip FPGA Virtex 6 của
hãng Xilinx cho thấy kiến trúc nơron của nhóm nghiên cứu đề xuất có thể hoạt động lên đến 5 tầng
thực hiện theo cấu trúc pipeline và tốc độ đạt được tối đa là 108Mhz.
Từ khóa: nơron nhân tạo, xử lý số thực, đường ống, bộ dịch.
1. Giới thiệu chung tương đối tốt các dữ liệu quan sát được và cho
ra kết quả chính xác.
Mạng nơron nhân tạo (Artificial Neural Các nghiên cứu [1-3] thường là sử dụng
Network) là một trong những công cụ phi tuyến thuật toán và chạy trên máy tính với CPU và
để mô hình hóa các mối quan hệ phức tạp giữa GPU tốc độ cao không mang tính gọn nhẹ. Tiêu
dữ liệu đầu vào và kết quả đầu ra từ một tập biểu nhất là nhận dạng trên mã nguồn mở
mẫu dữ liệu. Mạng nơron gồm một nhóm các tế OpenCV. Do đó khi sử dụng theo cách này thì
bào nơron nhân tạo nối với nhau để xử lý thông sẽ khó đáp ứng được các ứng dụng đòi hỏi sản
tin bằng cách truyền theo các kết nối và tính giá phẩm có kích thước nhỏ gọn và sử dụng nguồn
trị tại các lớp nơron. Có ba hướng huấn luyện pin. Để tập trung vào một số ứng dụng cụ thể
mạng nơron là học có giám sát, học không giám nhằm tăng tốc độ và giảm kích thước cũng như
sát và học bám giám sát. Mỗi hướng huấn luyện công suất tiêu thụ phần cứng, nhóm nghiên cứu
đều có những ưu, nhược điểm khác nhau. đã tiến hành triển khai, thực nghiệm một phần
Nhưng để đạt độ chính xác cao nhất, nhóm của ứng dụng trên nền tảng phần cứng FPGA.
nghiên cứu sử dụng mô hình học có giám sát. Hầu hết các nghiên cứu trước đây thường chỉ
Với các tham số khởi tạo và cơ chế xấp xỉ hàm thực hiện được trên số nguyên hoặc là số thực
tùy ý, sau khi huấn luyện thì mạng có thể xử lý có dấu phẩy cố định vì những ứng dụng đó
không cần độ chính xác cao. Ý tưởng thiết kế ra
_______ tế bào nơron nhân tạo chuẩn trên nền tảng
Tác giả liên hệ. ĐT: 84-913004120. FPGA để dễ dàng tương thích và sử dụng cho
Email: dung.nguyenhoang@hust.edu.vn
15
16 N.Q. Anh, N.H. Dũng / Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 33, Số 1 (2017) 15-24
các thuật toán số học đòi hỏi độ chính xác cao Cấu tạo của một nơron thật trong não người
mà tài nguyên sử dụng cần phải tiết kiệm cũng được minh họa trong hình 2. Một nơron gồm có
như đảm bảo tốc độ xử lý. Thiết kế dựa trên thân nơron (cell body) là nơi xử lý các tín hiệu
nghiên cứu nơron thực, nghiên cứu kiến trúc được đưa vào từ các giác quan. Các dây hình
nơron nhân tạo song song [4] và kiến trúc nơron nhánh cây (dendrites) là nơi nhận các xung điện
nhân tạo nối tiếp [5]. Trong đó, nhóm nghiên vào trong nơron và các sợi trục (axons) là một
cứu sử đã thiết kế bộ xử lý số thực theo chuẩn dây dài đưa xung điện ra sau quá trình xử lý từ
IEEE 754 [6] và bộ dịch bit mới để đảm bảo độ thân của nơron. Giữa các dây hình nhánh cây và
chính xác cũng như tốc độ thực hiện. các sợi trục có một liên kết với nhau gọi là
Trong bài báo này nhóm nghiên cứu sẽ trình khớp thần kinh (synapse).
bày tổng quan về mạng nơron và các nghiên Axon
Dendrites
cứu liên quan trong phần II; thiết kế bộ xử lý số
thực theo chuẩn IEEE 745 [6] và bộ dịch bit để
tăng độ chính xác và tốc độ trong phần III; các Cell Body
kết quả mô phỏng và thảo luận trong phần IV
và kết luận ở phần V.
Synapse
P1
P2
n a
P3
f
Pn
Hình 1. Mô hình xử lý thông tin của con người. Hình 3. Mô hình nơron nhân tạo.
N.Q. Anh, N.H. Dũng / Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 33, Số 1 (2017) 15-24 17
Start
No
Output = T ?
No
Output = 0 ?
Yes
Yes
W1 -= Alpha*Input1 W1 += Alpha*Input1
W2 -= Alpha*Input2 W2 += Alpha*Input2 Hình 9. Mô hình mạng nơron xử lý.
B=B-1 B=B+1
End
input *W
j j B
Bảng 1. Ưu nhược điểm của mạng nơron xử lý 3. Kiến trúc mạng nơron song song
song song và nối tiếp
3.1. Cải tiến mô hình mạng nơron xử lý dữ liệu
Mô hình song song
mạng Ưu điểm Nhược điểm
nơron Trong thiết kế kiến trúc mang nơron của
- Xử lý dữ liệu - Số bộ nhân và bộ Christodoulou [10] sử dụng bộ cộng nối tiếp
nhanh, đảm cộng tăng lên cho (N-1) đầu vào sau khi nhân với trọng số.
bảo tính toán tương ứng với số Phương pháp này thiếu hợp lý vì đã không tối
thời gian thực. đường dữ liệu vào. ưu được nền tảng phần cứng và làm tăng thời
- Tăng tỉ lệ dữ - Nếu có số lượng gian trễ từ bộ nhân cho tới bộ lọc giá trị. So với
Xử lý liệu đầu vào đường dữ liệu vào
cấu tạo của một mạng nơron thật sự, nhóm
song hiệu dụng và lớn sẽ ảnh hưởng
song tiết kiệm tài đến yêu cầu về nghiên cứu đã đưa thêm các đường tín hiệu điều
nguyên bộ nhớ. kích thước của vi khiển và đường dữ liệu vào để thuận tiện hơn
- Dễ đưa kỹ mạch thực hiện. trong quá trình xử lý. Hình 11 minh họa sơ đồ
thuật pipeline khối của một mạng nơron nhân tạo có kiến trúc
để tăng tốc độ xử lý song song được nhóm nghiên cứu đề xuất.
tính toán.
- Tiết kiệm - Khó xây dựng
được khá nhiều hàng đợi và đồng
tài nguyên bộ dữ liệu đầu vào
cổng logic khi thực hiện trên
phần cứng. nhiều lớp nơron.
- Số thanh ghi và
flipflop tăng lên để
lưu giữ giá trị khi
tiết kiệm cổng
Xử lý
logic.
nối tiếp
- Bộ điều khiển trở
nên phức tạp và
khó kiểm soát.
- Thời gian sẽ
chậm khi dữ liệu
vào phải tính toán
nối tiếp. Hình 11. Đề xuất mô hình mạng nơron
- Chu kỳ một vòng xử lý song song.
tính toán lớn.
Kiến trúc này chỉ cần nạp trọng số vào một
Dựa trên các nghiên cứu đó, nhóm nghiên lần lúc khởi động và sau đó cập nhật cùng với
cứu xây dựng một bảng so sánh các ưu nhược giá trị lưu trữ song song bên trong mạng nơron.
điểm của mô hình mạng nơron xử lý nối tiếp và Một bộ cập nhật trọng số gồm 2 thành phần
xử lý song song như trình bày trong bảng 1. Với chính là các bộ nhân và các bộ cộng số thực.
những ưu nhược điểm của từng mô hình, nhóm Như vậy, mỗi một đường dữ liệu đi vào thiết kế
nghiên cứu nhận thấy mô hình xử lý dữ liệu chỉ cần cần thêm 2 bộ cộng số thực và 2 bộ
song song có nhiều ưu điểm hơn hẳn so với mô nhân số thực. Nghiên cứu của Pierre Auger
hình nối tiếp. Tuy nhiên để hạn chế các nhược Collaboration [11] đã chỉ xử lý được cho duy
điểm của mô hình này, nhóm nghiên cứu đề nhất số nguyên nên kiến trúc đó sẽ không dùng
xuất và trình bày một số cải tiến cho mô hình được vào những ứng dụng lớn. Trong khi đó
xử lý dữ liệu song song trong phần tiếp theo của thiết kế của Jeannette Chin [12] sử dụng 5 bit
bài báo này. cho phần thập phân hay thiết kế của Valeri
20 N.Q. Anh, N.H. Dũng / Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 33, Số 1 (2017) 15-24
Mladenov [4] sử dụng 10 bit cho phần thập song song 32 bit trên mạch tổ hợp dựa vào
phân cũng chỉ có thể xử lý tới sai số cỡ phần phương pháp chia đôi và lựa chọn bit. Ý tưởng
nghìn. Ngoài ra, thiết kế Alessandro [13] sử của phương pháp này là nếu có một số 32 bit
dụng một nhân vi điều khiển NIOS trong chip cần dịch đi một số lượng bit 0 n 32 . Biến
FPGA chỉ để đọc dữ liệu từ RAM và xử lý số đổi giá trị n ra dạng số nhị phân có 5 bit từ [4:0]
thực là hoàn toàn lãng phí tài nguyên trong khi với bit 0 là bit có trọng số thấp nhất (Least
trên thực tế chỉ cần xây dựng một bộ xử lý số Significant Bit – LSB) và bit 4 là bit có trọng số
thực để nâng cao độ chính xác cho các ứng cao nhất (Most Significant Bit – MSB). Như
dụng. Chính vì vậy, nhóm nghiên cứu thiết kế vậy, giá trị n = b4 * 16 + b3 * 8 + b2 * 4 + b1 * 2 +
bộ nhân và cộng bằng cách cải tiến thêm một số b0 * 1. Với bộ dịch số có n bit thì số tầng dịch sẽ
module toán tử trên nền tảng kiến trúc bộ cộng là log2n. Thuật toán được mô tả như sau:
và nhân số thực của Prof. Al-Khalili [14] theo - Xử lý bit LSB để xác định số 32 bit cần
chuẩn IEEE 754. Với kiến trúc không xử lý số dịch số bit chẵn hay số bit lẻ.
thực, tần số hoạt động tối đa của mạng nơron dễ - Xử lý bit thứ 1 để xác định số 32 bit cần
dàng đạt được đến 200MHz. Tuy nhiên, đối với dịch đi thêm 2-bit hay không?
kiến trúc xử lý số thực, để xử lý được cần nhiều - Xử lý bit thứ 2 để xác định số 32 bit cần
công đoạn nhân, dịch và đếm nối tiếp nên tần số dịch đi thêm 4-bit hay không?
hoạt động tối đa sẽ bị giảm đi nhiều. - Xử lý bit thứ 3 để xác định số 32 bit cần
dịch đi thêm 8-bit hay không?
- Xử lý bit MSB để xác định số 32 bit cần
dịch đi thêm 16-bit hay không?
Thực hiện tương tự như bộ dịch bit song
song, bộ đếm sẽ đếm số bit 0 từ trái sang phải
cho tới khi gặp bit 1.
trạng thái đợi khởi tạo trọng số. Trạng thái 2 sẽ 4. Kết quả và thảo luận
là trạng thái đợi dữ liệu đầu vào để tính toán. 4.1. Kiểm thử mô hình đề xuất trên nền tảng
Trạng thái 3 sẽ thực hiện nhân dữ liệu đầu vào phần cứng
này với trọng số đã được khởi tạo ở trạng thái 1.
Kết quả của trạng thái 3 sẽ được chuyển sang Dựa vào thiết kế xử lý theo kiến trúc song
trạng thái 4 để xử lý thông tin tổng hợp. Ở trạng song, nhóm nghiên cứu tiến hành thử nghiêm
thái 5 cuối cùng, tế bào nơron sẽ xuất kết quả vào ứng dụng nhận diện khuôn mặt của John
và tiến hành hiệu chỉnh trọng số nếu cần thiết See [17]. John See đã thử nghiệm thành công
để kết quả lần sau chính xác hơn và sau đó sẽ việc nhận dạng với hơn 600 khuôn mặt dựa trên
lặp lại về trạng thái 2 đợi dữ liệu cho đến khi tập 100 bức ảnh mẫu theo mô hình tại hình 16
kết thúc hoàn toàn. với công cự sử dụng là phần mềm máy tính. Từ
thực nghiệm cụ thể, John See đã tìm ra những
biểu thức để phân loại màu da theo đồ thị trong
hình 17. Nhóm nghiên cứu sẽ tiến hành mô
phỏng bằng cách tạo một tập dữ liệu huấn luyện
trên phần mềm máy tình và tiến hành kiểm
chứng dữ liệu bằng cách so sánh với dữ liệu của
John See. Từ tập dữ liệu và tín hiệu phân loại,
nhóm nghiên cứu sử dụng thư viện bộ nhớ
Hình 14. Trạng thái hoạt động của mạng nơron nhân
chuẩn của Xilinx để tạo ra các bộ nhớ RAM
tạo xử lý song song do nhóm nghiên cứu đề xuất. chứa các đường dữ liệu mô phỏng thay cho việc
kết nối trực tiếp tới dữ liệu.
Hình 15 minh họa giản đồ thời gian hoạt
động của mạng nơron nhân tạo xử lý song song
do nhóm nghiên cứu đề xuất. Tín hiệu clock
được sử dụng để điều khiển hoạt động của hệ
thống. Tín hiệu reset sẽ đưa tế bào nơron về
trạng thái tạm ngừng hoạt động trước khi có tín
hiệu khởi tạo được đưa vào để khởi tạo trọng số
tương ứng. Sau khi dữ liệu được đưa vào ở
trạng thái 2 thì tín hiệu tính toán sẽ thiết lập ở
mức 1 để tính toán phép nhân trọng số với dữ
liệu đầu vào tại trạng thái 3, xử lý thông tin
tổng hợp ở trạng thái 4 và kết thúc một chu
Hình 16. Mô hình nhận dạng khuôn mặt dựa vào
trình làm việc ở trạng thái 5 trước khi quay về màu da của John See [17].
trạng thái 2 như tín hiệu trạng thái đã biểu diễn
ở trong hình 15. Kết quả sẽ được tính toán và
cập nhật ở trạng thái cuối cùng đó.
Hình 17. Đồ thị biểu diễn vùng màu da theo hai giá
Hình 15. Giản đồ thời gian hoạt động của mạng nơron
trị màu Cb và Cr [17].
nhân tạo xử lý song song do nhóm nghiên cứu đề xuất.
22 N.Q. Anh, N.H. Dũng / Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 33, Số 1 (2017) 15-24
Để mô phỏng quá trình huấn luyện trong bài 4.2. Kết quả khi nạp lên phần cứng FPGA của
báo trên nền tảng phần cứng FPGA, nhóm hãng Xilinx
nghiên cứu tạo tập dữ liệu huấn luyện cho mạng
So sánh kết quả của nhóm nghiên cứu khi
nơron nhân tạo dựa trên biểu thức:
thực hiện trên nền tảng phần cứng của hãng
Cr ≤ 1.5862 * Cb + 20 [17] Xilinx và các kết quả đã được đề cập trong các
nghiên cứu [18, 19] được đề cập trong bảng 2.
Nhóm nghiên cứu tạo một mẫu dữ liệu có
Qua bảng so sánh nhận thấy công nghệ FPGA
2000 phần tử, với 2 giá trị Cr, Cb. Sau đó nhóm
mà nhóm nghiên cứu sử dụng là Virtex 6
nghiên cứu đánh giá và đưa ra tập T là giá trị
(40nm), số dữ liệu đầu vào là 5 với tính toán số
đích huấn luyện với thuật toán lựa chọn như sau:
thực lên đến 32 bít trong khi số tài nguyên phần
Cr = rand()%256; Cr = rand()%256; cứng (LUT/LE và thanh ghi) lại ít hơn rất nhiều
nếu so sánh với kết quả của các nghiên cứu
T = Cr ≤ 1.5862 * Cb + 20 < 0 ? 0 : 1;
trước.
Kết quả mô phỏng trên máy tính bằng công
cụ phần mềm là ngôn ngữ C với tốc độ học Bảng 2. Kết quả so sánh khi thực hiện trên nền tảng
0.0003 được biểu diễn trong hình 18. Nhóm phần cứng
nghiên cứu muốn thử nghiệm kiến trúc mạng
nơron có kiến trúc xử lý song song trên nền Nhóm
Đặc điểm [18] [19]
tảng phần cứng FPGA Vertex 6 (40nm) của nghiên cứu
hãng Xilinx. Nhóm nghiên cứu mô phỏng mạng Công Virtex 5 Cyclone II Virtex 6
nơron nhân tạo trên công cụ Isim của Xilinx nghệ (65nm) (90nm) (40nm)
ISE với trọng số đầu tiên đều được khởi tạo là Số dữ liệu
1. Sau quá trình học tập, mạng nơron nhân tạo 5 1 5
đầu vào
cho ra kết quả như trong hình 19: Tính toán
16 bit 32 bit 32 bit
Alpha = 0x399d4952 = 0.0003d; số thực
W2 = 0x3f800000 = 1d LUT/LE 8984 8737 2254
W1 = 0x3fca751b = 1.5816988d; Thanh ghi 7591 2867 341
Bias = 41a00000 = 20d 42 bộ nhân
Bộ nhân 18 DSP 10 DSP
9 bit
Như vậy dễ dàng nhân thấy được sai số khi
thực hiện trên nền tảng phần cứng và công cụ Bảng 3 biểu diễn kết quả so sánh khi thực
phần mềm là: hiện tổng hợp mạng nơron nhân tạo xử lý song
song với số tầng pipeline khác nhau. Qua bảng
1.5862 1.5816988 3 nhóm nghiên cứu nhận thấy với số tầng tăng
0.284%
1.5862 lên thì tốc độ xử lý sẽ nhanh hơn rất nhiều (tăng
lên đến 2 lần nếu so sánh giữa việc sử dụng 2
tầng và sử dụng 5 tầng pipeline) trong khi tài
Hình 18. Kết quả mô phỏng với tốc độ học 0.0003 nguyên phần cứng tăng lên không đáng kể.
bằng ngôn ngữ C.
Bảng 3. Kết quả so sánh khi thực hiện trên
các tầng khác nhau
Số tầng pipeline 2 3 4 5
LUT/LE 2112 2136 2179 2254
Thanh ghi 219 251 309 341
Hình 19. Kết quả mô phỏng với tốc độ học 0.0003
bằng Isim của Xilinx ISE. Tần số (MHz) 52.5 71 95.3 108
N.Q. Anh, N.H. Dũng / Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 33, Số 1 (2017) 15-24 23
Dựa vào các phân tích thông qua bảng 2 và [3] Eriko Nurvitadhi, Jaewoong Sim, David
3 ở trên, có thể thấy kiến trúc của nhóm nghiên Sheffield, Asit Mishra, Srivatsan Krishnan,
Debbie Marr - “Accelerating Recurrent Neural
cứu rất đơn giản và dễ thực hiện trong khi hoạt
Networks in Analytics Servers: Comparison of
động của mạng nơron nhân tạo hoàn toàn kiểm FPGA, CPU, GPU, and ASIC”.
soát được bộ điều khiển. Bằng cách tự xây dựng [4] Philippe Dondon, Julien Carvalho, Rémi
các module cần thiết, nhóm nghiên cứu tạo đã Gardere, Paul Lahalle, Georgi Tsenov and Valeri
tạo ra được mạng nơron có nhiều điểm tối ưu về Mladenov - “Implementation of a Feed-forward
tài nguyên phần cứng cũng như thời gian tính Artificial Neural Network in VHDL on FPGA”-
toán. Trong trường hợp nếu tăng thêm số tầng 978-1-4799-5888-7/14/$31.00 ©2014 IEEE.
pipeline thì thiết kế chỉ cần tăng thêm số [5] Yufei Ma, Naveen Suda, Yu Cao, Jae-sun Seo,
lượng trạng thái tương ứng để đồng bộ dữ Sarma Vrudhula - “Scalable and Modularized
RTL Compilation of Convolutional Neural
liệu trong khi không cần phải thay đổi về kiến Networks onto FPGA”.
trúc tổng thể.
[6] “IEEE Standard for Floating-Point Arithmetic” -
September 03,2015 at 19:44:10 UTC from IEEE
Xplore.
5. Kết luận và hướng phát triển [7] Peng Li, Ming Liu, Xu Zhang and Hongda Chen
- “Effcient Online Feature Extraction algorithm
Trong bài báo này nhóm nghiên cứu đã for Spile Sorting in A Multichannel FPGA-
trình bày tổng quan về mạng nơron và cách Based Neural Recording System” - 978-1-4799-
thiết kế bộ xử lý số thực theo chuẩn IEEE 745. 2346-5/14/$31.00 ©2014 IEEE.
Thông qua đó nhóm nghiên cứu cũng đã để [8] SAMI EL MOUKHLIS, ABDESSAMAD
xuất mô hình cải tiến mạng nơron nhân tạo xử ELRHARRAS, ABDELLATIF HAMDOUN -
lý song song và kiểm thử trên nền tảng phần “FPGA Implementation of Artificial Neural
Networks” - IJCSI International Journal of
cứng FPGA của hãng Xilinx. Bằng cách tự xây
Computer Science Issues, Vol. 11, Issue 2, No 1,
dựng các module cần thiết, nhóm nghiên cứu March 2014.
tạo đã tạo ra được mạng nơron có nhiều điểm [9] Suhap Sahin, Yasar Becerikli, and Suleyman
tối ưu về tài nguyên phần cứng cũng như thời Yazici - “Neural Network Implementation in
gian tính toán. Trong trường hợp nếu tăng thêm Hardware Using FPGAs” - ICONIP 2006, Part
số tầng pipeline thì thiết kế chỉ cần tăng thêm III, LNCS 4234, pp. 1105 – 1112, 2006. ©
số lượng trạng thái tương ứng để đồng bộ dữ Springer-Verlag Berlin Heidelberg 2006.
liệu. Trong thời gian tiếp theo, nhóm nghiên [10] E.Al Zuraiqi, M.Joler, C.G.Christodoulou -
cứu sẽ đề xuất mô hình mạng nơron có khả “Neural Networks FPGA Controller for
Reconfigurable Antennas” - 978-1-4244-4968-
năng triển khai nhiều thuật toán trên các thiết bị 2/10/$25.00 ©2010 IEEE.
sử dụng nguồn pin và đòi hỏi độ chính xác cực [11] Zbigniew Szadkowski, Krzysztof Pytel, Pierre
cao hoặc kết hợp lai giữa các ưu điểm của kiến Auger Collaboration - “Artificial Neural
trúc mạng nơron xử lý song song và nối tiếp. Network as a FPGA Trigger for a Detection of
Very Inclined Air Showers”- IEEE
TRANSACTIONS ON NUCLEAR SCIENCE -
Tài liệu tham khảo 0018-9499 © 2015 IEEE.
[12] Alin Tisan , Jeannette Chin - “An End User
[1] Sicheng Li, Chunpeng Wu, Helen, Boxun Li, Yu Platform for FPGA-based design and Rapid
Wang, Qinru Qiu - “FPGA Acceleration of Prototyping of FeedForward Artificial Neural
Recurrent Neural Network based Language Networks with on-chip Back Propagation
Model”. learning”- 10.1109/TII.2016.2555936, IEEE.
[2] Lei Liu, Jianlu Luo, Xiaoyan Deng, Sikun Li – [13] Gabriele-Maria LOZITO, Antonino LAUDANI,
“FPGA-based Acceleration of Deep Neural Francesco RIGANTI-FULGINEI, Alessandro
Networks Using High Level Method” - 2015 SALVINI - “FPGA Implementations of Feed
10th International Conference on P2P, Parallel, Forward Neural Network by using Floating
Grid, Cloud and Internet Computing. Point Hardware Accelerators” - c 2014
24 N.Q. Anh, N.H. Dũng / Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 33, Số 1 (2017) 15-24
Abstracts: This paper focusses on the neural cell design with supervised learning method adapting
to many algorithms which require high speed and accuracy. Based on the supervised learning method
and real neural structure, we built an artificial neural architecture which can process real numbers.
This architecture easily increases the speed by expanding the floor numbers modeled on pipeline
structure. To ensure high speed and accuracy we try to optimize some blocks of the shifters and
parallel processor real number architectures. Therefore, when increasing the floor numbers of the
pipeline architecture the processing frequency increases rapidly while resources are not significantly
increased. The synthesis results implementing on Xilinx Virtex 6 FPGA show that our artificial
neural architecture can operate up to 5 floors of the pipeline structure and maximum speed is
reached 108 Mhz.
Keywords: Artificial Neural Network, Floating Point Processing, Pipeline, Shifter.