Tải bản đầy đủ (.docx) (31 trang)

Tìm hiểu về mạng nơron và ứng dụng bài toán thời tiết

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 (286.67 KB, 31 trang )

Bài tập lớn – Trí tuệ nhân tạo nâng cao

MỤC LỤC
LỜI NÓI ĐẦU
Dự báo thời tiết ra đời từ xa xưa, từ khi có sự xuất hiện của con người và càng ngày càng
gắn bó với cuộc sống của chúng ta. Từ thủa ban đầu, con người đã có thể “dự đoán ” trước
được các hiện tượng tự nhiên sẽ xảy ra trong khoảng thời gian gần. Dần dần kinh nghiệm
quan sát được tích lũy, cộng thêm những tư duy sâu xa đã giúp họ có được các dự báo chính
xác hơn cho các hiện tượng khí tượng trong tương lai. Những phân tích, kinh nghiệm tích
lũy dần được đúc kết thành các bài toán dự báo, cho phép tính toán khá chính xác hiện tượng
thời tiết sắp xảy ra.
Hiện nay trên thế giới các hệ thống dự báo thời tiết nghiệp vụ được thực hiện bởi nhiều
phương pháp khác nhau như: phương pháp Synôp, phương pháp thống kê, phương pháp số
trị, … . Trong mỗi phương pháp đó lại có rất nhiều phương pháp và các mô hình dự báo cụ
thể. Mỗi phương pháp đều có những ưu điểm và nhược điểm riêng. Việc ứng dụng phương
pháp nào là tùy thuộc vào tài nguyên của hệ thống, trình độ của người dự báo, yêu cầu và
mục đích của người xây dựng hệ thống,...
Ứng dụng mạng nơron nhân tạo là một trong những phương pháp thống kê. Đó là một
phương pháp mới, có nhiều ưu thế vượt trội trong việc giải quyết các vấn đề phi tuyến. Các
phương pháp thống kê nói chung và ứng dụng mạng nơron nhân tạo nói riêng mang tính
khách quan và đáp ứng được nhiều yêu cầu của thực tiễn mà dự báo bằng các phương pháp
khác không đáp ứng được.
Khái niệm mạng nơron được bắt đầu vào cuối những năm 1890 khi người ta cố gắng mô
tả hoạt động của trí tuệ con người. Từ đó, lý thuyết mạng nơron được phát triển để áp dụng
trong nhiều lĩnh vực trong đó có dự báo. Trên thế giới, mạng nơron đã và đang được áp dụng
trong nhiều lĩnh vực trong đó có khí tượng thủy văn từ nhiều năm trước và đã thu được
nhiều thành tựu.
Với những ưu thế vượt trội của việc ứng dụng mạng nơron nhân tạo như tính mềm dẻo,
khả năng dung thứ lỗi cao, giải quyết được các vấn đề phi tuyến thích hợp trong việc xử lý
dữ liệu có tính biến động lớn,… Đó là những lý do để nhóm em chọn đề tài: Mạng nơron
nhân tạo và ứng dụng trong dự báo thời tiết.


Do thời gian nghiên cứu chưa nhiều và hiểu biết còn hạn chế dẫn đến việc trình bày các
vấn đề không tránh khỏi việc thiếu sót và chưa chính xác. Nhóm em rất mong nhận được
những ý kiến đóng góp của Thầy cũng như của các bạn để nhóm em có thể hoàn thiện hơn
đề tài của mình.
Nhóm thực hiện đề tài xin chân thành cảm ơn sự giúp đỡ của các thầy trong khoa, các
bạn cùng lớp và đặc biệt là sự hướng dẫn, chỉ bảo tận tình của Thầy – Tiến Sĩ Nguyễn Mạnh
Cường đã giúp em trong quá trình thực hiện đề tài này.
Xin chân thành cảm ơn!
1


Bài tập lớn – Trí tuệ nhân tạo nâng cao

CHƯƠNG I - BÀI TOÁN DỰ BÁO THỜI TIẾT
1. Giới thiệu bài toán dự báo thời tiết
Dự báo là một phát biểu về tương lai. Mỗi phát biểu như vậy có một cơ sở chắc chắn
nhất định. Các dự báo được xây dựng bằng nhiều phương pháp, kiểm chứng qua biểu thức
đánh giá. Vì vậy, dự báo là một lĩnh vực có tiềm năng rộng lớn.
Để phòng tránh và giảm nhẹ những tác hại do thời tiết gây ra, việc dự báo thời tiết có ý
nghĩa rất quan trọng. Nhiều khi chỉ cần dự báo trước một vài tiếng đồng hồ cũng đủ để sơ
tán người và của ra khỏi vùng nguy hiểm, cứu được nhiều sinh mạng và tài sản chính vì vậy,
đã từ lâu con người đã quan tâm đến việc theo dõi và tìm cách dự báo thời tiết.
Dự báo thời tiết là một công việc hết sức phức tạp. Mặc dù khoa học dự báo thời tiết ra
đời đã trên 100 năm và hiện nay hàng trăm ngàn nhà khoa học ở nhiều nước đang nỗ lực
nghiên cứu để tìm cách nâng cao chất lượng công tác dự báo thời tiết nhưng cho đến nay
người ta vẫn chưa khẳng định được chính xác thời tiết của ngày hôm sau sẽ ra sao.
Dự báo thời tiết cần có một hệ thống thu nhập và trao đổi số liệu trên toàn cầu cùng với
các công cụ để xử lý làm căn cứ cho việc dự báo. Hệ thống quan trắc là cơ sở đầu tiên của hệ
thống dự báo thời tiết. Bên cạnh đó, hệ thống thông tin liên lạc có vai trò cực kỳ quan trọng.
Khâu cuối cùng trong hệ thống dự báo thời tiết là chỉnh lý các số liệu đã thu nhập và sử dụng

các phương pháp khác nhau đưa ra kết quả dự báo.
Như vậy, các phương pháp dự báo thời tiết được đề cập đến trong đề tài chỉ những mắt
xích cuối cùng trong hệ thống dự báo thời tiết.
2. Một số phương pháp với bài toán dự báo thời tiết
Dự báo thời tiết là một khoa học và là một nghệ thuật. Rất nhiều phương pháp
đã được ứng dụng cho dự báo thời tiết. Phương pháp cụ thể nàp được áp dụng phụ
thuộc vào một số các yếu tố như số lượng thông tin được sử dụng, mức độ phức tạp
mà ứng dụng dự báo thể hiện và kinh nghiệm của người dự báo,…
2.1.
Phương pháp quán tính
Là phương pháp đơn giản nhất trong dự báo thời tiết. Phương pháp này giả thiết
rằng thời tiết ngày mai cũng giống thời tiết hôm nay, nghĩa là các điều kiện tại thời
điểm được dự báo sẽ không thay đổi. Phương pháp quán tính làm việc tốt khi các
mẫu thời tiết thay đổi rất ít và các đặc tính trên bản đồ thời tiết thay đổi rất chậm.
Nếu điều kiện thời tiết thay đổi đáng kể từng ngày thì phương pháp này không thể
sử dụng được.
2.2.
Phương pháp dự báo theo xu hướng
Một kỹ thuật dự báo thời tiết quan trọng khác là thông qua bản đồ thời tiết.
Phương pháp xu hướng yêu cầu xác định hướng, tốc độ di chuyển của các khối khí,
hệ thống áp suất và các vùng mây, lượng mưa. Dựa vào các thông tin trên mà người
dự báo sẽ dự báo các đặc tính thời tiết trong tương lai. Các khác biệt trong miền, sự
tăng tốc hay giảm tốc có thể của hệ thống bão, các tác động cục bộ như địa hình,
2


Bài tập lớn – Trí tuệ nhân tạo nâng cao

khối nước và độ nóng của đảo ảnh hưởng đến dự báo, do đó các yếu tố trên cũng
được xem xét.

2.3.
Phương pháp khí hậu học
Phương pháp khí hậu học cũng là một phương pháp đơn giản khác để dự báo
thời tiết. Điều đầu tiên được biết đến về dự báo của một vùng là khí hậu của nó
(nhiệt độ cao, thấp, trung bình hoặc lượng mưa). Phương pháp này cần đến thống kê
thời tiết trung bình được tính qua nhiều năm để thực hiện dự báo. Khí hậu học hiếm
khi là một dự báo đúng cho một ngày đã cho, vì dự báo có thể biến đổi cao hoặc
thấp so với trung bình. Phương pháp khí hậu học chỉ làm việc được tốt khi mẫu thời
tiết tương tự nahu ở cùng thời điểm trong năm. Nếu mẫu thời tiết quá bất thường
với một thời điểm đã cho trong năm thì phương pháp này thất bại.
2.4.
Phương pháp tương tự
Phương pháp tương tự là phương pháp hơi phức tạp hơn để tạo nên một dự báo.
Nó liên quan đến việc xác định kịch bản dự báo của một ngày và nhớ đến một ngày
trong quá khứ khi kịch bản thời tiết là khá tương tự. Người dự báo có thể dự báo
rằng thời tiết trong dự báo rất giống như trong quá khứ. Ví dụ, hôm nay rất ấm
nhưng có khối khí lạnh đang đến gần khu vực này. Ta đến điều kiện thời tiết tương
tự một tuần trước đó, cũng một ngày ấm nhưng có khối khí lạnh đang đến gần. Vào
ngày đó cũng nhớ có sấm sét, mưa to vào buổi chiều khi khối khí lạnh tràn vào khu
vực. Do đó, sử dụng phương pháp tương tự, ta có thể dự báo rằng khối khí lạnh
cũng sẽ tạo ra sấm sét và mưa to vào buổi chiều. Phương pháp tương tự là khó sử
dụng vì không thể tìm được sự tương tự hoàn toàn. Hiện tượng thời tiết đa dạng
hiếm khi lặp lại ở cùng một địa phương nơi mà chúng đã từng xảy ra. Tuy nhiên qua
thời gian dài, khi nhiều dữ liệu thời tiết được thu thập thì cơ hội tìm được một sự
tương tự tốt cho tình huống thời tiết hiện tại có thể khá hơn và dự báo tương tự có
thể được cải thiện.
2.5.
Phương pháp dự báo sử dụng văn bản
Văn bản đưa ra một cách tổng quan về các thông tin thời tiết quan trọng trong
24 giờ đã qua cũng như là các biểu thị quan trọng của thời tiết trong 24 giờ tới.

