1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÀI TẬP LỚN CUỐI KỲ ỨNG DỤNG MẠNG NEURAL NHÂN TẠO TRONG NHẬN DẠNG KÝ TỰ ĐƠN

31 8 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng mạng neural nhân tạo trong nhận dạng ký tự đơn
Tác giả Võ Trương Ngọc Ly, Hồ Quang Phúc, Nguyễn Thị Xuân Phương
Người hướng dẫn TS. Đinh Đồng Lưỡng
Trường học Trường Đại Học Nha Trang
Chuyên ngành Nhận dạng và học máy
Thể loại Bài tập lớn cuối kỳ
Năm xuất bản 2018
Thành phố Nha Trang
Định dạng
Số trang 31
Dung lượng 2,16 MB

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

Nội dung

tại lối vào input của mô hình, các giá trị đầu vào sẽ được nhân với trọng số cá nhân weight.. Lối vào nào có trọng số càng lớn thì đồng nghĩa với tín hiệu truyền qua đó càng lớn.Bên tron

Trang 1

TRƯỜNG ĐẠI HỌC NHA TRANG

KHOA CÔNG NGHỆ THÔNG TIN

Nha Trang, tháng 6 năm 2018

Trang 2

MỤC LỤC

MỤC LỤC i

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU ii

LỜI MỞ ĐẦU iii

CHƯƠNG I: GIỚI THIỆU VỀ MẠNG NEURAL NHÂN TẠO 1

1.1 Mạng neural sinh học 1

1.2 Mạng neural nhân tạo 2

1.3 Ứng dụng của mạng neural 5

1.4 Xây dựng mạng neural 7

CHƯƠNG II: HUẤN LUYỆN MẠNG NEURAL 9

2.1 Các phương pháp học 9

2.2 Huấn luyện mạng neural 10

CHƯƠNG III: NHẬN DẠNG KÝ TỰ TRONG MẠNG NEURAL NHÂN TẠO 13

3.1 Các bước xây dựng nên bài toán 13

3.2 Xác định cấu trúc mạng 13

3.3 Thuật toán huấn luyện mạng 15

3.4 Phương pháp và thuật toán nhận dạng ký tự 17

3.5 Huấn luyện mạng 23

3.6 Nhận dạng ký tự quang học 25

CHƯƠNG IV: GIAO DIỆN CHÍNH CỦA CHƯƠNG TRÌNH 26

Trang 3

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU

Gaussian Hàm Gauss (Biểu đồ của một hàm Gauss là một

đường cong đối xứng đặc trưng "hình quả chuông")DoG Viết tắt của thuật ngữ “Difference-of-Gaussian”

BBF Viết tắt của thuật toán “Best-Bin-First”

Trang 4

LỜI MỞ ĐẦU

Do có khả năng liên tưởng, con người có thể dễ dàng làm nhiều điều mà việclập trình cho máy tính đòi hỏi rất nhiều công sức Chẳng hạn như việc nhận dạng haytrò chơi ô chữ Một em bé có thể tự học hỏi để nhận dạng và phân loại đồ vật chungquanh mình, biết được cái gì là thức ăn, cái gì là đồ chơi Một người bình thường cũng

có thể đoán được vài chữ trong một ô chữ Nhưng thật khó mà dạy cho máy tính làmđược những việc ấy Từ lâu các nhà khoa học đã nhận thấy những ưu điểm của bộ óccon người và tìm cách bắt chước để thực hiện trên những máy tính, tạo cho nó 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 đã ra đời từ những nỗlực đó Nó thực sự được chú ý và nhanh chóng trở thành một hướng nghiên cứu đầytriển vọng trong mục đích xây dựng các máy thông minh tiến gần tới trí tuệ con người.Đặc biệt là lĩnh vực nhận dạng

