Tải bản đầy đủ (.doc) (65 trang)

Tìm hiểu lập trình c cho 8051 và ứng dụng thiết kế hệ thống đo nhiệt độ hiển thị trên LCD

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 (8.14 MB, 65 trang )

MỤC LỤC
Mở Đầu...............................................................................2
Chương 1. Tổng quan về mạng nơ-ron và logic mờ.......4
1.1. Tổng quan về mạng nơ-ron.......................................................................................4
1.1.1. Giới thiệu về mạng nơ-ron nhân tạo..................................................................4
1.1.2. Mạng nơ-ron sinh học........................................................................................4
1.1.3. Mạng nơ-ron nhân tạo........................................................................................5
1.1.4. Định nghĩa và phân loại mạng nơ-ron nhân tạo................................................9
1.1.5. Một số ứng dụng của mạng nơ-ron..................................................................15
1.1.6. Mạng thích nghi...............................................................................................16
1.2. Tổng quan về logic mờ...........................................................................................20
1.2.1. Quá trình phát triển của logic mờ....................................................................20
1.2.1. Các khái niệm cơ bản của logic mờ.................................................................20
1.2.3. Cơ sở toán học của logic mờ............................................................................24
2.2. Tổng quan về hệ suy diễn mờ.................................................................................34
2.2.1. Hệ suy diễn mờ Mamdani................................................................................37
2.2.2. Hệ suy diễn mờ Tsukamoto.............................................................................38
2.2.3. Hệ suy diễn mờ Takagi-Sugeno.......................................................................39
2.3. Ứng dụng hệ suy diễn mờ trên cơ sở mạng thích nghi trong bài toán phân lớp ....49
2.3.1. Phát triển bài toán............................................................................................49
2.3.2. Ứng dụng hệ ANFIS trong bài toán phân lớp dữ liệu......................................51

Chương 3. Giới thiệu phần mềm MATLAB..................51
3.1. Giới thiệu chương trình mô phỏng hệ ANFIS........................................................52
3.4. Đánh giá hệ thống...................................................................................................62
3.5. Kết luận...................................................................................................................63


Mở Đầu
Ngày nay, Công nghệ thông tin đang ngày càng phát triển một cách mạnh
mẽ. Nó xâm nhập vào mọi lĩnh vực trong cuộc sống. Chính vì vậy, để có thể đem


lại kết quả cao nhất trong mọi lĩnh vực thì con người đã không ngừng tìm hiểu và
nghiên cứu nhằm phát minh ra những sản phẩm thông minh, mang tính trí tuệ cao.
Một trong những nghiên cứu lớn nhất của ngành Công nghệ thông tin đó là cố
gắng mô phỏng những hoạt động của sản phẩm giống như bộ não con người. Đây
là một vấn đề cực khó. Hiện nay, con người đang tiếp cận bộ não của mình theo
nhiều phương pháp khác nhau. Để diễn tả khả năng tư duy của bộ não, người ta sử
dụng các hệ mờ trên cơ sở logic mờ để suy diễn. Nhằm mô phỏng khả năng học,
người ta đưa ra mô hình mạng noron nhân tạo.
Từ những thập kỷ 20 trở lại đây, lý thuyết mờ và mạng noron nhân tạo đã
phát triển rất nhanh và đa dạng. Công nghệ mờ và công nghệ mạng noron đã cung
cấp những công nghệ mới cho các ngành công nghiệp làm ra nhiều sản phẩm
thông minh, đáp ứng được đầy đủ nhu cầu của thị trường cần có những bộ điều
khiển linh hoạt hơn, những thiết bị “biết suy nghĩ”, làm việc với những bài toán
khó, phải xử lý nhiều thông tin mờ, chưa đầy đủ và thiếu chính xác.
Lý thuyết mờ và mạng noron nhân tạo đều có những ưu điểm và nhược điểm
riêng. Chính vì vậy, một cách tiếp cận chắc chắn sẽ đem lại nhiều thành công và là
hướng mở cho nhiều nhà nghiên cứu, đó là tích hợp giữa hệ mờ và mạng noron lại
với nhau. Việc tích hợp này sẽ làm tăng thêm những ưu điểm của cả hai hệ và
khắc phục được đáng kể những nhược điểm của lý thuyết mờ và mạng noron nhân
tạo. Trên thực tế, có rất nhiều cách tiếp cận để tích hợp mạng noron với lý thuyết
tập mờ, việc tích hợp này chủ yếu dựa vào từng ứng dụng cụ thể và từng quan
điểm của mỗi chuyên gia.
Việc tích hợp giữa mạng noron và lý thuyết tập mờ vẫn đã và đang là một
hướng mở và thời sự cho các nhà nghiên cứu trên thế giới. Vì vậy, trong khuôn
khổ của đồ án, chủ yếu là đi vào tìm hiểu và nghiên cứu các hướng kết hợp chính
của hai công nghệ này. Dựa trên các cách tiếp cận đó, đồ án tập trung đi sâu
nghiên cứu, tìm hiểu và phân tích những ưu nhược điểm của hệ suy diễn mờ trên
cơ sở mạng thích nghi. Để thực hiện mục đích đó, đồ án được trình bày trong 3
chương như sau:
• Chương 1: Tổng quan về mạng noron và logic mờ

• Chương 2: Hệ suy diễn mờ


Chương 3: Giới thiệu phần mềm MATLAB

2


Qua đồ án này, em xin chân thành cảm ơn: Ths. Nguyễn Thị Tuyển bộ môn
khoa học máy tính đã tận tình giúp đỡ, động viên, định hướng, hướng dẫn và tạo
mọi điều kiện để em có thể hoàn thành đồ án này.
Em xin chân thành cám ơn các thầy cô trong bộ môn khoa học máy tính
trường Đại học công nghệ thông tin và truyền thông đã quan tâm dạy dỗ và giúp
đỡ em trong suốt năm năm học vừa qua và trong quá trình làm đồ án tốt nghiệp.
Em xin cám ơn sự giúp đỡ nhiệt tình của các bạn sinh viên trong lớp KHMT đã
động viên và đóng góp nhiều ý kiến quý báu cho em trong quá trình học tập cũng
như khi làm đồ án tốt nghiệp.
Thái nguyên, tháng 6 năm 2011

3


