1. Trang chủ
  2. » Công Nghệ Thông Tin

Tổng quan về mạng Neural Network trong phân tích ảnh pdf

27 435 3
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tổng quan về mạng neural network trong phân tích ảnh
Tác giả Trịnh Vũ Long Giao
Trường học Đại Học Khoa Học Tự Nhiên
Chuyên ngành Tốn – Tin Học
Thể loại Bài Tốt Nghiệp
Định dạng
Số trang 27
Dung lượng 299,71 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

• Mục tiêu của việc huấn luyện mạng là tìm giá trị tham số θ thích hợp ñể với dữ liệu nhập x bất kỳ có ra 1 giá trị ˆy xấp xỉ gần với y nhất.. các thuật toán huấn luyện sẽ lặp nhiều bướ

Trang 1

Tổng quan về mạng Neural Network

trong phân tích ảnh

Trịnh Vũ Long Giao

MSSV: 0211053 Lớp: 02TT1 Khoa: Toán – Tin Học Trường: ðH KHTN

Trang 2

Mc Lc

TổNG QUAN 3

G IớI THIệU Về MạNG N EURAL 3

Giới thiệu 3

Xấp xỉ hàm số 4

Hệ thống ñộng (Dynamic) và chuỗi thời gian (Time Series) 4

Phân loại (Classification) và nhóm (Clustering) 5

M Ô HÌNH TUYếN TÍNH (L INEAR M ODELS ) 5

M Ô HÌNH TRựC GIÁC (P ERCEPTRON ) 6

Thuật toán Huấn luyện 7

F EEDFORWARD VÀ R ADIAL B ASIS F UNCTION N ETWORKS 7

Mạng neural Feedforward (FF) 7

Mạng ña lớp 9

Ví dụ 9

Mạng Radial Basis Network (RBF) 12

Huấn luyện mạng Feedforward và Radial Basis Function 14

Levenberg-Marquardt 15

Gauss-Newton 15

Giảm dốc nhất (Steepest Descent) 15

Lan truyền ngược (Backpropagation) 16

Ví dụ minh so sánh các phương pháp huấn luyện khác nhau 16

M ạNG N EURAL ð ộNG (D YNAMIC ) 19

M ạNG H OPFIELD 21

Mạng Hopfield rời rạc thời gian 22

Mạng Hopfield Liên tục thời gian 23

M ạNG KHÔNG GIÁM SÁT (U NSUPERVISED ) VÀ M ạNG VECTOR L ƯợNG Tử HÓA (Q UANTIZATION ) (VQ) 23

CÁC MINH HọA CƠ BảN 24

B ÀI TOÁN PHÂN LOạI (C LASSIFICATION ) 25

X ấP Xỉ HÀM Số (F UNCTION A PPROXIMATION ) 26

THAM KHảO: 27

Trang 3

o Dữ liệu nhập ñược ký hiệu là x là 1 vector dòng giá trị thực với chiều hoặc

ñộ dài tùy ý 1 cách thông thừơng x chỉ dữ liệu nhập, vector nhập, giá trị hồi quy (regressor), hoặc vector mẫu (pattern vector) ðộ dài vector chỉ số nút nhập của mạng

o Dữ liệu xuất ñược ký hiệu là ˆy là xấp xỉ của giá trị ra lý tưởng là 1 vector

giá trị thực có 1 hay nhiều phần tử chỉ số nút ra của mạng

o Thông thường tập dữ liệu bao gồm nhiều cặp dữ liệu nhập-xuất x và y biểu diễn bởi ma trận với 1 vector nhập vector xuất ở mỗi dòng

mạng neural là 1 cấu trúc bao hàm các quan hệ các trọng số của neurons, hay các

ñơn vị (units) với các phép biến ñổi vô hướng không tuyến tính và tuyến tính

Minh họa ví dụ về mạng neural 1 lớp ẩn với 3 nút nhập, x = {x1,x2,x3} và nút giá