Tổng kết dữ liệu ngày trước của thành phố để biết lượng mưa cũng như nhiệt độ cao
thấp. Sau đó, đồ thị được vẽ trên bản đồ trong một số giờ để tìm xu hướng chuyển
động của các khối khí, hệ thống thời tiết. Những bản đồ này được phân tích và thời
tiết trong tương lai sẽ được dự báo. Dự báo sử dụng văn bản là khó thực hiện dự báo
chỉ sử dụng duy nhất thông tin văn bản về thời tiết. Hầu hết các phương pháp trình
bày ở trên được sử dụng từ vài thập kỷ trước khi máy tính chưa phát triển đủ mạnh
để thực hiện các dự báo số trị. Ngày nay, chúng được sử dụng để đánh giá mức độ
hiệu quả của các dự báo thời tiết: so sánh với dự báo quán tính hoặc với chuẩn khí
hậu. Sau đây xin giới thiệu một số phương pháp dự báo thời tiết nghiệp vụ (những
phương pháp mới, được ứng dụng trong những hệ thống lớn, chuyên nghiệp).
2.6.
Phương pháp Synôp
Đây là phương pháp dự báo thời tiết cổ điển được sử dụng chủ yếu trong hơn
100 năm qua và cho đến nay vẫn được các nhà khí tượng ở nhiều nước sử dụng,
trong đó có Việt Nam, dựa trên việc thiết lập các bản đồ thời tiết. Việc dự báo phụ
3


Bài tập lớn – Trí tuệ nhân tạo nâng cao

thuộc rất lớn vào kinh nghiệm phân tích và đánh giá chủ quan của người làm dự báo
bên cạnh các thông tin bổ trợ từ các sản phẩm của mô hình dự báo số và phân tích
ảnh mây vệ tinh,… Dự báo theo phương pháp này cho kết quả tương đối tốt trong
phần lớn các trường hợp, riêng với mưa, sản phẩm dự báo mang tính định tính như
mưa vừa, mưa to, mưa rất to,…mà không có con số định lượng cụ thể. Hiện nay bản
tin dự báo thời tiết đưa trên đài truyền hình Việt Nam là kết quả của phương pháp
này. Dự báo theo phương pháp này đòi hỏi người dự báo có kiến thức về kỹ thuật
dự báo còn phải có những kinh nghiệm và hiểu biết về khí hậu thời tiết ở địa
phương. Đây cũng là một hạn chế của phương pháp Synôp, cũng do đặc điểm này
mà dẫn đến những hạn chế khác như không thể dự báo trước nhiều ngày, không thể

dự báo cho nhiều vùng khác nhau,…
2.7.
Phương pháp tổng hợp
Dự báo tổng hợp là một hướng mới đang được phát triển mạnh tại các trung tâm
dự báo khí tượng nghiệp vụ trên thế giới. Với việc coi khí quyển được cảm nhận và
mô phỏng (bởi quan trắc và các mô hình số trị) là một hệ thống tập hợp thống kê
thay vì là một hệ xác định, đặc trưng thống kê của tập hợp các dự báo khác nhau sẽ
cho kết quả tin cậy hơn của từng dự báo riêng biệt. Nghiên cứu ứng dụng phương
pháp dự báo tổng hợp ở Việt Nam đã nhận được một số kết quả ban đầu rất khả
quan tại trung tâm Khí tượng Thủy văn quốc gia.
2.8.
Phương pháp số trị
Phương pháp dự báo số trị - dự báo bằng mô hình thủy động lực học hiện đại có
độ phân giải cao áp dụng cho từng khu vực đã được sử dụng ở nhiều quốc gia trên
thế giới, đặc biệt là các nước phát triển. Phương pháp này sử dụng sức mạnh của
máy tính điện tử, bằng rất nhiều cách khác nhau để giải hệ phương trình mô tả khí
quyển để suy ra các biến khí quyển như áp suất, nhiệt độ, vận tốc gió,… Chất lượng
dự báo mưa lớn cao hơn hẳn các phương pháp trên và sản phẩm số của mô hình dự
báo có thể đảm bảo những yêu cầu của mô hình dự báo thủy văn đối với lũ lụt, lũ
quét. Một trong những nhân tố quyết định gây nên sự hình thành và phát triển mưa
lớn trong các hiện tượng thời tiết nguy hiểm như xoáy thuận nhiệt đới,… là đối lưu
mây tích. Các quá trình đối lưu này đóng vai trò quan trọng trong chu trình vận
chuyển năng lượng của khí quyển và do đó phân bố lại sự đốt nóng không đồng đều
trên bề mặt trái đất. Ngoài phụ thuộc vào độ hội tụ ẩm mực thấp, đối lưu mạnh còn
phụ thuộc vào tính bất ổn định của khí quyển,…Các quá trình quy mô vừa này chỉ
có thể tính được bằng các mô hình số trị. Với các phương pháp số trị, hiên nay
những trung tâm khí tượng lớn trên thế giới có thể đưa ra những dự báo thời tiết
trên phạm vi toàn cầu trước hàng tuần mà phương pháp Synôp cổ điển không thể
nào thực hiện được.
2.9.

Phương pháp thống kê
Phương pháp thống kê lấy số liệu quá khứ làm đầu vào. Phương pháp này có ưu
điểm mang tính chất khách quan, đơn giản và dễ xây dựng mô hình cũng như sử
dụng trong nghiệp vụ. Độ chính xác của mô hình phụ thuộc rất nhiều vào việc lựa
chọn các tham số dự báo và quá trình xử lý số liệu. Bên cạnh đó, do đặc điểm cơ
4


Bài tập lớn – Trí tuệ nhân tạo nâng cao

bản của phương pháp thống kê là coi những quá trình xảy ra ở hiện tại và tương lai
đều tuân theo các quy luật thu được từ số liệu trong quá khứ, dẫn tới kết quả của mô
hình dự báo phụ thuộc vào độ dài tập mẫu. Chuỗi số liệu tập mẫu quá ngắn sẽ chứa
trong nó những quy luật mà hiện tại không có, còn chuỗi số liệu quá dài có thể gây
mất ổn định hệ thống.

5


Bài tập lớn – Trí tuệ nhân tạo nâng cao

CHƯƠNG II - TỔNG QUAN LÝ THUYẾT MẠNG NƠ RON
NHÂN TẠO
1. Giới thiệu nơ ron và mạng nơ ron nhân tạo
1.1.
Giới thiệu
Nghiên cứu bộ não con người, cụ thể là tế bào thần kinh (nơron) là ước muốn từ
lâu của nhân loại. Từ đó, các nhà khoa học đã không ngừng nghiên cứu và tìm hiểu
về mạng nơron. Lý thuyết về mạng nơron đã hình thành và đang phát triển, đặc biệt
là nghiên cứu các ứng dụng của chúng. Cơ sở xây dựng mạng nơron nhân tạo chính