Chương 1. Tổng quan về mạng nơ-ron và logic mờ

1.1. Tổng quan về mạng nơ-ron
1.1.1. Giới thiệu về mạng nơ-ron nhân tạo
Mạng nơron hay mạng nơron nhân tạo là sự tái tạo bằng kỹ thuật những chức
năng của hệ thần kinh con người. Trong quá trình tái tạo không phải tất cả các
chức năng của bộ não con người có đều được tái tạo, mà chỉ có những chức năng
cần thiết. Bên cạnh đó còn có những chức năng mới được tạo ra nhằm giải quyết

một bài toán điều khiển đã định hướng trước. Trước khi tìm hiểu về mạng nơron
chúng ta giới thiệu sơ lược về mạng nơron sinh học.

1.1.2. Mạng nơ-ron sinh học
Não người là tổ chức vật chất cấp cao, có cấu tạo vô cùng phức tạp, dày đặc
các mối liên kết giữa các nơron nhưng xử lý thông tin rất linh hoạt trong môi
trường bất định.

Hình 1.1. Mô hình mạng nơron sinh học

4


Trong bộ não người có khoảng 1011 - 1012 tế bào thần kinh được gọi là các
nơron và mỗi nơron có thể liên kết với 1014 nơron khác thông qua các khớp nối
thần kinh (synapse). Dưới con mắt của những người làm tin học cấu tạo của mỗi
nơron gồm các thành phần cơ bản sau:
Thân nơron được giới hạn trong một màng membran và trong cùng là nhân.
Từ thân nơron còn có rất nhiều đường rẽ nhánh tạm gọi là rễ.
“Bus” liên kết nơron này với các nơron khác được gọi là axon, trên axon có
các đường rẽ nhánh. Nơron còn có thể liên kết với các nơron khác qua các rễ.
Chính vì cách liên kết đa dạng như vậy nên mạng nơron có độ liên kết rất cao.
Các rễ của noron được chia làm hai loại: loại nhận thông tin từ các nơron
khác qua axon, mà ta sẽ gọi là rễ đầu vào và loại đưa thông tin qua axon tới các
nơron khác, gọi là rễ đầu ra. Một nơron có thể có nhiều rễ đầu vào, nhưng chỉ có
một rễ đầu ra. Bởi vậy nếu coi nơron như một khâu điều khiển thì nó chính là
khâu có nhiều đầu vào, một đầu ra. Một nơron sẽ ở trạng thái kích thích khi tại
đầu vào xuất hiện một tín hiệu tác động vượt quá ngưỡng cân bằng của nơron.
Một tính chất rất cơ bản của mạng nơ-ron sinh học là các đáp ứng theo kích
thích có khả năng thay đổi theo thời gian. Các đáp ứng có thể tăng lên, giảm đi

hoặc hoàn toàn biến mất. Qua các nhánh axon liên kết tế bào nơ-ron này với các
nơron khác, sự thay đổi trạng thái của một nơron cũng dẫn theo sự thay đổi trạng
thái của những nơron khác và do đó là sự thay đổi của toàn bộ mạng nơ-ron. Việc
thay đổi trạng thái của mạng nơron có thể thực hiện qua một quá trình “dạy” hoặc
do khả năng “học” tự nhiên
.
Cấu trúc của mạng nơron luôn luôn phát triển và thay đổi để thích nghi dần
với môi trường, làm cho cấu trúc bộ não ngày càng trở nên phức tạp sau mỗi lần
học. Một số cấu trúc của nơron được xác định trước, một số sau này mới được
hình thành và một số thì bị huỷ bỏ qua quá trình chọn lọc tự nhiên, học và thích
nghi.
Các nhà khoa học đã và đang xây dựng và phát triển các mô hình xử lý thông
tin mô phỏng hoạt dộng của bộ não người. Đó chính là mô hình mạng nơ-ron nhân
tạo.

1.1.3. Mạng nơ-ron nhân tạo
Một nơron nhân tạo phản ánh các tính chất cơ bản của nơron sinh học.
Mỗi nơron nhân tạo là một đơn vị xử lí thông tin làm cơ sở cho hoạt động của
một mạng nơron. Nó có chức năng nhận tín hiệu vào, tổng hợp và xử lý các tín
hiệu vào để tính tín hiệu ra. Dưới đây là một mô hình của một nơron nhân tạo.

5


x1

w1 j

x2 w2 j
Mw

x n nj

qj
å

j

net f (net)

yj

Hình 1.2. Mô hình một nơron nhân tạo
Trong đó:
- xi với i = 1,2,..., n : các tín hiệu đầu vào.
- wij với i = 1,2,..., n : các trọng số tương ứng với đầu vào.

qj : ngưỡng kích hoạt của nơron j .
net : tín hiệu tổng hợp đầu vào.
f (net ) : Hàm kích hoạt.
y j : tín hiệu ra của nơron j .
Đầu vào của nơron nhân tạo gồm n tín hiệu xi với i = 1,2,..., n . Mỗi tín hiệu
đầu vào tương ứng với một trọng số wij với i = 1,2,..., n , nó thể hiện mức độ ảnh
hưởng của tín hiệu xi đến nơron j .
-

Một nơron có thể có nhiều đầu vào nhưng chỉ có một tín hiệu đầu ra. Tín hiệu
đầu vào của một nơron có thể là dữ liệu từ bên ngoài mạng, hoặc đầu ra của một
nơron khác, hoặc là đầu ra của chính nó.
Nhằm tăng khả năng thích nghi của mạng nơron trong quá trình học, người ta
sử dụng gán thêm một tham số (Bias) cho mỗi nơron nhân tạo. Tham số đó còn

gọi là trọng số của nơron, ta kí hiệu trọng số của nơron thứ j là qj .
Mỗi một nơron trong một mạng kết hợp các giá trị đưa vào nó thông qua các
liên kết với nơron khác, sinh ra một giá trị gọi là net . Hàm thực hiện nhiệm vụ
này gọi là hàm kết hợp (combination function), được định nghĩa bởi một luật lan
truyền cụ thể. Trong phần lớn các mạng nơron, chúng ta giả sử rằng mỗi một

6


nơron cung cấp một bộ cộng như là đầu vào cho đơn vị mà nó liên kết. Để tính
tổng hợp tín hiệu đầu vào net , ta giả định net là hàm của các tín hiệu xi và các
trọng số wij .
n