trị lệch (unity bias) nối vào 2 neuron trong lớp ẩn 2 giá trị ra từ lớp ẩn cùng với giá trị lệch ñược ñưa vào 1 neuron ở lớp xuất tính ra giá trị xuất vô hướng ˆy

Lớp chứa các neuron gọi là lớp ẩn vì giá trị xuất của nó không cần xuất ra trực tiếp trong dữ liệu các kiểu ñặt trưng của mạng neural ñược ñề cập trong phần

mạng Feedforward và Radial Basis Function

Các mũi tên tượng trưng cho các tham số giá trị thực hay trọng số của mạng

• 1 neuron là 1 cấu trúc ñể xử lý các nút nhập, bao gồm cả giá trị lệch, theo hướng không tuyến tính, cho ra 1 giá trị xuất ðồng thời, tất cả các nút nhập ñưa vào neuron ñược gia tố thêm bởi các trọng số sau ñó lấy tổng và ñưa vào hàm số

không tuyến tuyến gọi là hàm hoạt ñộng σ

Trang 4

• Như minh họa ở hình trên, giá trị xuất của mạng dược tính như sau:

trong ñó các trọng số là {w1i j, ,b i j1, ,w b12, 2}

• Eq (1) là 1 ánh xạ không tuyến tính x ˆy , ở dạng rút gọn, ánh xạ ñược viết:

Trong ñó θ là vector giá trị thực có các phần tử là các tham số (trọng số) của mạng

• Mục tiêu của việc huấn luyện mạng là tìm giá trị tham số θ thích hợp ñể với dữ

liệu nhập x bất kỳ có ra 1 giá trị ˆy xấp xỉ gần với y nhất các thuật toán huấn

luyện sẽ lặp nhiều bước với vector tham số khởi tạo θ và ñược cập nhật tốt hợp trong mỗi bước lặp

• Trước khi mạng ñược chấp nhật, cần có bước kiểm nghiệm (validate) Nghĩa là mạng sẽ ñược chạy thử với 1 số dữ liệu ñã biết ðơn giản và tốt nhất là thử

nghiệm mạng với tập dữ liệu mà không có trong dữ liệu ñược huấn luyện và dữ liệu này với dữ liệu huấn luyện ñược tạo ra trong cùng các ñiều kiện tương tự nhau Việc huấn luyện mạng thường thất bại trong bước kiểm nghiệm, trong trường hợp này, ta phải chọn mô hình tốt hơn Tuy nhiên, ñôi khi ta chỉ cần lặp lại bước huấn luyện với giá trị tham số khởi tạo θ khác Một khi mạng neural ñã

ñược kiểm nghiệm thành công, mạng có thể ñược ñưa vào sử dụng

• Khi dữ liệu nhập bắt nguồn từ 1 hàm số với các nút xuất giá trị thực trong 1 khoảng liên tục, mạng neural ñược xem như là sự xấp xỉ hàm số truyền thống 1

ví dụ của bài toán xấp xỉ là nhiệt ñộ của 1 ñối tượng có thể ñược tính bằng ñộ bức

xạ ví dụ thông thường khác là cỡ giày có thể ước lượng từ chiều cao của người mang 2 ví dụ này liên quan ñến mô hình mạng với 1 nút nhập vào 1 nút xuất 1

mô hình mạnh hơn ở ví dụ 2 là dùng giới tính như nút nhập thứ 2 ñể ước lượng chính xác hơn

• Các hàm số thuần túy có thể ñược xấp xỉ bởi 2 kiểu mạng neural:

o Feedforward Neural Networks

o Radial Basis Function Networks

Series)

• Dữ liệu vào phụ thuộc thời gian, cần ñến “bộ nhớ” (memory) nên ñược nói ñến

như là hệ thống ñộng

Trang 5

• thơng tin quá khứ được dùng để dự đốn trạng thái tương lai

• Ví dụ: dự đốn giá cả; mơ tải tốc độ máy dựa vào điện áp và tải trọng

o Ví dụ 1: time-series khơng cĩ dữ liệu nhập

o Ví dụ 2: 2 dữ liệu nhập là điện áp và tải trọng