Từ lâu các nhà khoa học đã nhận thấy những ưu điểm của bộ óc con người vàtìm cách bắt chước để thực hiện trên những máy tính, tạo cho nó có khả năng học tập,nhận dạng và phân loại Vì vậy các nhà khoa học đã nghiên cứu và sáng tạo ra mạngneural nhân tạo Nó thực sự được chú ý và nhanh chóng trở thành một hướng nghiêncứu đầy triển vọng đặc biệt là lĩnh vực nhận dạng Để giải quyết các bài toán nhậndạng, người ta đã đưa vào các cách tiếp cận khác nhau Mỗi phương pháp tiếp cậntrong những bài toán cụ thể đều có những ưu, nhược điểm riêng… và những phươngpháp này có một tỉ lệ nhận biết thành công nhất định Và bài toán nhận dạng ký tự làmột bài toán con trong lớp các bài toán nhận dạng, xử lý ảnh

Nội dung của báo cáo này sẽ đi vào tìm hiểu tổng quan về mạng neural, xem xét

và nghiên cứu cấu trúc các mạng neural, giới thiệu về phương pháp huấn luyện mạngneural và cuối cùng là tìm hiểu về vấn đề nhận dạng ký tự - một trong những ứng dụngphổ biến của mạng neural

Trang 5

CHƯƠNG I: GIỚI THIỆU VỀ MẠNG NEURAL NHÂN TẠO 1.1 Mạng neural sinh học

Bộ não chúng ta được hình thành từ hơn 10 tỉ tế bào được gọi là neural Loại tế bàonày khác các tế bào khác ở chỗ nó có khả năng nhận, xử lý và truyền các tín hiệu điện hóatrên các đường kết nối giữa các tế bào, các con đường này tạo nên hệ thống giao tiếp của bộnão Từ đó, các neural liên kết với nhau, tạo thành mạng neural

Hình 1 Mạng neural trong bộ não con người

Sau đây là những thành phần chính trong cấu trúc của một nơron trong bộ não con người:

Hình 2 Mô hình neural sinh học

Trong đó :

Trang 6

 Các Soma là thân của neural.

 Các Dendrites là các dây mảnh, dài, gắn liền với soma, chúng truyền dữ liệu(dưới dạng xung điện thế) đến cho Soma xử lý Bên trong Soma các dữ liệu đó được tổnghợp lại Có thể xem gần đúng sự tổng hợp ấy như là một phép lấy tổng tất cả các dữ liệu màneural nhận được

 Một loại dây dẫn tín hiệu khác cũng gắn với Soma là các Axon Khác vớiDendrites, Axons có khả năng phát các xung điện thế, chúng là các dây dẫn tín hiệu từneural đi các nơi khác Chỉ khi nào điện thế trong Soma vượt quá một giá trị ngưỡng nào đó(threshold) thì axon mới phát một xung điện thế, còn nếu không thì nó ở trạng thái nghỉ

 Axon nối với các Dendrites của các neural khác thông qua những mối nối đặcbiệt gọi là Synapse Khi điện thế của Synapse tăng lên do các xung phát ra từ Axon thìSynapse sẽ nhả ra một số chất hoá học (neurotransmitters); các chất này mở "cửa" trênDendrites để cho các ions truyền qua Chính dòng ions này làm thay đổi điện thế trênDendrites, tạo ra các xung dữ liệu lan truyền tới các neural khác

 Có thể tóm tắt hoạt động của một neural như sau: neural lấy tổng tất cả các điệnthế vào mà nó nhận được, và phát ra một xung điện thế nếu tổng ấy lớn hơn một ngưỡngnào đó Các neural nối với nhau ở các Synapses Synapse được gọi là mạnh khi nó cho phéptruyền dẫn dễ dàng tín hiệu qua các neural khác Ngược lại, một Synapse yếu sẽ truyền dẫntín hiệu rất khó khăn

Các Synapses đóng vai trò rất quan trọng trong sự học tập Khi chúng ta học tập thìhoạt động của các Synapses được tăng cường, tạo nên nhiều liên kết mạnh giữa các nơron

Có thể nói rằng người nào học càng giỏi thì càng có nhiều Synapses và các Synapses

ấy càng mạnh mẽ, hay nói cách khác, thì liên kết giữa các neural càng nhiều, càng nhạy bén

1.2 Mạng neural nhân tạo

