Tìm hiểu và nghiên cứu các tài liệu lý thuyết liên quan tới chương trình mô phỏng hoạt động của mạng neural. - Pdf 28

Báo cáo Đồ án môn Máy Học
LỜI CẢM ƠN
Lời đầu tiên chúng em xin gửi lời cảm ơn đến Cô Nguyễn Thị Thu Hà người
đã cung cấp tài liệu và hướng dẫn tận tình chúng em trong suốt quá trình thực
hiện bài tập lớn.
Chúng em cũng xin gửi lời cảm ơn tới toàn thể các Thầy, Cô, cán bộ - công
nhân viên trong Trường Đại Học Điện Lực những người đã dạy bảo em trong
suốt những năm học qua tại mái trường than yêu. Đặc biệt là các Thầy, Cô
trong khoa CNTT những người mang đến cho chúng em những nguồn tri thức
quý báu và những lời khuyên bổ ích để giúp chúng em có thêm hành trang
bước vào cuộc sống.
Đồ án môn học là cơ hội để chúng em áp dụng, tổng kết những kiến thức mà mình
học hỏi, đồng thời rút ra những kinh nghiệm thực tế quý giá trong suốt quá trình
thực hiện đề tài.
Và cuối cùng em xin gửi lời cảm ơn tới bố mẹ, anh chị của em. Những người
luôn miệt mài bên cạnh em, giúp đỡ, chăm lo và an ủi em, giành cho em những
tình cảm đặc biệt.
Kính chúc thầy cô mạnh khỏe, hạnh phúc .
Hà Nội, tháng 12 năm 2011.
Nhóm sinh viên : Nguyễn Trọng Thắng
Bùi Thanh Tân
Hoàng Tùng
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 1
Báo cáo Đồ án môn Máy Học
TÓM TẮT NỘI DUNG
Bao gồm các giai đoạn chính sau:
Tìm hiểu đề tài
Tìm hiểu và nghiên cứu các tài liệu lý thuyết liên quan tới chương trình mô phỏng
hoạt động của mạng neural.
Xây dựng và cài đặt chương trình.

Hiện nay nước ta đang trong giai đoạn tiến hành công nghiệp hóa hiện đại
hóa. Công nghệ thông tin và là một trong những nghành mũi nhọn.
Việc phát minh ra những con rô bốt thông minh hay những con chip siêu
nhỏ có thể điều khiển được một bộ máy như tòa nhà, càng cho chúng ta thấy sự
phát triển vượt bậc của nghành công nghệ thông tin. Thật vậy. từ lâu con người đã
phát minh ra chiếc máy tính có khả năng thực hiện rất nhiều phép tính trên giây.
Ngày nay thì những sản phẩm đó ngày càng hoàn thiện và đạt tới đỉnh cao của
công nghệ.
Tuy nhiên, một máy tính, dù có mạnh đến đâu chăng nữa, đều phải làm việc theo
một chương trình chính xác đã được hoạch định trước bởi các chuyên gia. Trong
khi đó con người làm việc bằng cách học tập và rèn luyện. Trong khi làm việc con
người có khả năng liên tưởng, kết nối sự việc này với sự việc khác, và quan trọng
hơn hết, họ có thể sáng tạo.
Từ lâu các nhà khoa học đã nhận thấy những ưu điểm ấy của bộ óc con người và
tìm cách bắt chước để thực hiện những máy tính có khả năng học tập, nhận dạng và
phân loại. Các mạng neural nhân tạo (Artificial Neural Network, ANN) đã ra đời
từ những nỗ lực đó. ANN là một lãnh vực nghiên cứu rộng lớn và chỉ mới phát
triển mạnh khoảng 15 năm gần đây thôi.
Mạng Neural nhân tạo (Artificial Neural Network- ANN) là một mô phỏng
xử lý thông tin, được nghiên cứu ra từ hệ thống thần kinh của sinh vật, giống như
bộ não để xử lý thông tin. Nó bao gồm số lượng lớn các mối gắn kết cấp cao để xử
lý các yếu tố làm việc trong mối liên hệ giải quyết vấn đề rõ ràng. ANNs giống
như con người, được học bởi kinh nghiệm, lưu những kinh nghiệm hiểu biết và sử
dụng trong những tình huống phù hợp.
Các ứng dụng của mạng Neural được sử dụng trong rất nhiều lĩnh vực như điện,
điện tử, kinh tế, quân sự… để giải quyết các bài toán có độ phức tạp và đòi hỏi có
độ chính xác cao như điều khiển tự động, khai phá dữ liệu, nhận dạng… Việc ứng
dụng mạng Neural trong thực tế phục thuộc thuộc rất nhiều vào cơ chế hoạt động
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 4