là cố gắng mô phỏng lại các quá trình diễn ra trong các nơron sinh vật. Quá trình
nghiên cứu và phát triển mạng nơron nhân tạo có thể được chia thành 4 giai đoạn
như sau: - Giai đoạn một: Giai đoạn một có thể tính từ nghiên cứu của William
(1980) về tâm lý học với sự liên kết các nơron thần kinh. Từ năm 1940 Mc.Colloch
và Pitts đã cho biết: nơron có thể được mô hình hóa như thiết bị ngưỡng (giới hạn)
để thực hiện các phép tính logic. Cũng thời gian đó Wiener đã xét các mối liên hệ
giữa các nguyên lý phản hồi và chức năng bộ não. - Giai đoạn hai: Giai đoạn hai
vào những năm 1960, gần như đồng thời một số mô hình nơron hoàn hảo hơn đã
được đưa ra, đó là mô hình Perceptron của Rosenblatt hay Adaline của Widrow.
Trong đó mô hình Perceptron rất được quan tâm vì nguyên lý đơn giản, nhưng nó
cũng có hạn chế vì không dùng được cho các hàm logic phức tạp. Còn Adaline là
mô hình tuyến tính, tự chỉnh, được dùng rộng rãi trong điều khiển thích nghi, tách
nhiễu, mô hình này vẫn đang được phát triển và ứng dụng cho đến ngày nay. - Giai
đoạn ba: Giai đoạn ba có thể được tính là khoảng đầu của những năm 80 của thế kỷ
20. Những đóng góp lớn cho mạng nơron trong giai đoạn này phải kể đến
Grossberg, Kohonen và Hopfield. Đóng góp lớn của Hopfield là hai mạng phản hồi:
mạng rời rạc năm 1983 và mạng liên tục năm 1984. Đặc biệt, ông đã dự kiến nhiều
khả năng tính toán lớn của mạng nơron mà một nơron không có khả năng đó. Cảm
nhận của Hopfield đã được Rumelhart, Hinton đề xuất thuật toán truyền ngược sai
số nổi tiếng để huấn luyện mạng nơron nhiều lớp nhằm giải quyết nhiều lớp bài
toán phức tạp. - Giai đoạn bốn: Giai đoạn bốn là từ năm 1987 đến nay. Hàng năm
thế giới đều mở hộ nghị toàn cầu chuyên ngành nơron. Các công trình nghiên cứu
để hoàn thiện thêm về lý thuyết mạng nơron như: mở rộng hoàn thiện các lớp mạng,
phân tích tính ổn định của mạng, kết hợp lý thuyết mạng nơron với các lý thuyết
khác. Hàng loạt các lĩnh vực khác như: kỹ thuật tính, tối ưu, sinh học, y học, thống
kê, giao thông, hóa học, truyền thông, khí tượng, …đã đóng góp nhiều công trình
nghiên cứu, ứng dụng mạng nơron vào lĩnh vực của mình và đem lại những kết quả
đáng khích lệ. Ở trong nước, mạng nơron được nghiên cứu từ những năm 1980, đi
vào ứng dụng trong các lĩnh vực tin học, viễn thông, đo lường, điều khiển, khí
tượng, … Một số chip nơron đã được dùng trong kỹ thuật lọc và một số ứng dụng

khác. Trong ngành khí tượng thủy văn, mạng nơron đã và đang được áp dụng cho
dự báo lũ, dự báo trường nhiệt độ, dự báo bức xạ mặt trời.
6


Bài tập lớn – Trí tuệ nhân tạo nâng cao

1.2.
Nơ ron sinh vật
Nơron sinh vật có nhiều dạng khác nhau như dạng hình tháp, dạng tổ ong, dạng
dễ cây. Tuy khác nhau về hình dạng, nhưng chúng có cấu trúc và nguyên lý hoạt
động chung. Một tế bào nơron gồm bốn phần cơ bản như hình 2.1 dưới đây. Các
nhánh và rễ: Các nhánh và rễ là các bộ phận nhận thông tin, các đầu nhận và các
đầu ra của các nơron khác bám vào rễ hoặc nhánh của một nơron. Khi các đầu vào
từ ngoài này có sự chênh lệch về nồng độ K+, Na+ hay Cl- so với nồng độ bên
trong của nó thì xảy ra hiện tượng thấm từ ngoài vào trong thông qua một cơ chế
màng thấm đặc biệt. Hiện tượng thẩm thấu như vậy tạo nên một cơ chế truyền đạt
thông tin với hàng nàn hàng vạn nối vào trên một nơron sinh vật, ứng với hàng
nghìn hàng vạn liên kết khác nhau, mức độ thẩm thấu đặc trưng bởi cơ chế màng
tượng trưng bằng một tỷ lệ. Tỷ lệ đó được gọi là tỷ trọng hay đơn giản gọi là trọng
số.

Thân thần kinh: Thân thần kinh chứa các nhân và cơ quan tổng hợp protein. Các ion vào
được tổng hợp và biến đổi. Khi nồng độ các ion đạt đến một giá trị nhất định, xảy ra quá
trình phát xung (hay kích thích). Xung đó được phát ra ở đầu ra của nơron. Dây dẫn đầu ra
của nơron được gọi là dây thần kinh.
Dây thần kinh: Dây thần kinh là đầu ra. Đó là phương tiện truyền dẫn tín hiệu. Dây thần
kinh được cấu tạo gồm các đốt và có thể dài từ vài micro mét đến vài mét tùy từng kết cấu
cụ thể. Đầu ra này có thể truyền tín hiệu đến các nơron khác.
Khớp thần kinh: Khớp thần kinh là bộ phận tiếp xúc của đầu ra nơron với rễ, nhánh của

các nơron khác. Chúng có cấu trúc màng đặc biệt để tiếp nhận các tín hiệu khi có sự chênh
lệch về nồng độ ion giữa bên trong và bên ngoài. Nếu độ lệch về nồng độ càng lớn thì việc
truyền các ion càng nhiều và ngược lại. Mức độ thẩm thấu của các ion có thể coi là một đại
lượng thay đổi tùy thuộc vào nồng độ như một giá trị đo thay đổi được gọi là trọng số.
2. Mô hình mạng nơ ron nhân tạo
2.1.
Mô hình một nơ ron nhân tạo

7


Bài tập lớn – Trí tuệ nhân tạo nâng cao

Trên cơ sở mô hình nơron sinh vật tổng quát, người ta đề xuất mô hình nơron nhân tạo
gồm 2 thành phần chính: bộ tổng các liên kết đầu vào và bộ kích hoạt.

-1
W1

θ

W2

v(t)

y



.

.
.

f(.)

Wm

Hình 2.2: Mô hình nơron nhân tạo
Mô hình nơron nhân tạo
Để mô phỏng một nơron ta có thể coi nó như một hệ thống nhiều đầu vào và một đầu ra
(hình trên).
Bộ tổng: Bộ tổng hợp các liên kết đầu vào của một phần tử nơron có thể mô tả như sau:
m

v (t ) = ∑ w k xk ( t ) − θ
k =1

Trong đó:
v(t) là tổng tất cả đầu vào mô tả toàn bộ thế năng tác động ở thân nơron.
x(t) là các đầu vào ngoài; k = 1, 2,…, m; m là số lượng đầu vào tín hiệu vào từ các đầu
nhạy thần kinh hoặc từ các nơron khác đưa vào.
wk: Trọng số liên kết ngoài, là hệ số mô tả mức độ liên kết giữa các đầu vào ngoài tới
nơron hiện tại; k= 1, … m; m là số đầu vào.
θ: là hằng số, còn gọi là ngưỡng, xác định ngưỡng kích thích hay ức chế.
Tên hàm

Công thức tương ứng

Bước nhảy đơn vị


f(x)=

Hàm dấu (sgn)

f(x)=

Hàm đồng nhất

f(x)= x

8





Bài tập lớn – Trí tuệ nhân tạo nâng cao

Hàm tuyến tính bão hòa đối xứng

f(x)=

Hàm Sigmoid lưỡng cực

f ( x) =



2
−1

1 + e−λ x

Bảng 2.1: Một số hàm kích hoạt thường được sử dụng trong các mô hình nơron
Phần này sử dụng hàm quan hệ f(.) cho đầu ra y, để chặn tín hiệu ở đầu ra. Các hàm đầu
ra thông thường là các hàm có giới hạn ngưỡng phù hợp với đặc điểm đầu ra của nơron sinh
vật. Hàm dạng này thể hiện đặc điểm kích hoạt hay ức chế của một nơron.
m

y = f (u (t )) = f (∑ xi (t )w i − θ )
i =1

Với u(t)= v(t) và y(t) là đầu ra nơron mô tả tín hiệu đưa ra.
Hàm f(.) ở đây được chia thành hai nhóm: nhóm hàm bước nhảy và nhóm hàm liên tục.
Đặc điểm chung của các hàm này thường tiến tới một giá trị cố định với các giá trị được gán
[0, 1] hoặc [-1, 1]. Những dạng hàm kích hoạt hay dùng cung cấp ở bảng trên. Một số dạng
hàm khác cũng được sử dụng như: dạng hàm Gauss, hàm logarit, hàm mũ, hàm arctg.
2.2.

Cấu trúc mạng nơ ron nhân tạo

Có thể xây dựng cấu trúc mạng nơron dựa theo những yếu tố sau:



Số lớp có trong mạng và số nơron trong từng lớp.
Mạng một lớp là tập hợp các phần tử nơron mà mỗi nơron có đầu vào và đầu ra
của mạng cùng ở trên phần tử nơron đó. Nếu mạng nối các đầu ra của phần này với đầu vào
của phần tử kia gọi là mạng tự liên kết.

Mạng nhiều lớp gồm một lớp đầu vào và một lớp đầu ra riêng biệt. Các lớp nằm

giữa lớp vào và lớp đầu ra gọi là các lớp ẩn.

Đường truyền tín hiệu trong mạng

Mạng truyền thẳng là mạng hai hay nhiều lớp mà quá trình truyền tín hiệu từ đầu
này đến đầu kia theo một hướng.

9


Bài tập lớn – Trí tuệ nhân tạo nâng cao

Hình 2.3: Mạng nơron truyền thẳng nhiều lớp (Feed-forward neural network)

Mạng phản hồi là mạng trong đó một hay nhiều đầu ra của các phần tử lớp sau
truyền ngược tới đầu vào lớp trước.