Mạng neural nhân tạo là mô hình được xây dựng dựa trên việc bắt chước cấu trúc vàchức năng của mạng neural sinh học Thành phần cấu tạo cơ bản của mạng là tế bào neuralnhân tạo Các neural này về bản chất, cũng dựa trên mô hình tế bào neural sinh học Một môhình tế bào neural nhân tạo gồm có ba quy tắc cơ bản: nhân, tổng hợp và kích hoạt tại lối

vào (input) của mô hình, các giá trị đầu vào sẽ được nhân với trọng số cá nhân (weight) Các

lối vào đều có trọng số riêng của mình Thông thường, các trọng số này được khởi tạo một

Trang 7

cách ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình họcmạng Lối vào nào có trọng số càng lớn thì đồng nghĩa với tín hiệu truyền qua đó càng lớn.

Bên trong thân của tế bào sẽ tổng hợp các giá trị đầu vào này và ngưỡng (bias) Ở lối ra (output) của tế bào, hàm truyền (Transfer function) có tác dụng giới hạn phạm vi output của

tế bào, sẽ nhận vào giá trị tổng hợp, xử lý và quyết định giá trị đầu ra của tế bào, thường là 0hoặc 1 Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến Việc lựachọn hàm truyền nào là tuỳ thuộc vào từng bài toán cụ thể Có thể viết mô hình trên dướidạng toán học như sau:

- Tổng hợp các input với trọng số

Với w, x là giá trị đầu vào và trọng số tại đường truyền input thứ i, (trong tổng số Nđường input) Neural này sẽ hoạt động như sau: giả sử có N inputs, neural sẽ có N weights(trọng số) tương ứng với N đường truyền inputs Neural sẽ lấy tổng có trọng số của tất cảcác inputs Nói như thế có nghĩa là neural sẽ lấy input thứ nhất, nhân với weight trên đườnginput thứ nhất, lấy input thứ hai nhân với weight của đường input thứ hai v.v , rồi lấy tổngcủa tất cả các kết quả thu được Đường truyền nào có weight càng lớn thì tín hiệu truyền qua

đó càng lớn, như vậy có thể xem weight là đại lượng tương đương với Synapse trong neuralsinh học

- Out put

Kết quả này sẽ được so sánh với threshold t của neural, nếu nó lớn hơn t thì neuralcho output là 1, còn nếu nhỏ hơn thì output là 0 Ngoài ra ta cũng có thể trừ tổng nói trêncho t, rồi so sánh kết quả thu được với 0, nếu kết quả là dương thì neural cho ouput bằng 1,nếu kết quả âm thì output là 0

Với f là là hàm Heaviside:

Trang 8

f được gọi là threshold function hay transfer function của neural, còn giá trị (-t) cònđược gọi là bias hay offset của neural

Nếu chúng ta đưa thêm một input nữa vào, input thứ 0, có giá trị luôn luôn bằng 1 vàweight luôn luôn bằng bias (-t) thì output của neural còn có thể viết dưới dạng:

Lưu ý là chỉ số của tổng bây giờ bắt đầu từ 0 chứ không phải bằng 1 như trước nữa Với cấu trúc và cách thức hoạt động trên, khả năng xử lý của một tế bào neural nhântạo chỉ có giới hạn Tuy nhiên, sức mạnh tính toán và xử lý của chúng sẽ được phát huy khi

ta kết nối các tế bào này lại với nhau thành một kiến trúc đồng nhất, tạo thành một mạngneural Mô hình mạng neural có khả năng xử lý những tình huống vấn đề, bài toán phức tạphơn, nhất là trong các bài toán phi tuyến như phân tích, dự doán, nhận dạng tiếng nói, vântay hay các ứng dụng nhận dạng khác, … Khả năng này được dựa trên ba tham số: kiểu của

tế bào, kiến trúc kết nối và thuật toán học cho mạng

Về mặt toán học, một mạng neural được xem như là một hàm ánh xạ F: X->Y, trong

đó X là không gian trạng thái đầu vào (input state space) và Y là không gian trạng thái đầu

ra (output state space) của mạng Các mạng chỉ đơn giản là làm nhiệm vụ ánh xạ các vectorđầu vào x ∈ X sang các vector đầu ra y ∈ Y thông qua “bộ lọc” (filter) các trọng số Tức là

