1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI tập NHÓM học PHẦN TRÍ TUỆ NHÂN tạo đề tài GIỚI THIỆU về máy học

24 461 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

Định dạng
Số trang 24
Dung lượng 6,75 MB

Nội dung

Nhưng trong nhiều trường hợp, khi chúng ta tìm ra được một sự mô tả thỏa đáng về một bài toán, một vấn đề nào đấy, khi đó chúng ta có thể “học” chúng qua các ví dụ.2.. Chuyên gia trong l

Trang 1

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

KHOA CÔNG NGHỆ THÔNG TIN

-* -BÀI TẬP NHÓM HỌC PHẦN TRÍ TUỆ NHÂN TẠO

Giảng viên hướng dẫn:

Bùi Đức Dương

Học viên thực hiện:

Lớp: 52CNTT ĐÀO ĐỨC LINH

HUỲNH MINH TRÍ TRẦN ĐỨC TRỌNG

Năm 2012

Trang 2

MỤC LỤC (Đánh tự động)

CHƯƠNG I 5

TỔNG QUAN VỀ HỆ HỌC 5

I KHÁI NIỆM VỀ HỌC 5

1 Đặt vấn đề 5

2 Học là gì? 5

II PHÂN LOẠI CÁCH HỌC 6

1 Học có giám sát 6

2 Phân nhóm 6

3 Học trau dồi 6

III NỘI DUNG VIỆC HỌC 6

1 Quá trình học 6

2 Mô tả bài toán 8

CHƯƠNG II 12

NGHIÊN CỨU VỀ BÀI TOÁN QUAN SÁT 12

I KHÁI QUÁT VỀ BÀI TOÁN QUAN SÁT 12

1 Cấu trúc bài toán 12

2 Khái niệm về sự “tốt nhất” 13

3 Nhắc lại về các phép toán logic 14

II NGHIÊN CỨU BÀI TOÁN QUAN SÁT 14

1 Mở đầu 14

2 Ví dụ cụ thể với thuật toán thứ nhất 15

3 Ví dụ cụ thể với thuật toán thứ hai 16

CHƯƠNG III 18

ĐÁNH GIÁ HOẠT ĐỘNG CỦA CÁC THUẬT TOÁN 18

TRONG KHÔNG GIAN DỮ LIỆU THỰC TẾ 18

I ĐẶT VẤN ĐỀ 18

II ĐÁNH GIÁ HOẠT ĐỘNG CỦA CÁC THUẬT TOÁN ĐÃ NÊU TRONG KHÔNG GIAN DỮ LIỆU THỰC TẾ 18

1 Một số giải pháp cho việc đánh giá thuật toán 18

2 Cải tiến thuật toán DNF 19

3 Kết luận chung về sự đánh giá thuật toán 23

Trang 3

LỜI GIỚI THIỆU

(Trong đó có nội dung giới thiệu công việc của từng thành viên)

Trang 4

DANH MỤC CÁC BẢNG (Đánh tự động)

DANH MỤC CÁC HÌNH (Đánh tự động)

Trang 5

Chẳng hạn bạn là những người có kiến thức về một hay một vài, thậm chí là nhiều đối tượng khác nhau (thường có mối liên hệ với nhau) về một lĩnh vực nào đó Nhưng trong nhiều trường hợp, khi chúng ta tìm ra được một sự mô tả thỏa đáng về một bài toán, một vấn đề nào đấy, khi đó chúng ta có thể “học” chúng qua các ví dụ.

2 Học là gì?

Theo nhiều chuyên gia, nhiều nhà nghiên cứu thì khái niệm “học” mang rất nhiều nghĩa khác nhau, mặc dù điều này đôi khi không tạo ra sự sai lệch đáng kể Ở đây, theo cách thông thường, ta có hiểu “học” qua các mô tả sau:

- Việc ghi nhớ một vài sự kiện, đối tượng, hay quan hệ nào đấy

- Việc học các sự thật thông qua các quan sát và khám phá

- Việc phát triển các kĩ năng nhận thức thông qua thực hành, luyện tập

- Việc tổ chức các tri thức mới thành các dạng tổng quát và hiệu quả

Chuyên gia trong lĩnh vực Trí tuệ nhân tạo và trong lĩnh vực Kinh Tế, Herb Simon,

đã đưa ra một định nghĩa như sau:

“Học có nghĩa là những thay đổi trong hệ thống một cách thích hợp sao cho hệ thống

có thể làm các thao tác như đã làm trước đó một cách ngày càng hiệu quả hơn trong những lần kế tiếp.”