net = x1w1 j + x2 w2 j + ... + x n wnj = å xi wij .
i=1

(1.1)
Có nhiều cách để tính tổng tín hiệu vào của nơron, trên dây là cách khá đơn
giản và hữu ích khi chúng ta xây dựng một mạng có nhiều nơron.
Trường hợp wij > 0 , nơron được coi là đang ở trạng thái kích thích. Tương
tự, nếu như wij < 0 , nơron ở trạng thái kiềm chế.
Sau khi tổng hợp được tín hiệu đầu vào net , sử dụng hàm kích hoạt f biến
đổi net để thu được tín hiệu đầu ra out .

y j = out j = f ( net )
(1.2)
Tóm lại có thể xem nơron là một hàm phi tuyến nhiều đầu vào, một đầu ra.
Hàm kích hoạt phải thoả mãn các điều kiện sau:
- Tín hiệu đầu ra phải không âm với mọi giá trị của net .

- Hàm f phải liên tục và bị chặn trong khoảng [ 0,1] .
Hàm kích hoạt hay còn được gọi là hàm nén vì chúng nén tín hiệu đầu ra vào
một khoảng nhỏ. Hàm kích hoạt hay được sử dụng là:
Hàm đồng nhất (Linear function, Identity function)

f ( x) = x
Nếu coi các đầu vào là một đơn vị thì chúng ta sẽ sử dụng hàm này. Đôi khi
một hằng số được nhân với net để tạo ra một hàm đồng nhất.

f(x)

1
1

-1

0

1
x

1

Hình 1.3. Hàm đồng nhất

7


Hàm bước nhị phân (Binary step function, Hard limit function)
Hàm này còn được gọi là hàm ngưỡng (Threshold function hay Heaviside

function). Đầu ra của hàm này chỉ giới hạn trong hai giá trị:

ìï 1, nÕu x ³ q
f ( x ) = ïí
ïïî 0, nÕu xDạng hàm này được sử dụng trong các mạng chỉ có một lớp. Trong hình vẽ
sau, q được chọn bằng 1.
f(x)
-1

0

-1

1

2

3

4

x

Hình 1.4. Hàm bước nhị phân
Hàm sigmoid (Sigmoid function (logsig))

f ( x) =

1

1 + e-

x

Hàm này đặc biệt thuận lợi khi sử dụng cho các mạng được huấn luyện
(trained) bởi thuật toán lan truyền ngược (back-propagation), bởi vì nó dễ lấy đạo
hàm, do đó có thể giảm đáng kể tính toán trong quá trình huấn luyện. Hàm này
được ứng dụng cho các chương trình ứng dụng mà các đẩu ra mong muốn rơi vào
khoảng [0,1].
Hàm sigmoid lưỡng cực (Bipolar sigmoid function (tansig))

f ( x) =

1 - e- x
1 + e- x

Hàm này có các thuộc tính tương tự của hàm sigmoid. Nó làm việc tốt đối
với các ứng dụng có đầu ra yêu cầu trong khoảng [-1,1].

8


1.1.4. Định nghĩa và phân loại mạng nơ-ron nhân tạo
1.4.1.1. Định Nghĩa
Mạng nơron nhân tạo là sự mô phỏng hoạt động của bộ não con người. Nó là
sự liên giữa các nơron độc lập với nhau. Không có một định nghĩa tổng quát về
mạng nơron, song phần lớn những người làm việc trong lĩnh vực mạng nơron đều
có thể đồng ý với định nghĩa sau: “Mạng nơron là một hệ thống bao gồm rất nhiều
phần tử xử lý đơn giản hoạt động song song. Tính năng của hệ thống này phụ
thuộc vào cấu trúc của hệ thống, cường độ liên kết giữa các phần tử và quá trình xử

lý bên trong các phần tử. Hệ thống này có thể học số liệu và có khả năng tổng quát
hoá từ các số liệu được học”.
Trong định nghĩa trên, các phần tử xử lý được nhắc đến chính là các nơron.

1.1.4.2. Phân loại
Liên kết các đầu vào và ra của nhiều nơron với nhau ta được một mạng
nơron. Nguyên lý cấu tạo của một mạng nơron bao gồm một hoặc nhiều lớp. Mỗi
lớp bao gồm nhiều nơron có cùng một chức năng trong mạng.
Mạng nơron nhân tạo có thể được chế tạo bằng nhiều cách khác nhau vì vậy
trong thực tế tồn tại rất nhiều kiểu mạng nơron nhân tạo. Dựa vào số lớp hay sự
liên kết giữa các lớp trong mạng mà người ta phân mạng nơron nhân tạo thành các
nhóm khác nhau.
• Phân loại theo số lớp
Phân loại theo số lớp thì mạng nơron nhân tạo gồm có hai nhóm: mạng một
lớp và mạng nhiều lớp.
- Mạng một lớp
Mạng một lớp cấu thành từ một lớp mạng, nó vừa là lớp vào vừa là lớp trung
gian và cũng là lớp ra. Một lớp mạng bao gồm một nhóm các nơron được tổ chức
theo một cách sao cho tất cả chúng đều nhận cùng một véc tơ
đầu vào để xử lý cùng thời điểm. Việc sản sinh ra net đầu vào, biến đổi
thành tín hiệu đầu ra out xuất hiện cùng một lúc trong tất cả các nơron.

9


y1

x1

y2


x2

M

ymM

xn

Hình 1.5. Mô hình mạng một lớp.
-

Mạng nhiều lớp

Mạng nhiều lớp được cấu thành từ nhiều lớp liên kết với nhau, bao gồm một
lớp vào, lớp ẩn và một lớp ra. Trong đó, lớp nhận tín hiệu đầu vào được gọi là lớp
vào. Các tín hiệu đầu ra của mạng được sản sinh bởi lớp ra của mạng. Các lớp
nằm giữa lớp vào và lớp ra được gọi là lớp ẩn. Lớp ẩn là thành phần nội tại của
mạng, nó không có bất kỳ tiếp xúc nào với môi trường bên ngoài. Số lượng lớp ẩn
có thể dao động từ 0 đến một vài lớp. Tuy nhiên thực tế cho thấy chỉ cần một lớp
ẩn là mạng đã đủ để giải quyết được một lớp các bài toán phức tạp nào.

