lOMoARcPSD| 58950985
MẠNG GoogLeNet
1. Giới thiệu
- Trong những năm qua, chủ yếu nhờ những tiến bộ của hình học sâu(deep learning), các mô
hình mạng nơ-ron tích chập(CNN), sự chất lượng trong việc nhận dạng hình ảnh và phát hiện đối
tượng đã được cải tiến với tốc độ chóng mặt. Một điều đáng để tâm là sự cải tiến này không chỉ là
kết quả của việc phần cứng trở nên mạnh hơn, bộ dữ liệu hình lớn hơn chủ yếu đến từ
kết quả của những ý tưởng, thuật toán mới và sự cải tiến kiến trúc mạng. Trong đó, GoogLeNet là
một ví dụ tiêu biểu trong việc cái tiến kiến trúc mạng
- GoogLeNet (hay Inception_V1) được đề xuất bởi các nhà nghiên cứu tại Google (với sự hợp tác
của nhiều trường đại học khác nhau) vào năm 2014 trong bài nghiên cứutiêu đề “Going Deeper
with Convolutions”. Kiến trúc này đã chiến thắng trong thử thách phân loại hình ảnh
ILSVRC 2014. Nó đã giúp tỷ lệ lỗi giảm đáng kể so với những người chiến thắng trước đó AlexNet
(Người chiến thắng ILSVRC 2012) ZF-Net (Người chiến thắng ILSVRC 2013) tỷ llỗi ít
hơn đáng kể so với VGG (Á quân năm 2014).
2. Cơ sở lý thuyết
2.1 Convolution(Tích chập)
- Trong xử lý hình ảnh, tích chập(Convolution) là quá trình biến đổi hình ảnh bằng cách áp dụng hạt
nhân(kernel) trên mỗi pixel và các lân cận cục bộ của nó, trên toàn bộ hình ảnh.
- Quá trình tích chập bao gồm các bước:
(1) đặt Ma trận hạt nhân(kernel) trên mỗi pixel của hình ảnh (đảm bảo rằng toàn bộ hạt nhânnằm
trong hình ảnh), nhân từng giá trị của hạt nhân với pixel tương ứng mà nó trải qua.
(2) Sau đó, tính tổng các giá trị của phép nhân bước (1) trả về giá trị kết quả mới của pixeltrung
tâm.
(3) Quá trình này được lặp lại trên toàn bộ hình ảnh.
lOMoARcPSD| 58950985
Hình ảnh mình họa
Công thúc nh kích thước đầu ra của ảnh sau khi áp dụng ch chập:
H '= HFh+2P+1
S
W '= WFw +2P+1
S
H, W là chiều dài và chiều rộng của ảnh đầu vào
H’, W’ là chiều dài và chiều rộng của ảnh đầu ra
P là Padding(phần đệm), S là stride(bước), F
h
là chiều dài của hạt
nhân, F
w
là chiều rộng của hật nhân
lOMoARcPSD| 58950985
2.2 Pooling
- Pooling là quá trình trích xuất các đặc điểm từ đầu ra hình ảnh của lớp tích chập. Điều này cũng sẽ
tuân theo quy trình tương tự khi trượt qua hình ảnh với kích thước nhóm/kích thước hạt nhân được
chỉ định.
- Có 2 loại Pooling
1. Max Pooling: giữ giá trị cao nhất trong nhóm
2. Average Pooling: tính trung bình các giá trị
trung nhóm(lấy phần chẵn)
2.3 Fully Connected (FC)
Tầng kết nối đầy đủ (FC) nhận đầu vào các dữ liệu đã được làm phẳng, mà mỗi đầu vào đó được
kết nối đến tất cả neuron. Trong mô hình mạng CNNs, các tầng kết nối đầy đủ thường được tìm
thấy ở cuối mạng và được dùng để tối ưu hóa mục tiêu của mạng ví dụ như độ chính xác của lớp.
2.4 Softmax và ReLU Activation(Hàm kích hoạt)
1) ReLU
- Công thức: f(x) = max(0,x)
Hàm ReLU đang được sử dụng khá nhiều trong những năm gần đây khi huấn luyện các mạng
neuron. ReLU đơn giản lọc các giá trị < 0. Nhìn vào công thức chúng ta dễ dàng hiểu được cách
hoạt động của nó.
lOMoARcPSD| 58950985
2) Softmax
- Softmax Function dịch ra Tiếng Việt là hàm trung bình mũ. Hàm softmax tính toán xác suất xảy ra
của một sự kiện. Nói một cách khái quát, hàm softmax sẽ tính khả năng xuất hiện của một class
trong tổng số tất cả các class thể xuất hiện. Sau đó, xác suất này sẽ được sử dụng để xác định
class mục tiêu cho các input.
- Từ định nghĩa về hàm softmax, chúng ta thể đoán được tính chất của nó. Dưới đây một vài
tính chất của hàm softmax:
o Xác suất sẽ luôn nằm trong khoảng (0:1]. o Tổng tất cả các xác
suất bằng 1.
o Công thức:
ez
i
σ(z)
i
=
K
ez j
j=1
2.5 Khối Inception(Inception module with dimension reductions)
Khối tích chập cơ bản trong hình GoogLeNet được gọi Inception, nhiều khả năng được đặt
tên dựa theo câu nói “Chúng ta cần đi sâu hơn” (“We Need To Go Deeper”) trong bộ phim Inception,
sau này đã tạo ra một trào lưu lan rộng trên internet.
Như tả hình trên, khối Inception bao gồm bốn nhánh song song với nhau. Ba nhánh đầu sử
dụng các tầng tích chập với kích thước cửa sổ trượt lần lượt là 1×1 , 3×3 , 5×5 để trích xuất
thông tin từ các vùng không gian kích thước khác nhau. Hai nhánh giữa thực hiện phép tích chập
1×1 trên dữ liệu đầu vào để giảm số kênh đầu vào, từ đó giảm độ phức tạp của hình. Nhánh thứ
tư sử dụng một tầng gộp cực đại kích thước 3×3 , theo sau là một tầng tích chập 1×1 để thay đổi
lOMoARcPSD| 58950985
số lượng kênh. Cả bốn nhánh sử dụng phần đệm phù hợp để đầu vào đầu ra của khối cùng
chiều cao và chiều rộng. Cuối cùng, các đầu ra của mỗi nhánh sẽ được nối lại theo chiều kênh để
tạo thành đầu ra của cả khối. Các tham số thường được tinh chỉnh của khối Inception là số lượng
kênh đầu ra mỗi tầng.
2.6 Dropout(bỏ học)
thuật ngữ “dropout” đề cập đến việc bỏ qua các đơn vị (unit) (cả hai hidden unit visible unit)
trong mạng neural network. Hiểu đơn giản là, trong mạng neural network, kỹ thuật dropout là việc
chúng ta sẽ bỏ qua một vài unit trong suốt quá trình train trong mô hình, những unit bị bỏ qua được
lựa chọn ngẫu nhiên. đây, chúng ta hiểu “bỏ qua - ignoring” unit đó sẽ không tham gia và đóng
góp vào quá trình huấn luyện (lan truyền tiến và lan truyền ngược).
2.7 hình kiến
trúc GoogLeNet
1) Tổng Quan
hìnhGoogLeNet sử dụng
tổng cộng 9 khốiinception tầng
gộp trung bình toàn cụcxếp chồng lên nhau.
Phép gộp cựcđại(max pooling)
giữa các khối inceptioncó tác dụng làm
giảm kích thước chiều.Phần đầu tiên của
GoogleNet giốngAlexNet LeNet,
các khối xếp chồnglên nhau kế thừa từ
thiết kế của VGG vàphép gộp trung bình
toàn cục giúp tránh phảisử dụng nhiều tầng
kết nối đầy đủ liên tiếpở cuối. Cấu trúc của
hình được mô tảnhư dưới đây.
Mô hình GoogLeNet
lOMoARcPSD| 58950985
2) Chi tiết mô hình kiến trúc GoogLeNet(Dữ liệu đầu vào là 224x224x3)
type
patch size/
stride
output size
depth
#1x1
#3x3 reduce
#3x3
#5x5 reduce
#5x5
pool proj
convolution
7x7/2
112x112x64
1
max pool
3x3/2
56x56x64
0
convolution
3x3/1
56x56x192
2
64
192
max pool
3x3/2
28x28x192
0
inception (3a)
28x28x256
2
64
96
128
16
32
32
inception (3b)
28x28x480
2
128
128
192
32
96
64
max pool
3x3/2
14x14x480
0
inception (4a)
14x14x512
2
192
96
208
16
48
64
inception (4b)
14x14x512
2
160
112
224
24
64
64
inception (4c)
14x14x512
2
128
128
256
24
64
64
inception (4d)
14x14x528
2
112
144
288
32
64
64
inception (4e)
14x14x832
2
256
160
320
32
128
128
max pool
3x3/2
7x7x832
0
inception (5a)
7x7x832
2
256
160
320
32
128
128
inception (5b)
7x7x1024
2
384
192
384
48
128
128
avg pool
7x7/1
1x1x1024
0
dropout (40%)
1x1x1024
0
linear
1x1x1000
1
softmax
1x1x1000
0
- Trong hình GoogLeNet nguyên bản, tất cả các phép tính tích chập(Convolution), bao gồm cả
các tích chập trong các tích chập trong các khối Inception, hàm kích hoạt(activation) được sử
dụng là hàm ReLU.
- “#3×3 reduce” và “#5×5 reduce” là viết tắt của số lượng hạt nhân 1x1 được sử dụng trước khi tính
toán tích châp 3x3 và 5v5 ở nhánh 2 và 3
- Pool proj” viết tắt của số lương hạt nhân sử dụng sau khi thực hiện phép gộp cực đại(max pooling)
ở nhánh 4
lOMoARcPSD| 58950985
- Để tăng hiệu quả của việc lan truyên ngược để tính loss, chúng ta thêm c bộ phân loại
phụ(auxiliary classifiers) được kết nối với các lớp trung gian. Các bộ phân loại này dạng các
mạng tích chập nhỏ hơn được đặt trên đầu ra của các Inception (4a) và (4d), cấu trúc là:
1. Average Pooling 5x5, stride = 3
2. Convolution 1x1x128
3. Fully Connected với 1024 unit 4. Dropout layer với tỉ lệ 70%
5. Áp dụng Softmax để phân loại
3. Phương pháp thực hiện
- Trong phần trên, chúng ta đã được giới thiệu qua những sở thuyết cần để thực hiện kiến
trúc mạng GoogLeNet. Qua đó chúng ta thể áp dụng hình trên để thực hiện hiện phân loại
ảnh của tập dữ liệu Cifar-10
- Trước hết, chúng ta cần lưu ý rằng, mục địch ban đầu của mô hình GoogLeNet là để phân loại ảnh
trong tập dữ liệu ImageNet, có kích thước ảnh là 224x224.Trong khi đó, ch thước ảnh của tập d
liệu Cifar-10 là 32x32. Vì thế nếu chúng ta bê nguyên mô hình đã được giới thiệu phần 2 để phân
loại tập Cifar-10 thì sẽ không nhận được hiệu quả tốt
- Chính vì vậy, đthể áp dụng hình GoogLeNetn tập dữ liệu Cifar-10 chúng ta cần thay đổi
kiến trúc khối Inception, cùng với các thông số sao cho phù hợp.
- Tài liệu tham khảo: https://machinelearningknowledge.ai/googlenet-architecture-
implementationin-keras-with-cifar-10-dataset/#Inception_Module
3.1 Xử lý dữ liệu
lOMoARcPSD| 58950985
a) “Trung bình hóa”(mean normalization) ở tiền xử lý dữ liệu
1. Tính giá trị trung bình (mean) của mỗi cột trong ma trận dữ liệu
X: mean = np.mean(X, axis=0) 2. Trừ giá trị trung bình (mean) từng
phần tử trong từng cột của X: X -= mean
b) Batch Normalization
- Batch-Normalization (BN) phương pháp khiến cho việc huấn luyện mạng rông sâu (Deep
Nearon Network, DNN) nhanh và ổn định hơn.
- bao gồm chuẩn hoá các vectors của lớp ẩn (hidden layers) sử dụng trung bình phương sai
(mean và variance) của batch hiện tại. Bước chuẩn hoá có thể được áp dụng ngay trước hoặc ngay
sau một hàm phi tuyến tính.
- Công thức:
(1)
n
i n
i
¿¿¿
(i) Z(i)μ (4¿=w×Z (normi) +β)
(3)Znorm= 2ϵ
σ
lOMoARcPSD| 58950985
- Code python: ta có thể sử dụng hàm BatchNormalization trong keras
3.2 Kiến trúc GooGleNet áp dụng cho Cifar-10
1) Convolutional Module(Gọi tắt là Conv_modul)
ReLU
2)
Inception Module
Downsample Module
3)
Conv_module
Conv_module
stride = 1
Conv_module
Conv_module