Định nghĩa này thì không hoàn toàn chính xác nhưng phần nào nó cũng cho ta thấy ý tưởng chung rằng hệ học cần phải yêu cầu một số thông tin từ các ví dụ của một bài toán và rồi thực hiện chúng tốt hơn lần sau

Một trong những kiểu học thông dụng nhất là thu thập thông tin từ quá khứ và hiện tại để rồi đưa ra những phán đoán về một điều gì đấy trong tương lai Để đơn giản ta

có thể xem ví dụ sau:

- Mẩu bánh mì thứ nhất cung cấp chất dinh dưỡng khi ta ăn nó

- Mẩu bánh mì thứ hai cung cấp chất dinh dưỡng khi ta ăn nó

- Mẩu bánh mì thứ ba cung cấp chất dinh dưỡng khi ta ăn nó

- Mẩu bánh mì thứ tư cung cấp chất dinh dưỡng khi ta ăn nó

- …

- Do đó, mọi mẩu bánh mì đề cung cấp chất dinh dưỡng khi ta ăn nó.

Đây là một ví dụ khá thú vị và dễ hiểu mà David Hume đã đưa ra Cũng vậy, ta có thểhình dung điều này qua nhiều ví dụ khác, chẳng hạn như: Hôm qua, mặt trời mọc hướng Đông, hôm trước nữa cũng thế Lịch sử cũng ghi nhận rằng mặt trời luôn luôn

Trang 6

mọc hướng Đông Thế thì ta có thể đưa ra phán đoán là mặt trời sẽ mọc ở hướng Đôngvào ngày mai.

II PHÂN LOẠI CÁCH HỌC

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

Học có giám sát là kiểu học và cũng là bài toán học thông dụng nhất

Ví dụ chúng ta được cung cấp dữ liệu về cân nặng và chiều dài của một số con cá hồi

và một số con cá ngừ đại dương Công việc của hệ học theo kiểu quan sát là phải tìm

ra quy luật về mối quan hệ giữa cân nặng và chiều dài của một con cá để rồi từ đó có thể phán đoán về một con cá hồi hay một con cá ngừ đại dương

2 Phân nhóm

Phân nhóm cũng là một dạng khá thông dụng Ý tưởng chung là khi ta được cung cấpmột số mô tả về một tập hợp các cá thể riêng biệt (như động vật, các vì sao, đồ vật hay các văn bản,…) bằng một tập các đặc điểm (cân nặng, chiều cao, màu sắc,…), chúng

ta sẽ phải phân chia chúng ra thành một số nhóm

Trong phần tiếp theo chúng ta sẽ tập trung nghiên cứu vào bài toán quan sát

III NỘI DUNG VIỆC HỌC

1 Quá trình học

Chúng ta có thể hiểu với nhau việc học là cố gắng tìm ra một hàm có thể nhận được

từ một tập dữ liệu đầu vào và đầu ra Định nghĩa này dường như có vẻ khá hẹp, song

nó chứa đựng hầu hết các trường hợp tương tự như ở đây

Một cách hiểu đơn giản, nó giống như ta học cách phát âm các từ ngữ từ các kí tự và các âm tiết mà con người sáng tạo ra, hay nhận ra các kí tự viết tay từ một hình có chứa các chữ viết, hay rộng ra hơn là chẩn đoán các chứng bệnh từ việc thu thập các kết quả trong các phòng thí nghiệm y học

Bài toán học cách tìm ra một hàm thì không hề đơn giản chút nào Chúng ta có thể hình dung có ít nhất ba vấn đề quan trọng: ghi nhớ, trung bình hóa, tổng quát hóa

Ví dụ mà chúng ta sẽ tìm hiểu ngay sau đây nói về việc một người hàng xóm mà bạn biết sẽ đi là vào ngày mai bằng phương tiện gì, lái xe hay đi bộ?

Đầu tiên giả sử ta có bảng số liệu sau:

Trang 7

Với bảng dữ liệu trên thì câu hỏi đặt ra là người hàng xóm sẽ đi làm bằng phương tiện

gì nếu đó là một ngày thứ Hai, trời có tuyết với nhiệt độ 19 độ, cô ấy vận một bộ trang phục thông thường và sẽ không có ý định mua sắm Dễ thấy ở đây đã từng có một ngày như thế trong quá khứ và người hàng xóm đã sử dụng xe hơi để đi Rõ ràng đây chỉ là một sự ghi nhớ đơn thuần một hành động, sự kiện đã xảy ra trong quá khứ, bây giờ các điều kiện mô tả hội tụ trở lại thì chúng ta vận dụng điều đó để đưa ra phán đoán rằng cô ấy sẽ đi bằng xe hơi

