Tải bản đầy đủ (.pdf) (22 trang)

bài báo cáo mô hình mô phỏng mạng neural

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (819.92 KB, 22 trang )

BÀI BÁO CÁO
MÔN MÔ HÌNH MÔ PHỎNG
Nguyễn Xuân Vũ 06118032
Nguyễn Hồng Hải Uy 06118031
27.Mạng Neural
Mạng thần kinh nhân tạo (Articial Neural Network) đã trải qua một quá trình phát triển
nhanh chóng và đã vượt qua giai đoạn thử nghiệm để đi vào thự tiễn trong một loạt các ứng
dụng kỹ thuật, chẳng hạn như đối với sự đánh giá tính chất, sự nhận dạng, xử lý tín hiệu, mô
hình hóa quy trình, quy trình kiểm soát chất lượng và đối chiếu dữ liệu.
Mạng neural có khả năng mô hình hóa các hệ thống phi tuyến tính. Trên cơ sở của dữ
liệu đào tạo được cung cấp, mạng thần kinh học các mối quan hệ giữa các quá trình đầu vào và
đầu ra. Các dữ liệu phải được kiểm tra cẩn thận trước khi chúng có thể được sử dụng như sự
huấn luyện thiết lập cho mạng neural. Tiến trình học bao gồm một hoặc nhiều dữ liệu đầu vào
và một hoặc nhiều dữ liệu đầu ra. Sau quá trình học của mạng, một bộ thử nghiệm của dữ liệu
cần được sử dụng để kiểm tra lại các mối quan hệ mong muốn đã học được.
Trong ứng dụng thực tiễn một mạng neural có thể được sử dụng khi không xác định
được mô hình chính xác. Đây là một ví dụ hay về kỹ thuật “hộp đen” (black-box). Không có
cách nào khác, các mạng neural được xem là giải pháp cuối cùng cho các vấn đề bất định
hoặc chỉ một phần mô hình được xác định.Lý do chính là nó không có dữ liệu bổ sung về mối
liên hệ vật lý và do đó nó sẽ không cung cấp trí tuệ vật lý vào tiến trình.
27.1 Cấu trúc của mạng Neural nhân tạo
Hiện tại có hơn 50 loại mạng neural khác nhau. Một số mạng có hiệu quả hơn trong việc
tối ưu hóa; những cái khác thực thì hiện tốt hơn trong mô hình hóa dữ liệu .v.v. Theo Basheer
(2000) mạng neural phổ biến hiện nay là mạng Hopfield, mạng Adaptive Resonance Theory
(ART) (học thuyết thu thích ứng), mạng Kohonen, các mạng đếm lan truyền, mạng Radial
Basis Function (RBF), mạng lan truyền ngược và mạng hồi quy.
Để giải thích những cấu trúc căn bản của một mạng neural, tốt nhất chọn hình thức đơn
giản của một mạng neural, mạng neural feed-forward (truyền thẳng). Trong Hình. 27.1 biểu
diễn mạng feed-forward.
Mạng neural nhân tạo bao gồm nhiều loại tầng lớp khác nhau. Gồm lớp đầu vào, một
hay nhiều lớp ẩn và một lớp đầu ra. Tất cả các lớp có thể bao gồm một hoặc nhiều tế bào thần


kinh (neuron). Một neuron trong một lớp cụ thể được kết nối đến tất cả các neuron trong lớp kế
tiếp, đó là lý do tại sao được gọi là mạng feed-forward. Trong các mạng khác các neuron có
thể được kết nối theo cách khác. Một ví dụ của một mạng khác là một mạng neuron hồi quy,
tại đây cũng có kết nối neuron đến neuron khác trong một lớp trước. Một mạng lưới kết nối
đầy đủ là một mạng lưới mà trong đó tất cả các neuron từ một lớp được kết nối đến tất cả các
neuron trong lớp kế tiếp.
HÌnh 27.1 Ví dụ về mạng neural truyền thẳng đa lớp.
Để giải thích cách mạng tính toán đầu ra, đầu tiên một phần nhỏ nhất của mạng lưới sẽ
được quan sát khép kín : các neuron.
Mỗi neuron là một điểm tính toán đơn lẻ trong mạng. Nó tiếp nhận một hoặc nhiều đầu
vào hay từ một neuron trong một lớp trước đó hoặc (khi nó nằm ở lớp đầu vào) từ thế giới bên
ngoài. Neuron xác định nếu đầu ra được chuyển đến các neuron trong lớp kế tiếp. Đồ thị của
một neuron được cho trong
hình. 27.2.
Hình 27.2 Neuron ẩn.
Khi neuron nhận đầu vào từ các neuron trong một lớp trước, lần đầu chúng được nhân
với trọng số Wij. Trọng số này đặc trưng cho liên kết mà liên kết đó kết nối hai neuron. Hai
kết nối trong một mạng là như nhau và do đó, nói chung, hai trọng số trong một mạng đều
giống nhau.
Trong neuron của tất cả các trọng số đầu vào được thêm và có thể được so sánh với
một giá trị ngưỡng μ. Các j-th neuron j-th trong lớp ẩn nhận được đầu vào N từ lớp đầu vào có
kết nối mạnh hoặc liên kết trọng số w và cháy ngay sau khi tổng trọng số cũng như độ lệch bj
vượt quá giới hạn:

=
≥+=
N
i
jjiijj
bIwh

1
µ
(27.1)
Thông thường, trong các trường hợp của mô hình hóa quá trình, giới hạn này được thay
thế bởi một hàm kích hoạt, làm cho sự hoạt động của các neuron tiếp tục có giá trị. Tuy nhiên
hàm này đã được khả vi, và nó đã bão hòa tại cả hai đầu. Khi neuron kích thích, nghĩa là đầu ra
H của nó có một giá trị khác không. Các loại mạng được sử dụng sẽ xác định giá trị thực tế
của H. Đôi khi, H chỉ đơn giản là một (một mạng lưới nhị phân), đối với các mạng khác H
được xác định bởi các hàm kích hoạt của các neuron. Hàm này thường có các trọng số đầu vào
và đôi khi giới hạn của neuron như các tham số. Trong những trường hợp nó có thể được mô tả
như là một hàm phi tuyến tính của tổng các trọng số đầu vào cùng với độ lệch.
H
j
=
g

(h

j
) (27.2)
Trong đó g là một hàm kích hoạt phi tuyến
Ngoài ra, lựa chọn điển hình cho hàm kích hoạt là hàm sigmoid (sigma).
(27.3)
Hàm tiếp tuyến hypebol:
hh
hh
ee
ee
hhg
ββ

ββ
β


+