Preview text:

lOMoAR cPSD| 58950985 MẠNG GoogLeNet 1. Giới thiệu
- Trong những năm qua, chủ yếu là nhờ những tiến bộ của mô hình học sâu(deep learning), các mô
hình mạng nơ-ron tích chập(CNN), sự chất lượng trong việc nhận dạng hình ảnh và phát hiện đối
tượng đã được cải tiến với tốc độ chóng mặt. Một điều đáng để tâm là sự cải tiến này không chỉ là
kết quả của việc phần cứng trở nên mạnh hơn, bộ dữ liệu và mô hình lớn hơn mà chủ yếu đến từ
kết quả của những ý tưởng, thuật toán mới và sự cải tiến kiến trúc mạng. Trong đó, GoogLeNet là
một ví dụ tiêu biểu trong việc cái tiến kiến trúc mạng
- GoogLeNet (hay Inception_V1) được đề xuất bởi các nhà nghiên cứu tại Google (với sự hợp tác
của nhiều trường đại học khác nhau) vào năm 2014 trong bài nghiên cứu có tiêu đề “Going Deeper
with Convolutions”. Kiến trúc này đã chiến thắng trong thử thách phân loại hình ảnh
ILSVRC 2014. Nó đã giúp tỷ lệ lỗi giảm đáng kể so với những người chiến thắng trước đó AlexNet
(Người chiến thắng ILSVRC 2012) và ZF-Net (Người chiến thắng ILSVRC 2013) và tỷ lệ lỗi ít
hơn đáng kể so với VGG (Á quân năm 2014).
2. Cơ sở lý thuyết
2.1 Convolution(Tích chập)
- Trong xử lý hình ảnh, tích chập(Convolution) là quá trình biến đổi hình ảnh bằng cách áp dụng hạt
nhân(kernel) trên mỗi pixel và các lân cận cục bộ của nó, trên toàn bộ hình ảnh.
- Quá trình tích chập bao gồm các bước:
(1) Nó đặt Ma trận hạt nhân(kernel) trên mỗi pixel của hình ảnh (đảm bảo rằng toàn bộ hạt nhânnằm
trong hình ảnh), nhân từng giá trị của hạt nhân với pixel tương ứng mà nó trải qua.
(2) Sau đó, tính tổng các giá trị của phép nhân ở bước (1) và trả về giá trị kết quả mới của pixeltrung tâm.
(3) Quá trình này được lặp lại trên toàn bộ hình ảnh. lOMoAR cPSD| 58950985
Hình ảnh mình họa
Công thúc 琀 nh kích thước đầu ra của ảnh sau khi áp dụng 琀 ch chập: H '=
HFh+2P+1 S W '=
WFw +2P+1 S
• H, W là chiều dài và chiều rộng của ảnh đầu vào
• H’, W’ là chiều dài và chiều rộng của ảnh đầu ra
• P là Padding(phần đệm), S là stride(bước), Fh là chiều dài của hạt
nhân, Fw là chiều rộng của hật nhân lOMoAR cPSD| 58950985 2.2 Pooling
- Pooling là quá trình trích xuất các đặc điểm từ đầu ra hình ảnh của lớp tích chập. Điều này cũng sẽ
tuân theo quy trình tương tự khi trượt qua hình ảnh với kích thước nhóm/kích thước hạt nhân được chỉ định. - Có 2 loại Pooling
1. Max Pooling: giữ giá trị cao nhất trong nhóm
2. Average Pooling: tính trung bình các giá trị
trung nhóm(lấy phần chẵn)
2.3 Fully Connected (FC)
Tầng kết nối đầy đủ (FC) nhận đầu vào là các dữ liệu đã được làm phẳng, mà mỗi đầu vào đó được
kết nối đến tất cả neuron. Trong mô hình mạng CNNs, các tầng kết nối đầy đủ thường được tìm
thấy ở cuối mạng và được dùng để tối ưu hóa mục tiêu của mạng ví dụ như độ chính xác của lớp.
2.4 Softmax và ReLU Activation(Hàm kích hoạt) 1) ReLU -
Công thức: f(x) = max(0,x)
Hàm ReLU đang được sử dụng khá nhiều trong những năm gần đây khi huấn luyện các mạng
neuron. ReLU đơn giản lọc các giá trị < 0. Nhìn vào công thức chúng ta dễ dàng hiểu được cách hoạt động của nó. lOMoAR cPSD| 58950985 2) Softmax
- Softmax Function dịch ra Tiếng Việt là hàm trung bình mũ. Hàm softmax tính toán xác suất xảy ra
của một sự kiện. Nói một cách khái quát, hàm softmax sẽ tính khả năng xuất hiện của một class
trong tổng số tất cả các class có thể xuất hiện. Sau đó, xác suất này sẽ được sử dụng để xác định
class mục tiêu cho các input.
- Từ định nghĩa về hàm softmax, chúng ta có thể đoán được tính chất của nó. Dưới đây là một vài
tính chất của hàm softmax:
o Xác suất sẽ luôn nằm trong khoảng (0:1]. o Tổng tất cả các xác suất bằng 1. o Công thức: ez i σ(z)i= Kez j j=1
2.5 Khối Inception(Inception module with dimension reductions)
Khối tích chập cơ bản trong mô hình GoogLeNet được gọi là Inception, nhiều khả năng được đặt
tên dựa theo câu nói “Chúng ta cần đi sâu hơn” (“We Need To Go Deeper”) trong bộ phim Inception,
sau này đã tạo ra một trào lưu lan rộng trên internet.
Như mô tả ở hình trên, khối Inception bao gồm bốn nhánh song song với nhau. Ba nhánh đầu sử
dụng các tầng tích chập với kích thước cửa sổ trượt lần lượt là 1×1 , 3×3 , và 5×5 để trích xuất
thông tin từ các vùng không gian có kích thước khác nhau. Hai nhánh giữa thực hiện phép tích chập
1×1 trên dữ liệu đầu vào để giảm số kênh đầu vào, từ đó giảm độ phức tạp của mô hình. Nhánh thứ
tư sử dụng một tầng gộp cực đại kích thước 3×3 , theo sau là một tầng tích chập 1×1 để thay đổi lOMoAR cPSD| 58950985
số lượng kênh. Cả bốn nhánh sử dụng phần đệm phù hợp để đầu vào và đầu ra của khối có cùng
chiều cao và chiều rộng. Cuối cùng, các đầu ra của mỗi nhánh sẽ được nối lại theo chiều kênh để
tạo thành đầu ra của cả khối. Các tham số thường được tinh chỉnh của khối Inception là số lượng kênh đầu ra mỗi tầng.
2.6 Dropout(bỏ học)
thuật ngữ “dropout” đề cập đến việc bỏ qua các đơn vị (unit) (cả hai hidden unit và visible unit)
trong mạng neural network. Hiểu đơn giản là, trong mạng neural network, kỹ thuật dropout là việc
chúng ta sẽ bỏ qua một vài unit trong suốt quá trình train trong mô hình, những unit bị bỏ qua được
lựa chọn ngẫu nhiên. Ở đây, chúng ta hiểu “bỏ qua - ignoring” là unit đó sẽ không tham gia và đóng
góp vào quá trình huấn luyện (lan truyền tiến và lan truyền ngược). 2.7 Mô hình kiến trúc GoogLeNet 1) Tổng Quan Mô hìnhGoogLeNet sử dụng tổng cộng 9 khốiinception và tầng gộp trung bình toàn cụcxếp chồng lên nhau. Phép gộp cựcđại(max pooling) giữa các khối inceptioncó tác dụng làm giảm kích thước
chiều.Phần đầu tiên của GoogleNet giốngAlexNet và LeNet, có các khối xếp
chồnglên nhau kế thừa từ thiết kế của VGG vàphép gộp trung bình toàn cục giúp tránh
phảisử dụng nhiều tầng
kết nối đầy đủ liên
tiếpở cuối. Cấu trúc của mô hình được mô tảnhư dưới đây. Mô hình GoogLeNet lOMoAR cPSD| 58950985
2) Chi tiết mô hình kiến trúc GoogLeNet(Dữ liệu đầu vào là 224x224x3) type patch size/ output size depth #1x1 #3x3 reduce #3x3 #5x5 reduce #5x5 pool proj stride convolution 7x7/2 112x112x64 1 max pool 3x3/2 56x56x64 0 convolution 3x3/1 56x56x192 2 64 192 max pool 3x3/2 28x28x192 0 inception (3a) 28x28x256 2 64 96 128 16 32 32 inception (3b) 28x28x480 2 128 128 192 32 96 64 max pool 3x3/2 14x14x480 0 inception (4a) 14x14x512 2 192 96 208 16 48 64 inception (4b) 14x14x512 2 160 112 224 24 64 64 inception (4c) 14x14x512 2 128 128 256 24 64 64 inception (4d) 14x14x528 2 112 144 288 32 64 64 inception (4e) 14x14x832 2 256 160 320 32 128 128 max pool 3x3/2 7x7x832 0 inception (5a) 7x7x832 2 256 160 320 32 128 128 inception (5b) 7x7x1024 2 384 192 384 48 128 128 avg pool 7x7/1 1x1x1024 0 dropout (40%) 1x1x1024 0 linear 1x1x1000 1 softmax 1x1x1000 0
- Trong mô hình GoogLeNet nguyên bản, tất cả các phép tính tích chập(Convolution), bao gồm cả
các tích chập ở trong các tích chập ở trong các khối Inception, hàm kích hoạt(activation) được sử dụng là hàm ReLU.
- “#3×3 reduce” và “#5×5 reduce” là viết tắt của số lượng hạt nhân 1x1 được sử dụng trước khi tính
toán tích châp 3x3 và 5v5 ở nhánh 2 và 3
- Pool proj” là viết tắt của số lương hạt nhân sử dụng sau khi thực hiện phép gộp cực đại(max pooling) ở nhánh 4 lOMoAR cPSD| 58950985
- Để tăng hiệu quả của việc lan truyên ngược để tính loss, chúng ta thêm các bộ phân loại
phụ(auxiliary classifiers) được kết nối với các lớp trung gian. Các bộ phân loại này có dạng các
mạng tích chập nhỏ hơn được đặt trên đầu ra của các Inception (4a) và (4d), cấu trúc là:
1. Average Pooling 5x5, stride = 3 2. Convolution 1x1x128
3. Fully Connected với 1024 unit 4. Dropout layer với tỉ lệ 70%
5. Áp dụng Softmax để phân loại
3. Phương pháp thực hiện
- Trong phần trên, chúng ta đã được giới thiệu qua những cơ sở lý thuyết cần có để thực hiện kiến
trúc mạng GoogLeNet. Qua đó chúng ta có thể áp dụng mô hình trên để thực hiện hiện phân loại
ảnh của tập dữ liệu Cifar-10
- Trước hết, chúng ta cần lưu ý rằng, mục địch ban đầu của mô hình GoogLeNet là để phân loại ảnh
trong tập dữ liệu ImageNet, có kích thước ảnh là 224x224.Trong khi đó, kích thước ảnh của tập dữ
liệu Cifar-10 là 32x32. Vì thế nếu chúng ta bê nguyên mô hình đã được giới thiệu ở phần 2 để phân
loại tập Cifar-10 thì sẽ không nhận được hiệu quả tốt
- Chính vì vậy, để có thể áp dụng Mô hình GoogLeNet lên tập dữ liệu Cifar-10 chúng ta cần thay đổi
kiến trúc khối Inception, cùng với các thông số sao cho phù hợp. - Tài liệu tham khảo:
https://machinelearningknowledge.ai/googlenet-architecture-
implementationin-keras-with-cifar-10-dataset/#Inception_Module
3.1 Xử lý dữ liệu lOMoAR cPSD| 58950985
a) “Trung bình hóa”(mean normalization) ở tiền xử lý dữ liệu 1.
Tính giá trị trung bình (mean) của mỗi cột trong ma trận dữ liệu
X: mean = np.mean(X, axis=0) 2. Trừ giá trị trung bình (mean) từng
phần tử trong từng cột của X: X -= mean b) Batch Normalization
- Batch-Normalization (BN) là phương pháp khiến cho việc huấn luyện mạng nơ rông sâu (Deep
Nearon Network, DNN) nhanh và ổn định hơn.
- Nó bao gồm chuẩn hoá các vectors của lớp ẩn (hidden layers) sử dụng trung bình và phương sai
(mean và variance) của batch hiện tại. Bước chuẩn hoá có thể được áp dụng ngay trước hoặc ngay
sau một hàm phi tuyến tính. - Công thức: (1) n i n i ¿¿¿ (i)
Z(i)−μ
(4¿=w×Z (normi) +β) (3)Znorm= 2−ϵ σ lOMoAR cPSD| 58950985
- Code python: ta có thể sử dụng hàm BatchNormalization trong keras
3.2 Kiến trúc GooGleNet áp dụng cho Cifar-10
1) Convolutional Module(Gọi tắt là Conv_modul) ReLU 2) Inception Module Conv_module Conv_module Conv_module stride = 1 3) Downsample Module Conv_module