• Phân loại dữ liệu vào trong danh mục, lớp dựa trên tập các đặt trưng riêng

Gọi là mạng phân loại (network classifier)

• Huấn luyện dùng dữ liệu vào từ các lớp khác nhau, dữ liệu ra là vectors chỉ ra thuộc lớp nào

• Dữ liệu ra thường là vector các lớp trong đĩ 1 chỉ ra dữ liệu thuộc lớp và 0 cho tất

cả lớp cịn lại

• Các kiểu mạng thường dùng để giải bài tốn phân loại:

o Perceptron

o Vector Quantization (VQ) Networks

o Feedforward Neural Networks

o Radial Basis Function Networks

o Hopfield Networks

Mơ hình tuyến tính (Linear Models)

• Minh họa mơ hình tuyến tính:

ứng các nut

Trang 6

• Biễu diễn bằng phương trình:

• Mô hình tuyến tính với nhiều nút xuất:

Mô hình trực giác (Perceptron)

• Là dạng ñơn giản nhất của mạng neural Thường ñược dùng trong việc phân loại

Minh họa mô hình trực giác với các nút nhập x 1 , x 2 , …, x n và 1 nút xuất ˆy :

• nút xuất ñược tính bằng công thức:

trong ñó {w 1 , w 2 , …, w n } là trọng số của nút nhập, b là ñộ dốc (bias weigth) Mỗi

trọng số ñại diện bởi mũi tên trong hình trên

Hàm UnitStep trả về 0 cho các giá trị nhỏ hơn 0, ngược lại trả về 1 Do ñó nút

nhập ˆy có giá trị 0 hay 1 tùy theo giá trị tổng trọng số Cho nên mô hình trực

giác chỉ ra 2 lớp tương ứng 2 giá trị xuất

Trong quá trình huấn luyện, các trọng số (nút nhập và ñộ dốc) ñược ñiều chỉnh ñể

giá trị nhập ánh xạ chính xác ñến 2 lớp

Trang 7

Thut toán Hun luyn

dài bằng chiều vector nhập x

• Vector nhập x = {x1,x2,…,xn}, nút xuất ñược biểu diễn:

Nếu x là ma trận với mỗi dòng là 1 vector thì ˆy là vector cột có giá trị tương ứng

cho mỗi dòng

• {w, b} nhận ñược trong các bước lặp huấn luyện mạng với các cặp dữ liệu nhập –

xuất ñã xác ñịnh Mỗi vector nhập là 1 dòng ma trận x, mỗi nút xuất là 1 dòng của

vector dòng ˆy

• Cho N cập, việc huấn luyện mạng ñược ñịnh nghĩa như sau:

Trong ñó i là các bước lặp, η là ñộ lớn bước nhảy và ε i =y- ˆy (x,w i ,b i ) là vector cột

N phần tử sai số tương ứng N dữ liệu mẫu trong tập huấn luyện Phần tử của

vector sai số có thề là 1 trong 3 giá trị 0, -1, 1 Ở mỗi bước lặp i, 0 chỉ ra dữ liệu

mẫu phân loại chính xác, các giá trị còn lại là không chính xác

• Việc huyến luyện sẽ dừng khi tất cả các trọng số {w,b} ñựơc cập nhật sao cho tất

cả dữ liệu mẫu ñều ñựơc phân loại chính xác hoặc bước lặp i tiến ñến giới hạn

imax

mặc dù giá trị η càng lớn có thể tăng tốc ñộ học, tuy nhiên cũng có thể gây ra sự

dao ñộng làm có thể làm chậm sự hội tụ

Feedforward và Radial Basis Function Networks

[introduction…]

Phổ biến và ứng dụng rộng rãi nhất ñược biết với tên gọi khác là mạng trực giác

nhiều lớp (multi-layer perceptrons)

Trang 8

Minh họa mạng FF 1 lớp ẩn với các nút nhập x 1 , x 2 , …, x n và 1 nút xuất ˆy