Trang 9

gần giống như một đối tượng có thể tư duy Mạng được tạo nên từ một số lượng lớn cácphần tử xử lý được kết nối với nhau làm việc song song để giải quyết một vấn đề cụ thể.Mạng neural có thể mô phỏng gần như bất cứ hàm mục tiêu nào với số biến nhập và xuất tuỳ

ý Ngoài ra, mạng neural còn có một ưu điểm tuyệt vời khác, đó là khả năng học Khả nănghọc của mạng chủ yếu dựa trên kỹ thuật lan truyền ngược Mạng neural lan truyền là mộthàm phi tuyến có thể xấp xỉ gần đúng, nhưng một hàm đích được cho qua một số mẫu trongtập mẫu có sẵn Mỗi khi có kiến thức mới ta lại đưa cho mạng neural Khả năng này củamạng neural là rất cần thiết cho các vấn đề có dữ liệu luôn thay đổi

Hình 3 Mô hình neural nhân tạo ở mức đơn giản

Mô hình mạng neural ở trên gồm 3 lớp: lớp nhập (input), lớp ẩn(hidden) và lớp xuất(output) Mỗi nút trong lớp nhập nhận giá trị của một biến độc lập và chuyển vào mạng

Dữ liệu từ tất cả các nút trong lớp nhập được tích hợp – ta gọi là tổng trọng số – vàchuyển kết quả cho các nút trong lớp ẩn Gọi là “ẩn” vì các nút trong lớp này chỉ liên lạc vớicác nút trong lớp nhập và lớp xuất, và chỉ có người thiết kế mạng mới biết lớp này (người sửdụng không biết lớp này)

Các nút trong lớp xuất nhận các tín hiệu tổng trọng hóa từ các nút trong lớp ẩn Mỗinút trong lớp xuất tương ứng với một biến phụ thuộc

1.3 Ứng dụng của mạng neural

Mạng neural nhân tạo có khả năng được sử dụng trong các công việc phân loại, bàitoán gần đúng, xử lý dữ liệu, lọc, phân nhóm, nén, robot, các quy định, ra quyết định, …Việc chọn cấu trúc liên kết mạng neural nhân tạo phụ thuộc vào kiểu của ứng dụng và dữ

Trang 10

liệu đại diện của một vấn đề nhất định Khi chọn và sử dụng các mạng neural nhân tạo,chúng ta cần phải quen thuộc với lý thuyết của mô hình mạng thần kinh nhân tạo và cácthuật toán học Phức tạp của các mô hình được lựa chọn là rất quan trọng; sử dụng mô hìnhđơn giản cho công việc cụ thể thường là kết quả trong các kết quả thấp hay sai, nhưng một

mô hình phức tạp cho một nhiệm vụ cụ thể có thể dẫn đến các vấn đề trong quá trình học

Có nhiều thuật toán học với rất nhiều sự kết hợp cân bằng giữa chúng và gần như tất cả đềuthích hợp cho bất kỳ loại mô hình mạng neural nhân tạo nào Việc lựa chọn thuật toán họcthích hợp cho một công việc cần nhiều kinh nghiệm và thử nghiệm về vấn đề nhất định vàcác loại dữ liệu Khi mô hình mạng thần kinh nhân tạo và thuật toán học đã đúng cách lựachọn thì chúng ta có được công cụ mạnh mẽ để giải quyết vấn đề bài toán

Một số ứng dụng của mạng neural:

- Nhận dạng mẫu: Phân loại mẫu có liên quan với sự phân công của một mẫu mới

cho một trong những quy định trước một số loại dựa trên một hoặc nhiều thuộc tính mô tảmột loại Ứng dụng trong y học lâm sàng, vi sinh học và xử lý ảnh được cho bởi Penny vàFrost (1996), Basheer và Hajmeer (2000), Mattone et al (2000.), Và Egmont-Petersen et al.(2002)

- Tạo nhóm: Trong trường hợp này, mạng neural được sử dụng để chỉ định các mẫu

