Khái niệm về trí tuệ nhân tạoTrong lĩnh vực Công nghê ̣ thông tin, Trí tuê ̣ nhân tạo TTNT c甃̀ng có thể hiểu là“thông minh nhân tạo”, tức là sự thông minh của máy móc do con người tạo ra
Trang 1-🙞🙞🙞🙞🙞 -BÁO CÁO THÍ NGHIỆM/THỰC NGHIỆM HỌC PHẦN: TRÍ TUỆ NHÂN TẠO
Đề tài : Chẩn đoán bệnh ung thư phổi
Sinh viên thực hiện:
Bùi Văn Đức - 2020604129 Phạm Mạnh Hùng - 2020604260
Nguyễn Thị Minh Ngọc – 2020604313Lớp: 2022IT6043008 Khóa: K15 Nhóm : 19
Người hướng dẫn :Ths Nguyễn Lan Anh
Hà Nội – 12/2022
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
Trang 2MỤC LỤC
LỜI CẢM ƠN 4
DANH MỤC HÌNH VẼ 5
DANH MỤC VIẾT TẮT 5
MỞ ĐẦU 6
1 Lý do chọn đề tài 6
2 Mục tiêu đề tài 6
3 Phương pháp nghiên cứu 6
4 Đối tượng và phạm vi nghiên cứu 6
CHƯƠNG 1.TỔNG QUAN VỀ TRÍ TUỆ NHÂN TẠO 7
1.1 Khái niệm về trí tuệ nhân tạo 7
1.2.Vai trò của trí tuệ nhân tạo 9
1.3 Các kĩ thuật cơ bản 10
1.4 Lịch sử phát triển 11
1.5 Các thành phần trong hệ thống của TTNT 13
1.6 Phân loại công nghệ TTNT 13
1.7.Các lĩnh vực nghiên cứu 14
1.8 Ứng dụng 15
CHƯƠNG 2: TỔNG QUAN VỀ MẠNG NƠ-RON 16
2.1 Giới thiệu về Neural Network 16
2.2.Mô hình Neural network 17
2.2.1 Logistic regression 17
2.2.2 Mô hình tổng quát 19
2.2.3 Kí hiệu 19
2.3.Thuật toán CNN (Convolutional Neural Network) 20
2.3.1 Khái niệm 20
Trang 32.3.2 CONVOLUTIONAL là gì? 20
2.3.3 Cấu trúc mạng CNN 20
2.3.4 Cách chọn tham số cho CNN 25
2.3.5 Một số mạng CNN nổi tiếng 25
CHƯƠNG 3: DỰ ĐOÁN UNG THƯ PHỔI 32
3.1.Sơ lược về ung thư phổi 32
3.2 Bài toán 33
3.2.1 Đầu vào 34
3.2.2 Đầu ra 34
3.3.Cơ sở dữ liệu 34
3.3.1.Chương trình 34
3.3.2.Khởi tạo mạng CNN 34
3.3.3.Chuẩn bị dữ liệu 34
3.4 Kết quả 34
CHƯƠNG 4: TỔNG KẾT 42
TÀI LIỆU THAM KHẢO 43
Trang 4LỜI CẢM ƠN
Trước tiên với tình cảm sâu sắc và chân thành nhất, cho phép em được bày tỏlòng biết ơn đến tất cả các cá nhân và tổ chức đã tạo điều kiện hỗ trợ, giúp đỡ em trongsuốt quá trình học tập và nghiên cứu đề tài này Trong suốt thời gian làm đề tài nghiêncứu cho bài tập lớn em đã nhận được rất nhiều sự quan tâm, giúp đỡ của quý thầy cô
và bạn bè
Với lòng biết ơn sâu sắc nhất, em xin gửi đến quý thầy cô ở Khoa Công nghệ
thông tin và người đã trực tiếp dẫn dắt nhóm em là cô Nguyễn Lan Anh đã truyền đạt
vốn kiến thức quý báu cho chúng em trong suốt thời gian làm bài tập lớn Nhờ cónhững lời hướng dẫn, dạy bảo của các thầy cô nên đề tài nghiên cứu của em mới có thểhoàn thiện tốt đẹp
Những đóng góp của mọi người là kinh nghiệm quý báu giúp cho những thànhviên trong nhóm sẽ có những dự tính sau này trong việc làm đồ án tốt nghiệp và saukhi tốt nghiệp
Chúng em xin chân thành cảm ơn!
Trang 5DANH MỤC HÌNH VẼ
Hình 1.1: Phép thử Turing
Hình 1.2: Mô hình tác nhân thông minh
Hình 1.3: Người máy ASIMO đưa đồ uống cho khách theo yêu cầu
Hình 1.4: Mô hình hê ̣ chuyên gia
Hình 2.1: Tế bào nơ-ron
Hình 2.2: Mô hình Logistic regression
Hình 2.3: Mô hình neural network
Hình 2.4: Cấu trúc mạng CNN
Hình 2.5: Bộ dữ liệu ImageNet
Hình 2.6: Các cấu hình khác nhau của VGG
Hình 2.7: Mô hình tổng quan khi so sánh VGG16 và VGG19 với AlexNet
Hình 2.8: Kết quả của mô hình VGG so với các mô hình trước đó
Hình 3.1: Lá phổi có tế bào ung thư
Hình 3.2: Ảnh chụp X-quang phổi ung thư
DANH MỤC VIẾT TẮT
Trang 6Đặc biệt cùng với sự phát triển của phần cứng mạnh mẽ cho phép tính toán hàng
tỷ phép tính trong một giây, tạo tiền đề cho mạng CNN trở nên phổ biến hơn Mộttrong những ứng dụng quan trọng của mạng CNN đó là cho phép các máy tính có khảnăng nhìn và phân tích, mạng CNN được sử dụng để nhận dạng hình ảnh của đối tượngbằng cách đưa nó qua nhiều lớp với một bộ lọc tích chập để sau đó có thể nhận dạngđược đối tượng đó
Hằng năm trên thế giới có hàng chục triệu người mắc bệnh ung thư và có khoảnghàng triệu người chết vì căn bệnh này Thời gian sống thêm kể từ lúc xác định bệnhđến khi tử vong của đa số các trường hợp ung thư giai đoạn muộn là không quá 6tháng
Lịch sử phát hiện và chẩn đoán sang thư đã trải qua nhiều cách nhìn, sờ, gõ, ngheđến các giai đoạn khám xét cận lâm sàng: Chẩn đoán tế bào học trên kính hiển vithường có độ phóng đại lớn, đến kính hiển vi điện tử có độ phóng đại gấp hàng nghìnlần so với kính hiển vi quang học thường và càng ngày càng ngày nay người ta sửdụng các phương pháp: Siêu âm, phương pháp chẩn đoán Y học hạt nhân: SPECT(single photon emission computer tomography), PET (positron EmissionTomography), X quang: quy ước và CT, MRI, nội soi (bao gồm cả nội soi sinh thiết)
Vì vậy, để nhận dạng ung thư phổi luận văn áp dụng các kỹ thuật học sâu để nhậndạng ung thư phổi hiện nay là rất cần thiết
2 Mục tiêu đề tài
Trình bày và giải thích được thuật toán CNN
Sử dụng được công cụ Google Colab
Ứng dụng ngôn ngữ python để giải quyết bài toán “Chẩn đoán ung thư phổi”
3 Phương pháp nghiên cứu
Xây dựng dữ liệu để huấn luyện mô hình cho phương pháp và đánh giá phươngpháp
Tiến hành thực nghiệm và đánh giá kết quả dựa trên mô hình và dữ liệu
4 Đối tượng và phạm vi nghiên cứu
Các ảnh chụp X-quang về phổi của con người
Trang 7CHƯƠNG 1.TỔNG QUAN VỀ TRÍ TUỆ NHÂN TẠO 1.1 Khái niệm về trí tuệ nhân tạo
Trong lĩnh vực Công nghê ̣ thông tin, Trí tuê ̣ nhân tạo (TTNT) c甃̀ng có thể hiểu là
“thông minh nhân tạo”, tức là sự thông minh của máy móc do con người tạo ra, đă ̣cbiê ̣t tạo ra cho máy tính, robot, hay các máy móc có các thành phần tính toán điê ̣n tử.TTNT là một ngành mới, nhưng phát triển rất mạnh mẽ và đem lại nhiều kết quả tolớn Mùa hè 1956, tại hội thảo ở Darmouth John McCarthy đã đưa ra thuật ngữ trí tuê ̣nhân tạo (Artificial Intelligence - AI) Mốc thời gian này được xem là thời điểm ra đờithực sự của lĩnh vực nghiên cứu TTNT
TTNT là một lĩnh vực nghiên cứu của khoa học máy tính và khoa học tính toánnói chung Có nhiều quan điểm khác nhau về TTNT Do đó có nhiều định nghĩa khácnhau về lĩnh vực này Sau đây là một số định nghĩa [3]:
“Sự nghiên cứu các năng lực trí tuê ̣ thông qua viê ̣c sử dụng các
mô hình tính toán” (Charniak và McDormott, 1985)
“Nghê ̣ thuật tạo ra các máy thực hiê ̣n các chức năng đòi hỏi sựthông minh khi được thực hiê ̣n bởi con người” (Kurzweil, 1990)
hành vi thông minh trong thuật ngữ các quá trình tính toán” (Schalkoff,1990)
“Sự nghiên cứu các tính toán để có thể nhận thức, lập luận vàhành động” (Winston, 1992)
hóa các hành vi thông minh” (Luger and Stubblefield, 1993)
(Poole, Mackworth and Goebel, 1998)
Trí tuê ̣ nhân tạo là một nhánh của khoa học và công nghê ̣ liên quan đến viê ̣c làmcho máy tính có những năng lực của trí tuê ̣ con người, tiêu biểu như các khả năng biếtsuy nghĩ và lập luận để giải quyết vấn đề, biết giao tiếp do hiểu ngôn ngữ và tiếng nói,biết học và tự thích nghi,…[2]
Mong muốn làm cho máy có những khả năng của trí thông minh con người dã có
từ nhiều thế kỷ trước, tuy nhiên TTNT ch椃ऀ xuất hiê ̣n khi con người sang tạo ra máytính điê ̣n tử Alan Turing – nhà toán học lỗi lạc người Anh, người được xem là cha đecủa Tin học do đưa ra cách hình thức hóa các khái niê ̣m thuật toán và tính toán trênmáy Turing – một mô hình máy trừu tượng mô tả bản chất viê ̣c xử lý các ký hiê ̣u hìnhthức - có đóng góp quan trọng và thú vị cho TTNT vào năm 1950, gọi là phép thử
Trang 8Turing Theo Turing: “Trí tuê ̣ là những gì có thể đánh giá được thông qua các trắcnghiê ̣m thông minh”
Khái niệm trí tuệ đưa ra trong từ điển bách khoa toàn thư:
Trí tuệ là khả năng: Phản ứng một cách thích hợp những tình huống mới
thông qua hiê ̣u ch椃ऀnh hành vi một cách thích đáng Hiểu rõ những mối liên hê ̣ qua lạicủa các sự kiê ̣n của thế giới bên ngoài nhằm đưa ra những hành động phù hợp đạt tớimột mục đích nào đó
Hiê ̣n nay nhiều nhà nghiên cứu quan niê ̣m rằng, TTNT là lĩnh vực nghiêncứu sự thiết kế các tác nhân thông minh (intelligent agent) Tác nhân thông minh là bất
cứ cái gì tồn tại trong môi trường và hành động một cách thông minh
Hình 1.2 Mô hình tác nhân thông minh.
Theo M.Minskey: “Trí tuê ̣ nhân tạo mô phỏng bằng máy tính để thí nghiê ̣mmột mô hình nào đó “
TTNT là một ngành của khoa học máy tính - nghiên cứu xử lý thông tinbằng máy tính, do đó TTNT đă ̣t ra mục tiêu nghiên cứu: làm thế nào thể hiê ̣n được các
Trang 9hành vi thông minh bằng thuật toán, rồi nghiên cứu các phương pháp cài đă ̣t cácchương trình có thể thực hiê ̣n được các hành vi thông minh bằng thuật toán, tiếp theochúng ta cần ch椃ऀ ra tính hiê ̣u quả, tính khả thi của thuật toán thực hiê ̣n một nhiê ̣m vụ,
và đưa ra các phương pháp cài đă ̣t
Mục tiêu của ngành TTNT: Nhằm tạo ra các máy tính có khả năng nhậnthức, suy luận và phản ứng Xây dựng TTNT là tìm cách biểu diễn tri thức và pháthiê ̣n tri thức từ các thông tin có sẵn để đưa vào trong máy tính Để máy tính có cáckhái niê ̣m nhận thức, suy luận, phản ứng thì ta cần phải cung cấp tri thức cho nó
Hình 1.3 Người máy ASIMO đưa đồ uống cho khách theo yêu cầu
1.2.Vai trò của trí tuệ nhân tạo
Trí tuê ̣ nhân tạo nghiên cứu kỹ thuật làm cho máy tính có thể “suy nghĩ một cáchthông minh” và mô phỏng quá trình suy nghĩ của con người khi đưa ra những quyếtđịnh, lời giải Trên cơ sở đó, ta có thể thiết kế các chương trình cho máy tính để giảiquyết bài toán [2]
Sự ra đời và phát triển của TTNT đã tạo ra một bước nhảy vọt về chất trong kỹthuật và kỹ nghê ̣ xử lý thông tin Trí tuê ̣ nhân tạo chính là cơ sở của công nghê ̣ xử lýthông tin mới, độc lập với công nghê ̣ xử lý thông tin truyền thống dựa trên văn bảngiấy tờ Điều này được thể hiê ̣n qua các mă ̣t sau:
Nhờ những công cụ hình thức hoá (các mô hinh logic ngôn ngữ, logicmờ, ), các tri thức thủ tục và tri thức mô tả có thể biểu diễn được trongmáy Do vậy quá trình giải bài toán được thực hiê ̣n hiê ̣u quả hơn
Mô hình logic ngôn ngữ đã mở rộng khả năng ứng dụng của máy tính tronglĩnh vực đòi hỏi tri thức chuyên gia ở trình độ cao, rất khó như: y học, sinhhọc, địa lý, tự động hóa
Một số phần mềm trí tuê ̣ nhân tạo thể hiê ̣n tính thích nghi và tính mềm deođối với các lớp bài toán thuộc nhiều lĩnh vực khác nhau
Khi máy tính được trang bị các phần mềm trí tuê ̣ nhân tạo, viê ̣c sử dụngmạng sẽ cho phép giải quyết những bài toán cỡ lớn và phân tán
So sánh kỹ thuật lập trình truyền thống và kỹ thuật xử lý tri thức trong TTNT
Trang 10tự nhiên, dễ khai thác nhằm thu hẹp các khả năng cần xét để đi tới lời giải cuối cùng.
Các kỹ thuật Trí tuê ̣ nhân tạo cơ bản bao gồm:
Lý thuyết giải bài toán và suy diễn thông minh: Lý thuyết giải bài toán
cho phép viết các chương trình giải câu đố, các trò chơi thông qua các suyluận mang tính người
Lý thuyết tìm kiếm may rủi: Lý thuyết này bao gồm các phương pháp và
kỹ thuật tìm kiếm với sự hỗ trợ của thông tin phụ để giải bài toán một cách
có hiê ̣u quả
Các ngôn ngữ về TTNT: Để xử lý các tri thức người ta không ch椃ऀ sử dụng
các ngôn ngữ lập trình dùng cho các xử lý dữ liê ̣u số, mà cần có ngôn ngữkhác Các ngôn ngữ chuyên dụng này cho phép lưu trữ và xử lý thông tin kýhiê ̣u Một số ngôn ngữ được nhiều người biết đến là LISP, PROLOG,
Lý thuyết thể hiện tri thức và hệ chuyên gia: Trí tuê ̣ nhân tạo là khoa học
về thể hiê ̣n và sử dụng tri thức Mạng ngữ nghĩa, logic vị từ, Frame,… làcác phương pháp biểu diễn tri thức thông dụng Viê ̣c gắn liền cách thể hiê ̣n
và sử dụng tri thức là cơ sở hình thành hê ̣ chuyên gia
Lý thuyết nhâ ̣n dạng và xử lý tiếng nói: Giai đoạn phát triển đầu của
TTNT gắn với lý thuyết nhận dạng Ứng dụng của phương pháp này trongviê ̣c nhận dạng chữ viết, âm thanh,…
Người máy: Cuối những năm 70, người máy trong công nghiê ̣p đã đạt được
nhiều tiến bộ Người máy có bộ phận cảm nhận và các cơ chế hoạt độngđược nối ghép theo sự điều khiển thông minh Khoa học về cơ học vàTTNT được tích hợp trong khoa học người máy
Tâm lý học xử lý thông tin : Các kết quả nghiên cứu của tâm lý học giúp
Trí tuê ̣ nhân tạo xây dựng các cơ chế trả lời theo hành vi, có ý thức; nó giúpcho viê ̣c thực hiê ̣n các suy diễn mang tính người
Trang 11 Ngoài ra, xử lý danh sách, kỹ thuâ ̣t đệ quy, kỹ thuâ ̣t quay lui và xử lý cú
pháp hình thức là những kỹ thuật cơ bản của tin học truyền thống có liên
quan trực tiếp đến TTNT
1.4 Lịch sử phát triển
Lịch sử của TTNT cho thấy ngành khoa học này có nhiều kết quả đáng ghi nhận.Theo các mốc phát triển, người ta thấy TTNT được sinh ra từ những năm 50 với các sựkiê ̣n sau:
Turing được coi là người khai sinh ngành TTNT bởi phát hiê ̣n của ông vềmáy tính có thể lưu trữ chương trình và dữ liê ̣u
Tháng 8/1956 J.Mc Carthy, M Minsky, A Newell, Shannon Simon ,… đưa
ra khái niêm “trí tuê ̣ nhân tạo”
Vào khoảng năm 1960 tại Đại học MIT (Massachusetts Institute ofTechnology) ngôn ngữ LISP ra đời, phù hợp với các nhu cầu xử lý đă ̣ctrưng của trí tuê ̣ nhân tạo - đó là ngôn ngữ lập trình đầu tiên dùng cho trí tuê ̣nhân tạo
Thuật ngữ TTNT được dùng đầu tiên vào năm 1961 c甃̀ng tại MIT
Những năm 60 là giai đoạn lạc quan cao độ về khả năng làm cho máy tínhbiết suy nghĩ Trong giai đoạn này người ta đã được chứng kiến máy chơi
cờ đầu tiên và các chương trình chứng minh định lý tự động Cụ thể:
-1961: Chương trình tính tích phân bất định-1963: Các chương trình heuristics: Chương trình chứng minh các địnhlý
hình học không gian có tên là “tương tự”, chương trình chơi cờ củaSamuel
-1964: Chương trình giải phương trình đại số sơ cấp, chương trình trợgiúp ELIZA (có khả năng làm viê ̣c giống như một chuyên gia phân tíchtâm lý)
-1966: Chương trình phân tích và tổng hợp tiếng nói -1968: Chương trình điều khiển người máy (Robot) theo đồ án “Mắt –tay”, chương trình học nói
Vào những năm 60, do giới hạn khả năng của các thiết bị, bộ nhớ và đă ̣cbiê ̣t là yếu tố thời gian thực hiê ̣n nên có sự khó khăn trong viê ̣c tổng quáthoá các kết quả cụ thể vào trong một chương trình mềm deo thông minh
Vào những năm 70, máy tính với bộ nhớ lớn và tốc độ tính toán nhanhnhưng các phương pháp tiếp cận TTNT c甃̀ vẫn thất bại do sự bùng nổ tổhợp trong quá trình tìm kiếm lời giải các bài toán đă ̣t ra
Vào cuối những năm 70 một vài kết quả như xử lý ngôn ngữ tự nhiên, biểudiễn tri thức và giải quyết vấn đề Những kết quả đó đã tạo điều kiê ̣n chosản phẩm thương mại đầu tiên của TTNT ra đời đó là Hê ̣ chuyên gia, đượcđem áp dụng trong các lĩnh vực khác nhau (Hê ̣ chuyên gia là một phầnmềm máy tính chứa các thông tin và tri thức về một lĩnh vực cụ thể nào đó,
có khả năng giải quyết những yêu cầu của người sử dụng trong một mức độnào đó, ở một trình độ như một chuyên gia con người có kinh nghiê ̣m khálâu năm) Hê ̣ chuyên gia thay thế con người / trợ giúp con người ra quyếtđịnh
Trang 12Hình 1.4 Mô hình hê ̣ chuyên gia
Một sự kiê ̣n quan trọng vào những năm 70 là sự ra đời ngôn ngữ Prolog,tương tự LISP nhưng nó có cơ sở dữ liê ̣u đi kèm
Vào những năm 80 chứng kiến sự hồi sinh, bùng nổ và thi đua quốc tế trongngành TTNT 夃Ā tưởng cơ bản để phát triển TTNT khi này là sự thông minhcủa máy tính không thể ch椃ऀ dựa trên viê ̣c suy diễn logic mà phải dựa cả vào(Công nghê ̣ tri thức) (Tri thức chuyên gia và suy diễn) Chuyên gia conngười Kỹ sư xử lý tri thức Hê ̣ chuyên gia (Cơ sở tri thức + Động cơ suydiễn) tri thức của con người, và dùng khả năng suy diễn của máy để khaithác tri thức này Cốt lõi của TTNT có thể diễn giải bởi công thức
TTNT = Tri thức + Suy diễn
Thành quả và nỗ lực tiêu biểu trong giai đoạn này là sự phát triển của các
hê ̣ chuyên gia Mỗi hê ̣ chuyên gia về cơ bản gồm hai thành phần: Cơ sở trithức chứa các tri thức chuyên gia trong một lĩnh vực và một cơ chế suy diễnnhằm vận dụng các hiểu biết này để giải quyết các vấn đề cụ thể với hiê ̣uquả như chính chuyên gia giải quyết Hai hê ̣ chuyên gia tiêu biểu làDENDRAL và MYCIN Hê ̣ DENDRAL giúp các nhà nghiên cứu hóa họchữu cơ xác định các phần tử hữu cơ chưa biết dựa trên phân tích phổ củachúng và các tri thức hóa học MYCIN là hê ̣ chuyên gia y học có cơ sở trithức khoảng 600 luật
Đề án máy tính thế hê ̣ thứ 5 FGCS (Fifth Generation Computer Systems)của Nhật Bản do Bộ Ngoại thương và Công nghiê ̣p phát động FGCS kéodài trong 10 năm (1982-1992) Đề án FGCS nhằm làm ra các hê ̣ máy tính
có khả năng suy diễn và giao tiếp bằng ngôn ngữ tự nhiên trên nền tính toánsong song Mă ̣c dù cuối cùng được đánh giá là thất bại do không đạt đượcmục tiêu, nhưng đề án FGCS đã kích thích một cuộc thi đua quốc tế tronggiai đoạn hồi sinh của TTNT Đề án này c甃̀ng đă ̣t ra và thách thức nhiều vấn
đề cho giới nghiên cứu trên toàn thế giới
Những năm 90 cho đến nay, các nghiên cứu nhằm vào cài đă ̣t thành phầnthông minh trong các hê ̣ thống thông tin, gọi chung là cài đă ̣t TTNT, làm rõhơn các ngành của khoa học TTNT và tiến hành các nghiên cứu mới, đă ̣cbiê ̣t là nghiên cứu về cơ chế suy lý, về các mô hình tương tác Các nghiên
Trang 13cứu về AI phân tán, mạng nơron nhân tạo, logic mờ, thuật giải di truyền,khai phá dữ liê ̣u, web ngữ nghĩa, tin sinh học, mạng xã hội,…
1.5 Các thành phần trong hệ thống của TTNT
Hê ̣ thống trí tuê ̣ nhân tạo bao gồm hai thành phần cơ bản đó là biểu diễn tri thức
và tìm kiếm tri thức trong miền biểu diễn:
TTNT = Tri thức + Suy diễn
Tri thức của bài toán có thể được phân ra làm ba loại cơ bản đó là tri thức mô tả,tri thức thủ tục và tri thức điều khiển
Để biểu diễn tri thức người ta sử dụng các phương pháp sau đây:
Phương pháp biểu diễn nhờ luât
Phương pháp biểu diễn nhờ mạng ngữ nghĩa
Phương pháp biểu diễn nhờ bộ ba liên hợp OAV
Phương pháp biểu diễn nhờ Frame
Phương pháp biểu diễn nhờ logic vị tư
Sau khi tri thức của bài toán đã được biểu diễn, kỹ thuật trong lĩnh vực trí tuê ̣nhân tạo là các phương pháp tìm kiếm trong miền đă ̣c trưng tri thức về bài toán đó.Với mỗi cách biểu diễn sẽ có các giải pháp tương ứng Các vấn đề này sẽ được đề cậptrong chương 3
1.6 Phân loại công nghệ TTNT
Loại 1: Công nghệ AI phản ứng (Reactive Machine)
Công nghệ AI phản ứng (Reactive Machine) dùng để phân tích những động tháikhả thi – của chính nó và đổi thủ và chọn hành động chiến lược nhất
Ví dụ: Chương trình tự động chơi cờ vua của IBM đã đánh bại kì thủ thếgiới Garry Kasparov vào những năm 1990 Công nghệ AI của Deep Blue có thể xácđịnh các nước cờ và dự đoán những bước đi tiếp theo Nhưng nó không có ký ức vàkhông thể sử dụng những kinh nghiệm trong quá khứ để tiếp tục huấn luyện trongtương lai
Deep Blue và AlphaGO (chơi cờ vây) của Google được thiết kế cho các mục đíchhẹp và không thể dễ dàng áp dụng cho tình huống khác
Loại 2: Công nghệ AI với bộ nhớ hạn chế
Các ứng dụng AI này được sử dụng những kinh nghiệm trong quá khứ để đưa racác quyết định trong tương lai
Một số chức năng ra quyết định này có mặt trong các loại thiết bị không người láinhư xe, máy bay drone hoặc tàu ngầm Kết hợp các cảm biến môi trường xung quanhcông nghệ AI này có thể dự đoán được tình huống và đưa ra những bước hành động tối
ưu cho thiết bị Sau đó chúng sẽ được sử dụng để đưa ra hành động trong bước tiếptheo
Loại 3: Lý thuyết về trí tuệ nhân tạo
Trang 14Đây là công nghệ AI có thể tự mình suy nghĩ và học hỏi các thứ xung quanh để
áp dụng cho chính bản thân nó cho một việc cụ thể Tuy nhiên công nghệ AI này chưakhả thi trong hiện tại
Loại 4: Tự nhận thức
Hệ thống AI tự nhận thức về bản thân, có ý thức và hành xử như con người Cácứng dụng AI này còn có cảm xúc và hiểu được cảm xúc của những người khác Tuynhiên, loại công nghệ AI này chưa khả thi
1.7.Các lĩnh vực nghiên cứu
Có nhiều nội dung nghiên cứu và phát triển của TTNT, từ cách để máy có thể suydiễn logic và nhận thức, cách ra quyết định và giải quyết vấn đề, cách biểu diễn tri conngười trong máy, cách lập kế hoạch hành động, hay biết cách tự học để tạo ra tri thứcmới, … đến dịch tự động các ngôn ngữ, tìm kiếm thông tin trên Internet, robot thôngminh Ta nói về một vài lĩnh vực của TTNT trong những năm qua [2]
Xử lý ngôn ngữ tự nhiên (natural language processing)
Liê ̣u m愃Āy c漃Ā thऀ n漃Āi được như người?
Đây là bài toán tổng hợp tiếng nói, tức viê ̣c làm cho máy biết đọc các văn bảnthành tiếng người Có thể hình dung nếu ta đưa cho máy các luật phát âm tiết, bài toánnày sẽ là viê ̣c áp dụng các luật này vào các âm tiết trong một từ để tạo ra cách đọc từnày Đã có nhiều hê ̣ thống tạo ra được giọng đọc tự nhiên của con người hoă ̣c đọcgiống giọng một người nào đấy, nhất là cho các ngôn ngữ được nghiên cứu nhiều nhưtiếng Anh
Liê ̣u m愃Āy c漃Ā thऀ nhâ ̣n biĀt được tiĀng người n漃Āi?
Đây là bài toán nhận dạng tiếng nói, tức viê ̣c làm cho máy biết chuyển tiếngnói của người từ microphone thành dãy các từ Đây là bài toán rất khó, vì âm thanhngười nói là liên tục và các âm quyê ̣n nối vào nhau, vì mỗi người mỗi giọng,… Vớitiếng nói chuẩn, các hê ̣ hiê ̣n đại cung mới nhận dạng đúng được khoảng 60%-70%
Liê ̣u m愃Āy c漃Ā hiऀu được tiĀng n漃Āi v愃
Hiểu ngôn ngữ là một đă ̣c trưng tiêu biểu của trí tuê ̣ và viê ̣c làm cho máy hiểuđược ngôn ngữ là một trong những vấn đề khó nhất của TTNT nói riêng và của CNTTnói chung Để hiểu nghĩa một câu, máy không ch椃ऀ cần biết nghĩa của từng từ, mà trướchết phải biết phân tích được câu này về mă ̣t ngữ pháp Để làm viê ̣c này, máy phải táchcâu thành các từ đong le hay cụm từ, nhận viết chúng là các loại từ gì rồi xác định cấutrúc của câu, đoán nghĩa của từng từ và giải nghĩa của câu Ngôn ngữ thường này trởnên vô cùng khó đối với máy
Dịch tự đô ̣ng
Liên quan đến hiểu ngôn ngữ là dịch tự động từ tiếng này sang tiếng khác.Viê ̣c dịch này đòi hỏi máy không ch椃ऀ phải hiểu đúng nghĩ a câu tiếng Viê ̣t mà còn phảitạo ra được câu tiếng Anh tương ứng
Tìm kiếm thông tin trên mạng
Đây là lĩnh vực có sự chia se nhiều nhất giữa TTNT và Internet, và ngày càngtrở nên hết sức quan trọng Sẽ sớm đến một ngày, mọi sách bào của con người được sốhóa và để lên mạng hay các thư viê ̣n số cực lớn Chẳng hạn để tìm các tài liê ̣u có liênquan đến “trí tuê ̣ nhân tạo và ứng dụng trong khoa học” Với bài toán này có ít nhất haicách để TTNT đóng góp vào Một là hê ̣ tìm kiếm các văn bản trong thư viê ̣n theonghĩa này Hai là hê ̣ tìm kiếm sẽ mô hình các từ “trí tuê ̣ nhân tạo”, “khoa học”, mỗi mô
Trang 15hình là tập hợp các từ khác kèm theo phân bố xác suất của chúng theo quy luật thông
kê Thay vì tìm kiếm trên mạng hay trong thư viê ̣n với hai tâp hợp từ khóa, hê ̣ sẽ tìmkiếm với ba tập hợp từ
Thị giác máy (computer vision): nghiên cứu về viê ̣c thu nhận, xử lý, nhận dạngthông tin hình ảnh thành biểu biễn mức cao hơn như các đối tượng xung quanh để máytính có thể hiểu được
Lý thuyết tìm kiếm heuristics: bao gồm các phương pháp và các kỹ thuật tìmkiếm, sử dụng các tri thức đă ̣c biê ̣t nảy sinh từ bản thân lĩnh vực của bài toán cần giải
để từ đó nhanh chóng đưa ra kết quả mong muốn Kỹ thuật cơ bản dựa trên các tri thứcHeuristics hay được sử dụng trong thực tiễn là tạo các hàm đánh giá
Lý thuyết biểu diễn tri thức và kỹ nghê ̣ xử lý tri thức: Logic mê ̣nh đề, logic vị
từ, các hê ̣ sản xuất, biểu diễn bằng Frame, mạng ngữ nghĩa
Kỹ thuật suy diễn (inference): Quá trình sinh ra kết luận hoă ̣c sự kiê ̣n mới từnhững sự kiê ̣n và thông tin đã có
Học máy (machine learning): Làm tăng hiê ̣u quả giải quyết vấn đề trên dữ liê ̣u
Vào năm 2016, phát triển xe tự lái thuộc hãng Uber đã vận chuyển thànhcông 50.000 lon bia Budweisers bằng chiếc xe tự lái trên quãng đườngdài 193 km Theo dự đoán công ty tư vấn công nghệ thông tin Gartner,trong tương lai, những chiếc xe đó có thể kết nối với nhau thông qua Wifi
để đưa ra những lộ trình vận tải tốt nhất
Ứng dụng trong sản xuất
Trí tuệ nhân tạo còn được ứng dụng để xây dựng những quy trình sản xuấttối ưu hơn Công nghệ AI còn có khả năng phân tích cao, làm cơ sở địnhhướng cho khả năng ra quyết định trong sản xuất
Ứng dụng trong y tế
Ứng dụng tiêu biểu của trí tuệ nhân tạo trong lĩnh vực y tế đó chính làmáy bay thiết bị bay không cần người lái được sử dụng trong nhữngtrường hợp cứu hộ khẩn cấp Thiết bị bay không người lái có thể đạtđược tốc độ nhanh hơn xe chuyên dụng đến 40% và cực kì thích hợp để sửdụng ở những nơi có địa hình hiểm trở.Ứng dụng trong giáo dục
Sự ra đời của trí tuệ nhân tạo đã tạo ra những thay đổi lớn trong lĩnh vựcgiáo dục Các hoạt động giáo dục như là chấm điểm hay dạy kèm cho họcsinh có thể được tự động hóa hoàn toàn nhờ công nghệ AI Nhiều trò chơi,phần mềm giáo dục được ra đời đáp ứng nhu cầu cụ thể của từng học sinh,giúp cho học sinh cải thiện rất nhiều về tình hình học tập theo tốc độ riêngcủa mình
Trí tuệ nhân tạo còn có thể ch椃ऀ ra được những vấn đề mà các khóa học cầnphải cải thiện Chẳng hạn khi nhiều học sinh được phát hiện việc gửi đáp
Trang 16án sai cho bài tập, hệ thống sẽ thực hiện thông báo cho giáo viên đồng thờigửi thông điệp đến cho học sinh để ch椃ऀnh sửa đáp án phù hợp Công nghệ
AI còn có khả năng giúp theo dõi sự tiến bộ của các học sinh và thông báođến giáo viên khi phát hiện vấn đề đối với kết quả học tập của học sinh
Hơn thế nữa, sinh viên có thể học hỏi được bất cứ nơi nào trên thế giớithông qua việc sử dụng phần mềm có hỗ trợ AI Công nghệ AI còn cungcấp dữ liệu nhằm giúp sinh viên lựa chọn được những khóa học tốt nhất,phù hợp nhất cho mình
Ứng dụng trong truyền thông
Đối với lĩnh vực truyền thông thì sự phát triển của trí tuệ nhân tạo đã gópphần làm thay đổi cách thức tiếp cận với khách hàng mục tiêu Nhờ ưuđiểm của công nghệ AI, các công ty đã có thể cung cấp quảng cáo vàođúng thời điểm,cho đúng khách hàng tiềm năng, dựa trên việc phân tíchnhững đặc điểm về nhân khẩu học, thói quen hoạt động trực tuyến nhữngnội dung khách hàng thường xem trên quảng cáo
Ứng dụng trong ngành dịch vụ
Công nghệ AI còn giúp ngành dịch vụ hoạt động một cách tối ưu hơn từ
đó góp phần mang đến những trải nghiệm mới me hơn, tốt hơn cho kháchhàng Thông qua thu thập và phân tích dữ liệu, công nghệ AI còn nắm bắtthông tin về hành vi sử dụng những dịch vụ của khách hàng, từ
đó đã mang lại những giải pháp phù hợp nhất với nhu cầu của từng kháchhàng
TÓM TẮT CHƯƠNG 1
Như vậy TTNT là là một lĩnh vực của khoa học và công nghê ̣ nhằm làm chomáy có những khả năng của trí tuê ̣ con người, tiêu biểu như biết suy nghĩ và lậpluận để giải quyết vấn đề, biết giao tiếp do hiểu ngôn ngữ tự nhiên và tiếng nói,biết học và tự thích nghi,…
Sự phát triển của TTNT đã tạo ra một bước nhảy vọt về chất trong kỹ thuật và
kỹ nghê ̣ xử lý thông tin Trí tuê ̣ nhân tạo chính là cơ sở của công nghê ̣ xử lýthông tin mới
TTNT có vai trò rất quan trọng trong viê ̣c đưa ra lời giải cho các bài toán cókhông gian tìm kiếm lớn
TTNT gồm hai thành phần cơ bản: tri thức và suy diễn
AI = Tri thức + Suy diễn
TTNT được ứng dụng trong hầu hết các lĩnh vực: Kinh tế, địa chất, y học, hóahọc,…
CHƯƠNG 2: TỔNG QUAN VỀ MẠNG NƠ-RON 2.1 Giới thiệu về Neural Network
Trang 17 Neural là tính từ của neuron (nơ-ron), network ch椃ऀ cấu trúc đồ thị nên neuralnetwork (NN) là một hệ thống tính toán lấy cảm hứng từ sự hoạt động của cácnơ-ron trong hệ thần kinh.
Hoạt động của các nơ-ron:
Hình 2.1: Tế bào nơ-ron
o Nơ-ron là đơn vị cơ bản cấu tạo hệ thống thần kinh và là một phần quantrọng nhất của não Não chúng ta gồm khoảng 10 triệu nơ-ron và mỗi nơ-ron liên kết với 10.000 nơ-ron khác
Ở mỗi nơ-ron có phần thân (soma) chứa nhân, các tín hiệu đầu vào qua sợinhánh (dendrites) và các tín hiệu đầu ra qua sợi trục (axon) kết nối với các nơ-ron khác Hiểu đơn giản mỗi nơ-ron nhận dữ liệu đầu vào qua sợi nhánh vàtruyền dữ liệu đầu ra qua sợi trục, đến các sợi nhánh của các nơ-ron khác
Mỗi nơ-ron nhận xung điện từ các nơ-ron khác qua sợi nhánh Nếu các xungđiện này đủ lớn để kích hoạt nơ-ron, thì tín hiệu này đi qua sợi trục đến các sợinhánh của các nơ-ron khác
Mô hình neural network lấy cảm hứng từ não bộ và cách nó hoạt động, chứkhông phải bắt chước toàn bộ các chức năng của nó Việc chính của chúng ta làdùng mô hình đấy đi giải quyết các bài toán chúng ta cần
2.2.Mô hình Neural network
Trang 19phương trình mong muốn => Việc thêm bias (hệ số tự do) là rất quantrọng.
Hàm sigmoid ở đây được gọi là activation function
2.2.2 Mô hình tổng quát
Hình 2.3: Mô hình neural network
Layer đầu tiên là input layer, các layer ở giữa được gọi là hidden layer,layer cuối cùng được gọi là output layer Các hình tròn được gọi là node
Mỗi mô hình luôn có 1 input layer, 1 output layer, có thể có hoặc khôngcác hidden layer Tổng số layer trong mô hình được quy ước là số layer –
1 (Không tính input layer)
Mỗi node trong hidden layer và output layer:
Liên kết với tất cả các node ở layer trước đó với các hệ số w riêng
Mỗi node có 1 hệ số bias b riêng
Diễn ra 2 bước: tính tổng linear và áp dụng activation function Trong
đó tổng linear là tổng các giá trị đầu vào, activation function là hàmkích hoạt của mạng
2.2.3 Kí hiệu
Số node trong hidden layer thứ i là l(i)
Ma trận W(k) kích thước l(k−1) ∗ l(k) là ma trận hệ số giữa layer (k-1) vàlayer k, trong đó w(k)
ij là hệ số kết nối từ node thứ i của layer k-1 đến nodethứ j của layer k
Vector b(k) kích thước lk ∗ 1 là hệ số bias của các node trong layer k, trong
đó b(k)
i là bias của node thứ i trong layer k
Với node thứ i trong layer l có bias b(l)
Trang 20 Vector a(k) kích thước l(k) ∗ 1 là giá trị của các node trong layer k sau khi
Convolutional Neural Network, đây là một deep neural networkarchitecture Hiểu đơn giản, nó c甃̀ng chính là một dạnh Artificial NeuralNetwork, một Multi-layer Perceptron nhưng mang thêm 1 vài cải tiến, đó
là Convolution và Pooling
Trong đó Artificial neural network (Mạng neuron nhân tạo) là một môhình toán học hay mô hình tính toán lấy cảm hứng dựa trên cấu trúc củamạng thần kinh Một mạng neuron bao gồm các nhóm neuron được nốivới nhau, trên cơ sở đó thông tin được xử lý
Multi-layer Perceptron ( Mạng neuron truyền thẳng nhiều lớp)
2.3.3 Cấu trúc mạng CNN
Trang 21 Mạng CNN là một tập hợp các lớp Convolution chồng lên nhau và sửdụng các hàm nonlinear activation như ReLU và tanh để kích hoạt cáctrọng số trong các node Mỗi một lớp sau khi thông qua các hàm kích hoạt
sẽ tạo ra các thông tin trừu tượng hơn cho các lớp tiếp theo
Mỗi một lớp sau khi thông qua các hàm kích hoạt sẽ tạo ra các thông tintrừu tượng hơn cho các lớp tiếp theo Trong mô hình mạng truyền ngược(feedforward neural network) thì mỗi neural đầu vào (input node) cho mỗineural đầu ra trong các lớp tiếp theo
Mô hình này gọi là mạng kết nối đầy đủ (fully connected layer) hay mạngtoàn vẹn (affine layer) Còn trong mô hình CNNs thì ngược lại Các layerliên kết được với nhau thông qua cơ chế convolution
Layer tiếp theo là kết quả convolution từ layer trước đó, nhờ vậy mà ta cóđược các kết nối cục bộ Như vậy mỗi neuron ở lớp kế tiếp sinh ra từ kếtquả của filter áp đặt lên một vùng ảnh cục bộ của neuron trước đó
Mỗi một lớp được sử dụng các filter khác nhau thông thường có hàng trămhàng nghìn filter như vậy và kết hợp kết quả của chúng lại Ngoài ra cómột số layer khác như pooling/subsampling layer dùng để chắt lọc lại cácthông tin hữu ích hơn (loại bỏ các thông tin nhiễu)
Trong quá trình huấn luyện mạng (training) CNN tự động học các giá trịqua các lớp filter dựa vào cách thức mà bạn thực hiện Ví dụ trong tác vụphân lớp ảnh, CNNs sẽ cố gắng tìm ra thông số tối ưu cho các filter tươngứng theo thứ tự raw pixel > edges > shapes > facial > high-level features.Layer cuối cùng được dùng để phân lớp ảnh
Hình 2.4 Cấu trúc mạng CNN
Trong mô hình CNN có 2 khía cạnh cần quan tâm là tính bất
biến (Location Invariance) và tính kết hợp (Compositionality) Với cùng
một đối tượng, nếu đối tượng này được chiếu theo các góc độ khác nhau(translation, rotation, scaling) thì độ chính xác của thuật toán sẽ bị ảnhhưởng đáng kể
Pooling layer sẽ cho bạn tính bất biến đối với phép dịch chuyển(translation), phép quay (rotation) và phép co giãn (scaling) Tính kết hợpcục bộ cho ta các cấp độ biểu diễn thông tin từ mức độ thấp đến mức độcao và trừu tượng hơn thông qua convolution từ các filter
Mạng CNN sử dụng 3 ý tưởng cơ bản:
Trường tiếp nhận cục bộ (local receptive field)
Đầu vào của mạng CNN là một ảnh Ví dụ như ảnh có kích thước28×28 thì tương ứng đầu vào là một ma trận có 28×28 và giá trị mỗi