mạng ñược chia thành nhiều lớp lớp nhập bao gồm các nút nhập, lớp ẩn bao gồm

các neuron ẩn ñặt song song Mỗi neural biểu diễn tổng trọng các nút nhập sau ñó

ñược ñưa vào hàm hoạt ñộng σ(activation function) còn ñược gọi là hàm neural

• Biểu diễn toán học:

1

n

j j j j

trong ñó trọng số {w j , b j } tượng trưng bằng các mũi tên hướng vào neuron

Nút xuất bằng tổng trọng ñầu ra của các neuron Tập các nút xuất gọi là lớp xuất

• Dữ liệu xuất của mạng ñược tính bởi công thức:

n là số nút nhập, nh là số neuron trong lớp ẩn các biến { w i j1, , b1j i, , w , i2 b } ñược 2

gộp chung trong vector θ Một cách tổng quát, mô hình mạng neural ñược viết dưới dạng rút gọn g(θ,x)

• Trong quá trình huấn luyện mạng các tham số sẽ ñược ñiều chính tăng dần cho

nhất có thể trong giới hạn số các bước lặp

• Hàm hoạt ñộng phi tuyến thường ñược chọn là hàm có bước nhảy mịn (smooth step function) Phổ biến nhất là hàm sigma

Trang 9

ñồ thị là:

M ạ ng ñ a l ớ p

• Hình minh họa mạng có 2 lớp ẩn với nhiều nút xuất:

• Số các lớp ẩn và số neuron ẩn là các tham số do người dùng thiết kế 1 quy tắc chung là chọn các tham số sao cho mô hình khả thi nhất với ít các tham số nhất có thể Trong thực tế, quy tắc này không phải luôn tốt, mà ta cần thử với nhiều mẫu lựa chọn khác nhau, so sánh các kết quả ñể chọn ra mô hình mạng phù hợp nhất cho bài toán

• Trong nhiều ứng dụng thực tế, mạng 1 hoặc 2 lớp ẩn là vừa ñủ

• Giá trị xuất của các neuron trong hình trên là tuyến tính, không có hàm hoạt ñộng phi tuyến tính ñược tính sau khi lấy tổng trọng số ñiều này tốt trong các bài toán

hệ thống ñộng và dãy thời gian (dynamic và time series) Tuy nhiên nếu dùng

mạng FF trong các bài toán phân loại, sẽ thuận lợi nếu các giá trị xuất của neuron

là không tuyến tính Mô tả sẽ ñược diễn giải trong ví dụ dùng mạng FF cho bài toán phân loại (example)

Ví d ụ

• Quy ước:

xuất ñược biểu diễn dưới dạng ma trận, trong ñó xi là vector trên dòng thứ

i của ma trận dữ liệu nhập, yi là vector trên dòng i của dữ liệu xuất

Ví dụ: 20 cặp, vector xi có ñộ dài 1, vectory yi có ñộ dài 2

x =

Trang 10

y =

o Trong bài toán phân loại, dữ liệu nhập ñược gọi là vector mẫu Mỗi dòng

của dữ liệu nhập x chứa 1 vector mẫu, và dòng tương ứng trong dữ liệu xuất y chỉ ra chính xác lớp của vector mẫu ma trận y có mỗi cột tương

ứng 1 lớp, trên mỗi dòng, ứng với lớp chính xác có giá trị 1, còn lại mang

giá trị 0 Nếu bài toán phân loại chỉ có 2 lớp, ta cũng có thể chỉ dùng 1 cột, chỉ ra lớp với giá trị 0 hoặc 1

Ví dụ:

vector mẫu x25 =tương ứng y25 = nên mẫu thuộc lớp 2

• Dữ liệu mẫu bao gồm 3 lớp, mỗi lớp phân thành 2 nhóm x là dữ liệu nhập, y chỉ

ra lớp tương ứng

• Trong bài toán phân lọai, ñiểm quan trọng là sự không tuyến tính khác nhau ở nút

ra trong mạng FF mục ñích của không tuyến tính là chắc rằng giá trị xuất nằm

