You are on page 1of 11

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ - VIỄN THÔNG

BÁO CÁO

Sinh viên thực hiện:

Đặng Bá Luân 20180130


Hà Nội, 2021
MỤC LỤC

DANH MỤC HÌNH VẼ............................................................................................................2

DANH MỤC BẢNG BIỂU.......................................................................................................3

CHƯƠNG 1. TỔNG QUAN.....................................................................................................4

1.1 Feedforward Neural Networks.......................................................................................4

1.2 Xây dựng phần cứng......................................................................................................5

CHƯƠNG 2. CONSTRAINED MODEL................................................................................6

2.1 Spiking Neurons.............................................................................................................6

2.2 Constrained Weights.......................................................................................................6

2.3 Binary Crossbar Connection Learning..........................................................................7

2.4 Neural Network Connections.........................................................................................9

2.5 Output Layer...................................................................................................................9

CHƯƠNG 3. RESULT..............................................................................................................9
DANH MỤC HÌNH VẼ

Hình 1.1 Mô hình Feedforward Neural Network...........................................................4


Hình 1.2 TrueNorth neurosynaptic core.........................................................................5
Hình 2.1 Crossbar connection trong mô hình huấn luyện và mô hình phần cứng..........8
Hình 2.2 Thuật toán tính Feedforward và backpropagation...........................................8

2
DANH MỤC BẢNG BIỂU

Bảng 2.1 Các thành phần của mô hình SNN..................................................................7

3
CHƯƠNG 1. TỔNG QUAN

1.1 Feedforward Neural Networks


Trong Feedforward NN, với bộ đầu vào x i, weight wij v à bias b jtạo thành các đầu ra I j
được tính bởi công thức:

I j=∑ xi w i j +b j
i

Output I j của mỗi layer được áp dụng vào các hàm phi tuyến như sigmoid, softmax,
…. trước khi được đưa tiếp vào layer tiếp theo.

Hình 1.1 Mô hình Feedforward Neural Network

Trong bài toán phân loại, việc dự đoán được thực hiện bởi Output Layer. Thông
thường mỗi neuron sẽ thuộc về một class, do đó bộ output {c 1 , c2 , … .., c k }sẽ dự đoán
cho tập class {C 1 ,C 2 , … .. , Ck }. Các output này được đưa về dạng xác suất dự đoán nằm
trong khoảng [0, 1] bằng các hàm, ví dụ như Softmax. Khi đó xác xuất dự đoán pl cho
class C lđược tính bằng công thức:
cl
e
pl= K

∑ ec k

k=1

Trong quá trình train, bộ weight wij v à bias b j được update bằng việc sử dụng
backpropagation và gradient descent để tối ưu hàm loss:

4
E=−∑ [ y k log ( pk ) + ( 1− y k ) log ( 1− pk ) ]
k

1.2 Xây dựng phần cứng

Hình 1.2 TrueNorth neurosynaptic core

Mô hình sử dụng 4096 neuronsynaptic cores. Mỗi core có 256 input axons và 256
output neurons (Hình 1.2). Các input spikes được đưa vào qua các axon và thông tin
được lan truyền qua các khớp nhị phân (Binary Synaptic Crossbar) tới các LIF neurons
để tạo nên các ouput spikes dựa vào ngưỡng được setup.

Để xây dựng xựng phần cứng, mô hình Neural Net phải được chuyển đổi sang cấu
hình phù hợp với TrueNorth core, do vậy một constrained-network được huấn luyện
để học các xác suất kết nối của khớp (crossbar connection probabilities) và bias. Khi
xây dựng sang phần cứng thì các xác suất này được lấy mẫu thành các khớp giá trị kết
nối rời rạc.

5
CHƯƠNG 2. CONSTRAINED MODEL