Luật học Widrow-Hoff vẫn còn được sử dụng cho đến nay.
- Tuy nhiên cả Rosenblatt và Widrow-Hoff đều cùng vấp phải một vấn đề do
Marvin Minsky và Seymour Papert phát hiện ra, đó là các mạng nhận thức
chỉ có khả năng giải quyết các bài toán khả phân tuyến tính. Họ cố gắng cải
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 5
Báo cáo Đồ án môn Máy Học
tiến luật học và mạng để có thể vượt qua được hạn chế này nhưng họ đã
không thành công trong việc cải tiến luật học để có thể huấn luyện được các
mạng có cấu trúc phức tạp hơn.
- Do những kết quả của Minsky-Papert nên việc nghiên cứu về mạng Neural
gần như bị đình lại trong suốt một thập kỷ do nguyên nhân là không có được
các máy tính đủ mạnh để có thể thực nghiệm.
- Mặc dù vậy, cũng có một vài phát kiến quan trọng vào những năm 70. Năm
1972, Teuvo Kohonen và James Anderson độc lập nhau phát triển một loại
mạng mới có thể hoạt động như một bộ nhớ. Stephen Grossberg cũng rất
tích cực trong việc khảo sát các mạng tự tổ chức (Self organizing networks).
- Vào những năm 80, việc nghiên cứu mạng Neural phát triển rất mạnh mẽ
cùng với sự ra đời của máy tính. Có hai khái niệm mới liên quan đến sự hồi
sinh này, đó là:
o Việc sử dụng các phương pháp thống kê để giải thích hoạt động của một
lớp các mạng hồi quy (recurrent networks) có thể được dùng như bộ nhớ
liên hợp (associative memory) trong công trình của nhà vật lý học Johh
Hopfield.
o Sự ra đời của thuật toán lan truyền ngược (back-propagation) để luyện các
mạng nhiều lớp được một vài nhà nghiên cứu độc lập tìm ra như: David
Rumelhart, James McCelland Đó cũng là câu trả lời cho Minsky-Papert.
1.2. Thành phần cấu thành mạng neural
Bộ não con người chứa khoảng 1011 các phần tử liên kết chặt chẽ với nhau
(khoảng 104 liên kết đối với mỗi phần tử) gọi là các Neural. Dưới con mắt của