bên trong vùng phân lớp khác nhau chúng ta sẽ dùng hàm Sigma ñể bão hòa các

giá trị là 0 hoặc 1 chính xác với dữ liệu xuất của lớp Chú ý rằng hàm Sigma

không bao giờ tiến ñến chính xác giá trị 0, 1

• Huấn luyện mạng FF với 8 bước lặp:

Trang 11

• Sau khi ñược huấn luyện với tập dữ liệu mẫu, áp dụng thử cho 2 vector nhập: nhập:

xuất:

vector dữ liệu tương ứng với lớp mà có giá trị lớn nhất nếu vector xuất có nhiều phần tử mang giá trị lớn nhất, hoặc không có phần tử nào thì hệ thống phân loại

ñược xem như không ñáng tin cậy ñối với dữ liệu ñược dùng

• Biểu diễn hệ thống phân loại bằng ñồ thị ñường biên:

• Chúng ta cũng có quan sát ñồ thị hàm phân loại có 3 ñồ thị ứng với 3 lớp các

ñường biên (biễu diễn ở trên) ứng với ñường cong cắt mặt tại giá trị xuất 0.5:

Trang 12

• Minh họa quá trình huấn luyện:

Minh họa mạng neural với các n nút nhập và 1 nút xuất.ñầu ra của neuron ñược

ñưa vào hàm basis function Nút xuất của mạng ñược tính bằng các lấy tổng trọng

Trang 13

số các neuron

• Mạng RBF thường bao gồm cả phần tuyến tính ðược viết bằng phương trình như sau:

nb là số neuron, mỗi neuron có 1 hàm basis Tham số mạng RBF bao gồm tập các

vị trí w của các hàm basis là nghịch ñảo ñộ dài 1i λi của hàm basis, trọng số w của i2

tổng xuất, và các tham số của các thành phần tuyến tính χ1, χ 2,…, χ n

Các tham số ñược gộp chung thành θ trong dạng thu gọn g(θ,x), g là hàm mạng và

x là dữ liệu nhập

• Trong quá trình huấn luyện, các tham số ñược ñiều chỉnh ñể dữ liệu mẫu ñúng với

Eq (10) tốt nhất có thể Quy trình huấn luyện sẽ ñược mô tả ở phần tiếp theo

• Trong Eq (10), hàm basis ñược chọn là hàm Gaussian, tuy nhiên có thể chọn 1 hàm khác

• Minh họa mạng RBF với nhiều nút xuất:

Trang 14

Hun luyn mng Feedforward và Radial Basis Function