Mục đích dử dụng mô hình hạn chế (constrained model) là để giảm thiếu năng lượng
tiêu thụ mà vẫn giữ được hiệu quả nhất định so với mô hình truyền thống. Các hạn chế
được áp dụng lên mô hình: sử dụng spiking neurons, bộ trọng số w ij được giới hạn
trong bộ các giá trị số nguyên cho trước và giảm kết nối.

2.1 Spiking Neurons


Đầu ra của spking neuron nhận 1 trong 2 giá trị 0 (không tạo ra spike) hoặc 1 (tạo ra
spike) dựa vào đầu ra Ij theo công thức:

n j= 1
{ If I j> 0
0 Otherwise

Spiking neurons hoạt động như hàm bước Heaviside, không có gradient cho quá trình
lan truyền ngược do không tồn tại đạo hàm.

Trong quá trình huấn luyện yêu cầu tính khả vi để tính gradient, do đó hàm bước này
có thể được làm mượt gần đúng theo nhiều cách, ví dụ như dùng hàm hàm logistic, khi
đó đầu ra n^jđược tính theo công thức:

1
n^j=
1+e−2 k I j

Trong đó k là độ dốc của hàm, thường sử dụng k = 0.5 . Khi đó công thức đạo hàm
được tính:

2.2 Constrained Weights


Trong TrueNorth, bộ trọng số hiệu dụng được chia làm 2 thành phần: axon weight
w ij sij

và crossbar connection c . Khi đó wij = sij * cij.


ij

I j=∑ xi s i j c i j +b j
i

6
Thay vì huấn luyện cả bộ trọng số w ijthì bộ sij được khởi tạo setup cố định và chỉ học
binary crossbar connection c ij.

Bảng 2.1 Các thành phần của mô hình SNN

Gradient trong quá trình backpropagation được tính:

Đối với gradient cho bias cũng được tính tương tự, với giá trị bias khi đưa sang mô
hình phần cứng sẽ được làm tròn về giá trị nguyên gần nhất.

2.3 Binary Crossbar Connection Learning


Trong quá trình huấn luyện, mô hình sử dụng các hệ số crossbar connection dưới dạng
số thực c sh để nâng cao độ chính xác, sau đó dùng để tính binary connection c theo
công thức:

Hình 2.1 miêu tả mô hình trong quá trình huấn luyện và khi đưa vào xây dựng phần
cứng.

7
Hình 2.3 Crossbar connection trong mô hình huấn luyện và mô hình phần cứng

Quá trình feedforward và backpropagation sử dụng hệ số kết nối c để tính toán để
update giá trị c sh và sau đó từ c sh lại tính toán ra bộ hệ số c mới. Thuật toán được thể
hiện ở hình 2.2.

Hình 2.4 Thuật toán tính Feedforward và backpropagation

8
2.4 Neural Network Connections
Vì mỗi core chỉ có 256 đầu vào và 256 đầu ra, hạn chế rất nhiều so với fully connected
layer. Khi thiết kế mô hình, layer đầu tiên sẽ nhận đầu vào là ảnh, phải sử dụng nhiều
blocks đề cover được hết các pixel. Kích thước các block và bước nhảy stride được
thiết kế tùy theo kích thước ảnh đầu vào, đầu vào của mỗi block được tính theo
blockSize ∗numberChannels và tối đa đạt được là 256 (lượng axon đầu vào của 1 core).
2

Output của layer phía trước sẽ được đưa vào input axons của layer phía sau.

2.5 Output Layer


Đầu ra của layer cuối cùng được sử dụng để dự đoán. Mỗi class sẽ có 1 lượng neuron
phụ trách dự đoán, class nào có lượng neuron spike nhiều nhất thì output cuối cùng là
class đó. Gọi số neuron tương ứng 1 class là cnk , số neuron tạo ra spike là csk , khi đó
xác suất dự đoán cho mỗi class được sử dụng hàm Softmax để tính:
csl
c nl
e
^
pl = csk
K

∑e cnk

k=1

CHƯƠNG 3. RESULT

You might also like