==
)tanh()(
(27.4)
Hoặc hàm Gauss:
g (h) = e

h
2
(27.5)
Tính toán đầu ra của hàm sigmoid và Gauss chỉ có thể rơi vào giữa 0 và 1 và do đó, các
dữ liệu đầu ra được sử dụng để truyền cho mạng nơron cần phải được chuẩn hóa trong phạm vi
0-1 (-1 và 1 cho hàm tiếp tuyến hypebol) . Các điểm cực trị của 0-1 xảy ra chỉ khi đầu vào cho
hàm sigmoid là - ∞ đến + ∞, dữ liệu đầu ra thường được chuẩn hóa giữa khoảng 0,1-0,9. Tuy
nhiên, dữ liệu không chuẩn hóa có thể được sử dụng nếu một hàm kích hoạt tuyến tính được sử
dụng cho các lớp đầu ra.
Khi neuron nằm trong một lớp đầu vào(input) hoặc lớp ẩn, đầu ra của nó sẽ được gửi
đến tất cả các neuron trong lớp kế tiếp. Chúng sẽ sử dụng nó, sau khi nó được nhân với trọng
số của liên kết, như đầu vào. Khi neuron nằm trong lớp đầu ra (output), đầu ra của nó (cùng
với các đầu ra khác từ các neuron trong cùng một lớp) là đầu ra của mạng.
Từ cấu trúc của một mạng lưới neuron, nó có thể được trình bày những thông tin đã học
được lưu giữ trong các trọng số của các liên kết. Đối với những vấn đề khác nhau, cấu trúc
khác nhau có thể được sử dụng. Các liên kết không có vị trí trong cùng một hướng, mạng lưới
hồi quy, trong đầu ra trì hoãn được sử dụng như là đầu vào, cũng rất phổ biến cho mô hình hóa
quy trình từ đó nó có thể mô tả phụ thuộc thời gian. Ngoài ra tất cả các tế bào thần kinh trong

một mạng có thể được kết nối lẫn nhau. Đối với loại mạng này, các neuron đầu vào, ẩn và đầu
ra phải được xác định một cách chặt chẽ. Tuy nhiên, các nguyên tắc cơ bản như đã giải thích ở
trên là hợp lệ cho tất cả các mạng này.
Hertz et al. (1995) đã mô tả trong công việc của họ rằng thông thường một hệ thống
thần kinh bao gồm ba lớp sẽ cho kết quả tốt. Tuyên bố này được chứng minh bởi tài liệu, nơi
mạng neuron đã được áp dụng trong quá trình kiểm soát. Trong tất cả các trường hợp này một
mạng lưới bao gồm một lớp đầu vào, một lớp ẩn và lớp đàu ra đã được sử dụng.
Các cấu trúc tối ưu của các mạng thường được xác định bằng thử và sai, tuy nhiên,
h
e
hg
β

+
=
1
1
)(
trong mạng ba lớp số lượng các neuron ẩn bằng hai lần số lượng neuron đầu vào, thường là
một điểm khởi đầu tốt đẹp.
27.2 Việc huấn luyện của mạng neuron nhân tạo:
Sau khi cấu trúc đặc trưng ban đầu của mạng neuron được xác định nó vẫn cần phải
được đào tạo để tìm hiểu quá trình. Các phương pháp đào tạo khác nhau hiện có, với các tiêu
chuẩn về thuật toán lan truyền ngược (Rumelhart et al, 1986.) đang được phổ biến nhất. Thuật
toán này sẽ được giải thích trong đoạn tiếp theo.
Để đào tạo một mạng lưới neuron, đầu tiên là một bộ đạo tạo và một bộ thử nghiệm của
các dữ liệu mẫu từ quy trình này phải được tạo ra. đào tạo là xây dựng các cặp dữ liệu đầu vào
và đầu ra, được gọi là mẫu. Những mô hình không nhất thiết phải duy nhất, đầu ra được phép
có nhiều hơn một đầu vào khác, tuy nhiên, một đầu vào chỉ có thể có một đầu ra riêng biệt.
Dữ liệu trong các bộ này phải là một mô hình hóa tốt cho dữ liệu quá trình trung bình

và do đó phải được soạn cẩn thận. Điều này có nghĩa rằng cả hai bộ có thể tước bỏ bất kỳ dữ
liệu xấu như các lỗi do trục trặc trong quá trình hay máy móc. Tuy nhiên, điều này không có
nghĩa là mạng lưới neuron này không thể đào tạo để nhận ra các tính năng này. Nó cũng có thể
được huấn luyện để nhận ra các lỗi này và xác định nguyên nhân có thể xảy ra của chúng.
Sau khi các bộ dữ liệu được kiểm tra, chúng sẽ được đưa vào mạng. Trong thời gian
đào tạo, các trọng số được cập nhật theo cách như vậy mà tổng bình phương của sự khác biệt
giữa giá trị thực tế ngõ ra y và ngõ ra của mạng lưới
y
ˆ
, được giảm thiểu:
∑∑
= =
−=
N
p
M
k
p
k
p
k
yy
N
wE
1 1
2
)(
2
1
min)(


(27.6)
Trong phương trình này N là số lượng các mô hình và M số lượng neuron, các vector
trọng w là véc tơ tham số đó giảm thiểu E.
Trong quá trình đào tạo của tất cả các cặp đầu vào / đầu ra của tập huấn luyện sẽ được
trình bày nhiều lần vào mạng. Số lần tập huấn luyện được trình bày tới mạng được gọi là số
lượng chu trình được sử dụng để huấn luyện mạng.
Có bốn phương pháp tiếp cận khác nhau về cơ bản cho việc huấn luyện mạng neuron. Phương
pháp tiếp cận đầu tiên là hiệu chỉnh lỗi quy tắc huấn luyện, nơi mà lỗi giữa đầu ra của mạng và
đầu ra đo được được sử dụng để hiệu chỉnh trọng số mạng tương thích. Một phương pháp tiếp
cận thứ hai là huấn luyện Boltzman, nó tương tự như hiệu chỉnh lỗi huấn luyện, tuy nhiên, đầu
ra của một neuron được dựa trên một phân bố thống kê Boltzman.
Phương pháp thứ ba là huấn luyện Hebbian, nơi huấn luyện được thực hiện cục bộ bằng
cách điều chỉnh trọng số dựa trên các hoạt động của neuron.
Phương pháp thứ tư là huấn luyện cạnh tranh, nơi mà các neuron cạnh tranh theo cách
mà chỉ có một neuron sẽ được kích hoạt trong một lặp nhất định.
27.3 Thuật toán lan truyền ngược chuẩn
Để giải thích thuật toán lan truyền ngược, một mạng neuron đơn truyền thẳng gồm ba
lớp (đầu vào, ẩn và đầu ra) được sử dụng. Các đầu vào mạng sẽ được ký hiệu là x
i
, đầu ra của
các neuron ẩn là H
i
, mà đầu ra của các neuron là y
ˆ
i
. Trọng số của các liên kết giữa lớp đầu
vào và lớp ẩn được viết là w
ij
,

với i là số lượng đầu vào neuron và j là số lượng các neuron
ẩn. Trọng số của các liên kết giữa lớp ẩn và lớp đầu ra được ký hiệu là w
jk
, với j là viết tắt cho
số lượng các neuron ẩn và k cho số lượng neuron đầu ra. Ví dụ một mạng lưới với ký hiệu
được thể hiện trong hình 27.3. Mạng này có ba neuron đầu vào, ba neuron ẩn và hai neuron
đầu ra, trong trường hợp này lớp đầu vào chuyển sang các đầu vào, nghĩa là I
j
= x
j
.
Hình 27.3 Mạng neural 3 lớp hiển thị các ký hiệu cho các đơn vị và
trọng số.
Đầu vào bao gồm một số các mẫu nó sẽ được đánh dấu bởi một chỉ số mũ p, do đó, đầu
vào i được thiết lập x
p
khi mô hình p được trình bày. Một mô hình đầu vào là kết hợp một
mạng đầu vào đơn lẻ, nó có duy nhất một, tuy nhiên không nhất thiết phải duy nhất, mạng lưới
đầu ra kết hợp. Điều này có nghĩa rằng các tập huấn luyện bao gồm một số lượng nhất định cặp
đầu vào / đầu ra
{
x
p
, y
p
}
. Các neuron trong mạng đều có cùng hàm kích hoạt g().
Cho mô hình p, đơn vị ẩn j nhận một mạng lưới đầu vào từ lớp đầu vào như sau:

=

i
p
i
h
ij
p
j
xwh
(27.7)
Đầu ra của neuron ẩn j là:
)(
p
j
p
j
hgH
=
(28.8)
Vì vậy neuron đầu ra k nhận đầu vào kế tiếp:
∑ ∑ ∑






==
j j i
p
i

h
ij
o
jk
p
j
o
jk
p
k
xwgwHwo
(27.9)
Đầu ra của neuron này là:
( )
p
k
p
k
ogy
=
ˆ
(27.10)
Trong hầu hết trường hợp, một hàm đầu ra tuyến tính được sử dụng, trong trường hợp
p
k
y
ˆ
bằng
p
k

o
.
Trong thời gian huấn luyện, các trọng số được cập nhật để giảm thiểu sự khác biệt giữa
đầu ra hệ thống và đầu ra mong muốn, như đã trình bày trong phương trình 27,6.
Số lượng các trình bày của toàn bộ mô hình đến mạng được gọi là một epoch (chu
trình). Nhiều chu trình nói chung là cần thiết trước những lỗi nhỏ chấp nhận được. Các trọng
số được cập nhật mỗi chu trình, tuy nhiên, đôi khi nó trở nên cần thiết để cập nhật cho chúng
sau một vài mô hình hoặc thậm chí sau một mô hình. Trong trường hợp thứ hai là phép tổng
đầu tiên (trên tất cả các mô hình) cũng như sự phân chia bởi N biến mất từ phương trình. Các
quy tắc gốc gradient được sử dụng để cập nhật các trọng số, các trọng số của các liên kết giữa
các lớp ẩn và lớp đầu ra được cập nhật như sau:
( )

−−=






−=


−=∆
p
p
j
p
k
p

k
o
jk
p
k
p
k
p
k
p
k
o
jk
o
jk
Hyy
w
o
o
y
y
E
w
E
w
ˆ
ˆ
ˆ
ηηη
(27.11)

Trong phương trình này η là tỷ lệ huấn luyện, nó sẽ xác định kích thước bước.Một tỷ lệ
thấp có nghĩa là hội tụ chậm, nhưng nếu tỷ lệ quá cao tối thiểu có thể không được tìm thấy,
như là các bước quá lớn.
Phương trình (27,11) bây giờ có thể được đơn giản bằng cách đưa ra các lỗi ngõ ra thực
tế
p
k
α
, trong trường hợp đó:
(27.12)
Kết quả là:
(27.13)
Đối với các liên kết giữa các lớp đầu vào và lớp ẩn, phương trình sau đây được sử
dụng:
(27.14)
Kết quả là:
(27.15)
Với lỗi đầu ra thực tế
p
k
α
kết quả là:
(27.16)
Phương trình này cũng có thể được đơn giản hóa hơn nữa nếu các lỗi ngõ ra thực tế của
lớp ẩn
p
j
α
được xác định:
(27.17)

Phương trình (27.13) bây giờ trở thành:
(27.18)
Nói chung, với một số tùy ý các lớp, nguyên tắc cập nhật lan truyền ngược có dạng sau:
(27.19)
Tại nơi z bằng y cho một nút đầu ra và z bằng H cho một nút ẩn. Nguyên tắc chung cho
sự điều chỉnh của trọng số cũng được hiểu như là quy tắc denta tổng quát.
Một giới hạn động lượng thường được thêm vào trong trọng số cập nhật để tránh cực
tiểu cục bộ và tìm kiếm không ổn định. Trong trường hợp của một nút đầu vào, phương
trình (27.20) sau đó trở thành
(27.20)
Quy tắc này được gọi là quy tắc đồng delta cải tiến. Thuật toán lan truyền ngược chuẩn
đã được sửa đổi theo nhiều cách để đạt được một tìm kiếm tốt hơn và đẩy nhanh và ổn định
trong quá trình huấn luyện (Looney, 1996; Masters, 1994).
27.4 Mạng neural hồi quy:
Một yếu tố quan trọng trong sự phổ biến của mạng feed-forward là nó đã cho thấy một
mạng neuron giá trị liên tục với một hàm truyền khả vi liên tục phi tuyến có thể xấp xỉ khá tốt
bất kì hàm liên tục nào (Cybenko, 1989). Cấu trúc feed-forward thể hiện trong hình 27.1
thường được sử dụng cho hàm xác lập gần đúng hoặc dự báo trước một bước. Tuy nhiên, nếu
mô hình được sẽ được sử dụng để dự đoán cũng có nhiều hơn một bước thời gian sắp tới, mạng
lưới neuron hồi quy nên được sử dụng, trong đó trì hoãn đầu ra được sử dụng như là đầu vào
neuron.
Nó được tìm thấy bởi MacMurray và Himmelblau (1995) rằng các mạng hồi quy ngoại
(Externally recurrent network - ERN) có hiệu suất tốt nhất trong dự báo quá trình đầu ra nhiều
bước trong tương lai. Hình hiển thị 27.4 ERN, nó là mạng feed-forward (FFN) từ Hình. 27.1
rằng bây giờ đã kết nối bên ngoài thường xuyên với một hoặc nhiều sự chậm trễ lấy mẫu (z-1)
giữa sản lượng đầu vào mạng và hệ thống mạng (xem thêm chương 24). Hệ thống được đôi khi
được gọi là một sự chậm trễ khai thác-line mạng.
Hình 27.4 Mạng hồi quy ngoại (ERN)
Do đó, sự khác biệt cơ bản giữa FFN trong việc dự đoán và ERN là cái mà mạng ERN
sử dụng các giá trị của tiến trình đầu ra được dự đoán bởi mạng thay vì đo các giá trị quá

trình.
Từ 'bên ngoài' (externally) được dùng để phân biệt với mạng hồi quy nội (IRN) biểu
diễn trong hình. 27.5, mạng hồi quy chéo (DRN) như trong hình. 27,6 và kết hợp của ERN và
IRN.
Có nhiều cấu hình mạng Elman và mạng hồi tiếp đường chéo. Trọng lượng cập nhật dự
án phụ thuộc vào cấu trúc của mạng và sẽ khác nhau cho từng loại mạng.
Các dự báo được thực hiện bởi mạng Elman vá có thể có thể được diễn tả như một
chức năng của quá trình trì hoãn đầu vào và dự đoán những đầu ra quá trình:
(27.21)
Hình 27.5 Ví dụ về mạng Elman hồi quy
Hình 27.6 Mạng hồi quy chéo ( động) (DRM).
trong đó
y
ˆ
(k )
dùng để chỉ dự báo (ước lượng) của quá trình đầu ra tại khoảng lấy mẫu k, f là
một hàm phi tuyến (xác định bởi các mạng nơ ron).
N và M là các số nguyên biểu diễn cho số lượng đầu vào của mạng nơ ron. Nếu hàm f
là tuyến tính thì mô hình là một mô hình ARMAX, như được thảo luận trong Chương 24. Nó
là một thực tiễn hay để bắt đầu với một mô hình arma tuyến tính đầu tiên, nếu kết quả mô
hình thô là nhận được, dạng phi tuyến nên được khảo sát.
Một số nhà khảo sát đã nghiên cứu các vấn đề của khuếch đại lỗi nếu y
ˆ
được thay thế
bằng giá trị đo được y, và kết luận rằng việc sử dụng y
ˆ
được cung cấp tốt hơn việc dự đoán.
Vì lý do này, ERN được dùng để quan sát quá trình mô hình .
Mạng lưới hồi quy bên ngoài (ERN) của biểu thức (27.21) đôi khi được gọi là mô hình
dự báo N-steps, trong khi biểu thức cho mạng feed-forward (FFN) là:

y (k) = f (y (k - 1 ), , y (k - N), u (k - 1 ), , u (k - M)) (27.22)
đôi khi được gọi là mô hình dự báo một bước (Ljung, 1987; Narendra và Par-thasarathy,
1990).
Ljung cho một cuộc thảo luận kỹ lưỡng về những lợi thế và bất lợi của hai phương pháp tiếp
cận mô hình. Các mô hình song song thường là thích hợp hơn cho các ứng dụng kiểm soát, từ
đó mô hình này có thể được yêu cầu để dự đoán một vài bước trong tương lai và không chỉ là
một. Do đó, các giá trị hồi tiếp là cần thiết, mà mô hình này đã được dự đoán trong sự thiếu
vắng của bất kỳ phép đo. Các mô hình song song cũng áp dụng trên một cơ sở độc lập đó có
thể hữu ích trong các trường hợp khi đo lường sự thất bại.
Việc học tập hoặc huấn luyện của một mạng neural feed-forward là khác với mạng
neural hồi quy. Đối với mạng neural feed-forward, thuật toán lan truyền ngược, cấp dữ liệu
chuyển tiếp thần kinh, tuyên truyền về các thuật toán, được thảo luận trong phần 27.3, có thể
viết là:
(27.23)
trong đó i là chu kỳ lặp,
∂E / ∂w
i
là độ giảm của E đối với các ma trận tham biến
w
i
và η

mức độ học tập. Tan và Saif (2000) đã suy ra biểu thức cho lượng cập nhật của mạng neural
bên ngoài, nó sẽ được theo sát tại đây.
Giả định rằng các mô hình động là có dạng:
y
ˆ
(k ) = f ( y
ˆ
(k


1), u(k

1), w
i
) (27.24)
Đạo hàm của f (.) theo w là:
(27.25)
Thuật toán học lan truyền ngược thường chậm trong hội tụ, một cách để cải thiện việc
huấn luyện là thông qua phương pháp tiếp cận cơ bản thứ hai như phương pháp Newton và
phương pháp Levenberg-Marquardt. Các vấn đề trước đã cập nhật công thức sau đây:
(27.26)
Trong đó
)(]/
ˆ
][/
ˆ
[/
111
2
1
2
wwywywE
T
θ
+∂∂∂∂=∂∂
là giới hạn của của đạo hàm cấp hai
Sử dụng phương pháp Gauss-Newton, cấp cao hơn θ (w
i
) được giả định là không, vì thế

thuật toán trở thành:
(27.27)
Các tỷ lệ học η được sử dụng để điều chỉnh mức độ ổn định và hội tụ, đặc biệt là khi giá
trị tối ưu rất phẳng. Hiệu chỉnh Levenberg-Marquardt của phương pháp Gauss-Newton đưa ra
một hệ số bổ sung μ >=0, sao cho:
(27.28)
Các hệ số μ có thể biến đổi từ 0 đến ∞. Khi μ = 0, tìm được thuật toán Gauss-
Newton. Nếu μ xấp xỉ vô hạn, thuật toán sẽ trở thành phương pháp xuống dốc (gradient
descent):
(27.29)
Nó phù hợp để đề cập đến độ dốc động là được tính toán để đáp ứng việc huấn luyện mạng
neural với đầu vào hồi tiếp.
Các bước cơ bản của phương pháp Levenberg-Marquardt là:
i. Đặt w
i
= w
0
và dùng một giá trị ban đầu lớn là μ
ii. Tính độ dốc động
∂E
/
∂wi

∂yˆ
/

wi
iii. Nhập w
i
iv. Nếu | E(w

i
+
1
)
|≤|
E(w
i
) | thì giảm μ
ngược lại tăng μ
v. Nếu | E(wi
+
1 ) |

ε
, thì dừng, ngược lại sang bước (ii)
27.5 Ứng dụng mạng Neural và các vấn đề
Mạng lưới thần kinh có thể rất hiệu quả trong việc giải quyết một số loại vấn đề đã biết. Một số
ứng dụng của mạng neural sẽ được thảo luận trong phần này.
27.5.1 Ứng dụng mạng Neural
Như đã bàn trước, có nhiều ứng dụng của các mạng neural, một số đặc trưng cụ thể sẽ được
thảo luận trong phần này.
• Nhận dạng mẫu. Phân loại mẫu có liên quan với sự phân công của một mẫu mới cho
một trong những quy định trước một số loại dựa trên một hoặc nhiều thuộc tính mô tả
một loại. Ứng dụng trong y học lâm sàng, vi sinh học và xử lý ảnh được cho bởi Penny
và Frost (1996), Basheer và Hajmeer (2000), Mattone et al (2000.), Và Egmont-
Petersen et al. (2002).
• Tạo nhóm. Trong trường hợp này, mạng neural được sử dụng để chỉ định các mẫu tương tự
với cùng một nhóm. Thường thì các mạng Kohonen được.
sử dụng. Ứng dụng tiêu biểu có thể được tìm thấy trong lĩnh vực phân tích hóa học
(Tokutaka et al, 1999.) và nhận dạng mẫu thời tiết (Ambroiseet al., 2000).

• Mô hình hóa và dự báo. Mô hình hóa bao gồm việc huấn luyện mạng neural trên dữ
liệu đầu vào-đầu ra, như vậy một mối quan hệ hiện tại giữa dữ liệu đầu vào và dữ liệu
đầu ra được thực hiện đầy đủ chính xác. Các mối quan hệ có thể là tĩnh, trong trường
hợp này thường một mạng feed-forward được sử dụng. Cũng có thể các mối quan hệ là
động, trong trường hợp này thường là mạng hồi quy được sử dụng. Nhiều ứng dụng có
thể được tìm thấy trong tài liệu về các lĩnh vực ứng dụng khác nhau, chẳng hạn như mô
hình nhà máy nước thải, điều hòa dữ liệu, vv…, xem ví dụ Miller et al. (1997), Meert
(1998), Triệu et al. (1999), Basak et al. (2000) và Veltri et al(2002.)
• Tối ưu hóa. Trong tối ưu hóa, nó là cần thiết để tìm một giải pháp để đánh giá một đối
tượng hàm mục tiêu để thiết lập liên kết. Mạng Hopfield được chứng minh rất hiệu quả
trong việc giải quyết vấn đề tối ưu hóa phi tuyến. Một số ví dụ là những ứng dụng trong
các vấn đề đường đi ngắn nhất (Bousono-Carzon et al., 1997) và trong vấn đề tối ưu hóa
tổ hợp (Colorni, et al., 1996).
• Điều khiển quá trình và nhận dạng. Trong quá trình kiểm soát, một mạng lưới
neural có thể được dùng để tính toán đầu vào quá trình để những kết quả đầu ra quá
trình đạt mục đích mong muốn. Yonghong và van Cauwenberghe (1996) thảo luận về
việc thiết kế một bộ điều khiển dự đoán neural, Cohen et al. (1997) áp dụng một hệ
thống thần kinh để điều khiển trình tự của một lò phản ứng đợt Menhaj và Salmasi
(2000) sử dụng một mạng neural cho các tham số dự toán và Hafner et al (2000) sử
dụng các mạng thần kinh cho thiết kế điều khiển động cơ diesel.
27.5.2 Các vấn đề mạng neural
Mạng neural không thể phát triển hoàn hảo mà không tính đến một số vấn đề quan
trọng. ác vấn đề đó sẽ được thảo luận trong phần này.
Phát hiện lỗi. phát hiện lỗi là đề cập đến sự phát hiện các sự kiện bất thường, ví dụ về
lỗi của thiết bị trong quy trình nhà máy, Trong một số khác, ứng dụng được cho bởi Fuente và
Vega (1999) và Guglilmi et al. (1995).
Basheer et al. (2000) cho một điều trị toàn diện về các vấn đề mạng thần kinh, chẳng
hạn như bộ tiền xử lý dữ liệu, bình thường, khởi tạo mạng lưới, vv .Một số trong những vấn đề
được đề cập trong phần này được dựa trên đánh giá toàn diện.
Kích thước cơ sở dữ liệu. Mô hình mạng Neural sẽ phụ thuộc vào kích thước cơ sở dữ

liệu. Dữ liệu được sử dụng cho việc đào tạo nên bao gồm phạm vi hoạt động toàn bộ các mô
hình đó có thể được sử dụng để interpo-trễ. Mô hình mạng Neural ngoại suy nghèo, nghĩa là
chúng thường dự báo kém bên ngoài phạm vi điều hành.
Các thiết lập dữ liệu thường được chia thành ba bộ dữ liệu: tập huấn, các dữ liệu thiết
lập và xác nhận thiết lập. Tập huấn nên bao gồm dữ liệu từ các phạm vi hoạt động toàn bộ và
được sử dụng để cập nhật các trọng số của mạng. Các thiết lập thử nghiệm khác với thiết lập
đào tạo và được sử dụng để kiểm tra phản ứng của mạng cho dữ liệu chưa thạo. Nếu trả lời là
nghèo, các cấu hình mạng phải được thay đổi hoặc các chu trình đào tạo hơn nên được áp
dụng.
Mặc dù có rất nhiều nguyên tắc để chọn các kích thước của các bộ dữ liệu khác nhau,
một sự lựa chọn hợp lý để có được 65% của toàn bộ dữ liệu đặt cho đào tạo, 25% để thử
nghiệm và 10% cho xác nhận.
Bộ tiền xử lý dữ liệu. Các dữ liệu tốt nên được phân bố đều trên toàn bộ phạm vi hoạt
động của tiến trình. Nếu dữ liệu quá trình đang nhiễu, nhiễu tốt nên được tái di chuyển bằng
cách sử dụng một thích hợp làm mịn hoặc lọc kỹ thuật. Ngoài ra, cái nằm ngoài nên được gỡ
bỏ, vì nó sẽ ảnh hưởng đến độ chính xác và khả năng dự đoán của mô hình.
Dữ liệu bình thường. Quá trình giá trị thường có giá trị tùy ý và nó có thể được kỳ
vọng rằng họ sẽ không phải tất cả được của cường độ tương tự. Đó là do đó khuyến khích để
tất cả các giá trị quá trình quy mô giữa 0,1 và 0,9 để tránh bão hòa của các nút ẩn và để đảm
bảo rằng tất cả biến quá trình có tác động vào đầu ra.
Mạng khởi. Trong tài liệu có bất kỳ hướng dẫn thiết lập tại điểm bắt đầu trọng
neuron. Nên để khởi tạo các trọng số mạng và các giá trị ngẫu nhiên đến ngưỡng giá trị nhỏ từ
-0,30 đến 0,30.
Tỷ lệ học tập. Một tỷ lệ học tập cao sẽ đẩy nhanh quá trình đào tạo, tuy nhiên, cũng có
thể dẫn đến không ổn định. Một số tác giả đề xuất giá trị của các tỷ lệ học giữa 0,1 và 10;
người khác đề nghị các giá trị giữa 0,3 và 0,6. Đó là kinh nghiệm của chúng tôi, nói chung
những giá trị cần được nhỏ và được trong khoảng 0-1.
Kích cỡ của lớp ẩn. Một ẩn lớp thường là đủ để bất kỳ hàm liên tục gần đúng. Việc lựa
chọn số nút ẩn không phải là một nhiệm vụ đơn giản. Một mạng lưới với quá ít các nút ẩn sẽ
cung cấp một ước lượng tuyến tính của xu hướng thực tế, trong khi quá nhiều các nút ẩn sẽ gây

ra mạng làm theo những nhiễu do tham số hóa.
Mặc dù có nhiều quy tắc của ngón tay cái nó là kinh nghiệm của chúng tôi là một trong
những nên bắt đầu với một số lượng nhỏ các nút ẩn và dần dần tăng số này nhằm đáp ứng các
yêu cầu về độ chính xác mô hình.
input1 input2 input3 input4 bias
-0.0605 0.0780 -0.0887 -0.0539 0.1961 HN1 (bottom)
-0.0327 0.3302 0.0182 0.2353 –1.3918 HN2
0.0606 0.1957 0.0000 0.0181 0.2916 HN3 (top)
27.6 Ví dụ về mô hình:
Ví dụ đầu tiên được coi là một hàm tĩnh gần đúng. Hộp công cụ MATLAB neural
network (MathWorks, 2006) sẽ được sử dụng. Một neural truyền thẳng (feed-forward) 2 lớp,
bao gồm một lớp ẩn và một lớp đầu ra, sẽ được đào tạo để tính tổng gần đúng của hai sóng sin.
Chức năng này có thể được mô tả bởi:
y
= 0 .5 * s in(
π
x)
+ 0 .5 * s in(2
π
x), x ∈[0,2] (27.30)
Dữ liệu được tạo ra tại các điểm cách đều nhau và được nhiễu thêm vào:
randn(‘seed’,192736547);
x = 0:0.01:2.0;
y = 0.5*sin(pi*x)+0.5*sin(2*pi*x)+0.1*randn(size(x–1));
Các vectơ x (đầu vào) và y (đầu ra) bao gồm 201 điểm dữ liệu. Mối quan hệ giữa x
và y được thể hiện trong hình 27,7.
Hình 27.7 Mối quan hệ giữa x và y theo hướng gần đúng.
Chúng ta đã chọn được 1 cấu hình mạng. Chúng ta sẽ chọn một mạng truyền thẳng
(feed-forward) với bốn neural trong lớp đầu tiên với một hàm truyền theo dạng sigma (
sigmoid), một trong những trong lớp đầu ra với hàm truyền tuyến tính. Có thể dùng hàm newff

để tạo nên mạng lưới. Đối số đầu tiên trong hàm cho phạm vi của tín hiệu đầu vào, các đối số
cuối thuật toán huấn luyện(một trong 14 có thể dùng được). TRAINBR là một hàm đào tạo
mạng mà nó cập nhật khối lượng neuron và các giá trị thiên vị theo thuật toán Levenberg-
Marquardt tối ưu. Nó làm giảm thiểu sự kết hợp của các lỗi bình phương, khối lượng rồi xác
định sự kết hợp chính xác để tạo ra một mạng lưới khái quát nhất. Quá trình này được gọi là
Bayes regu-larization. Một số trong 150 chu kỳ (echo) được chọn là giá trị tối đa và cứ 10 chu
kỳ thông tin được hiển thị.
net=newff(minmax(x),[4 1],{’tansig’,’purelin’},’trainbr’);
net.trainParam.epochs = 150;
net.trainParam.show = 10;
net = init(net);
[net, tr] = train(net,x,y);
Các lưới tạo ra được lưu trữ trong đối tượng tên là net. Net bây giờ có thể được sử dụng để
thử nghiệm và (hoặc) xác nhận các mô hình. Mục đíhc của việc này là các điểm mới được tạo
ra trong miền đã được chọn để đào tạo.
x1 = 1.015:0.01:1.615;
y1 = 0.5*sin(pi*x1)+0.5*sin(2*pi*x1)+0.1*randn(size(x1–1));
out1 = sim(net,x1);
plot(x1, y1, ‘b’,x1,out1,’r’);
Các kết quả được thể hiện trong hình 27,8. Thông thường mô hình này sẽ hoạt động tốt với
các dữ liệu từ bên trong miền đào tạo.
Hình 27.8 Mô hình hợp lệ với dữ liệu từ miền đào tạo.
Bây giờ chúng ta sẽ tạo ra các dữ liệu bên ngoài khu vực đào tạo và theo cách đó kiểm tra
khả năng ngoại suy của mô hình. Kết quả được cho thấy trong hình 27.9.
Như đã thấy, mô hình hàm gần đúng hàm không quá tốt bên ngoài miền đào tạo. Điều này
thông thường trùng với trường hợp mô hình hộp đen, trừ khi quá trình là tuyến tính và một quá
trình tuyên tính được phát triển. Đoạn mã (code) của ví dụ này cho trong tập tin F2708.m.
Các mạng neural cũng có thể được phát triển bằng cách sử dụng MATLAB graphical
user interface. ể bắt đầu nó, gõ nntool. Cửa sổ thể hiện trong hình. 27,10 sẽ xuất hiện.
Hình 27.9 Khả năng ngoại suy của mô hình.

Hình 27.10 . NNTOOL graphical user interface.
Đầu tiên tạo ra dữ liệu đầu vào (x) và đầu ra (y). Trên giao diện, chọn Import… và nhập x
như đầu vào và y như là mục tiêu. Chọn NewNetwork…, trên cửa sổ tiếp theo xuất hiện chọn
x cho Input ranges, phạm vi [0 2] sẽ được hiển thị như phạm vi đầu vào.
Đối với các hàm đào tạo chọn TRAINBR. Chọn lớp 1 (layer 1): Số neural 4 (Number of
neurons 4), hàm truyền TANSIG, chọn lớp 2: Số neural 1, hàm truyền PURELIN. Chọn Creat,
việc này sẽ tạo ra một mạng lưới gọi là network1.
Chọn network1 và chọn Train. Chọn như đầu vào x và y như là đầu ra, và chọn Train
network.
Network1_ouputs và network1_errors đã được tạo ra. Bằng cách xuất dữ liệu (chọn
Export trong Network/Data Manager) chúng vào workspace và chúng có thể được vẽ. Khi
dữ liệu bổ sung trong miền đào tạo hoặc bên ngoài miền đào tạo được tạo ra, mô hình này có
thể được dùng để mô phỏng các đầu ra. Ngoài ra, khối lượng mạng có thể dễ dàng xem và
mạng ví dụ này được thể hiện trong hình 27.11.
Hình 27.11 Mạng sóng sin gần đúng.
Ví dụ 2. Ví dụ thứ hai là một quá trình động được mô tả bằng phương trình sau đây
Tại u(k) = –1 +1, k = 1 499
Dữ liệu được tạo ra với mô hình này được lưu trong tập tin NNsiso.mat. Dữ liệu được thể
hiện trong hình 27.12:
Hình 27.12 Quy trình dữ liệu được sử dụng để nhận dạng.
Trước tiên một mô hình OE tuyến tính loại hai với thời gian trễ của khoảng lấy mẫu
được tạo ra, sử dụng đoạn mã sau:
load NNSISO;
th = oe([y1 u1],[2 2 1]); % data set for model development
figure(1), compare([y2 u2],th,1); % data set for model test
Kết quả của việc nhận dạng bằng cách sử dụng [y1 u1] để phát triển mô hình và [y2
u2] để thử nghiệm các mô hình, được thể hiện trong hình 27.13. Có thể thấy rằng mô hình
không phải là đặc biệt tốt.
Tiếp theo, một mạng neural mô hình OE sẽ được phát triển. Hộp công cụ The neural
network identification (Nǿrgaard, 2000) được sử dụng. Nó sẽ được giả định rằng:

Một cấu trúc mạng được giả định với ba tế bào neural ẩn và một đầu ra. Các neural ẩn
có một hàm truyền tanh, các neural đầu ra có hàm truyền tuyến tính. Cấu trúc mạng được thể
hiện trong hình 27.14. Trước tiên dữ liệu đầu vào và đầu ra được thu nhỏ về không và
phương sai đơn vị.
% Scale the input and output data
%
[u1s,uscales] = dscale(u1’);
[y1s,yscales] = dscale(y1’); u2s
= dscale(u2’,uscales); y2s =
dscale(y2’,yscales);
Hình 27.13 Mô hình EO tuyến tính phù hợp.
Hình 27.14 Cấu trúc mô hình mạng neural EO
Tiếp theo, mạng được xác định và đào tạo:
NetDef = [‘HHH’;’L ’]; NN =
[2 2 1];
trparms = settrain;
%
% Set the maximum number of iterations = 200
% The weight decay parameter D = 1.E-3
%
trparms = settrain(trparms,’maxiter’,200,’D’,1E-3);
[W1,W2,NNSEvec] = nnoe(NetDef,NN,[],
[],trparms,y1s,u1s);
Bây giờ mạng đã được phát triển, dùng dữ liệu [y1 u1], nó có thể được kiểm tra bằng cách
dùng dữ liệu [y2 u2]:
%
% Rescale the weights so that the unscaled data can be used
% for validation using the test data
%
[w1,w2] =

wrescale(‘nnoe’,W1,W2,uscales,yscales,NN);
[yhat,NSSE] =
nnvalid(‘nnoe’,NetDef,NN,w1,w2,y2’,u2’);
Hình 27.15 cho thấy kết quả của các dự đoán mô hình mạng neural OE và dữ liệu đầu ra
thực tế. Có thể thấy, các dự đoán bằng cách sử dụng các mô hình mạng neural được tốt hơn
từ các mô hình OE tuyến tính. Các dữ liệu phù hợp cho thử nghiệm là 98,4%. Chương trình
thực hiện ví dụ này được đưa ra trong tập tin F2712.m.
Hình 27.15 Mô hình mạng neural EO phù hợp.
Trong ví dụ này, một mạng kết nối đầy đủ đã được sử dụng, nghĩa là mọi đầu vào đều có
kết nối với tất cả các neuron ẩn và mỗi neuron ẩn đều đã có một kết nối đến các neuron đầu
ra. Điều quan trọng là nhận ra rằng số lượng mô hình tham số của mạng neural với ba
neuron ẩn và một neuron đầu ra là một mô hình tuyến tính EO với nhiều số lượng tham số,
tuy nhiên, việc tăng số lượng các tham số mô hình trong mô hình tuyến tính OE không cải
thiện mô hình phù hợp.
Mạng neural nhận dạng cũng có tùy chọn để lượt bớt mạng. Tính năng này là rất tốn
thời gian, tuy nhiên, nó sẽ ra các liên kết mà không phải là hữu ích và do đó tạo ra một
mạng bị giảm đi với đặt tính tổng quát tốt hơn. Việc giải thích cơ chế cắt tỉa 1 cách chi tiết
vượt quá phạm vi của chương này. Thủ tục để loại bỏ một khối lượng và đánh giá tác động
của nó trên các lỗi dự đoán. Tác động của tất cả các khối lượng là được đánh giá, các khối
lượng thừa được loại bỏ theo kế hoạch tối ưu Brain Sur-geon (Nǿrgaard et al, 2000.). Sử
dụng F2716.m sản lượng mạng bị tỉa xén thể hiện trong hình 27.16. Đường rời rạc cho biết
khối lượng mạng lưới tiêu cực, đường liên tục cho biết khối lượng tích cực.
Hình 27.16 Cấu trúc mạng sau khi tỉa xén.
Bộ thử nghiệm phù hợp 98,4% so với bộ gốc đã được tăng lên 99,4%. Đáp ứng gần
đúng thậm chí tốt hơn so với thể hiện trong hình 27.15.
Ma trận khối lượng W1 cho dữ liệu không theo tỉ lệ đến lớp ẩn là (đánh số từ dưới
(1) để đầu trang (3) trong hình. 27,16). Có thể thấy rằng có một liên kết (từ đầu vào 3 đến
HN3 ở đầu trang) đã được tỉa xén (weight = 0), kể từ khi chúng dường như đã đóng góp
một chút để giảm lỗi dự báo.
input1 input2 input3 input4 bias


-0.0605 0.0780 -0.0887 -0.0539 0.1961 HN1 (bottom)
-0.0327 0.3302 0.0182 0.2353 –1.3918 HN2
0.0606 0.1957 0.0000 0.0181 0.2916 HN3 (top)
Lưu ý rằng có bốn yếu tố đầu vào cho mạng ( y
ˆ
(k–1), y
ˆ
(k–2), u(k–1) ( y
ˆ
(k–1), y
ˆ
(k–2), u(k–1) and u(k–2)) và u(k–2)) và độ chênh lệch giới hạn bằng 1.
Các vectơ khối lượngW2 từ lớp ẩn đến đầu ra là:
-7.2572 -2.0468 -4.5373 0.9610
Yếu tố thứ tư của vectơ khối lượng W2 là độ chênh lệch gới hạn. Nếu mạng neural đơn
giản là hai neuron ẩn và một neuron đầu ra mô hình phù hợp vẫn còn 96,9%, vì thế nó vẫn
tốt hơn so với các mô hình tuyến tính.
Tập tin được nêu trong chương này:
F2708.m: sóng sin gần đúng
F2712.m: mã cho việc tạo ra của mô hình lưới neural
F2716.m: mã cho cắt tỉa mạng neural
Fit.m: được sử dụng để tính toán phù hợp với mô hình
nnsiso.mat: dữ liệu cho phi tuyến SISO quá trình
Tham khảo:
Ambroise, C., Seze, G., Badran, F. and Thiria, S. (2000) Hierarchical clustering of self-
organizing maps for cloud classification. Neurocomputing, 30, 47–52.
Basak, S. C., Grunwald, G.D., Gute, B.D., Balasubramanian, K. and Opitz, D. (2000) Use of
statistical and neural net approaches in predicting toxicity of chemicals. Journal of
Chemical Information and Computer Sciences, 40 (4), 885–90.

Basheer, I.A. and Hajmeer, M. (2000) Artificial neural networks: fundamentals, computing,
design and application. Journal of Microbiological Methods, 43, 3–31.
Buscono-Calzon, C. and Figueiras-Vidal, A.R. (1997) A bank of Hopfield neural networks
for the shortest path problem. Journal of Computational and Applied Mathematics, 82 (1–
2), 117–128.
Cohen, A., Janssen, G., Brewster, S.D., Seeley, R., Boogert, A.A., Graham, A.A., Mardani,
M.R., Clarke, N. and Kasabov, N.K. (1997) Application of computational intelligence for
on-line control of a sequencing batch reactor at Morrisville sewage treatment plant. Water
Science and Technology,
35 (10), 63–71.
Colorni, A., Dorigo, M., Maffioli, F., Maniezzo, V., Righini, G. and Trubian, M. (1996)
Heuristics from nature for hard combinatorial optimization problems. International
Transactions in Opera- tional Research, 3 (1), 1–21.
Cybenko, G. (1989) Approximations by superpositions of a sigmoidal function.
Mathematics of Con- trol Signal and Systems, 2, 202–314.
Egmont-Petersen, M., de Ridder, D. and Handels, H. (2002) Image processing with neural
networks, a review. Pattern Recognition, 35, 2279–2301.
Fuente, M.J. and Vega, P. (1999) Neural networks applied to fault detection of a
biotechnological proc- ess. Engineering Applications of Artificial Intelligence, 12 (5),
October, 569–84.
Guglilmi, G., Parisini, T. and Rossi, G. (1995) Fault diagnosis and neural networks: a power
plant ap- plication. Control Engineering Practice, 3 (5), 601–20.
Hafner, M., Schuler, M., Nelles, O. and Isermann, R. (2000) Fast neural networks for diesel
engine control design. Control Engineering Practice, 8 (11), 1211–21.
Hecht-Nielsen, R. (1987) Counterpropagation networks. Proceedings of the 1987 IEEE First
Interna- tional Conference on Neural Networks, vol. II, pp. 19–32.
Hertz, J., Krogh, A. and Palmer, R.G. (1995) Introduction to the Theory of Neural
Computation, Addi- son-Wesley Publishing Company, Redwood City.
Ljung, L. (1987) System identification: Theory for the User, Prentice Hall, Englewood
Cliffs, NJ, USA. Looney, C.G. (1996) Advances in feedforward neural networks:

demystifying knowledge acquiring
black boxes. IEEE Transactions on Knowledge and Data Engineering, 8 (2), 211–26.
MacMurray, J.C. and Himmelblau, D.M. (1995). Modeling and control of a packed
distillation column using artificial neural networks. Comp. Chem.
Eng., 19, 1077–1088.
Masters, T. (1994) Practical Neural Network Recipes in C
++
, Academic Press, Boston,
MA, USA. The Mathworks, Description of the neural network toolbox:
/>Mattone, R., Campagiorni, G. and Galati, F. (2000) Sorting of items on a moving conveyer
belt, part 1:
a technique for detecting and classifying objects. Robotics and Computer Integrated
Manufacturing,
16 (2–3), 73–80.
Meert, K. (1998) A real-time recurrent learning network structure for data reconciliation.
Artificial In- telligence in Engineering, 12 (3), 213–8.
Menhaj, M.B. and Salmasi, F.R. (2000) A novel neuro estimator and it’s application to
parameter esti- mation in a remotely piloted vehicle. Engineering Applications of
Artificial Intelligence, 13 (4),
459–64.
Miller, R.M., Itoyama, K., Uda, A., Takada, H. and Bhat, N. (1997) Modeling and control
of a chemi- cal waste water treatment plant. Computers and Chemical Engineering, 21,
Supplement 1, S947–52. Narendra, K.S. and Parthasarathy, K. (1990) Identification and
control of dynamical systems using neu-
ral networks. IEEE Transactions on Neural Networks, 1, 4–27.
Nǿrgaard, M., Ravn, O., Poulsen, N.K. and Hansen, L.K. (2000) Neural Networks for
Modeling and Control of Dynamic Systems: A Practitioner’s Handbook,
Springer Verlag,

Penny, W. and Frost, D. (1996) Neural networks in clinical medicine. Medical Decision

Making, 16
(4), 386–98.
Rumelhart, D.E., Hinton, G.E. and Williams, R.J. (1986) Learning internal representations by
error
propagation. Parallel Distributed Processing, 1, 318–62.
Tan, Y. and Saif, M. (2000) Neural-networks-based nonlinear dynamics modeling of
automotive en-
gines. Neurocomputing, 30, 129–42.
Tokutaka, H., Yoshihara, K., Fujimara, K., Obu-Cann, K. and Iwamoto, K. (1999) Application
of self-
organizing maps to chemical analysis. Applied Surface Science, 144, 59–63.
Veltri, R.W., Chaudhari, M., Miller, M.C., Poole, E.C., O’Dowd, G.J. and Partin, A.W. (2002)
Com-
parison of logistic regression and neural net modeling for prediction of prostate cancer
pathologic
stage. Clinical Chemistry, 48 (10), 1828–34.
Yonghong, T. and van Cauwenberghe, A.R. (1996) Optimization techniques for the design of a
neural
predictive controller. Neurocomputing, 10 (1), 83–96.
Zhao, H., Hao, O.J. and McAvoy, T.J. (1999) Approaches to modeling nutrient dynamics:
ASM2, sim-
plified model and neural nets. Water Science and Technology, 39 (1), 227–34.

×