tương tự với cùng một nhóm Thường thì các mạng Kohonen được sử dụng Ứng dụng tiêubiểu có thể được tìm thấy trong lĩnh vực phân tích hóa học (Tokutaka et al, 1999.) và nhậndạng mẫu thời tiết (Ambroiseet al., 2000)

- Mô hình hóa và dự báo: Mô hình hóa bao gồm việc huấn luyện mạng neural trên dữ

liệu đầu vào - đầu ra, như vậy một mối quan hệ hiện tại giữa dữ liệu đầu vào và dữ liệu đầu

ra được thực hiện đầy đủ chính xác Các mối quan hệ có thể là tĩnh, trong trường hợp nàythường một mạng feed - forward được sử dụng Cũng có thể các mối quan hệ là động, trongtrường hợp này thường là mạng hồi quy được sử dụng Nhiều ứng dụng có thể được tìmthấy trong tài liệu về các lĩnh vực ứng dụng khác nhau, chẳng hạn như mô hình nhà máynước thải, điều hòa dữ liệu, vv…, xem ví dụ Miller et al (1997), Meert (1998), Triệu et al.(1999), Basak et al (2000) và Veltri et al (2002)

- Tối ưu hóa: Trong tối ưu hóa, nó là cần thiết để tìm một giải pháp để đánh giá một

đối tượng hàm mục tiêu để thiết lập liên kết Mạng Hopfield được chứng minh rất hiệu quả

Trang 11

trong việc giải quyết vấn đề tối ưu hóa phi tuyến Một số ví dụ là những ứng dụng trong cácvấn đề đường đi ngắn nhất (Bousono-Carzon et al., 1997) và trong vấn đề tối ưu hóa tổ hợp(Colorni, et al., 1996).

- Điều khiển quá trình và nhận dạng: Trong quá trình kiểm soát, một mạng neural có

thể được dùng để tính toán đầu vào quá trình để những kết quả đầu ra quá trình đạt mục đíchmong muốn Yonghong và van Cauwenberghe (1996) thảo luận về việc thiết kế một bộ điềukhiển dự đoán neural, Cohen et al (1997) áp dụng một hệ thống thần kinh để điều khiểntrình tự của một lò phản ứng đợt Menhaj và Salmasi (2000) sử dụng một mạng neural chocác tham số dự toán và Hafner et al (2000) sử dụng các mạng thần kinh cho thiết kế điềukhiển động cơ diesel

1.4 Xây dựng mạng neural

Về cơ bản ta có thể hiểu mạng neural là một đồ thị có hướng như hình 1.8 Trong đócác đỉnh của đồ thị là các neural và các cạnh của đồ thị là các liên kết giữa các neural

Vì vậy để xây dựng một mạng neural ta xây dựng một đồ thị có hướng: số đỉnh của

đồ thị bằng số neural trong mạng, giá trị của các cạnh chính là trọng số liên kết neural

Hình 4 Sơ đồ đồ thị có hướng đơn giản

Ví dụ xây dựng một mạng neural đơn giản:

Đầu vào: Cho mạng neural có số lớp (với số lớp >1)

Mỗi lớp có số neural trong một lớp (số neural >=1)

Trọng số w liên kiết neural ngẫu nhiên trong khoảng (-a,a)

h1

g1

g2h

3

Trang 12

Đầu ra: Mạng neural nhân tạo.

Kiểu dữ liệu: chọn lưu dữ kiểu mảng int số neural[số lớp];

float w[i][j][k]; với 2<=i<=số lớp, 1<=j, k<=số neural[]

Thuật toán:

Bước 1: Chọn lớp i=2 là lớp bắt đầu

Bước 2: Chọn lớp i là lớp hiện thời

Bước 3: Tại lớp đang xét i, xét neural thứ j

Bước 4: Thực hiện khởi tạo ngẫu nhiên trọng số kết nối với neural k của lớp i-1 trongkhoảng (-a,a) w(i,j,k)= random(-a,a)

Bước 5: Nếu k <= số neural[i-1] quay lại “Bước 4”, ngược lại thực hiện “Bước 6”.Bước 6: Nếu j<= số neural[i] quay lại “Bước 3”, ngược lại thực hiện “Bước 7”.Bước 7: Nếu i<= số lớp quay lại “Bước 3” ngược lại kết thúc