Cho mạng với dữ liệu mẫu gồm N cập dữ liệu xuất – dữ liệu nhập (( ,x y i i i)N=1 Sai

số bình phương trung bình (MSE) ñược ñịnh nghĩa như sau:

• Việc huấn luyện mạng là tìm ra tham số θ phù hợp nhất θ ñược ñánh giá tốt khi

MSE là nhỏ nhất:

• thông thường sai số căn bình phương trung bình (RMSE) thường ñược dùng khi

ước lượng mô hình trong và sau khi huấn luyện, RMSE ñược so sánh trực tiếp với

giá trị xuất giá trị RMSE ñược ghi nhận lại minh họa quá trình huấn luyện bằng

ñồ thị

• Có nhiều thuật toán ñể huấn luyện mạng các thuật toán bắt ñầu với tham số khởi

tạo θ0, quá trình huấn luyện sẽ làm giảm MSE ở các bứơc lặp bằng cách cập nhật

θ tăng dần theo hướng làm giảm dốc (gradient) của MSE:

Tham số µ ñiều chỉnh ñộ lớn mỗi lần cập nhật θ cho bước lặp i và giảm giá trị

MSE Việc chọn R và µ khác nhau tùy theo các thuật toán huấn luyện

• Nếu R ñược chọn là nghịch ñảo Hessian của hàm MSE Hessian ñược tính như

sau:

Eq (15) là dạng của thuật toán Newton Nếu Hessian không xác ñịnh, θ ñược cập

nhật theo hướng tăng dốc mà sẽ làm tăng giá trị MSE Có thể tránh bằng cách

dùng các R khác nhau Thuật toán GN giống với Newton với phần cuối ñược lược

bỏ, phần ñầu của Eq (15):

• Với H ñã ñược ñịnh nghĩa, các phương pháp tìm kiếm có thể chọn 1 trong các

thuật toán sau:

Trang 15

Levenberg-Marquardt

• Thuật toán Levenberg-Marquardt (LMA) nội suy giữa Gauss-Newton (GNA) và

phương pháp giảm dốc LMA thông dụng hơn so với GNA, trong nhiều trường

hợp nó tìm ra giá trị cực tiểu rất nhanh

• Thay vì lựa chọn ñộ lớn µ ñể ñảm bảo ñi theo hướng xuống dốc ở mỗi bước lặp

Eq (14), ma trận ñường chéo ñược thêm vào H ở Eq (16), R ñược chọn như sau:

và µ=1

• Giá trị λ sẽ ñược chọn tự ñộng ñể sinh ra bước xuống dốc ở mỗi bước lặp, thuật

toán sẽ cố giảm giá trị của λ bằng cách tăng ∆λ Nếu giá trị hiện tại của λ mà

không làm giảm MSE ở Eq (14) thì λ sẽ ñược làm tăng trong các bước tiếp theo

với giá trị ∆λ cho ñến khi MSE giảm

• Việc huấn luyện sẽ bị dừng nếu xảy ra 1 trong các ñiều kiện sau:

o

s là ñộ dài vector giá trị riêng lớn nhất của H

• Giá trị λ lớn tạo ra các tham số tăng chủ yếu theo hướng giảm dốc

Gauss-Newton

• Nhanh, và mạnh, ñược dùng trong nhiều bài toán cực tiểu khác nhau Tuy nhiên

nếu mạng neural có Hessian ñiều kiện yếu, tức là ñộ dài vector riêng nằm trong

khoảng rất lớn, thuật toán sẽ làm chậm quá trình học ñáng kể

• Thuật toán học dùng phương pháp Gauss-Newton với ma trận R ñược chọn là

nghịch ñảo của H trong Eq (16) như sau:

giảm, ngược lại µ ñược chia ñôi cho ñến khi tạo ra bước ñi xuống dốc Sau ñó

thuật toán sẽ tiếp tục với bước lặp kế

• Việc huấn luyện sẽ bị dừng nếu xảy ra 1 trong các ñiều kiện sau:

Trang 16

Có nghĩa là vector tham số θ ñược cập nhật theo hướng giảm dốc của MSE ở Eq (13)

ñến khi làm giảm

• So sánh với 2 phương pháp trước thì phương pháp này cần ít sự tính toán hơn ở mỗi bước lặp bởi không có ma trận nghịch ñảo tuy nhiên lại không hiệu quả bằng

2 phương pháp trên

Phương pháp lan truyền ngược tương tự giảm dốc nhất với ñiểm khác biệt là µ

ñược giữ cố ñịnh trong suốt quá trình học µ ñược chọn mặc ñịnh bằng 0.1

• Luyện mạng trong Eq (24) có thể ñược mở rộng thêm với tham số mômen α:

giá trị mặc ñịnh của α ñược chọn là 0

• Việc dùng mômen là cần thiết ñể tránh cực tiểu ñịa phương

• Tốt hơn nên chọn các phương pháp huấn luận khác và lặp lại quá trình học nhiều lần với tham số khỏi tạo khác nhau

nhau

• Trong minh họa này mạng chỉ có 2 tham số, ñể ta có thể biễu diễn ñược bằng ñồ thị, RMSE ñược biểu diễn như mặt cong

• Hàm minh họa ñược chọn có 1 nút nhập và 1 nút xuất với tham số ñúng là 2 và -1

• Hình minh họa các tham số lân cận với tham số cực tiểu (2, -1)

Ngày đăng: 21/06/2014, 09:20

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w