x1

y1

x2

y2


M

M

M

M

xn

M
ym

lớp
vào

lớp
ẩn

lớp
ra

Hình 1.6. Mô hình mạng 3 lớp truyền thẳng.

10




Phân loại theo sự liên kết giữa các lớp


Sự liên kết trong mạng nơron tuỳ thuộc vào nguyên lý tương tác giữa đầu ra
của từng nơron riêng biệt với nơron khác và tạo ra cấu trúc mạng nơron. Về
nguyên tắc sẽ có rất nhiều kiểu liên kết giữa các nơron, nhưng chỉ có một số cấu
trúc hay gặp trong ứng dụng sau:
-

Mạng truyền thẳng (Feedforward neural networks)

Dòng dữ liệu đầu vào từ các nơron đầu vào đến các nơron đầu ra chỉ được
truyền thẳng. Việc xử lý dữ liệu có thể mở rộng ra nhiều lớp, nhưng không có các
liên kết ngược. Tức là, không có các liên kết từ các đơn vị đầu ra tới các đơn vị
đầu vào trong cùng một lớp hay các lớp trước đó.
Nếu mô hình hoá mạng truyền thẳng bằng một đồ thị, thì nó là một đồ thị có
hướng hữu hạn không chu trình. Trong đó, mỗi nơron là một nút, các liên liên kết
giữa các nơron là các cung của đồ thị. Hình 1.6 là một minh họa về mạng truyền
thẳng nhiều lớp.
Mạng hồi quy (mạng nối ngược) (Recurrent neural
network)
Khác với mạng truyền thẳng, mạng hồi quy có chứa các liên kết ngược. Mô
hình hoá mạng hồi quy bằng một đồ thị thì nó là một đồ thị có hướng hữu hạn có
chu trình. Hình 1.7 minh họa cho một mạng hồi quy.

x1

y1

x2

y2


M

M

M

M

M
ym

xn
Hình 1.7. Mô hình mạng nơron nhiều lớp hồi quy

11


1.1.4.3. Thủ Tục học của mạng
Như chúng ta đã biết,mục đích cuối cùng của việc nghiên cứu ra mạng nơron là huấn luyện cho mạng này biết “suy nghĩ” như não của con người. Bởi vậy
vấn đề quan trọng nhất và không thể thiếu được trong việc hình thành ra một mạng
nơ-ron đáp ứng được đầy đủ yêu cầu của con người đó là quy tắc học của mạng
nơ-ron. Chúng ta có thể chia ra làm hai loại: Học có giám sát và học không giám
sát


Học có giám sát

Mạng được huấn luyện bằng cách cung cấp cho nó các cặp mẫu đầu vào và
các đầu ra mong muốn. Do vậy mục đích chính của việc học có giám sát chính là

xác định một tập tham số tốt nhất với một cấu trúc mạng cố định. Để làm được
điều này ta phải điều chỉnh dần mạng do tồn tại sự khác biệt giữa đầu ra thực tế và
đầu r among muốn. Khi đó ta phải xây dựng một hàm giá dựa trên tập các ký hiệu
mẫu Ttrain và tập trọng số W. Hàm giá này có thể là một hàm khả vi bất kỳ mà có
tính chất đạt đến cực tiểu khi các đầu ra Oi đúng bằng đầu ra lý tưởng yi của tập
mẫu
Hãy nói một cách cụ thể, trong học có giám sát mỗi vecto tín hiệu đầu vào X
được cấp cho mạng thì đồng thời cũng cấp luôn cho mạng vecto đầu r among
muốn Y. Do đó, mạng sẽ được chỉ đạo phải sản sinh ra tín hiệu đầu ra Out như thế
nào. Độ lệch giữa tín hiệu đầu ra Out của mạng và vecto đầu ra yi sẽ được một bộ
sản sinh sai số thu nhận. Bộ phận này sẽ sinh ra tín hiệu sai số. Tín hiệu sai số này
sẽ đi vào mạng và mạng sẽ hiệu chỉnh các trọng số sao cho tín hiệu đầu ra Out sẽ
gần với vecto đầu ra mong muốn yi

12


Véc tơ
vào

Mạng nơ-ron

Tín hiệu ra out

Sản sinh sai số

Véc tơ ra

Hình 1.8: sơ đồ học có giám sát


• Học không giám sát
Học mạng nơ-ron không giám sát là cách học không có sự phản hồi từ môi
trường để chỉ ra rằng đầu ra của mạng là đúng như thế nào.
Khi đó, mạng tự khám các đặc điểm,tính tương quan, hay các lớp trong dữ
liệu một cách tự động. Trong thực tế, đối với mỗi phần lớn các biến thể của học
không giám sát, các đích trùng với đầu vào. Nói một cách khác, học không giám
sát thực hiện một công việc tương tự như một mạng liên kết, cô đọng thông tin từ
dữ liệu vào.

13


Véc tơ
vào
Mạng nơ-ron

Tín hiệu ra out

Hình 1.9 : sơ dồ học không giám sát

1.1.4.4. Đặc trưng của mạng no-ron
Mô hình mạng nơ-ron là một mô hình được ứng dụng nhiều trong thực tế
cũng như đem lại những thành công to lớn trong cuộc cách mạng công nghệ máy
tính và quá trình xử lý thông tin. Sở dĩ nó có thể đem lại những lợi ích lớn như vậy
là do nó có những đặc trưng chính sau:
- Khả năng của các quá trình xử lý song song và phân tán: Có thể đưa vào
mạng một khối lượng lớn các nơ-ron liên kết với nhau theo những lược đồ với các
kiến trúc khác nhau
- Khả năng thích nghi và tự tổ chức: là khả năng xử lý thích nghi và điều
chỉnh bền vững dựa vào các thuật toán thích nghi và các quy tắc tự tổ chức.

- Khả năng dung thứ lỗi: Có thể bắt trước khả năng dung thứ lỗi của não theo
định nghĩa hệ thống có thể tiếp tục làm việc và điều chỉnh khi nhận tín hiệu vào
một phần thông tin bị sai lệch hoặc thông tin bị thiếu.
- Khả năng xử lý các quá trình phi tuyến: Đây là một đặc trưng quan trọng ví
dụ trong xấp xỉ mạng, miễn nhiễu và có khả năng phân lớp.