Trang 13

CHƯƠNG II: HUẤN LUYỆN MẠNG NEURAL 2.1 Các phương pháp học

Có ba kiểu học chính, mỗi kiểu mẫu tương ứng với một nhiệm vụ học trừu tượng Đó

là học có giám sát, học không có giám sát và học tăng cường Thông thường, loại kiến trúcmạng nào cũng có thể dùng được cho các nhiệm vụ trên

2.1.1 Học có giám sát

Học có giám sát là kỹ thuật máy học mà bộ thông số của một mạng neural nhân tạođược tạo từ dữ liệu huấn luyện Nhiệm vụ của mạng neural nhân tạo tự học tập là để thiết lậpgiá trị của tham số của nó đối với bất kỳ giá trị đầu vào hợp lệ sau khi đã nhìn thấy giá trịđầu ra Các dữ liệu huấn luyện bao gồm các cặp đầu vào và giá trị đầu ra mong muốn đượcđại diện trong các vector dữ liệu truyền thống Việc học giám sát cũng có thể được gọi làphân loại, nơi chúng ta có một loạt các phân loại, mỗi điểm mạnh và điểm yếu của nó

Để giải quyết một vấn đề bài toán nhất định thì học có giám sát các bước khác nhau phải được xem xét:

- Trong bước đầu tiên chúng ta phải xác định các loại ví dụ huấn luyện Trong bướcthứ hai chúng ta cần phải thu thập dữ liệu đào tạo thiết rằng thỏa đáng mô tả một vấn đềnhất định

- Trong bước thứ ba chúng ta cần phải mô tả dữ liệu đào tạo tập trung thiết lập dướihình thức dễ hiểu đối với một mạng neural nhân tạo được chọn

- Trong bước thứ tư, chúng ta làm việc học tập và sau khi học chúng ta có thể kiểmtra hiệu năng của mạng neural nhân tạo đã học được với các thử nghiệm (xác nhận) dữ liệu.Kiểm tra dữ liệu bao gồm các dữ liệu đã không được giới thiệu đến mạng neural nhân tạotrong khi học

Như vậy với học có giám sát, số lớp cần phân loại đã được biết trước Nhiệm vụ củathuật toán là phải xác định được một cách thức phân lớp sao cho với mỗi vector đầu vào sẽđược phân loại chính xác vào lớp của nó

Trang 14

sử dụng trong các ứng dụng thuộc lĩnh vực của các vấn đề ước lượng như mô hình thống kê,nén, lọc, tách nguồn mù và gom nhóm (clustering) Nó khác với học có giám sát và họccủng cố, trong đó các mạng neural nhân tạo được đưa ra ví dụ duy nhất không có nhãn Điềunày cho thấy, ta sẽ không biết đầu ra đạt giá trị gì Với loại này, thì các neural sẽ phải tựxoay xở với các dữ liệu mẫu mà nó có được Mạng phải tự khám phá mẫu, đặc tính, sựtương quan hay loại đầu vào Trong khi khám phá những đặc tính này, tham số của mạng sẽ

bị thay đổi Quá trình này được gọi là tự tổ chức Một ví dụ điển hình là quá trình phân loạiđối tượng không có giám sát, những lớp thích hợp được hình thành bằng cách khám phá sựtương tự và không tương tự trong số các đối tượng Như vậy với học không giám sát, số lớpphân loại chưa được biết trước, và tùy theo tiêu chuẩn đánh giá độ tương tự giữa các mẫu

mà ta có thể có các lớp phân loại khác nhau

Một hình thức phổ biến của việc học không có giám sát là gom nhóm (clustering),nơi chúng ta cố gắng để phân loại dữ liệu trong các cụm khác nhau

2.1.3 Học tăng cường

Học tăng cường là một kỹ thuật máy học mà bộ thông số của một mạng neural nhântạo, dữ liệu thường không được đưa ra, nhưng được tạo ra bởi sự tương tác với môi trường.Học tăng cường có liên quan với các mạng thần kinh nhân tạo nên những hành động trongmột môi trường để tối đa hóa một số khái niệm về “phần thưởng dài hạn” Trong học tăng