Hình 2.4: Mạng hồi quy

Mạng tự tổ chức là mạng có khả năng sử dụng những kinh nghiệm quá khứ để
thích ứng với những biến đổi của môi trường (không dự báo trước). Loại mạng này thuộc
nhóm tự học, thích nghi không cần có tín hiệu chỉ đạo từ ngoài.
Trong mỗi lớp mạng lại có nhiều mạng với các tên gọi và các đặc trưng khác nhau. Một
số mô hình mạng nơron cơ bản được mô tả trong hình trên.
Như vậy, mạng nơron nhân tạo có cấu trúc khác nhau tùy theo số lớp, số nơron trong
mỗi lớp và cách tổ chức đường truyền tín hiệu trong mạng.
3. Các hình thức học của mạng nơ ron nhân tạo
Thuật toán học là phần trí tuệ thông minh của mạng nơron mà các công trình nghiên cứu
chiếm số lượng lớn trong mấy chục thập kỷ qua. Thuật toán học được chia làm 2 loại: Học
theo tham số và học theo cấu trúc.

3.1. Học theo tham số:
Tư tưởng của việc học theo tham số là thay đổi, cập nhật các trọng số liên kết. Hầu hết
các luật học tồn tại thuộc kiểu học theo tham số. Trong chương này, các kiến trúc mạng điển
hình đưa ra cũng thuộc dạng học theo tham số. Thông thường, thuật toán học theo tham số
được chia làm 3 loại chính: học có giám sát, học không giám sát và học củng cố.
10


Bài tập lớn – Trí tuệ nhân tạo nâng cao
3.1.1. Học có giám sát:

Trong học có giám sát, tại mỗi thời điểm có đầu vào mạng nơron thì đầu ra mong
muốn của hệ sẽ được cho sẵn. Nói một cách rõ ràng hơn: mạng được cung cấp một tập các
mẫu (x(1), d(1)), (x(2), d(2)), …, (x(k), d(k)) là các cặp đầu vào – đầu ra mong muốn. Khi một đầu
vào x(k) được đưa vào mạng, đầu ra mong muốn d(k) cũng được đưa vào mạng. Sự sai khác
giữa giá trị đầu ra thực sự y(k) và đầu ra mong muốn d(k) sẽ là cơ sở tạo tín hiệu lỗi để mạng
sửa đổi trọng số sao cho đầu ra thực sự gần với đầu ra mong muốn.

Hình 2.5: Học có giám sát
3.1.2. Học không giám sát:
Trong dạng học này không có bất kỳ một thông tin phản hồi nào từ môi trường.
Mạng phải tự tìm ra các mẫu, đặc tính, tính quy tắc, sự tương quan trong dữ liệu đầu vào và
tập hợp lại để tạo đầu ra. Khi tự tìm ra các đặc điểm này, mạng đã trải qua các thay đổi về
tham số của nó. Quá trình này gọi là tự tổ chức.
Các thuật toán theo tham số có thể được khái quát thành dạng chung với lượng điều
chỉnh trọng số như sau:
∆wij = α rx j (t )

Trong đó: i là nơron thứ i; j là đầu vào thứ j; α là hằng số học (dương) xác định tốc độ
học và được xác định bằng thực nghiệm; r là tín hiệu học. Tín hiệu học tổng quát là một hàm

của w, x, và d tức là: r = f(w, x, d).
Đối với các trọng số biến đổi liên tục, có thể sử dụng dạng sau:
dw i (t )
= α rx(t )
dt
3.1.3. Học củng cố:

Trong thuật toán học có giám sát, các giá trị đầu ra đích được biết chính xác đối với
mỗi đầu vào. Tuy nhiên, trong một số trường hợp, chỉ biết được ít thông tin chi tiết, chẳng
hạn: mạng chỉ biết rằng giá trị đầu ra thực sự quá cao hay chính xác 50%, hay có thể mạng
chỉ có được thông tin phản hồi chỉ ra rằng đầu ra đúng hay sai. Luật học dựa trên thông tin
đánh giá này được coi là luật học củng cố, và thông tin phản hồi được gọi là thông tin củng
cố. Luật học củng cố là một dạng của luật học có giám sát vì mạng vẫn có được một vài
thông tin phản hồi từ môi trường. Tuy nhiên thông tin phản hồi này chỉ mang tính chất đánh
giá chứ không phải mang tính chất dạy. Tín hiệu củng cố ngày được mạng sử dụng để điều
chỉnh trọng số với hy vọng là có được đánh giá phản hồi tốt hơn trong lần học tiếp theo.
3.2. Học theo cấu trúc:
11


Bài tập lớn – Trí tuệ nhân tạo nâng cao

Tư tưởng của học theo cấu trúc là thay đổi số lớp, số nơron trong từng lớp, kiểu liên kết
để làm cấu trúc mạng thay đổi. Đối với học theo tham số, chúng ta giả sử cấu trúc mạng đã
có, sau đó đưa ra các thuật toán học cho các tham số mạng để huấn luyện mạng thực hiện
được nhiệm vụ như mong muốn. Còn việc học theo cấu trúc có thể sử dụng kỹ thuật liên
quan đến thuật toán gen và lập trình tiến hóa. Các cách tìm kiếm trong lập trình tiến hóa là
khá tiêu tốn thời gian ngay cả đối với mạng có kích thước trung bình. Do đó, còn có thể sử
dụng các kỹ thuật sửa đổi hay xây dựng mạng dần dần từ một cấu trúc mạng ban đầu. Các
kỹ thuật này bao gồm cắt xén bớt mạng nơron, phát triển mạng và kết hợp cả hai cách cắt

xén và phát triển mạng nơron.
4. Kết hợp mạng nơron với lý thuyết mờ

4.1.
Lý do
Hai công nghệ mạng nơron và lý thuyết mờ đều có những mục đích gần gũi. Hơn nữa
những thành đạt cũng có những điểm tương tự. Do đó sự kết hợp với nhau là lẽ rất tự nhiên.
Sau đây là mấy điểm tương đồng giữa 2 hệ thống trên cơ sở lý thuyết mờ và mạng nơron
nhân tạo.
Cả hai đều nhằm tăng thêm tri thức, tăng độ thông minh cho các hệ thống với sự giúp đỡ
của các hệ thống kỹ thuật (đặc biệt với máy tính), trong môi trường bất định, có nhiễu, thông
tin và tri thức thiếu chính xác.
Cả hai đều là hệ động, là công cụ ước lượng bằng số, không dùng mô hình số chọn
trước.
Cả hai khi ước lượng hàm số không đòi hỏi mô tả bằng dạng toán học y=f(x), thường
học được từ mẫu dữ liệu, tiệm cận với các số liệu.
Cả hai loại hệ thống và công nghệ đều rất thành công, đã được ứng dụng trong nhiều hệ
thống và thiết bị dùng trong đời sống hàng ngày.
Họ các mạng nơron với một số đủ lớn các nơron trong lớp ẩn cũng có thể xấp xỉ một
hàm bất kỳ. Nếu thu hẹp hơn nữa các hệ suy diễn mờ và mạng nơron ta có kết quả như sau:
Các hệ suy diễn mờ sử dụng suy diễn tích, phép giải mờ trọng tâm, hàm thuộc dạng Gauss
tương ứng với họ các mạng nơron RBF với một lớp ẩn và sử dụng hàm kích hoạt dạng
Gauss.
Về lý thuyết, mạng nơron và các hệ thống mờ là các hệ thống tương đương theo nghĩa
chúng có khả năng chuyển đổi được nhưng trong thực tế, mỗi hệ thống lại có những ưu
nhược điểm riêng.
Đối với các mạng nơron, tri thức có thể tự động thu được bởi thuật toán hồi quy nhưng
quá trình luyện lại tương đối chậm và việc phân tích mạng đã luyện là khá khó khăn. Ngoài
ra chúng ta không có khả năng rút ra được tri thức có dạng cấu trúc (các luật) từ mạng nơron
đã luyện cũng như không thể đưa thêm các thông tin đặc thù vào trong mạng nơron để đơn

giản hóa quá trình học.
Các hệ thống mờ tốt hơn theo nghĩa cách hoạt động của các hệ thống mờ có thể giải
thích được dựa trên các luật mờ và như vậy tốc độ thực thi của chúng có thể điều chỉnh được
bằng cách chỉnh định các luật. Tuy nhiên, thông thường việc thu được tri thức là khá khó
khăn và việc xem xét ngôn từ của mỗi biến vào cần phải được chia thành nhiều khoảng nên
12


Bài tập lớn – Trí tuệ nhân tạo nâng cao

các ứng dụng của hệ thống mờ bị giới hạn trong các vùng mà ở đó phải có được tri thức
chuyên gia cũng như số lượng biến đầu vào nhỏ.
Từ mong muốn có được ưu điểm của cả nguyên lý mờ và mạng nơron trong một bộ điều
khiển, người ta đã ghép chung bộ điều khiển mờ và mạng nơron thành bộ điều khiển mờ nơron. Có thể kể ra ba hướng chính khi tích hợp mạng nơron và hệ mờ:
A - Các hệ mờ nơron sử dụng công cụ mạng nơron trong mô hình mờ.
B - Các mạng nơron mờ nhằm mờ hóa các mô hình nơron và mạng nơron truyền thống.
C - Các hệ lai.
4.2.
Một số khái niệm cơ bản trong lý thuyết mờ
4.2.1.
Tập mờ
Một tập hợp mờ trên một tập hợp cổ điển X được định nghĩa như sau:
A= {(x, μA(x)))| x ∈ X}