14


1.1.5. Một số ứng dụng của mạng nơ-ron
1.1.5.1. Mạng no-ron trong phân lớp
Trong lĩnh vực phân cụm dữ liệu thì mạng nơ-ron cũng có rất nhiều ứng
dụng,có thể kể đến các kết quả của một số mạng như : mạng ánh xạ đặc trưng tự tổ
chức ( self-organizing feature maps ) do Kohonen đề xuất, mạng kohonen mờ
( fuzzy Kohonen clustering network ) do Tsao đề xuất hay mạng Hopfield mờ
( fuzzy Hopfield neural network ) do Lin đề xuất. Các mạng này đã có sự kết hợp
với các công thức của fuzzy c-means để thực hiện quá trình phân cụm.

1.1.5.2. Mạng no-ron trong nhận dạng
Nhận dạng mẫu là một nghành khoa học mà vai trò của nó là phân lớp các
đối tượng thành một số loại hoặc một số lớp riêng biệt. Tuỳ thuộc vào lĩnh vực
ứng dụng, các đối tượng có thể ở dạng ảnh, dạng tín hiệu, kí hiệu, nói chung là
“mẫu” (pattern). Hiện nay mạng nơron đã được sử dụng rất nhiều vào ngành khoa
học này, có thể kể đến một số loại mạng như sau: mạng Perceptron, mạng Adaline,
mạng sao vào (Instar)…

1.1.5.3. Mạng no-ron trong dự báo
Hiện nay phân tích dự báo sử dụng mô hình mạng nơ-ron mờ được ứng dụng
rộng rãi trong nhiều lĩnh vực, chẳng hạn như phân tích dự báo một số mặt hàng
chiến lược ảnh hưởng đến nền kinh tế Việt Nam và ảnh hưởng của chúng có tác

động rất lớn đến các hoạt động kinh tế khác. Đây là hướng nghiên cứu mới đang
được các nhà khoa học quan tâm.

1.1.5.4. Mạng no-ron trong bài toán tối ưu
Vấn đề chính ở đây là tìm những thuật toán huấn luyện mạng sao cho góp
phần tìm nghiệm cho nhiều lớp bài toán tối ưu toàn cục.

15


Có thể nêu lên các bước sau đây trong việc sử dụng mạng nơron để giải các
bài toán tối ưu hoá hay còn gọi là ánh xạ các bài toán tối ưu lên mạng nơron:
- Chọn sơ đồ biểu diễn để các đầu ra của các nơron có thể giải mã thành các
nghiệm có thể của bài toán tối ưu
- Chọn hàm năng lượng sao cho cực tiểu của nó ứng với nghiệm “tốt nhất”
của bài toán cần ánh xạ
- Gán giá trị cho các tham số của hàm năng lượng - điều này sẽ xác định
các trọng số tương đối gán cho các thành phần khác nhau của hàm năng lượng
- Rút ra phương trình động học của các nơron (tương ứng với việc xác định
các trọng số liên kết và đầu vào ngoài)
- Đặt giá trị đầu cho các tín hiệu vào
Không có phương pháp trực tiếp ánh xạ các bài toán tối ưu có ràng buộc lên
mạng nơron ngoại trừ việc thêm vào hàm mục tiêu các thành phần phạt khi các
ràng buộc bị phá vỡ. Trong trường hợp hàm năng lượng được biểu diễn như tổng
có trọng của hàm mục tiêu của bài toán và các thành phần phạt.

1.1.6. Mạng thích nghi
Mạng thích nghi là một cấu trúc mạng bao gồm các nút và các liên kết trực
tiếp để liên kết giữa các nút đó với nhau. Tuy nhiên, không phải lúc nào tất cả các
nút đều là thích nghi. Đôi khi chỉ một phần các nút này phụ thuộc vào các tham số

của nút đó, sau đó luật học chỉ rõ làm thế nào để thay đổi các tham số nhằm đưa ra
được kết quả gần với tập mẫu nhất( tối thiểu hóa sai số). Mạng thích nghi trên thực
tế là một mạng nơ-ron truyền thẳng, sử dụng luật học có giám sát. Bây giờ chúng
ta sẽ đi nghiên cứu cấu trúc của mạng thích nghi và các luật học cơ sở của nó.
Kiến trúc mạng thích nghi và luật học cơ sở
Mạng thích nghi là một mạng lan truyền thẳng gồm có nhiều lớp, mỗi lớp có
nhiều nút khác nhau, mỗi nút thực hiện một hàm đặc biệt( còn được gọi là nút
hàm- node function) trên dữ liệu đến nút đó như một tập các tham số thuộc về lớp
đó. Để phản ánh khả năng thích nghi khác nhau, người ta sử dụng hai loại nút, đó
là nút hình tròn và nút hình vuông. Trong đó, nút hình tròn ( nút cố định) không có
tham số, còn nút hình vuông ( nút thích nghi) có các tham số. Tập các tham số của
mạng thích nghi là hợp của các tham số của mỗi nút.

16


Bình thường, các nút hàm có thể biến đổi từ nút này đến nút khác và việc
chọn mỗi một nút hàm phụ thuộc vào tất cả các hàm vào ra mà mạng thích nghi
yêu cầu thực hiện. Như vậy đối tượng mạng thích nghi để có thể đưa ra được một
đầu ra mong đợi thì những tham số được cập nhật theo tập dữ liệu huấn luyện, thủ
tục học trên cơ sỏ gradient được mô tả dưới đây:
Giả sử rằng chúng ta có một mạng thích nghi gồm L lớp, và lớp thứ k có #k
nút. Ta có thể ký hiệu vị trí của nút thứ I trong lớp k là (k,i), và hàm của nút (nút
ra) là Oik . Vì nút ra phụ thuộc vào dữ liệu đến nút và tập các tham số, nên ta có:
k- 1