cường, dữ liệu input x thường không được cho trước mà được tạo ra trong quá trình một tác

tử tương tác với môi trường Tại mỗi thời điểm t, tác tử thực hiện hành động output yt và môi trường tạo một quan sát input xt và một chi phí tức thời ct, theo một quy trình động nào

đó (thường là không được biết) Mục tiêu là tìm một sách lược lựa chọn hành động để cực

tiểu hóa một chi phí dài hạn nào đó, nghĩa là chi phí tích lũy mong đợi Quy trình động củamôi trường và chi phí dài hạn cho mỗi sách lược thường không được biết, nhưng có thể ướclượng được Mạng neural nhân tạo thường được dùng trong học tăng cường như là một phầncủa thuật toán toàn cục Các bài toán thường được giải quyết bằng học tăng cường là các bài

toán điều khiển, trò chơi, và các nhiệm vụ quyết định tuần tự (sequential decision making)

khác

Nhìn chung, học tăng cường giống là học theo “nhà phê bình” (học theo sự đánh giá) , ngược lại với học có giám sát là học theo “thầy giáo” (học theo sự hướng dẫn)

Trang 15

2.2 Huấn luyện mạng neural

a Lý thuyết về huấn luyện mạng neural

Để đào tạo một mạng neural, đầu tiên là một bộ đào tạo và một bộ thử nghiệm củacác dữ liệu mẫu từ quy trình này phải được tạo ra Đào tạo là xây dựng các cặp dữ liệu đầuvào và đầu ra, được gọi là mẫu Những mô hình không nhất thiết phải duy nhất, đầu ra đượcphép có nhiều hơn một đầu vào khác, tuy nhiên, một đầu vào chỉ có thể có một đầu ra riêngbiệt

Dữ liệu trong các bộ này phải là một mô hình hóa tốt cho dữ liệu quá trình trung bình

và do đó phải được soạn cẩn thận Điều này có nghĩa rằng cả hai bộ có thể tước bỏ bất kỳ dữliệu xấu như các lỗi do trục trặc trong quá trình hay máy móc Tuy nhiên, điều này không cónghĩa là mạng neural này không thể đào tạo để nhận ra các tính năng này Nó cũng có thểđược huấn luyện để nhận ra các lỗi này và xác định nguyên nhân có thể xảy ra của chúng

Sau khi các bộ dữ liệu được kiểm tra, chúng sẽ được đưa vào mạng Trong thời gianđào tạo, các trọng số được cập nhật theo cách như vậy mà tổng bình phương của sự khácbiệt giữa giá trị thực tế ngõ ra và ngõ ra của mạng, đã được giảm thiểu

Trong quá trình đào tạo của tất cả các cặp đầu vào / đầu ra của tập huấn luyện sẽđược trình bày nhiều lần vào mạng Số lần tập huấn luyện được trình bày tới mạng được gọi

là số lượng chu trình được sử dụng để huấn luyện mạng.Có bốn phương pháp tiếp cận khácnhau về cơ bản cho việc huấn luyện mạng neural

- Phương pháp tiếp cận đầu tiên là hiệu chỉnh lỗi quy tắc huấn luyện, nơi mà lỗi giữađầu ra của mạng và đầu ra đo được được sử dụng để hiệu chỉnh trọng số mạng tương thích

- Một phương pháp tiếp cận thứ hai là huấn luyện Boltzman, nó tương tự như hiệuchỉnh lỗi huấn luyện, tuy nhiên, đầu ra của một neural được dựa trên một phân bố thống kêBoltzman

- Phương pháp thứ ba là huấn luyện Hebbian, nơi huấn luyện được thực hiện cục bộbằng cách điều chỉnh trọng số dựa trên các hoạt động của neural

- Phương pháp thứ tư là huấn luyện cạnh tranh, nơi mà các neuron cạnh tranh theocách mà chỉ có một neural sẽ được kích hoạt trong một lặp nhất định

b Ví dụ về huấn luyện mạng neural

Ngày đăng: 09/12/2022, 09:25

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w