~

Hàm thành viên μA(x) lượng hóa mức độ mà các phần tử x thuộc về tập cơ sở X. Nếu
hàm cho kết quả 0 đối với một phần tử thì phần tử đó không có trong tập đã cho, kết quả 1
mô tả một thành viên toàn phần của tập hợp. Các giá trị trong khoảng mở từ 0 đến 1 đặc
trưng cho các thành viên mờ.

Hàm thành viên μA(x) thỏa mãn các điều kiện sau:
μA(x) ≥ 0 ∀ x ∈ X
supx∈ X[μA(x)]=1
4.2.2.

Số mờ

Một số mờ là một tập mờ lồi được chuẩn hóa ~A ⊆ R, hàm thành viên của tập này có
tính chất liên tục ít nhất tại từng giai đoạn, và hàm có giá trị μA(x)=1 tại đúng một phần tử.
Có 3 dạng số mờ thường gặp là dạng tam giác, dạng hình thang và dạng Gauss.
4.2.3.

Tập mức

Cho 0<α ≤ 1, A là tập mờ thuộc X; μA: X →[0, 1];
Tập Aα = {x∈ X: μA(x) ≥ α}, gọi là tập mức. Rõ ràng Aα là tập rõ
4.2.4.

Một số phương pháp mờ hòa mạng nơron

Gần đây, những nhà nghiên cứu đề xuất rất nhiều các phương pháp mờ hóa mạng
nơron nhân tạo. Một cách tiếp cận là mờ hóa trực tiếp bằng cách mở rộng các đầu vào thực
và các giá trị đích thực, các trọng số thực trong kiến trúc mạng nơron truyền thống thành các
số mờ. Sự mở rộng này được tổng kết trong bảng:
Kiểu mạng
Trọng số
Mạng nơron truyền thống
Số thực
Mạng nơron mờ: trường hợp 1
Số thực

Mạng nơron mờ: trường hợp 2
Số thực
Mạng nơron mờ: trường hợp 3
Số mờ
13

Đầu vào
Số thực
Số mờ
Số mờ
Số thực

Đầu ra
Số thực
Số thực
Số mờ
Số mờ


Bài tập lớn – Trí tuệ nhân tạo nâng cao

Mạng nơron mờ: trường hợp 4
Mạng nơron mờ: trường hợp 5
Mạng nơron mờ: trường hợp 6
Mạng nơron mờ: trường hợp 7

Số mờ
Số thực
Số mờ
Số mờ


Số mờ
Số thực
Số thực
Số mờ

Số mờ
Số mờ
Số thực
Số thực

Bảng 2.2:Một số phương pháp mờ hóa mạng nơron truyền thống
Trong các trường hợp mở rộng ở bảng trên, các trường hợp 1, 2, 3, 4 đã được nghiên
cứu ứng dụng trong nhiều bài toán. Trường hợp 5, 6, 7 không thực tế. Trong trường hợp 5,
đầu ra luôn là số thực vì cả đầu vào và trọng số đều là số thực. Do đó, trọng số cần được mờ
hóa để tạo đầu ra mờ trong trường hợp thứ 5. Trong các trường thứ 6 và thứ 7, việc mờ hóa
trọng số là không cần thiết vì các giá trị đầu ra là những số thực.
4.3.
Mạng lan truyền ngược
4.3.1.
Cấu trúc mạng
Kiến trúc mạng lan truyền ngược là kiến trúc được dùng phổ biến bởi vì chúng cung
cấp khả năng xấp xỉ tốt các hàm phi tuyến và tổng quát hóa, hơn nữa lại dễ tổ chức và cài đặt
vì các tín hiệu được truyền thẳng để thực thi. Với những ưu điểm trên, tác giả đã lựa chọn
mạng này để cài đặt cho bài toán dự báo thời tiết. Mặc dù đã được chứng minh: mạng nơron
truyền thẳng với ít nhất một lớp ẩn là công cụ xấp xỉ vạn năng nhưng về cấu trúc tối ưu của
mạng: số lớp ẩn và số nơron trong mỗi lớp ẩn và số nơron cần thiết trong mỗi lớp ẩn là khá
khó do tính phức tạp của mạng, nên thường được xác định bằng thực nghiệm. Trong chương
trình thực nghiệm, mạng nơron có 3 lớp: lớp vào, lớp ẩn và lớp ra. Số nơron lớp vào là 6,
chính là số thông số thời tiết cần dự báo, số nơron lớp ra bằng số nơron lớp vào bằng 6. Số

nơron lớp ẩn được chọn dựa trên thực nghiệm.
Mỗi nút trong lớp đầu vào nhận giá trị của một biến độc lập và được chuyển vào
mạng. Dữ liệu từ tất cả các nút trong lớp đầu vào được chuyển cho lớp ẩn. Gọi là ẩn vì các
nút trong lớp này chỉ liên lạc với các nút trong lớp đầu vào và đầu ra, và chỉ người thiết kế
mới biết lớp này. Tương tự, các nút trong lớp ra cũng nhận tín hiệu từ các nút ẩn. Mỗi nút
trong lớp ra tương ứng một biến phụ thuộc.
Mạng lan truyền ngược chỉ có thể ở một trong hai trạng thái: trạng thái ánh xạ và
trạng thái học. Trong trạng thái ánh xạ, thông tin lan truyền từ lớp vào tới lớp ra và mạng
thực hiện ánh xạ để tính giá trị các biến phụ thuộc vào các biến độc lập được cho. Trong
trạng thái học, thông tin được lan truyền theo hai chiều nhiều lần để học các trọng số.

14


Bài tập lớn – Trí tuệ nhân tạo nâng cao
X1

Xj

1

Y1

1

.
.
.

1


j

.
.
.
i

q

.
.
.

Yi

.
.
.

.
.
.

Xm
m
Lớp vào

l
Lớp ẩn


n6

Yn

Lớp ra

Hình 2.7: Cấu trúc mạng nơron lan truyền ngược
-

-

-

Quá trình ánh xạ thông tin trong mạng có thể được mô tả như sau:
Trước hết, giá trị của các biến độc lập được chuyển vào cho lớp của mạng. Các nút đầu vào
không tính toán gì cả. Mỗi nút vào chuyển giá trị của nó cho tất cả các nút ẩn. Mỗi nút ẩn
tính tổng trọng hóa của tất cả dữ liệu nhập bằng cách cộng tất cả các tích giữa giá trị nút vào
với trọng số của cung liên kết giữa nút đầu vào và nút ẩn.
Tiếp theo, một hàm truyền (hay hàm kích họat) được áp dụng trên tổng trọng hóa này cùng
với một ngưỡng của nút ẩn đó để cho ra giá trị thực của nút ẩn. Hàm truyền chỉ đơn giản nén
giá trị vào một miền giới hạn nào đó. Trong đề tài này, hàm kích hoạt đối với lớp ẩn là hàm
Sigmoid, còn đối với lớp ra cũng là hàm Sigmoid. Sau khi nén tổng trọng hóa của nó, đến
lượt mình, mỗi nút ẩn sẽ gửi kết quả đến tất cả các nút đầu ra.
Mỗi nút đầu ra thực hiện các thao tác tương tự như đã thực hiện trong nút ẩn để cho ra giá trị
kết xuất của nút đầu ra. Giá trị của đầu ra chính là giá trị thực, có nghĩa là giá trị của các biến
phụ thuộc cần xác định.

Hình 2.6: Minh họa thuật toán lan truyền ngược cho mạng nơron
Bản chất ánh xạ do mạng thực hiện tùy thuộc vào giá trị các trọng số trong mạng. Lan

truyền ngược là một phương pháp cho phép xác định tập trọng số tốt nhất của mạng. Việc áp
dụng phương pháp lan truyền ngược là một quá trình lặp đi lặp lại nhiều lần hai tiến trình
15


Bài tập lớn – Trí tuệ nhân tạo nâng cao

chính: ánh xạ và lan truyền ngược sai số. Hai tiến trình này được áp dụng trên một tập mẫu
xác định. Ta gọi chung tiến trình này là huấn luyện mạng hay còn gọi là học.
Huấn luyện mạng liên quan đến việc chuyển từ tập huấn luyện tới một tập các trọng số.
Thực tế, mạng học những cái mà tập huấn luyện phải dậy nó và với thuật toán luyện hiệu
quả thì mạng có thể dự báo đúng với đầu vào không thuộc tập huấn luyện. Hiện tượng này
được gọi là tính tổng quát hóa. Do đó chúng ta xem xét ứng dụng của mạng nơron đối với
bài toán dự báo gồm hai pha riêng biệt. Trong pha huấn luyện mạng, các trọng số được sửa
đổi để phản ánh quy luật thời tiết trong quá khứ. Trong pha hoạt động, các trọng số được giữ
ổn định và khi đưa dữ liệu kiểm tra vào, mạng sẽ dự báo số liệu tương lai với quy ước rằng
quy luật biến đổi thời tiết trong tương lai cũng tương tự như một trong những quy luật mạng
đã được học trong quá khứ. Tiếp theo đây sẽ là trình bày chi tiết hơn về quá trình luyện mạng
lan truyền ngược cũng như xây dựng các công thức tính toán cho việc sử dụng mạng vào bài
toán dự báo.
4.3.2.