Thế điều gì sẽ xảy ra nếu trường hợp mà ta xét tìm lại khá giống với khối dữ liệu mà

ta thu thập về các ngày trước, như sau đây chẳng hạn:

Trong bảng này, dữ liệu các cột nhiệt độ, thời tiết, thứ trong tuần, có đi mua sắm hay không và trang phục đều giống nhau, nhưng lại khác nhau ở việc lựa chọn phương tiện

đi Chú ý rằng có hai ngày mà cô ấy lái xe, còn lại năm trường hợp kia là đi bộ Vậy thì hẳn ta sẽ đưa ra kết luận là trong ngày ta đang xét, cô ấy sẽ đi bộ, với xác suất dựa trên quá khứ là 5/7 Hãy nhớ là việc dựa hoàn toàn trên xác suất không phải là nội dung chính mà ta nghiên cứu trong bài luận này vì tồn tại rất nhiều lý thuyết khó và phức tạp về xác suất thông kê để có thể hiểu sau về lĩnh vực toán học này Ta sẽ không

đề cập nhiều đến nó

Đôi khi chúng ta phải đối mặt với một vấn đề là một dữ kiện nào đấy mà ta xét lại gần giống với một trường hợp đã xảy ra trong quá khứ mà không phải giống hoàn toàn, lúc này có lẽ ta sẽ phải chọn trường hợp gần giống đó để làm câu trả lời Như trong bảng sau, ngày đang xét giống với dữ liệu của dòng thứ tư, chỉ khác nhiệt độ, tức

là 21 độ thay vì 20 độ như ta đang cần tìm

Trang 8

Thế còn đối với bảng dữ liệu sau thì sao? Ngày mà ta đang xét là một ngày thứ Hai

có mưa, nhiệt độ 58 độ, người hàng xóm không đi mua sắm và mặc bộ trang phục như thông thường (tức là không quá trang trọng)

Không có một câu trả lời hiển nhiên nào có thể đưa ra, hay thậm chí dễ suy đoán như các trường hợp bên trên Khi đó buộc chúng ta phải lập luận, phải tổng quát hóa các trường hợp của bài toán, tương tự như:

- Những khi trời mưa thì cô ấy đi bộ, thế thì hôm nay cô ấy sẽ đi bộ

- Hôm nay cô ấy sẽ lái xe vì hôm nay là thứ Hai, và cô ấy thì luôn luôn đi xe hơi vào thứ Hai

- Cô ấy sẽ lái xe vì cô ấy luôn làm như thế khi mặc một bộ quần áo trang trọng, hoặc nếu nhiệt độ trên 90 hoặc dưới 20

Trong phần sau ta sẽ tìm hiểu các phương thức mô tả không gian dữ liệu của bài toán

2 Mô tả bài toán

Hãy tưởng tượng rằng chúng ta phải tìm một mối liên kết giữa x và y trong một không gian các điểm dữ liệu, chúng có đầu ra là các điểm màu đỏ và các điểm màu đen

Trong trường hợp này chúng ta có thể đơn giản tìm ra một đường để chia đôi miền dữliệu ra, cụ thể ở đây là một đường thằng

Trang 9

Trong trường hợp các điểm dữ liệu phân bố như sau đây thì không thể dùng một đường thẳng được:

Lúc này thì ta dùng một đường cong để chia miền dữ liệu:

Còn trong trường hợp các điểm dữ liệu phân bố có sự đan xen vào nhau (nghĩa là không thể dùng một đường thằng, và cũng không thể dùng một đường cong có độ uốn thấp) thì ta làm thế nào, như trong ví dụ sau:

Trang 10

Có hai câu trả lời được đặt ra, một là dùng một đường cong với độ uốn cao để không phải bỏ sót bất cứ điểm dữ liệu nào:

Câu trả lời thứ hai là dùng một đường thẳng để chia miền và bỏ qua sự quan tâm đến một số điểm dữ liệu không nằm trong đúng miền của nó:

Theo cách này thì xảy ra lỗi ở một số điểm dữ liệu, song nó đã chia không gian dữ liệu một cách tương đối chấp nhận được

Có rất nhiều cách để làm điều này, tức là có rất nhiều thuật toán cho việc mô tả và giải quyết bài toán học, song ở đây ta sẽ giới thiệu một số các thuật toán, đó là thuật toán “người láng giềng gần nhất”, cây quyết định, mạng nơ ron