- Tập các đơn vị xử lý.
- Trạng thái kích hoạt hay là đầu ra của đơn vị xử lý.
- Liên kết giữa các đơn vị. Xét tổng quát, mỗi liên kết được định nghĩa bởi một
trọng số wjk cho ta biết hiệu ứng mà tín hiệu của đơn vị j có trên đơn vị k.
- Một luật lan truyền quyết định cách tính tín hiệu ra của từng đơn vị từ đầu
vào của nó;
- Một hàm kích hoạt, hay hàm chuyển (activation function, transfer function),
xác định mức độ kích hoạt khác dựa trên mức độ kích hoạt hiện tại;
- Một đơn vị điều chỉnh (độ lệch) (bias, offset) của mỗi đơn vị;
- Phương pháp thu thập thông tin (luật học - learning rule);
- Môi trường hệ thống có thể hoạt động.
1.3. Đơn vị xử lý
Một đơn vị xử lý (hình vẽ), cũng được gọi là một Neural hay một nút (node),
thực hiện một công việc rất đơn giản: nó nhận tín hiệu vào từ các đơn vị phía trước
hay một nguồn bên ngoài và sử dụng chúng để tính tín hiệu ra sẽ được lan truyền
sang các đơn vị khác.
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 7
Báo cáo Đồ án môn Máy Học
Hình 1.1. Đơn vị xử lý (Processing unit)
trong đó:
xi : các đầu vào
wji : các trọng số tương ứng với các đầu vào
θj : độ lệch (bias)
aj : đầu vào mạng (net-input)
zj : đầu ra của Neural
g(x): hàm chuyển (hàm kích hoạt).
Trong một mạng Neural có ba kiểu đơn vị:
Các đơn vị đầu vào (Input units), nhận tín hiệu từ bên ngoài.
Các đơn vị đầu ra (Output units), gửi dữ liệu ra bên ngoài.

độ hợp tác, phân tích đường tín dụng, chương trình thương mại qua giấy tờ, phân
tích tài chính liên doanh, dự báo tỷ giá tiền tệ.
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 9
Báo cáo Đồ án môn Máy Học
CHƯƠNG II. PHƯƠNG THỨC HOẠT ĐỘNG CỦA MẠNG NEURAL.
2.1. Mạng neural sinh học
Trong bộ não con người có vô số các neural, liên kết lại với nhau tạo thành mạng
neural.
Mỗi một neural bao gồm 4 thành phần: Dendrites, soma, axon, và synapses.
Dendrites: là phần nhận tín hiệu đầu vào.
Soma: là hạt nhân.
Axon: là phần dẫn ra tín hiệu xử lý.
Synapses: là đường tín hiệu điện hóa giao tiếp giữa các Neural.
Kiến trúc cơ sở này của bộ não con người có một vài đặc tính chung. Một cách
tổng quát, thì một Neural sinh học nhận đầu vào từ các nguồn khác nhau, kết hợp
chúng tại với nhau, thực thi tổ hợp phi tuyến chúng để cho ra kết quả cuối cùng ở
đầu ra. Hình 2 chỉ ra mối quan hệ giữa bốn phần tử của một Neural sinh học.
Hình 2.1. Mô hình mạng Neural sinh học
Một Neural sinh học chỉ có một số chức năng cơ bản như vậy, ta nhận thấy khả
năng xử lý thông tin của nó là rất yếu. Để có được khả năng xử lý thông tin hoàn
hảo như bộ não con người, thì các Neural phải kết hợp và trao đổi thông tin với
nhau. Ta hình dung sơ đồ liên kết, và trao đổi thông tin giữa hai Neural như hình 3
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 10
Báo cáo Đồ án môn Máy Học
Hình 2.2. Sự liên kết các Neural sinh học
2.2. Mô hình mạng neural nhân tạo
Mạng nơ ron nhân tạo là một mô phỏng xử lý thông tin, được nghiên cứu ra từ
hệ thống thần kinh của sinh vật, giống như bộ não để xử lý thông tin. Nó bao gồm

θ
−=

j
n
j
iji
xwnet

=
=
1
Trong đó: x
1
, x
2
,…,x
m
là các tín hiệu đầu vào, còn w
i1
, w
i2
,…,w
im
là các trọng số
kết nối của Neural thứ i, net
i
là hàm tổng, f là hàm truyền,
i
θ


