.4 Mơ tả kiến trúc mạng neuron tích chập điển hình

Một phần của tài liệu Xây dựng ứng dụng hỗ trợ điểm danh sinh viên bằng điện thoại dựa trên nhận dạng khuôn mặt người luận văn thạc sĩ công nghệ thông tin (Trang 55 - 57)

- Sắp xếp không gian

Nội dung bên trên đã giải thích sự kết nối của từng neuron trong lớp CONV với tín hiệu đầu vào. Phần này sẽ giải thích rõ hơn về số lƣợng neuron tín hiệu đầu ra và cách chúng đƣợc sắp xếp. Ba siêu đƣờng kính (hyperparameters) kiểm sốt kích thƣớc tín hiệu đầu ra là depth (độ sâu), stride (s ả i) và zero- padding (đệ m

không)

Đầ u tiên, giá tr ị c ủ a depth là độ sâu c ủa tín hi ệu đầu ra. Đây là mộ t siêu tham s ố, nó tƣơng ứ ng v ới s ố lƣợng b ộ lọc mu ốn s ử dụng. Depth ki ể m soát s ố lƣợng neuron trong m ột l ớp k ế t n ối v ớ i mộ t vùng c ủa tín hi ệu đầ u vào. Nh ữ ng neuron này h ọc các kích ho ạt cho các đặc trƣng khác nhau trong đầ u vào. Ví d ụ , nế u Lớp tích ch ập đầ u tiên l ấ y hình ả nh thơ, thì các neuron khác nhau d ọc theo chi ề u sâu có th ể kích ho ạ t khi có các c ạnh định hƣớ ng khác nhau ho ặc các đố m màu.

Tiế p theo, chúng ta ph ải xác đị nh stride – tức là bƣớc ti ế n mà chúng ta

trƣợt b ộ lọ c. Ch ẳ ng h ạ n, v ới stride = 1 chúng ta di chuyể n các b ộ lọ c một pixel mỗ i lần. Điề u này d ẫn đến các trƣờng ti ế p nh ậ n ch ồng chéo r ấ t nhi ều và cho ra đầ u ra lớn. Khi stride = 2 thì chúng sẽ nhả y 2 pixel m ỗi l ần khi chúng ta trƣợt xung quanh. Điề u này s ẽ t ạo ra kích thƣớc đầ u ra nh ỏ hơn theo không gian. Các trƣờng h ợ p stride >= 3 r ấ t hi ế m x ả y ra trong th ự c tế .

Để kiểm sốt đƣợc kích thƣớc khơng gian c ủa đầ u ra, chúng ta s ử dụng tính năng Zero-padding thêm các s ố 0 vào xung quanh các đƣờng biên. Kích thƣớc c ủ a phầ n zero-padding là mộ t siêu tham s ố. Thông thƣờng, zero- padding đƣợc s ử dụ ng để bảo tồn chính xác kích thƣớc khơng gian c ủa tín hi ệu đầ u vào, t ức là làm cho độ r ộng, chi ều cao đầ u vào và đầu ra là nhƣ nhau.

Cơng th ứ c tính s ố lƣợ ng neuron trong một kích thƣớc nh ất định có th ể tính theo cơng b ằ ng

W

− K + 2 P

S + 1 (2-4)

Trong đó W kích thƣớc tín hiệu đầu vào, K kích thƣớc lớp lọc, S bƣớc tiến stride, P số lƣợng đệm 0

Lƣợc đồ chia s ẻ tham s ố đƣợc s ử dụng để ki ể m soát s ố lƣợng tham s ố. Nó đƣợc xây d ự ng d ự a vào gi ả định r ằ ng n ế u một đặc trƣng có ích để tính tốn t ạ i một số vị trí khác. Khi bi ể u th ị một lát c ắ t 2 chi ề u c ủa độ sâu thành mộ t lát c ắ t sâu (depth slice) bu ộc các neuron trong cùng m ột lát c ắ t sâu ph ả i s ử dụng cùng trong s ố (weights) và độ lệ ch (bias). Do t ấ t c ả các neuron trong m ột lát c ắt có cùng độ sâu có cùng tham s ố , nên l ợi ích c ủ a vi ệ c chia s ẻ tham s ố là gi ả m t ối đa tham số trong mạ ng Neuron tích ch ậ p mà v ẫn đả m b ả o ki ế n trúc CNN.

- Lớp tổng hợp (Pool Layer – POOL)

Pool Layer thực hiện chứ c năng làm giảm chiều không gian của đầu và giảm độ phức tạp tính tốn của model ngồi ra Pool Layer cịn giúp kiểm sốt hiện tƣợng overffiting. Thơng thƣờng, Pool layer có nhiều hình thức khác nhau phù hợp cho nhiều bài toán, tuy nhiên Max Pooling là đƣợc sử dụng nhiều vào phổ biến hơn cả với ý tƣởng cũng rất sát với thực tế con ngƣời đó là Giữ lại chi tiết quan

trọng hay hiểu ở trong bài tốn này chính giữ lại pixel có giá trị lớn nhất.

Chẳng hạn, khi ta sử dụng Max pooling với bộ lọc 2x2 và stride = 2. Bộ lọc sẽ chạy dọc ảnh. Với mỗi vùng ảnh đƣợc chọn, ta sẽ chọn ra một giá trị lớn nhất và giữ lại.

Một phần của tài liệu Xây dựng ứng dụng hỗ trợ điểm danh sinh viên bằng điện thoại dựa trên nhận dạng khuôn mặt người luận văn thạc sĩ công nghệ thông tin (Trang 55 - 57)