Trước hết là thuật toán “người láng giềng gần nhất” Thuật toán rất đơn giản, đó là tìm một điểm mà gần nhất với điểm câu hỏi của ta

Trang 11

Trong không gian điểm như trên, điểm gần nhất với điểm câu hỏi của ta là một điểm màu đỏ Vậy, điểm mà ta cần tìm sẽ có màu đỏ.

Thứ hai là cây quyết định Đây là một phương pháp rất được ưa chuộng Trong cây quyết định, mỗi nút là một câu hỏi và mỗi cung là một câu trả lời

Bằng việc sử dụng cây quyết định, ta có thể tìm ra được một đường dẫn từ nút gốc đến các nút lá, tức là lần lượt hỏi những câu hỏi rồi trả lời chúng theo như đầu vào mà bài toán cung cấp, khi đến nút lá, ta sẽ có câu trả lời muốn tìm, ở đây là tìm ra người hàng xóm sẽ đi làm bằng xe hơi hay đi bộ

Thứ ba, ta sẽ nói về mạng nơ ron Hẳn là đã nhiều người trong chúng ta đã từng nghe

ít nhất một lần về mạng nơ ron, đó là một dạng biểu diễn các giả thuyết phức tạp trong một không gian đa chiều liên tục Mạng nơ ron là một tổ hợp gồm nhiều đơn vị tính toán nhỏ kết hợp lại với nhau Nó được gọi là mạng nơ ron vì đơn giản nó cho ta một hình ảnh tương đối gần giống với hệ thống thần kinh nằm trong bộ não dù không chínhxác lắm Ta hãy xem hình ảnh chung sau đây:

Trang 12

Trong một mạng nơ ron, các đơn vị tính toán thực hiện những công việc tính toán đơn giản để mà kết nối các giá trị của chúng với các trọng số của các cung Quá trình học sẽ là làm sao để điều chỉnh các trọng số của các cung, từ đó xử lí lỗi trong mạng

nơ ron

Cho đến tận ngày nay, các phương pháp máy học đã khá thành công và đang trở thành lĩnh vực được nhiều người nghiên cứu cũng như đã đạt được một số thành tựu trong nhiều ngành nghề như:

- Đánh giá mức nợ tín dụng

- Tìm ra các chi tiết gian dối trong tín dụng

- Thu thập, phân nhóm các hình ảnh phục vụ nghiên cứu thiên văn

- …

Trong phần sau, ta sẽ nghiên cứu về bài toán quan sát và các thuật toán cụ thể trong việc giải quyết bài toán này

CHƯƠNG II

NGHIÊN CỨU VỀ BÀI TOÁN QUAN SÁT

I KHÁI QUÁT VỀ BÀI TOÁN QUAN SÁT

1 Cấu trúc bài toán

Để có thể nghiên cứu và phân tích bài toán quan sát, trước hết ta hãy sơ lược về cấu trúc của bài toán này

Một bài toán quan sát được cấu thành từ một số thành phần Thành phần thứ nhất là

dữ liệu (hay còn được gọi là tập huấn luyện) Dữ liệu, tức là D, là một tập hợp bao gồm m cặp đầu vào – đầu ra Chúng ta sẽ viết thành tố thứ i của tập dữ liệu là xi, yi Trong ngữ cảnh của bài toán chạy đua, một xi sẽ là một véc-tơ của dữ liệu, mỗi một trong số chúng tương ứng với một đặc điểm của dữ liệu, và một yi là một giá trị đầu ra(đi hoặc lái xe) Ta có dữ liệu được đưa ra:

x y x y x m y m

D 1 , 1 , 2 , 2 , , ,

output

Trang 13

Thông thường, chúng ta nghĩ rằng các đặc điểm này chỉ có thể mang giá trị 0 hoặc 1 Nhưng trên thực tế, nhiều khi chúng lại có thể mang giá trị từ một tập rời rạc như

“tuyết”, “mưa”, “không” chẳng hạn Thậm chí trong nhiều trường hợp chúng nhận giá trị thực, như nhiệt độ, độ ẩm, cân nặng hay chiều cao

Tương tự như thế, giá trị đầu ra, yi, có thể là kiểu đúng/sai (hay boolean như trong nhiều ngôn ngữ lập trình), phần tử của một tập rời rạc hoặc một giá trị thực

Khi yi là kiểu boolean, hoặc một phần tử của một tập rời rạc, thì ta gọi là bài toán phân lớp Khi nó nhận giá trị thực thì gọi là bài toán hồi quy