==
01
01
)sgn(
xkhi
xkhi
xy
(1.7)
Hàm bậc thang





<
≤≤
>
==
00
10
11
)sgn(
xkhi
xkhix
xkhi
xy
(1.8)
Hàm ngưỡng đơn cực
x

Khi liên kết các đầu vào/ra của nhiều Neural với nhau, ta thu được một mạng
Neural, việc ghép nối các Neural trong mạng với nhau có thể là theo một nguyên
tắc bất kỳ. Vì mạng Neural là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân
biệt các loại Neural khác nhau, các Neural có đầu vào nhận thông tin từ môi trường
bên ngoài khác với các Neural có đầu vào được nối với các Neural khác trong
mạng, chúng được phân biệt với nhau qua vector hàm trọng số ở đầu vào W.
Nguyên lý cấu tạo của mạng Neural bao gồm nhiều lớp, mỗi lớp bao gồm nhiều
Neural có cùng chức năng trong mạng. Hình1.5 là mô hình hoạt động của một
mạng Neural 3 lớp với 8 phần tử Neural. Mạng có ba đầu vào là x
1
, x
2
, x
3
và hai
đầu ra y
1
, y
2
. Các tín hiệu đầu vào được đưa đến 3 Neural đầu vào, 3 Neural này
làm thành lớp đầu vào của mạng. Các Neural trong lớp này được gọi là Neural đầu
vào. Đầu ra của các Neural này được đưa đến đầu vào của 3 Neural tiếp theo, 3
Neural này không trực tiếp tiếp xúc với môi trường bên ngoài mà làm thành lớp ẩn,
hay còn gọi là lớp trung gian. Các Neural trong lớp này có tên là Neural nội hay
Neural ẩn. Đầu ra của các Neural này được đưa đến 2 Neural đưa tín hiệu ra môi
trường bên ngoài. Các Neural trong lớp đầu ra này được gọi là Neural đầu ra.
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 14
Báo cáo Đồ án môn Máy Học
Hình 2.5. Mô hình mạng Neural ba lớp

học, và cũng có thể không hình thành trong quá trình học.
Hình 2.5 là một số liên kết đặc thù của mạng Neural. Neural được vẽ là các
vòng tròn xem như một tế bào thần kinh, chúng có các mối liên hệ đến các
Neural khác nhờ các trọng số liên kết. Tập hợp các trọng số liên kết này sẽ lập
thành các ma trận trọng số tương ứng.
2.4. Phân loại
2.4.1. Mạng dẫn tiến một lớp
Đây là cấu trúc mạng neural đơn giản nhất. Mạng neural này chỉ gồm một lớp
xuất, không có lớp ấn.
Mỗi một Neural có thể phối hợp với các Neural khác tạo thành một lớp các trọng
số. Mạng một lớp truyền thẳng như hình 2.7.a. Một lớp Neural là một nhóm các
Neural mà chúng đều có cùng trọng số, nhận cùng một tín hiệu đầu vào đồng thời.
Trong ma trận trọng số, các hàng là thể hiện Neural, hàng thứ j có thể đặt nhãn như
một vector w
j
của Neural thứ j gồm m trọng số w
ji
. Các trọng số trong cùng một cột
thứ j (j=1,2, ,n) đồng thời cùng nhận một tín hiệu đầu vào x
j
.
w
j
= [w
j1
, w
j2
, , w
jm
]

tín hiệu.
Lớp ẩn là lớp Neural sau lớp vào, chúng không trực tiếp liên hệ với thế giới bên
ngoài như các lớp Neural vào/ra.
Lớp ra là lớp Neural tạo ra các tín hiệu ra cuối cùng.
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 17
Báo cáo Đồ án môn Máy Học
Hình 2.7. Mạng neural nhiều lớp.
2.4.3. Mạng neural hồi quy
Mạng Neural phản hồi có thể thực hiện đóng vòng được gọi là mạng Neural hồi
quy như hình 1.6d. Mạng Neural hồi quy có trọng số liên kết đối xứng như mạng
Hopfield, mạng luôn hội tụ về trạng thái ổn định (Hình 1.6.b). Mạng BAM thuộc
nhóm mạng Neural hồi quy, gồm 2 lớp liên kết 2 chiều, không được gắn với tín
hiệu vào/ra. Nghiên cứu mạng Neural hồi quy mà có trọng số liên kết không đối
xứng, thì sẽ gặp phải vấn đề phức tạp nhiều hơn so với mạng truyền thẳng và mạng
hồi quy có trọng số liên kết đối xứng.
2.4.4. Mạng neural Hopfield
Mạng Hopfield là mạng phản hồi một lớp, được chỉ ra trong hình 7.b. Cấu trúc
chi tiết của nó được thể hiện trong hình 8. Khi hoạt động với tín hiệu rời rạc, nó
được gọi là mạng Hopfield rời rạc, và cấu trúc của nó cũng được gọi là mạng hồi
quy.
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 18
Báo cáo Đồ án môn Máy Học
Hình 2.8. Cấu trúc mạng Hopfield
Như mạng Hopfield đã vẽ ở trên, ta thấy nút có một đầu vào bên ngoài x
j

một giá trị ngưỡng
j

−+=


=
+
n
ij
j
i
k
jij
k
i
xywy
θ

i = 1,2, ,n (1.11)
Luật cập nhật trên được tính toán trong cách thức không đồng bộ. Điều này có
nghĩa là, với một thời gian cho trước, chỉ có một nút mạng cập nhật được đầu ra
của nó. Sự cập nhật tiếp theo trên một nút sẽ sử dụng chính những đầu ra đã được
cập nhật. Nói cách khác, dưới hình thức hoạt động không đồng bộ của mạng, mỗi
đầu ra được cập nhật độc lập.
Có sự khác biệt giữa luật cập nhật đồng bộ và luật cập nhật không đồng bộ.
Với luật cập nhật không đồng bộ thì sẽ chỉ có một trạng thái cân bằng của hệ (với
giá trị đầu đã được xác định trước). Trong khi đó, với luật cập nhật đồng bộ thì có
thể làm mạng hội tụ ở mỗi điểm cố định hoặc một vòng giới hạn.
2.4.5. Mạng BAM
Bao gồm hai lớp và được xem như là trường hợp mở rộng của mạng
Hopfield. Ở đây ta chỉ xét mạng rời rạc, vì nó đơn giản và dễ hiểu.
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng





=

=
n
i
iijj
ywax
1
; với j = 1,2, ,m (1.13)
Sau đó x’ nuôi trở lại đầu vào của lớp y và tạo ra hàm y’’ theo phương trình
(1.12). Quá trình này cứ tiếp tục, bao gồm các bước như sau:
y
(1)
= a(wx
(0)
) (truyền thẳng lần thứ nhất)
x
(2)
= a(w
(T)
y
(1)
) (truyền ngược lần thứ nhất)
y
(3)
= a(wx

Một số nghiên cứu ứng dụng ANN trong quản lý xây dựng
1. Florence Yean Yng (Singapore) và MinLiu (USA): Đã nghiên cứu “ứng
dụng Neural network để dự báo kế hoạch thực hiện xây dựng dự án ở Singapore”.
Theo nghiên cứu này tác giả đã thực hiện trên 11 phép đo, 65 nhân tố tác động đến
sự thành công của 33 dự án trước đây. Chỉ ra 6 phép đo có thể dự báo sự thành
công của kế hoạch thực hiện dự án với mức độ chính xác hợp lý: tầm quan trọng
dự án, tốc độ xây dựng, tốc độ giải quyết vấn đề khó khăn, sự luân phiên thay thế
công nhân nghỉ việc, chất lượng của hệ thống và thiết bị.
2. Về lĩnh vực dự toán chi phí cho một dự án: Tarek Hegazy và Amr Ayed đã
ứng dụng ANN để dự toán chi phí cho một dự án đường cao tốc.
3. Hoijat Adeli và Mingyang Wu dự toán giá bê tông cốt thép vỉa hè cho dự án
xây dựng đường.
4. Xishi Huang, Danny Ho, Jing Ren, Luiz F.Caprest đã ứng dụng Neural
Fuzzy phát triển mô hình COMOCO, trên cơ sở dữ liệu kinh nghiệm của các dự án
trước đây, mô hình này cho phép ước lượng được chi phí của các dự án khác lớn
hơn và được ứng dụng trong ước lượng chi phí của dự án công nghiệp.
5. Jason Portas và Simaan AbouRizk ứng dụng mô hình Neural network để
đánh giá khả năng sản xuất xây dựng.
6. Irem Dikmen và M. Talat Birgonul ứng dụng ANN để đánh giá thị trường
quốc tế trong quyết định thực hiện dự án, dựa trên các nhân tố của một dự án quốc
tế gồm: nguồn tiền, khối thị trường, sự thành công của nền kinh tế, kiểu hợp đồng,
hệ số rủi ro.
7. Hashem Al- Tabtabai ứng dụng ANN để xây dựng mô hình phân tích kinh
nghiệm và hệ thống dự báp cho dự án xây dựng. Trên cơ sở dữ liệu các dự án trước
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 21
Báo cáo Đồ án môn Máy Học
đây về: tiến độ thực hiện của nhà thầu, dòng ngân lưu, vật liệu và thiết bị, thời tiết
và môi trường, phần trăm công việc hoàn thành, chất lượng, giá cả vật tư, thuế, bảo
hiểm để dự báo phần trăm thay đổi của kế hoạch, phần trăm thay đổi của chất

o Tập dữ liệu là file excel định dạng *.csv
o Các tác nhân, tác động và ảnh hưởng đến hoạt động của mạng Neural.
• Đầu ra : Mô phỏng hoạt động của mạng Neural đi qua các điểm đầu vào.
3.4. Kết quả thực nghiệm
• Biểu diễn tọa độ các điểm đầu vào (x, y) trên giao diện.
• Xử lý thông tin, gắn các tác nhân tác động lên hoạt động của mạng Neural
• Mô phỏng hình vẽ đường đi hoạt động của mạng Neural qua các điểm đầu
vào
• Hiển thị số lần lặp hiện tại trong quá trình hoạt động của mạng Neural do
các tác nhân tác động lên.
KẾT LUẬN
Sinh viên thực hiện: Nguyễn Trọng Thắng, Bùi Thanh Tân, Hoàng Tùng
Giảng viên hướng dẫn: Th.S Nguyễn Thị Thu Hà Page 24
Báo cáo Đồ án môn Máy Học
Mặc dù, đã cố gắng phân tích tìm hiểu đề tài nhưng do kiến thức còn hạn hẹp,
không tránh khỏi những thiếu xót.
Chúng em rất mong nhận được nhiều ý kiến đóng góp, góp ý về đề tài của thầy
cô và các bạn để chúng em rút ra được kinh nghiệm cũng như những kiến thức còn
chưa rõ, để cách tiếp cận có thể tốt hơn và để hoàn thiện hơn về mạng nơ ron.
Bài tập lớn của nhóm em tuy đã hoàn thành, và cũng đã đạt được những thành
công ban đầu:
Tìm hiểu sâu và rõ hơn về các khái niệm Neural và ứng dụng
Tiếp xúc và xử dụng những thuật đa dạng.
Cơ hội thực hành thực tế, xây dựng được chương trình cụ thể.
Tuy nhiên, vẫn còn một số hạn chế:
Mức độ tìm hiểu còn sơ sài, đơn giản, chưa mang đến tính hiệu quả cao để giải
quyết bài toán triệt để.
Chương trình xây dựng chưa có tính thực tế cao, chưa đáp ứng được các yêu cầu
trong thực tế.
Đề tài như lần thử sức với chúng em để có thêm những kinh nghiệm quý báu


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status