Thuật toán

Mạng lan truyền ngược cần một tập mẫu tham chiếu để huấn luyện. Giả sử tập huấn
luyện gồm p mẫu (cặp đầu vào, đầu ra mong muốn) là {(x (k), y(k))}, k = 1, 2, …, p. Quá trình
luyện mạng được bắt đầu với các trọng số tùy ý, được khởi tạo ngẫu nhiên xung quanh giá
trị 0 và tiến hành lặp đi lặp lại trên tập mẫu huấn luyện tới khi đạt được lỗi mong muốn. Mỗi
lần lặp được gọi là một thế hệ. Trong mỗi thế hệ, mạng điều chỉnh các trọng số sao cho sai số
giảm dần. Tiến trình điều chỉnh nhiều lần giúp cho bộ trọng số dần dần đạt được các trọng số

tối ưu. Mạng thường cần thực hiện nhiều thế hệ trước khi việc luyện mạng hoàn tất.
Việc cập nhật trọng số có thể được thực hiện ngay khi xử lý từng mẫu hoặc khi đã xử lý
tất cả các mẫu trong tập. Việc thực hiện theo mỗi cách đều có những ưu nhược điểm riêng.
Trong đề tài này, phương thức cập nhật trọng số ngay sau khi xử lý từng mẫu được sử dụng.

-

Như vậy, đối với từng mẫu, mạng thực hiện các bước như sau:
Trước tiên, mạng thực hiện quá trình lan truyền tiến, nghĩa là mạng ánh xạ các biến vào
của mẫu hiện hành thành các giá trị ra với việc sử dụng các giá trị của trọng số hiện hành.
Kế tiếp, sai số được tính dựa trên giá trị đầu ra thực và giá trị đích. Trên cơ sở sai số tính
được, mạng sẽ cập nhật lại các trọng số theo nguyên tắc lan truyền ngược sai số - gọi là giai
đoạn lan truyền ngược.
Tóm lại, để học mỗi mẫu, mạng thi hành hai bước: lan truyền tiến – thực hiện ánh xạ, và
lan truyền ngược sai số - cập nhật các trọng số. Vì thế phương pháp này được gọi tắt là lan
truyền ngược.
Xây dựng công thức cho quá trình lan truyền tiến:
Xét một cặp mẫu huấn luyện đầu vào – đầu ra mong muốn (x, d) với mẫu đầu vào x,
nơron thứ q của lớp ẩn nhận tổng đầu vào là:
m

net q = ∑ v qj x j
j =1

Với m là số nơron của lớp vào và tạo đầu ra:
16

(2.10)



Bài tập lớn – Trí tuệ nhân tạo nâng cao
m

z q = f q (net q ) = f q (∑ v qj x j )
j =1

(2.11)
Trong đó q = 1,…, l, l là số nút của lớp ẩn và hàm kích hoạt của các nơron lớp ẩn là hàm
Sigmoid fq(.):
f q (net q ) =

1
1+ e

− netq

(2.12)
Đầu ra của các nơron lớp ẩn lại được đưa tới lớp ra. Tổng lớp vào của nơron thứ i lớp ra
là:

 m

neti = ∑ wiq z q = ∑ wiq f q  ∑ vqj x j 
q =1
q =1
 j =1
 (2.13)
l

l


Trong đó i= 1, …, n; n là số nơron lớp ra.
Các nơron này tính toán tạo ra đầu ra thực sự của mạng nơron. Với fi(.) là hàm kích họat
của lớp ra, đầu ra của lớp nơron thứ i của lớp ra là:
 l
 l

 m

y i = f i (net i ) = f i  ∑ wiq z q  = f i  ∑ wiq f q  ∑ v qj x j  
 q =1

 q =1

 j =1
  (2.14)


-

Hàm kích hoạt của các nơron lớp ra trong bài toán dự báo thời tiết được chọn là hàm
Sigmoid.
Đó là toàn bộ quá trình lan truyền tiến của các nơron trong quá trình huấn luyện.
Xây dựng công thức cho quá trình lan truyền ngược
Khi đã có giá trị đầu ra thực sự, các tín hiệu lỗi được tính toán để lan truyền ngược trở
lại, cập nhật các trọng số liên kết. Các tính toán đó được thực hiện dựa trên hàm chi phí toàn
cục. Hàm chi phí được sử dụng cho bài toán dự báo thời tiết được xây dựng như sau:
E(w)=11Equation Section (Next)
2
2

1 n
1 n
1 n
2
( di − yi ) = ∑ ( di − fi ( neti ) ) = ∑  di − fi ( w qi zq ) 

2 i =1
2 i =1
2 i =1
(2.15)

Theo phương pháp hạ Gradient – tức là tiến trình cập nhật trọng số theo hướng giảm
gradient, trọng số liên kết giữa lớp ẩn và lớp đầu ra được cập nhật bởi:
∆w iq = −η

 ∂E   ∂y   ∂neti 
∂E
= −η    i  

∂w iq
 ∂yi   ∂neti   ∂w iq 

(2.16)

Trong đó η là hằng số học chỉ tốc độ cập nhật.
Từ các công thức trên ta có:
∆w iq = η [ d i − yi ]  f ' ( neti )  zq = ηδ ti zq

(2.17)


Với δti là tín hiệu lỗi tại nơron thứ i trong lớp ra:
δti= (di - yi)f’(neti) (2.18)
Do hàm kích hoạt của nơron lớp ẩn là hàm Sigmoid, tính toán đạo hàm ta có:
17


Bài tập lớn – Trí tuệ nhân tạo nâng cao

f’(neti)= yi(1 - yi) (2.19)
nên:
δti = (di - yi)yi(1 - yi) (2.20)
Đối với trọng số liên kết giữa nơron thứ j của lớp vào và nơron thứ q của lớp ẩn sẽ được
cập nhật theo:
∆w iq = −η

n
 ∂E   ∂y   ∂neti 
∂E
'
'
= −η    i  
 = η ∑ ( di − yi ) f ( neti ) w iq  f ( netq ) x j
∂w iq

y

net

w
i =1

 iq 
i 
 i 

(2.21)

Từ biểu thức (2.18) ta có:
n

∆vqj = η ∑ δ ti w iq  f ' ( net q ) x j = ηδ hq x j
i =1

(2.22)

Với δhq là tín hiệu lỗi của nơron thứ q trong lớp ẩn:
n

δhq=

∑ δ
i =1

ti

w iq  f ' ( netq )
n

∑ δ

ti


(2.23)

w iq 

Nhìn vào công thức (2.23), thành phần
có thể coi là tổng trọng hóa các tín
hiệu lỗi của lớp nơron tiếp theo. Như vậy, rõ ràng là việc cập nhật trọng số của một lớp phải
dựa trên giá trị tín hiệu lỗi của các nơron lớp sau nó hay được thực hiện sau khi đã cập nhật
trọng số của lớp sau nó. Điều đó có nghĩa là tín hiệu lỗi đã được lan truyền ngược từ lớp đầu
ra trở lại lớp đầu vào để cập nhật các trọng số liên kết của các lớp đó.
Quá trình huấn luyện mạng được lặp đi lặp lại hai pha trên tập mẫu huấn luyện tới khi
đạt được mức lỗi mong muốn.
• Thuật toán lan truyền ngược:
Xét một mạng với q lớp truyền thẳng, q = 1, 2, …, Q ký hiệu qneti và qyi lần lượt là tổng
đầu vào và đầu ra của nơron thứ i trong lớp q. Mạng có m nút đầu vào và n nút đầu ra. qwij
biểu thị trọng số liên kết từ q-1yj tới qyi.
i =1

-

Đầu vào: Một tập các cặp huấn luyện {(x(k), d(k)| k = 1, 2, …, p)}.
Bước 0 (khởi tạo): Chọn 0<η<2 và Emin (là giá trị lỗi cực đại chấp nhận được). Khởi tạo các
trọng số với giá trị ngẫu nhiên nhỏ. Lập E = 0, k = 1.
Bước 1 (lặp huấn luyện): Đưa mẫu đầu vào thứ k tới lớp đầu vào:

-

yi = xi(k) ∀ i
Bước 2 (lan truyền tiến): Lan truyền tiến tín hiệu qua mạng sử dụng:


-

1

q



yi = f ( q neti ) = f  ∑ q w ijq −1 y j ÷
 j


Với mỗi i và q tới khi mọi đầu ra của lớp ra Qyi đều được áp dụng.
-

Bước 3 (tính toán lỗi): Tính giá trị lỗi E và tín hiệu lỗi Qδi cho lớp đầu ra:

18


Bài tập lớn – Trí tuệ nhân tạo nâng cao
E=

1 n
d i( k ) − Q yi

2 i =1

(


(

)

2

+E

)

δ i = di( k ) − Q yi f ′ ( Q neti )

Q

-