Nên chú ý rằng, mục tiêu chính của bài toán là tìm ra một giả thuyết, gọi là h, để có thể mô tả tốt được mối quan hệ giữa các giá trị đầu vào và các giá trị đầu ra Ta gọi H

là tập hợp các giả thuyết có thể có để mà ta lựa chọn từ việc sử dụng thuật toán học

Để mô tả điều này, ta có thể sử dụng một cây quyết định với các nút, hoặc một đường trong không gian hai chiều, hoặc một mạng nơ ron

Bây giờ chúng ta có thể gói gọn bài toán như sau: ta có một hợp dữ liệu và một tập hợp các giả thuyết có thể Yêu cầu bài toán của chúng ta là chọn ra được một giả thuyết “tốt nhất” Trong phần sau, chúng ta cần phải tìm hiểu nghĩa thật sự của từ “tốt nhất”

2 Khái niệm về sự “tốt nhất”

Có hai điều kiện rất quan trọng về sự tốt nhất Đó là:

- Giả thuyết phải làm tốt việc mô tả dữ liệu

- Giả thuyết không nên quá phức tạp

Nói về việc mô tả dữ liệu, ý tưởng chung là với một giả thuyết h thì tại mọi điểm i thìphải thỏa mãn h(xi) = yi Tuy nhiên trên thực tế nghiên cứu số liệu thì không phải lúc nào thực hiện được điều này mà đôi khi chỉ có thể thỏa mãn ở phần lớn dữ liệu ở một mức độ trung bình nào đấy

Rõ ràng ở đây sẽ xảy ra các trường mà đẳng thức trên không thỏa, lúc đó gọi ra lỗi

Để đo mức độ lỗi của một giả thuyết thì người ta dùng dạng E(h,D), chẳng hạn bằng sốđiểm không thỏa mãn đẳng thức trên

Nói đến yếu tố thứ hai, tức là độ phức tạp của giả thuyết, người ta có thể dùng một cây quyết định với số nút của nó, hay một đường trong mặt phẳng tọa độ với độ phức tạp được biểu thị bằng độ uốn của nó Ở đây ta kí hiệu độ phức tạp của giả thuyết h trong tập H là C(h)

Nhưng tại sao chúng ta lại quan tâm đến độ phức tạp này? Chúng ta thường có cảm giác những giả thuyết ở mức trung bình và đơn giản thì là tốt nhất

Như vậy, với một tập dữ liệu D, một lớp giả thuyết H, một hàm đo độ tốt (hay mức lỗi) của giả thuyết E và một thước đo độ phức tạp C thì công việc chính của chúng ta

sẽ là làm sao để tối thiểu được giá trị của biểu thức E(h,D) + α*C(h), trong đó α là hệ

số mà ta có thể thay đổi trong quá trình nghiên cứu các giả thuyết Dĩ nhiên là một cách tổng quát thì ta khó lòng làm điều này một cách hiệu quả, song chúng ta sẽ phải

cố gắng để đạt được mức xấp xỉ tốt

Thế thì làm thế nào để ta có thể tối thiểu hóa được giá trị của biểu thức E(h,D) + α*C(h) Một số trường hợp ta có thể tìm ra h tối ưu một cách trực tiếp hay tìm kiếm từ việc nghiên cứu một mạng nơ ron

Trang 14

3 Nhắc lại về các phép toán logic

Trong phần này, để làm tiền đề cho việc nghiên cứu bài toán quan sát thì chúng ta sẽ

sơ lược lại những nét chính về các phép toán logic, tức là các phép toán liên quan đến các giá trị nhị phân

Thông thường chúng ta sử dụng hai kí tự cho việc biễu diễn hai giá trị đúng và sai là

1 và 0 Khi đó:

- Phép toán “và” hay “hội” thể hiện giá trị đúng khi cả hai cùng đúng

- Phép toán “hoặc” hay “tuyển” thể hiện giá trị sai khi cả hai cùng sai

- Dấu trừ - ở phía trước kí tự thể hiện giá trị ngược lại

II NGHIÊN CỨU BÀI TOÁN QUAN SÁT

Chúng ta thử nói về giả thuyết f1^ f3, nó trả về giá trị của biểu thức này trong ví dụ 2

và 3 là 1 nhưng đối với các bộ dữ liệu còn lại là 0

Dễ thấy với biểu thức f1^ f3 thì chỉ có ba bộ dữ liệu là thỏa, còn ba bộ dữ liệu kia thì không

Ngày đăng: 06/12/2015, 03:05

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w