Oik = Oik ( Oik- 1 ,…, O#( k- 1) , a,b,c…)
Ở đây a,b,c là các tham số thuộc về nút này.
Giả sử rằng có tập dữ liệu huấn luyện P đầu vào, chúng ta có thể định nghĩa
lỗi cho đầu vào thứ p (1 £ p £ P) của dữ liệu huấn luyện là tổng sai số bình

phương.
#( L )

J p = å ( Ti, p - OiL, p )2
i=1

L

Trong đó Ti , p là thành phần thứ I của vecto đầu ra đích thứ p, Oi , p là thành
phần thứ I của vecto đầu ra thực tế có được từ vecto đầu vào thứ p. Do vậy, nếu ta
có P đầu vào thì tổng lỗi là :
p

J = å Jp
p=1

Để phát trine thủ tục học sử dụng phương pháp giảm gradient trong J trên
không gian tham số, trước tiên chúng ta đi tính tỉ lệ lỗi

¶J p
¶O

cho dữ liệu huấn

luyện thứ p và cho mỗi nút ra O. Tỷ lệ lỗi cho nút ra tại (L, i) có thể được tính theo
phương trình sau:

¶J p
L
i, p


¶O

L

= -2( Ti , p - Oi , p )

Tại nút (k,i) bên trong, tỷ lệ lỗi có được tính bởi công thức sau:

¶J p
¶ OiL, p

#( k + 1)

=

å

m=1

¶ J p ¶ OmK,+p1
¶ Omk+, p1 ¶ Oik, p

17


Với 1 £ k £ L và 1 £ i £ #(k), chúng ta có:

¶J p
¶ OiL, p


Bây giờ nếu a là tham số của mạng thích nghi, khi đó ta có:

¶ J p ¶ O*

*
¶ a O* Î S ¶ O ¶ Oa

¶J p

Trong đó,S là tập các nút có dấu ra phụ thuộc a là, khi đó đạo hàm của J
theo a là:

¶J p
¶a

¶J p

p

=

å

p=1

¶a

Và như vậy công thức cập nhật cho tham số di truyền a là:


Da = - g

¶J
¶a

ở đây g là tỷ lệ học và có giá trị là :

k

g=

¶J

å ( ¶a )

2

a

Với k là kich thước bước, chiều dài của mỗi lần chuyển đổi gradient trong
không gian tham số. Chúng ta cũng có thể biến đổi giá trị của k từ sự biến đổi tốc
độ hội tụ.
Luật học Lai – Học gián tiếp (Off- line learning)
Đối với luật học lai- học gián tiếp thì để xác định các tham số không chỉ sử
dụng phương pháp gradient mà còn kết hợp thêm với phương pháp ước lượng bình
phương tối thiểu để xác định các tham số.
Giả sử mạng thích nghi chỉ có một đầu ra:
Out= F( I ,S)
Trong đó, I là tập các biến đầu vào và S là tập các tham số. Nếu tồn tại một
hàm H là hàm đa hợp tuyến tính H(F) trong một số các phần tử của S. Khi đó

những phần tử này có thể được xác định bởi phương pháp ước lượng bình phương
tối thiểu. Nếu tập các tham số có thể được chia thành hai tập S1 và S2 và

S = S1 Å S2
Với Å biểu diễn tổng trực tiếp, hay nói một cách khác H(f) là tuyến tính
trong các phần tử của S2 ta có:
18


H(Out) = H(F( I ,s))
Trong đó H là hàm tuyến tính của các phần tử trong S2 , khi đó với giá trị của
các phần tử của S1
Luật học lai – học trực tiếp ( On – Line learning)
Mô hình học trực tiếp là một mô hình mà các tham số được cập nhật sau mỗi
lần thực hiện. Mô hình này còn được gọi là mô hình học mẫu. Đây là một mô hình
học dùng để xác định các tham số một các trực tiếp cho hệ thống với những đặc
trưng thay đổi. Để sửa đổi luật học của nó, ta thấy rằng giảm gradient có thể được
dựa trên J p thay thế cho J. Tuy nhiên, đây không phải là gradient chuẩn dùng để
tối thiểu học J, bởi vì nếu tỷ lệ học nhỏ thì nó sẽ không xấp xỉ tới 1.
Với dãy các công thức ước lượng bình phương tối thiểu để xác định các đặc
trưng biến đổi của dữ liệu đến, chúng ta cần giảm ảnh hưởng của cặp dữ liệu cũ
khi mà luôn sẵn có cặp dữ liệu mới. Một phương pháp đơn giản là tính sai số bình
phương khi trọng số mới lớn hơn trọng số của cặp dữ liệu hiện tại, ở đây chúng ta
đưa thêm một số nhân tố l (forgetting factor) vào dãy các công thức ban đầu:

X i+ 1 = X i + Si+ 1ai+ 1 (biT+ 1 - aiT+ 1 X i )
Si ai+ 1aiT+ 1Si ]
1
Si+ 1 = [Si l
l + aiT+ 1Si ai+ 1

Ở đây giá trị l Î [0, 1], tuy nhiên l càng nhỏ thì việc ảnh hưởng tới việc loại
bỏ dữ liệu cũ càng nhanh. Nhưng nếu l nhỏ lại thường là nguyên nhân của sự
không ổn định.

1.1.6.4. kết luận
Việc tạo ra lý thuyết tập mờ không những ứng dụng tự động hóa các hoạt
động tư duy của con người mà còn là sự mở rộng rất chính xác của khái niệm tập
hợp kinh điển. Nó mở ra một tầm nhìn mới với nhiều hướng nghiên cứu mới. Lợi
ích của việc mở rộng lý thuyết tập mờ là biến các phương pháp giải tích rõ thành
các kỹ thuật mờ, đây là khả năng giải quyết các bài toán luôn tồn tại các yếu tố tác
động có bản chất không chính xác và nhiều.
Zadeh – người sáng lập ra lý thuyết tập mờ đã từng nói rằng: Con người ta
không cần các thông tin đầu vào dạng số chính xác mà vẫn có năng lực thích nghi
cao với môi trường. Chính vì vậy, lý thuyết tập mờ đã được coi là rất phù hợp với

19


việc mô phỏng hoạt động tư duy của con người, xét về khả năng xử lý các thông
tin xấp xỉ để đưa ra các quyết định.
Ngày nay chính mạng nơ-ron đã tạo nên một cuộc cách mạng về công nghệ
máy tính và sử lý thông tin nhờ vào khả năng tính toán song song và phân tán, khả
năng thích nghi và tự tổ chức, khả năng dung thứ lỗi,…

1.2. Tổng quan về logic mờ
1.2.1. Quá trình phát triển của logic mờ
Từ năm 1965 đã ra đời một lý thuyết mới đó là lý thuyết tập mờ ( Fuzzy set
theory ) do giáo sư Lofti A.Zadeh ở trường đại học Califonia – Mỹ đưa ra.Từ khí
lý thuyết đo ra đời nó được phát triển mạnh mẽ qua các công trình khoa học của
các nhà khoa học như : năm 1972 giáo sư Terano và Asai thiết lập ra cơ sở nghiên

cứu hệ thống điều khiển mờ ở Nhật, năm 1980 hãng Smith Co. bắt đầu nghiên cứu
điều khiển mờ cho lò hơi…Những năm đầu thập kỷ 90 cho đến nay hệ thống điều
khiển mờ và mạng nơ-ron ( Fuzzy system and neural network ) được các nhà khoa
học, các kỹ sư và sinh viên trong mọi lĩnh vực khoa học kỹ thuật đặc biệt quan tâm
và ứng dụng trong sản xuất và đời sống . Tập mời và logic mờ đã dựa trên các
thong tin “ không đầy đủ, về đối tượng để điều khiển đầy đủ về đối tượng một
cách chính xác.
Các công ty của Nhật bắt đầu dung logic mờ vào kỹ thuật điều khiển từ năm
1980 nhưng do các phần cứng chuẩn tính toán theo giải thuật logic mờ rất kém nên
hầu hết các ứng dụng đều dùng các phần cứng chuyên về logic mờ. Một trong
những ứng dụng dùng logic mờ đầu tiên tại đây là nhà máy xử lý nước của Fuji
Electric vào năm 1983, hệ thống xe điện ngầm Hitachi vào năm 1987.

1.2.1. Các khái niệm cơ bản của logic mờ
Định nghĩa tập mờ
Lý thuyết tập mờ là một phương pháp luận linh hoạt, mềm dẻo trong môi
trường thông tin phức tạp, dữ kiện không chắc chắn, thiếu chính xác và biến động,
kết hợp với sự trợ giúp của các chuyên gia để đưa ra được kết quả có độ chính xác
cao nhất và tốc độ nhanh nhất [1], [2]. Lý thuyết tập mờ là sự mở rộng của lý
thuyết tập hợp kinh điển bằng cách chuyển miền giá trị của hàm thuộc từ {0,1}
thành đoạn đơn vị [0,1].
Trong tập hợp kinh điển, một tập ( rõ) là một tập hợp các đối tượng riêng
biệt. Nó được định nghĩa theo cách chia đôi các phần tử của một không gian nền
cho trước thành hai nhóm: thuộc hay không thuộc. Từ đó, một tập hợp rõ có thể
20


c nh ngha thụng qua hm c trng ca tp ú nh sau: Gi U l khụng gian
nn, hm c trng mA ( x ) ca mt tp rừ A trờn U c nh ngha nh sau:


ùỡ 1 nếu x ẻ A
mA ( x ) = ùớ
ùùợ 0 nếu x ẽ A
i vi lý thuyt tp m, bt k phn t trong khụng gian U u cú kh nng
thuc tp m mt mc no ú. Mc thuc ny c biu th bng hm
thuc ca tp m. Chớnh vỡ vy m tp m cú th c xem nh l mt s m
rng nhng ý tng c bn ca tp hp rừ (tp hp kinh in)
nh ngha 1:
A l mt tp m trờn khụng gian nn U nu A c xỏc nh bi hm:

mA : U đ [ 0,1]
mA l hm thuc biu hin ý ngha m ca khỏi nim tp m, nú l mt iu
kin khi nh ngha v mt tp m c th. Giỏ tr ca hm thuc l mt phng
phỏp tin li biu din mc quan h ca mt phn t i vi mt khỏi nim
m.

ỡù 1 nếu x ẻ A
mA ( x ) = ùớ
ùùợ 0 nếu x ẽ A
c gi l hm thuc ca tp A . Tp A l tp kinh in, U l khụng gian
nn. Nh vy hm thuc ca tp c in ch nhn hai giỏ tr l 0 hoc 1. Giỏ tr 1
ca hm thuc mA ( x ) cũn c gi l giỏ tr ỳng, ngc li 0 l giỏ tr sai ca

mA ( x ) .
Mt tp

A

cú dng


A = { x ẻ U x thoả mãn một số tính chất nào đó}
thỡ c gi l cú tp nn U , hay c nh ngha trờn tp nn U . Vớ d tp

A = { x ẻ Ơ 9 < x < 12}
cú tp nn l tp cỏc s t nhiờn Ơ .

21


Hàm thuộc

mA ( x )

định nghĩa trên tập A , trong khái niệm kinh điển chỉ có

hai giá trị là 1 nếu x Î A hoặc 0 nếu x Ï A . Hình 1.1 mô tả hàm thuộc của hàm

mA ( x ) , trong đó tập A

được định nghĩa như sau:

A = { x Î ¡ 2 < x < 6}
Cách biểu diễn hàm phụ thuộc như vậy không phù hợp với những tập được
mô tả “mờ” như tập B gồm các số thực dương nhỏ hơn nhiều so với 6

B = { x Î ¡ x = 6} ,
có tập nền là ¡ , hoặc tập C gồm các số thực gần bằng 3 cũng có tập nền ¡
C = { x Î ¡ x » 3}
Tập B , C như vậy được gọi là các tập mờ.
Lý do là với những định nghĩa “mờ” như vậy chưa đủ để xác định được một

số chẳng hạn như x = 4,5 có thuộc B hoặc x = 2,5 có thuộc C hay không. Nên
chúng ta không thể dùng hàm thuộc của tập cổ điển chỉ có hai giá trị 1 và 0 để
định nghĩa tập B và C trong trường hợp này.
Vì vậy người ta nghĩ rằng: tại sao lại không mở rộng miền giá trị cho hàm
thuộc của tập cổ điển, tức là hàm thuộc sẽ có nhiều hơn hai giá trị. Khi đó thay vì
việc trả lời câu hỏi x = 4,5 có thuộc B hay không, ngưòi ta sẽ trả lời câu hỏi là:
vậy thì x = 4,5 thuộc B bao nhiêu phần trăm? Giả sử rằng có câu trả lời thì lúc
này hàm thuộc mB ( x ) tại điểm x = 4,5 phải có một giá trị trong đoạn [ 0,1] , tức


0 £ mB ( x ) £ 1
Nói cách khác hàm mB ( x ) không còn là hàm hai giá trị như đối với tập
kinh điển nữa mà là một ánh xạ (hình )

mB : U ® [ 0,1]
trong đó U là tập nền của tập “mờ”.

22


Hình 1.10:

a, Hàm phụ thuộc của tập “mờ
b, Hàm phụ thuộc của tập “mờ” C

Định nghĩa 2:
Tập mờ F xác định trên tập kinh điển U là một tập mà mỗi phần tử của nó là
một cặp các giá trị ( x , mF ( x ) ) trong đó x Î U và mF là một ánh xạ

mF : U ® [ 0,1] .

Ánh xạ mA được gọi là hàm thuộc (hàm phụ thuộc hay hàm thành viên ) của
tập mờ F . Tập kinh điển U được gọi là tập nền (hay tập vũ trụ) của tập mờ F .
Ví dụ một tập mờ F của các số tự nhiên nhỏ hơn 6 với hàm phụ thuộc

mF ( x ) có dạng như hình 1.2a định nghĩa trên nền U sẽ chứa các phần tử sau:
F = { ( 1, 1) ,( 2, 1) ,( 3, 0,8) , ( 4, 0,07) } .
Số tự nhiên 1 và 2 có độ phụ thuộc

mF ( 1) = mF ( 2) = 1 ,
các số tự nhiên 3 và 4 có độ phụ thuộc nhỏ hơn 1

mF ( 3) = 0,8 và mF ( 4) = 0,07 ,
23


Những số tự nhiên không được liệt kê đều có độ phụ thuộc bằng 0.

1.2.3. Cơ sở toán học của logic mờ
Logic mờ và xác suất thống kê đều nói về sự không chắc chắn. Tuy nhiên
mỗi lĩnh vực định nghĩa một khái niệm khác nhau về đối tượng
Trong xác suất thống kê sự không chắc chắn liên quan đến sự xuất hiện của
một sự kiện chắc chắn nào đó
Ví dụ : xác suất viên đạn trúng đích là 0
Bản thân sự kiện “ trúng đích” đã được định nghĩa rõ ràng, sự không chắc
chắn ở đây là có trúng đích hay không và được định lượng bởi độ xác suất ( trong
trường hợp này là 0,8). Loại phát biểu này có thể được xử lý và kết hợp với các
phát biểu khác bằng phương pháp thống kê như là xác suất có điều kiện chẳng
hạn.
Sự không chắc chắn trong từ ngữ liên quan đến ngôn ngữ của con người đó là
sự không chính xác trong các từ ngữ mà con người dùng để ước lượng vấn đề và

rút ra kết luận. Ví dụ như mô tả nhiệt độ “nóng”, “lanh”, “ấm” sẽ không có một
giá trị chính xác nào để gán cho các từ này các khái niệm này cũng khác nhau đối
với những người khác nhau ( là lạnh đối với người này nhưng không lạnh đối với
người khác). Mặc dù các khái niệm không được định nghĩa chính xác nhưng con
người vẫn có thể sử dụng chúng cho các ước lượng và quyết định phức tạp. Bằng
sự trừu tượng và óc suy nghĩ con người có thể giải quyết câu nói mang ngữ cảnh
phức tạp mà rất khó có thể mô hình bởi toán học chính xác
Logic mờ và logic của con người
Để thực thi logic của con người cần phải có một mô hình toán học của nó. Từ
đó logic mờ ra đời như một mô hình toán học cho phép mô tả các quá trình quyết
định và ước lượng của con người theo dạng giải thuật. Logic mờ không thể bắt
chước trí tưởng tượng của con người nhưng logic mờ cho phép ta rút ra kết luận
khi gặp những tình huống không có trong luật nhưng có sự tương đương. Vì vậy
nếu mô tả mong muốn đối với hệ thống trong những trường hợp cụ thể thì logic
mờ sẽ tạo ra giải pháp dựa trên tất cả những mong muốn đó.
Các phép toán về tập mờ
Các phép toán trên tập mờ được định nghĩa thông qua các hàm thuộc và được
xây dựng tương tự như các phép toán trong lý thuyết tập mờ kinh điển, bao gồm
tập con, phép giao, phép hợp và phép lấy phần bù

24


Cho A và B là hai tập mờ trên không gian nền U có các hàm thuộc mA ( x ) ,

mB ( x ) khi đó ta có:
Tập con:
A là tập con của B, ký hiệu là A Í B khi và chỉ khi:
mA ( x ) £ mB ( x ) với " x Î U
Phép hợp

mAÈ B ( x ) = max { mA ( x ) , mB ( x ) }= mA ( x ) Ú mB ( x )
Ở đây Ú là kí hiệu của phép toán max
* Phép giao:
mAÇB ( x ) = min{ mA ( x ) , mB ( x ) }= mA ( x ) Ù mB ( x )
Ở đây Ù là ký hiệu cho phép toán min.
* phép lấy phần bù:
Phép lấy phần bù A c là tập mồ với hàm thuộc:

mAc ( x ) = 1- mA ( x )

Suy luận xấp xỉ
Suy luận xấp xỉ hay còn gọi là xuy luận mờ - là quá trình suy ra những kết
luận dưới dạng các mệnh đề mờ trong điều kiện các quy tắc,các luật, các dữ liệu
đầu vào cho trước cũng không hoàn toàn xác định. Chúng ta sẽ đi tìm hiểu lần lượt
một số khái niệm dùng trong suy luận xấp xỉ [1], [12]
Biến ngôn ngữ
Trong logic mờ, những biến ngôn ngữ đảm nhiệm những giá trị ngôn ngữ.
Mỗi giá trị ngôn ngữ thực chất là một tập mờ xác định bởi một hàm thuộc và
khoảng giá trị tương ứng . Logic mờ cho phép các tập này có thể xếp giao nhau.
Chẳng hạn ta có các giá trị ngôn ngữ như “nhanh”, “trung bình”, “chậm”, mỗi giá
trị ngôn ngữ này có hàm thuộc dạng hình thang cân xác định trong khoảng tốc độ
[20,100]. Khi đó tốc độ 45 có thể trực thuộc cả tập mờ “chậm” lẫn tập mờ “trung
bình”.

25


×