Bước 4 (lan truyền ngược lỗi): Lan truyền ngược trở lại để cập nhật các trọng số và tính
toán tín hiệu lỗi

δ i cho các lớp trước:
∆w ijq = η ∗ δ i ∗ q −1 y j

q −1


q −1
δ i = f ′ ( q −1neti ) ∑ q w ji qδ j

-


w ijq =

old

w ijq + ∆w ijq

; q= Q, Q-1, …, 2
Bước 5 (lặp 1 chu kỳ): Kiểm tra toàn bộ tập dữ liệu luyện đã được duyệt qua một lần chưa.
Nếu k< p thì k= k+1 và quay lại bước 1, nếu không thì thực hiện bước 6
Bước 6 (kiểm tra lỗi toàn thể): Kiểm tra lỗi toàn thể, nếu Ehuấn luyện, hoặc kiểm tra xem đã đạt đến số chu kỳ (vòng lặp) giới hạn hay chưa, nếu
không E=0, k=1 và bắt đầu một chu kỳ mới bằng việc quay lại bước 1.
j

-

new

19


Bài tập lớn – Trí tuệ nhân tạo nâng cao

CHƯƠNG III - ỨNG DỤNG MẠNG NƠ RON NHÂN TẠO
TRONG BÀI TOÁN THỜI TIẾT
1. Cơ sở ứng dụng mạng nơ ron nhân tạo trong bài toán thời tiết
Trong những năm gần đây, nhiều phương pháp như mô hình mờ, mạng nơron
mờ, mạng nơron thời gian hồi quy,… được áp dụng rộng rãi cho việc giải quyết các
bài toán phi tuyến phức tạp trong đó có dự báo thời tiết.

Cơ sở chọn đề tài nghiên cứu phương pháp dựa trên mạng nơron vì:
- Mạng nơron là các bộ xấp xỉ đa năng, có thể nhận biết được nhiều mối quan hệ
trong dữ liêu.
- Ứng dụng mạng nơron đang tỏ ra có nhiều ưu thế vượt trội và nhiều triển vọng
trong việc giải quyết các vấn đề phi tuyến, bất ổn định và phức tạp.
- Mạng nơron cung cấp một cách chuyển đổi linh hoạt hơn các kỹ thuật truyền
thống thường bị giới hạn bởi các giả thuyết nghiêm ngặt về chuẩn tắc, tuyến tính,
hay sự độc lập các biến,…
- Khả năng miễn nhiễu và chịu sai hỏng cao, chẳng hạn mạng có thể nhận các dữ
liệu bị sai lệch hoặc không đầy đủ mà vẫn hoạt động được, đây là điểm đáng chú ý
nhất của mạng nơron trong ứng dụng dự báo.
- Khả năng thích ứng, mạng có thể học và hiệu chỉnh trong quá trình hoạt động,
đặc điểm này của mạng cho phép ta hi vọng một hệ có thể học tập để nâng cao khả
năng phân tích và dự báo trong khi hoạt động.
- Khả năng tổng quát hoá tốt và phân lớp mạng.
Do đó, ứng dụng mạng nơron phù hợp vào bài toán dự báo thời tiết vì quy luật
biến đổi của dữ liệu thời tiết phức tạp và khó có thể xác định dựa trên các công thức
toán học hay ý kiến chủ quan của các chuyên gia. Trong khí tượng học, đã có nhiều
nhà khí tượng trên thế giới và Việt Nam sử dụng mạng nơron nhân tạo như công cụ
thống kê cho bài toán phức tạp giúp hiệu chỉnh sản phẩm mô hình số, tái tạo và bổ
sung số liệu, tính toán tổng lượng ozon trong khí quyển,…
Kết hợp mạng nơron với lý thuyết mờ là một hướng nghiên cứu mới trong nhiều
năm gần đây và đã có những kết quả cụ thể trong nhiều lĩnh vực ứng dụng trong đó
có dự báo thời tiết. Về mặt lý thuyết, mạng nơron và hệ thống mờ là các hệ thống
tương đương theo nghĩa chúng có khả năng chuyển đổi được, tuy nhiên trong thực
tế mỗi hệ thống lại có những ưu, nhược điểm riêng. Ví dụ, đối với mạng nơron, tri
thức có thể tự động thu được bởi thuật toán hồi quy nhưng quá trình luyện lại tương
đối chậm và việc phân tích mạng đã luyện là khó khăn trong khi các hoạt động của
các hệ thống mờ có thể giải thích được dựa trên các luật mờ và như vậy tốc độ thực
thi của chúng có thể điều chỉnh được.

Lý thuyết mờ thích hợp với bài toán dự báo thời tiết ở chỗ:
Thứ nhất, trong dữ liệu thời tiết đã có sẵn tính mờ. Ví dụ, ta thường bắt gặp
những mệnh đề sau: càng về đêm trời càng lạnh, gió chuyển về hướng tây, xu
hướng bớt tuyết, đôi chỗ có mưa, mưa rải rác trên diện rộng,… Tất cả các giá trị
20


Bài tập lớn – Trí tuệ nhân tạo nâng cao

này, cùng với các đặc điểm như “đang tăng”, “hầu như”,… đều là những đặc tính
của tập mờ.
Thứ hai, lý thuyết mờ đã từng được ứng dụng trong lĩnh vực này. Ví dụ, Bjarne
Hansen đã từng xây dựng hai hệ thống thời tiết mờ, một hệ thống dự báo chính xác
độ 16 cao tối đa và tầm nhìn của mây, và một hệ thống khác dự báo thời tiết biển.
Gottfried Shaffar xây dựng hệ thống mờ, HS4Cast, dự báo lượng đá trên đường dựa
trên việc đánh giá nhiệt độ mờ, chính xác đến thấp hơn 0.75 độ.
Cuối cùng, Dự báo thời tiết là một lĩnh vực mà với các yêu cầu của nó, một hệ
thống mờ có thể đáp ứng được vì:
- Đó là lĩnh vực mà các giải pháp xấp xỉ được chấp nhận. Giá trị và khoảng giá
trị của các biến (ví dụ hướng gió, lượng bao phủ mây, nhiệt độ) có thể biểu diễn số
được. Một số hoặc tất cả các biến này đều có các biên mờ vì có lỗi do đo đạc, do
quan sát, hoặc do xấp xỉ một cách chú ý.
- Đó là lĩnh vực mà mối quan hệ giữa đầu vào và đầu ra chắc chắn tồn tại nhưng
không được rõ ràng. Tùy theo mùa và tùy theo địa lý khu vực, cùng điều kiện thời
tiết đầu vào có thể dẫn đến các điều kiện thời tiết đầu ra khác nhau. Do đó:
+ Không có công thức toán học nào thích hợp để tạo ra các kết quả mong
muốn hoặc:
+ Có thể có những công thức tính toán nhưng nó phức tạp đến mức là khi nó
chạy trên bộ vi xử lý đích, sẽ không thể tạo ra được kết quả mong muốn trong thời
gian cần thiết.

Do vậy, đặt hộp đen mờ giữa những đầu vào và đầu ra của hệ thống sẽ giải
quyết được những yếu tố phức tạp trên, làm tăng thêm mức độ linh hoạt của mô
hình.
Các phương pháp cộng tác giữa mạng nơron và hệ mờ có nhiều triển vọng
tận dụng được những ưu thế của mạng nơron cũng như khắc phục những hạn chế
của mạng nơron thông qua những ưu thế của mờ.
2. Mô tả bài toán
Dự báo thời tiết được thử nghiệm trên 6 thông số thời tiết:
Nhiệt độ: đơn vị là °C.
Độ ẩm: đơn vị là %
Mưa: đơn vị là % (tùy theo mưa to hay nhỏ)
Hướng gió: đơn vị là °.
Tốc độ gió: đơn vị là km/h.
Mây: đơn vị là % (tùy theo mây nhiều hay ít).
Dữ liệu đầu vào là các thông số thời tiết của một ngày.
Dữ liệu đầu ra là các thông số thời tiết của ngày tiếp theo.

Quy trình thực hiện dự báo được mô tả như sau:
21


Bài tập lớn – Trí tuệ nhân tạo nâng cao
1. Chuẩn hóa dữ liệu đầu vào 2. Mạng nơron dự báo

-

3. Xử lý dữ liệu đầu ra

Hình 3.1: Kiến trúc hệ dự báo thời tiết
Modul 1: Chuẩn hóa dữ liệu đầu vào

Tất cả các thông số thời tiết đều được đưa về một giá trị tương ứng nằm trong khoảng [0,1].
Các tham số mây và mưa được chuẩn hóa như hình
100
80
60
50
40
30
20
10
5
0

mưa

NG N

KM

MBM

MPN

MP

MV

MT

MRT


Hình 3.2: Đồ thị biểu diễn mức độ mưa
Chú thích: NG: nắng gắt, N: Nắng, KM: không mưa, MPN: mưa phù nhẹ, MP: mưa
phùn, MV: mưa vừa,MT: mưa to, MRT: mưa rất to
%
100
80
60
40
20

mây
0

KM

IM

CM

NM

RNM

Hình 3.3: Đồ thị biểu diễn mức độ mây
Chú thích: KM: Không mây, IM: ít mây, CM: có mây, NM: nhiều mây, RNM: rất
nhiều mây
22



Bài tập lớn – Trí tuệ nhân tạo nâng cao
-

Các tham số nhiệt độ, độ ẩm, hướng gió, tốc độ gió được chuẩn hóa như sau:
Nhiệt độ: Giá trị nhiệt độ được chia cho 100
Độ ẩm: Giữ nguyên giá trị %
Hướng gió: Giá trị hướng gió được chia cho 360
Tốc độ gió: Giá trị tốc độ gió được chia cho 100.
Modul 2: Mạng nơron
Cấu trúc mạng nơron trong bài toán dự báo thời tiết, các giá trị đầu vào và đầu ra mạng là
các thông số thời tiết của ngày thứ nhất thì đầu ra mong muốn là các thông số thời tiết của
ngày thứ hai, đầu vào của mạng là thông số thời tiết của ngày thứ hai thì đầu ra mong muốn
là thông số thời tiết của ngày thứ ba, … mỗi một cặp đầu vào, đầu ra mong muốn như thế
gọi là một cặp huấn luyện, sau khi huấn luyện mạng nơron nhiều lần với n cặp huấn luyện
như thế thì mạng nơron có thể đã nắm được quy luật biến đổi của thời tiết (trong trường hợp
n đủ lớn và các cặp dữ liệu biểu diễn được quy luật biến đổi thực tế của thời tiết).
Tiếp theo, muốn mạng nơron dự báo thời tiết của ngày mai thì nó sẽ lấy thông số thời tiết
của ngày hôm nay để làm đầu vào thực hiện dự báo.
Nhiệt độ

Nhiệt độ
1

1

1

Độ ẩm

Độ ẩm

2

Mây

.
.
.

2

2
.
.
.

.
.
.
Mây

6
Lớp vào

l
Lớp ẩn

6
Lớp ra

Hình 3.4: Cấu trúc mạng noron dùng trong bài toán dự báo thời tiết

Modul 3: Xử lý dữ liệu đầu ra
Các giá trị đầu ra của mạng nơron là các giá trị nằm trong khoảng [0, 1], mô đun 3
làm ngược lại mô đun 1 để chuyển các giá trị này thành các giá trị có đơn vị của các
thông số thời tiết. Cụ thể như sau:
Với
-

µ ( a ) ∈ [ 0,1]

là giá trị của biến số thời tiết a tại đầu ra của mạng nơron.
µ a
Các thông số nhiệt độ, tốc độ gió: a = ( ) ∗ 100.
µ a
Độ ẩm: a = ( ) .
µ a
Hướng gió: a = ( ) ∗ 360
Mưa:
µ a
if(0 ≤ ( ) <5) then a="Troi nang gat";
23


Bài tập lớn – Trí tuệ nhân tạo nâng cao

else if(5≤

µ ( a)

<10) then a="Troi nang";


µ a
else if (10≤ ( ) <20)then a="Khong mua";
µ a
else if (20≤ ( ) <30) then a="Mua bong may";
µ a
else if (30≤ ( ) <40) then a="Mua phun nhe";
µ a
else if (40≤ ( ) <50) then a="Mua phun";
µ a
else if (50≤ ( ) <60) then a="Mua vua";
µ a
else if (60≤ ( ) <80) then a="Mua to";
else a="Mua rat to";
- Mây:
µ a
if(0 ≤ ( ) <20) then a="Khong may";
µ a
else if(20≤ ( ) <40) then a="it may";
µ a
else if (40≤ ( ) <60)then a="co may";
µ a
else if (60≤ ( ) <80) then a="nhieu may";
else a="rat nhieu may";
Phân tích đánh giá các tham số của hệ thống dự báo thời tiết
Thuật toán học lan truyền ngược, trong đó các giá trị trọng số được điều chỉnh một cách
hệ thống đáp ứng của mạng ngày càng gần với mong muốn có thể coi như bài toán tối ưu.
Tiêu chuẩn chung của thuật toán tối ưu đơn giản là hạ gradient với kích thước bước nhảy cố
định. Hàm tính lỗi đầu ra là hàm mục tiêu, được xác định trên toàn bộ không gian trọng số.
Thuật toán sửa đổi ma trận trọng số để giảm giá trị lỗi.
Bản chất của thuật toán lan truyền ngược là ước lượng mỗi trọng số riêng biệt dẫn tới

đầu ra. Vì hàm mục tiêu của mạng nơron chứa các hàm vi phân liên tục của các trọng số, nên
việc ước lượng này có thể dễ dàng đạt được về số lượng. Tuy nhiên trong thực tế, việc cài
đặt thuật toán này gặp rất nhiều khó khăn khác nhau. Một trong những vấn đề đó là cực tiểu
đạt được có thể chỉ là cực tiểu địa phương của hàm lỗi.
E

2
3

1
Emin

0

wg

w11

w12

w

Hình 3.5: Minh họa cho vấn đề cực tiểu địa phương
24


Bài tập lớn – Trí tuệ nhân tạo nâng cao

Hình 3.5 chỉ ra một lát cắt của không gian lỗi trong chiều của một trọng số. Có thể thấy
rằng lỗi là một hàm không âm của biến trọng số. Trong trường hợp lý tưởng, giá trị E giảm

về 0. Tuy nhiên, trong thực tế việc học được coi là thành công nếu E nhỏ hơn một giá trị E min
có thể chấp nhận được. Hàm lỗi chỉ trong hình 3.5 có một cực tiểu toàn cục dưới giá trị E min
nhưng nó cũng có 2 giá trị cực tiểu địa phương tại w11 và w12. Thủ tục học sẽ dừng sớm nếu
nó bắt đầu tại điểm 2 và 3, do đó mạng được huấn luyện sẽ không đạt được hiệu năng mong
muốn. Để đảm bảo việc huấn luyện hội tụ tới cực tiểu toàn cục mong muốn, điểm bắt đầu
nên ở 1.
Mặc dù phương pháp hạ gradient và tất cả các kỹ thuật tối ưu khác có thể bị tắc khi ở cực
tiểu địa phương của hàm lỗi, thì cực tiểu địa phương lại không phải là vấn đề quá lớn trong
trường hợp huấn luyện mạng noron. Vì các cực tiểu này không sâu lắm nên có thể thêm một
số nơron vào mạng để có thể vượt qua. Tiếp theo đây sẽ tiếp tục trình bày về một số tham số
ảnh hưởng lớn tới tốc độ hội tụ của thuật toán huấn luyện. Các tham số quan trọng nhất là:
giá trị trọng số khởi tạo, cách hiệu chỉnh trọng số, lựa chọn tỷ lệ học,…
Khởi tạo trọng số
Giá trị trọng số khởi tạo của một mạng truyền thẳng nhiều lớp ảnh hưởng lớn tới lời giải
của bài toán. Thông thường chúng được khởi tạo tại các giá trị ngẫu nhiên nhỏ. Các giá trị
trọng số khởi tạo bằng nhau không thể huấn luyện mạng tốt nên cần xây dựng các giá trị
trọng số không bằng nhau. Các giá trị trọng số khởi tạo không thể lớn, nếu không hàm
Sigmoid sẽ bão hòa từ khi bắt đầu và hệ thống sẽ bị kẹt tại một cực tiểu địa phương hoặc
một vùng bằng phẳng rất gần điểm bắt đầu.
Một phương pháp thích hợp là chọn giá trị trọng số trong khoảng
 −3 3 
,


ki 
 ki
,

ki là số lượng nơron j nối tới nơron i (số lượng liên kết đầu vào của nơron i).
Thực tế, nhiều nghiên cứu về thuật toán đã chỉ ra rằng, tiếp tục huấn luyện mạng trên

một bề mặt lỗi thấp sẽ gây ra hiện tượng “trôi nổi” trọng số không mong muốn. Điều này
làm cho lỗi tăng và chất lượng của việc ánh xạ mà mạng thực hiện giảm. Để khắc phục hiện
tượng này, việc học của mạng nên bắt đầu với các giá trị trọng số khởi tạo ngẫu nhiên khác.
Việc lựa chọn giá trị trọng số khởi tạo chỉ là một trong nhiều nhân tố ảnh hưởng tới việc
huấn luyện mạng để có thể đạt được lỗi cực tiểu có thể chấp nhận được. Trong chương trình,
chọn các giá trị trọng số khởi tạo ngẫu nhiên trong khoảng: [-0.7, 0.7]
Hằng số học
Một nhân tố quan trọng khác ảnh hưởng đến hiệu quả và tốc độ hội tụ của thuật toán lan
truyền ngược là hằng số học η. Thông thường, giá trị hằng số học phụ thuộc vào bài toán cần
giải quyết, không có một giá trị hằng số học nào mà thích hợp cho mọi trường hợp khác
nhau. Trong khi hạ gradient có thể là một phương pháp hiệu quả để có được các giá trị trọng
số làm cực tiểu hóa lỗi, thì bề mặt lỗi thường có những tính chất làm cho thủ tục hội tụ đó
chậm. Nếu cực tiểu nằm trên bề mặt rộng tạo ra các giá trị gradient nhỏ, khi đó giá trị η lớn
hơn sẽ làm cho độ hội tụ nhanh hơn. Tuy nhiên đối với các bài toán mà cực tiểu nằm trên bề
25


×