Với sự phát triển của nhiều kỹ thuật máy học trong xử lý ngơn ngữ, một số nhànghiên cứu đã ứng dụng các kỹ thuật này vào trong tĩm tắt văn bản tự động.. Mục tiêu đề tài: - Tìm hiểu về kh
Trang 1Chương 1 TỔNG QUAN VỀ TÓM TẮT VĂN BẢN 1
1.1 Khai phá văn bản 1
1.1.1 Khái niệm 1
1.1.2 Các kỹ thuật khai phá văn bản 2
1.2 Tóm tắt văn bản 2
1.2.1 Định nghĩa 2
1.2.2 Đặc điểm của văn bản tóm tắt 3
1.2.3 Phân loại tóm tắt 3
1.2.4 Các thuật ngữ 4
1.2.5 Các giai đoạn của hệ thống tóm tắt 4
1.3 Một số phương pháp tiếp cận tóm tắt và ngôn ngữ tiếng việt 4
1.3.1 Phương pháp thống kê 5
1.3.2 Phương pháp máy học 5
1.4 Kết luận 8
Chương 2 MẠNG NƠRON VÀ TÓM TẮT VĂN BẢN SỬ DỤNG MẠNG NƠRON 9
2.1 Mạng nơron 9
2.1.1 Giới thiệu mạng nơron 9
2.1.2 Các tính chất của mạng nơ ron 11
2.1.3 Các thành phần nơron nhân tạo 11
2.1.4 Mô hình mạng 14
Trang 22.2 Tóm tắt văn bản ứng dụng mạng nơ-ron 18
2.2.1 Phương pháp tách câu trong văn bản 19
2.2.2 Các đặc trưng của câu 20
2.2.3 Huấn luyện với mạng nơ ron 21
2.2.4 Cài đặt thuật toán lan truyền ngược 23
2.3 Kết luận 25
Chương 3 PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH 26
3.1 Phân tích hệ thống 26
3.2 Mô hình tổng quát hệ thống 27
3.3 Biểu đồ chức năng của chương trình 28
3.4 Mô tả chức năng của hệ thống 28
3.4.1 UC1 Tách câu 28
3.4.2 UC2 Tính đặc trưng câu 29
3.4.3 UC3 Huấn luyện 30
3.4.4 UC4 Tóm tắt 30
3.5 Biểu đồ tuần tự 31
3.5.1 Biểu đồ tuần tự quá trình tách câu 31
3.5.2 Biểu đồ tuần tự quá trình tính đặc trưng 32
3.5.3 Biều đồ tuần tự quá trình tính huấn luyện 32
3.5.4 Biểu đồ tuần tự quá trình tóm tăt 33
3.5.5 Biểu đồ tuần tự quá trình thêm thuật ngữ 34
3.5.6 Biểu đồ tuần tự quá trình sửa thuật ngữ 35
Trang 33.6 Thiết kế cơ sở dữ liệu 36
3.6.1 Bảng giá trị câu 36
3.6.2 Bảng Thuật ngữ 37
3.6.3 Bảng Văn bản chuẩn 37
3.6.4 Bảng danh sách câu 38
3.6.5 Bảng liên kết 1 38
3.6.6 Bảng liên kết 2 39
3.7 Mối quan hệ giữa các bảng 39
3.8 Kết luận 40
Chương 4 KẾT QUẢ THỰC NGHIỆM 41
4.1 Ngôn ngữ lập trình sử dụng 41
4.2 Giao diện chương trình 41
4.3 Kết quả tóm tắt 44
4.4 Kết luận 45
KẾT LUẬN 46
1 Đánh giá chung 46
2 Kết quả đạt được 46
3 Hạn chế 46
4 Hướng phát triển 46
TÀI LIỆU THAM KHẢO 47
Trang 4DANH MỤC BẢNG
Bảng 2.1 Một số hàm truyền trong mạng nơ ron 12
Bảng 3.1 Bảng giá trị câu 37
Bảng 3.2 Bảng thuật ngữ 37
Bảng 3.3 Bảng văn bản 38
Bảng 3.4 Bảng Danh sách câu 38
Bảng 3.5 Bảng trọng số Liên kết1 38
Bảng 3.6 Bảng trọng số liên kết2 39
Trang 6Hình 2.2 Cấu trúc một nơron 11
Hình 2.3 Mạng nơ ron 3 lớp 17
Hình 2.4 Mạng nơ ron được huấn luyện 23
Sử dụng thuật toán lan truyền ngược điều chỉnh tham số của mạng 23
Hình 3.1 Mô hình tổng quát quá trình huấn luyện với mạng nơ ron 27
Hình 3.2 Mô hình tổng quát quá trích rút câu 28
Hình 3.3 Biểu đồ usecase của chương trình 28
Hình 3.4 Biểu đồ tuần tự chức năng tách câu trong văn bản 32
Hình 3.5 Biều đồ tuần tự chức năng tính đặc trưng của các câu 32
Hình 3.6 Biều đồ tuần tự chức năng huấn luyện 33
Hình 3.7 Biều đồ tuần tự chức năng tóm tắt 34
Hình 3.8 Biều đồ tuần tự chức năng thêm thuật ngữ 35
Hình 3.9 Biều đồ tuần tự chức năng sửa thuật ngữ 36
Hình 3.10 Mối quan hệ giữa các bảng 39
Hình 4.1 Giao diện quá trình huấn luyện với mạng nơ ron 41
Hình 4.2 Giao diện quá trình tóm tắt 42
Hình 4.3 Giao diện quản lý thuật ngữ 43
Hình 4.4 Giao diện quản lý văn bản 44
Trang 8TỪ VIẾT
TẮT
hỗ trợ
Trang 10Ngày nay với sự phong phú của tài liệu văn bản cĩ sẵn trên Internet Thơng tintrên internet nhiều hơn các thơng tin mà người dùng cần Vì vậy, một vấn đề đang gặpphải: tìm kiếm các tài liệu liên quan thơng qua một số lượng lớn của các tài liệu sẵn cĩ,
và tiếp thu một số lượng lớn thơng tin cĩ liên quan
Tĩm tắt là một cơng cụ hữu ích cho việc lựa chọn văn bản cĩ liên quan, và đểtrích xuất các điểm chính của mỗi văn bản Nĩ đã thu hút nhiều chuyên gia trong khaiphá dữ liệu và lĩnh vực xử lý ngơn ngữ tự nhiên Một cơng cụ tĩm tắt văn bản sẽ là cực
kỳ hữu ích Nĩ sẽ giúp chúng ta tìm kiếm thơng tin một cách nhanh chĩng và gần mụctiêu hơn thay vì phải đọc lần lượt tất cả các văn bản mất rất nhiều thời gian, cơng sức
và là một cơng việc nhàm chán, khơng khả thi
Đối với tiếng việt, một số phương pháp tĩm tắt văn bản dựa vào phương pháp đãđược đề xuất cho tiếng anh cũng mang lại một số kết quả đáng kể Tuy nhiên, vẫn cịnmột số vấn đề khĩ khăn để nghiên cứu với xử lý ngơn ngữ tiếng việt Bởi vì đặc điểmngơn ngữ khác nhau giữa tiếng anh và tiếng việt Tiếng việt là ngơn ngữ đơn âm tiết.Khơng giống như tiếng anh, từ trong văn bản tiếng việt khơng thể được xác định bởikhơng gian
Với sự phát triển của nhiều kỹ thuật máy học trong xử lý ngơn ngữ, một số nhànghiên cứu đã ứng dụng các kỹ thuật này vào trong tĩm tắt văn bản tự động Một sốnghiên cứu điển hình của phương pháp này là : Nạve-Bayes, Decision Tree, HiddenMakov Model, Log-Linear, Mạng nơ-ron, SVM
Nhờ các khả năng: Học, nhớ lại và khái quát hố từ các mẫu huấn luyện hoặc dữliệu, mạng nơ-ron nhân tạo trở thành một phát minh mới đầy hứa hẹn của hệ thống
xử lý thơng tin Các tính tốn mạng nơ-ron cho phép giải quyết tốt những bài
Trang 11Trong đề tài thực tập này, em đã lựa chọn đề tài: “Xây dựng hệ thống tóm tắt văn bản tiếng việt sử dụng mạng nơ ron cho việc huấn luyện”.
2 Mục tiêu đề tài:
- Tìm hiểu về khai phá dữ liệu, tóm tắt văn bản
- Trình bày ứng dụng mạng nơ ron vào trong tóm tăt văn bản
- Phân tích thiết kế và xây dựng chương trình tóm tắt văn bản
3 Kết quả đạt được:
Về lý thuyết :
- Tìm hiểu về khai phá dữ liệu, tóm tắt văn bản
- Trình bày ứng dụng mạng nơ ron vào trong tóm tăt văn bản
- Phân tích thiết kế và xây dựng chương trình tóm tắt văn bản
Về thực nghiệm :
- Chương trình thực nghiệm
4 Bố cục đồ án gồm 4 chương
Chương 1 Trình bày tổng quan về khai phá dữ liệu, tóm tắt văn bản
Chương 2 Ứng dụng mạng nơ ron trong tóm tăt văn bản
Chương 3 Phân tích thiết kế và xây dựng chương trình tóm tắt văn bản
Chương 4 Kết quả thực nghiệm
Trang 12Chương 1 TỔNG QUAN VỀ TÓM TẮT VĂN BẢN
Các tiến bộ gần đây trong công nghệ thông tin và truyền thông đã dẫn đến sự tăngtrưởng chưa từng thấy trong dữ liệu và thông tin có sẵn Do vậy một phương pháp mới
xử lý lượng dữ liệu và thông tin lớn đó là vô cùng cần thiết Chúng ta cần có phươngpháp khai thác hiệu quả thông tin văn bản để phân loại, phân cụm, tổng hợp thông tinsẵn đó Chương này trình bày tổng quan về khai phá thông tin văn bản và đặc biệt làtóm tắt văn bản
1.1 Khai phá văn bản
1.1.1 Khái niệm
Khai phá dữ liệu là một loạt các kỹ thuật nhằm phát hiện ra các thông tin có giátrị tiềm ẩn trong các tập dữ liệu lớn như các kho dữ liệu, các cơ sở dữ liệu có dunglượng rất lớn Về bản chất, khai phá dữ liệu liên quan đến việc phân tích các dữ liệu và
sử dụng các kỹ thuật để tìm ra các mẫu có tính hệ thống trong tập dữ liệu
Cũng như khai phá dữ liệu khai phá văn bản có thể được mô tả như tìm kiếm cácmẫu trong dữ liệu, khai phá văn bản tìm kiếm các mẫu trong văn bản[4] Tuy nhiên,khai phá dữ liệu có thể được đặc tả đầy đủ như khai thác thông tin tiềm ẩn, và có khảnăng hữu ích từ dữ liệu Các thông tin tiềm ẩn trong các dữ liệu đầu vào: nó là ẩn, chưabiết, và khó có thể được trích xuất mà không truy đòi kỹ thuật tự động của khai phá dữliệu Với khai phá văn bản, thông tin được trích xuất rõ ràng và quy định rõ ràng trongvăn bản Khai phá văn bản cố gắng tách nó ra khỏi các văn bản trong một hình thứcphù hợp để các máy tính trực tiếp xử lý, không cần một trung gian của con người.Khai phá văn bản là một lĩnh vực mới đang phát triển cố gắng để thu thập thôngtin có ý nghĩa từ văn bản ngôn ngữ tự nhiên Nó như là quá trình phân tích các văn bản
Trang 13để trích xuất thông tin hữu ích cho các mục đích cụ thể Sử dụng các kỹ thuật khai phá
dữ liệu, máy học, xử lý ngôn ngữ tự nhiên…[5]
Trong các ứng dụng khai phá dữ liệu, chìa khóa cho sự thành công là thông tinchiết xuất phải được hiểu ở chỗ nó giúp giải thích dữ liệu Điều này là cần thiết, kếtquả thông tin đó là để dành cho con người chứ không phải là một cơ sở cho hành động
tự động Tiêu chuẩn này không áp dụng đối với khai phá văn bản bởi vì, không giốngnhư khai phá dữ liệu, đầu vào của khai phá văn bản là dễ hiểu Khai phá văn bản vớiđầu ra dễ hiểu đồng nghĩa với việc tóm tắt các tính năng nổi bật từ một nội dung lớncác văn bản, một trường con trong của nó: tóm tắt văn bản
1.1.2 Các kỹ thuật khai phá văn bản
Phân loại văn bản: là một nhiệm vụ chủ yếu của khai phá văn bản[3] Phân loại
văn bản là sự sắp xếp các văn bản ngôn ngữ tự nhiên với các chuyên mục xác địnhtrước theo nội dung của chúng Tập hợp các chuyên mục thường được gọi là một ” từvựng có kiểm soát” Phân loại văn bản là kỹ thuật truyền thống lâu đời để lấy thông tintrong các thư viện, nơi mà tác giả chuyên ngành như một cổng vào chiếm ưu thế vớinội dung của thư viện
Phân cụm văn bản: Phân loại văn bản là sự sắp xếp các văn bản ngôn ngữ tự
nhiên với các chuyên mục hoặc lớp không được xác đinh trước nhưng nhóm của vănbản cùng loại sẽ được tìm kiếm
Tóm tắt văn bản: Tóm tắt văn bản cố gắng để tạo ra một đại diện cô đọng của
đầu vào Giúp cho con người dễ dàng nắm bắt được tri thức có thể đọc ít ma hiểunhiều
Tra cứu văn bản: Với một ngữ liệu của văn bản và thông tin của người dùng cần
hiển thị như một số liệu truy vấn, tìm kiếm văn bản là nhiệm vụ nhận biết và đưa ra cácvăn bản phù hợp nhất
Trang 141.2 Tóm tắt văn bản
1.2.1 Định nghĩa
Tóm tắt văn bản là quá trình rút trích những thông tin quan trọng nhất từ một vănbản để tạo thành một văn bản cô đọng, ngắn gọn phục vụ cho yêu cầu một hoặc nhiềungười dùng cụ thể, hay một hoặc nhiều nhiệm vụ cụ thể [1]
1.2.2 Đặc điểm của văn bản tóm tắt
Tóm tắt văn bản phải làm cho lượng nội dung trong bản tóm tắt ít hơn so vớibản gốc, nhưng phải đảm bảo vẫn còn những thông tin quan trọng, nổi bật Mức độgiảm nội dung thông tin được đo bằng tỷ lệ nén Các bản tóm tắt thường có một chiềudài nhất định được mong muốn
Nội dung thông tin phải trung thực hoặc tương đương với văn bản nguồn và liênquan, phù hợp với yêu cầu người dùng
Phải có định dạng tốt về ngữ pháp và cấu trúc diễn ngôn (cấu trúc nội dung củatừng loại văn bản) Có thể đọc và hiểu được đối với người dùng
1.2.3 Phân loại tóm tắt
Tóm tắt văn bản được chia thành nhiều kiểu khác nhau:
Theo kết quả: Tóm tăt rút trích, tóm tắt tóm lược
Theo mục đích hay chức năng: Tóm tắt chỉ thị, tóm tắt thông tin, tóm tắtđánh giá
Trang 15Theo nội dung: Tóm tắt chung, tóm tăt hướng truy vấn.
Theo miền dữ liệu: Tóm tắt trên một miền dữ liệu, tóm tắt trên một thể loại,tóm tắt độc lập
Theo mức độ chi tiết: Tóm tắt tổng quan, tóm tắt tập trung sự kiện
Theo số lượng: Tóm tắt đơn văn bản, tóm tắt đa văn bản
Theo ngôn ngữ: Tóm tắt đơn ngôn ngữ, tóm tắt đa ngôn ngữ, tóm tắt xuyên
sự liên quan của thông tin đó đối với yêu cầu truy vấn của người dùng
Sự mạch lạc (coherence): một văn bản được gọi là mạch lạc nếu tất cả các thànhphần trong nó tuân theo một thể thống nhất về mặt nội dung và không có sự trùng lặpnào giữa các thành phần
1.2.5 Các giai đoạn của hệ thống tóm tắt
Hệ thống tóm tắt văn bản tự động được chia thành 3 giai đoạn chính[1] :
Trang 16- Phân tích (Analysis or Interpretation) : biểu diễn và hiểu văn bản nguồn
- Biến đổi (Transformation) : trích chọn những nội dung quan trọng
- Tổng hợp (Synthesis or Realization) : tạo văn bản mới chứa những điểm chính,quan trọng của văn bản gốc
1.3 Một số phương pháp tiếp cận tóm tắt và ngôn ngữ tiếng việt
Có 2 loại tóm tắt là tóm tắt rút trích và tóm tắt tóm lược Để thực hiện tóm lượccần có một lượng tri thức đầy đủ về lĩnh vực cần tóm tắt Điều này hiện nay còn hạnchế nhiều, do đó các hướng tiếp cận đa số tập trung vào dạng tóm tắt rút trích câu
1.3.1 Phương pháp thống kê
Hầu hết các nghiên cứu đầu tiên cho tóm tắt đơn văn bản đều tập trung trênnhững văn bản kỹ thuật (các bài báo khoa học) Các phương pháp cổ điển thường tậptrung vào các đặc trưng hình thái để tính điểm cho các câu và rút trích các câu quantrọng để đưa vào tóm tắt
Ý tưởng chính của hướng tiếp cận :
- Thu tập ngữ liệu
- Tạo các bản tóm tắt thủ công
- Thiết kế các công thức toán hay logic để tính điểm cho các câu
Trang 17- Lặp cho đến khi tĩm tắt tự động đạt được tính tương đương với tĩm tắt thủcơng: Tính điểm cho từng câu để tạo ra bản tĩm tắt cho từng văn bản trongngữ liệu dựa vào các đặc trưng về hình thái Từ đĩ so sánh tĩm tắt được tạo
tự động với tĩm tắt được tạo thủ cơng Cải thiện lại phương thức tính điểmcho câu
Phương pháp khá chính xác nhưng quá chủ quan Phương pháp này được xử dụngkhá nhiều vào các hệ thống máy học sau này Nĩ là phương pháp điển hình nhất trongphương pháp cổ điển
1.3.2 Phương pháp máy học
Máy học là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc phát triển các kĩthuật cho phép các máy cĩ thể học Máy học là một phương pháp để tạo ra các chươngtrình máy tính bằng việc phân tích các tập dữ liệu Máy học cĩ liên quan lớn đến thống
kê, vì cả hai lĩnh vực đều nghiên cứu việc phân tích dữ liệu, nhưng khác với thống kê,máy học tập trung vào sự phức tạp của các giải thuật trong việc thực thi tính tốn.Nhiều bài tốn suy luận được xếp vào loại bài tốn khĩ, vì thế một phần của học máy
là nghiên cứu sự phát triển các giải thuật suy luận xấp xỉ mà cĩ thể xử lí được
Một số nghiên cứu điển hiển của phương phát này là: Nạve-Bayes, DecisionTree, Hidden Makov Model, Log-Linear, Neural Network, Support vector machines(SVM)
Phương pháp Nạve-Bayes
Phương pháp này giả định rằng các đặc trưng của văn bản độc lập nhau Sử dụng
bộ phân lớp Nạve-Bayes để xác định câu nào thuộc về tĩm tắt và ngược lại:
Trang 18Cho s là các câu cần xác định F1,F2…Fk là các đặc trưng đã được chọn, và giảđịnh các thuộc tính độc lập nhau Xác suất của câu s thuộc về tóm tắt được tính nhưsau:
P (s ∈ S|F 1 , F 2, , Fk )= Π i=1
k
P(F i|s ∈ S) P (s ∈ S )
Π i =1 k P(F i)
Sau khi tính xác suất các câu, n câu có xác suất cao nhất sẽ được rút trích
Phương pháp Decision Tree
Decision Tree là một cây phân cấp có cấu trúc được dùng để phân lớp các đốitượng dựa vào dãy các luật
Phương pháp dựa trên giả định các đặc trưng không độc lập với nhau, ảnh hưởngcủa đặc trưng lên quá trình rút trích Hệ thống tóm tắt là loại tóm tắt hướng về truy vấn.Các đặc trưng : vị trí (position), số thông tin(numeric data), danh từ riêng(propername), danh từ và tính từ(pronoun & adjective), ngày tháng(weekday or month Cùngvới 2 đăc trưng mới : query signature (số từ truy vấn có trong câu) và số thông tin tìmkiếm có trong câu(IR signature)
Phương pháp Hidden Makov Model(HMM)
Những hướng tiếp cận trước đều dựa trên những đặc trưng và không tuần tự.Hướng tiếp cận dựa trên mô hình HMM với ý tưởng cơ bản là sử dụng một chuỗi tuần
tự các câu Và sử dụng mô hình HMM để xác định sự phụ thuộc cục bộ giữa các câu
Phương pháp gom cụm chủ đề và hợp nhất thông tin
McKeown (1999) đã cải tiến hệ thống SUMMONS cũng như Barzilay (1999)bằng một hướng tiếp cận dựa trên gom cụm và hợp nhất thông tin
Hướng tiếp cận mới bao gồm 2 giai đoạn :
Trang 19- Gom cụm các đơn vị văn bản (clustering) : các đơn vị văn bản được biểu diễnbằng vector với các đặc trưng như tần suất, nhóm danh từ(noun-phrase),danh từriêng( proper noun), tập đồng nghĩa từ Wordnet(synset) Từng cặp đơn vị văn bản sẽđược tính độ tương đồng với nhau để phân loại cho các các cụm theo từng chủ đề.
- Hợp nhất thông tin : sau khi phân cụm,các cụm sẽ được so sánh với nhau bằngmột giải thuật để tìm sự trùng lặp thông tin Sau cùng hệ thống rút trích câu nổi bậttrong từng cụm để làm tóm tắt, nếu trùng lắp thì câu suất hiện ở văn bản mới hơn sẽdược rút trích
- Giải thuật để tìm sự trùng lắp là sử dụng bộ phân tích thống kê của Collin(1999) xây dựng cây phụ thuộc (dependency tree)
Phương pháp mạng Neural và đặc trưng
Là phương pháp áp dụng mạng nơ ron vào huấn luyện với thuật toán của mạng đểtìm ra đầu ra thỏa mãn điều kiện mong muốn
Các đặc trưng sử dụng : vị trí, tần suất từ, thông tin quan trọng
Phương pháp phân tích ngôn ngữ tự nhiên
Phương pháp tiếp theo xử dụng các kỹ thuật phân tích ngôn ngữ tự nhiên phứctạp Không phải tất cả các phương pháp phân tích ngôn ngữ tự nhiên đều xử dụng máyhọc, đôi khi phương pháp chỉ sử dụng một số các biến đổi để tạo rút trích
Hầu hết các phương pháp này đều dựa trên cấu trúc diễn ngôn hay cấu trúc diễnđạt của văn bản, như : cấu trúc các phần của văn bản, liên kết ngữ pháp (trùng lặp, tĩnhlược, liên hợp), liên kết từ vựng (đồng nghĩa, bao hàm, lặp lại), cấu trúc chính phụ
1.4 Kết luận
Trang 20Trong chương này đồ án đã giới thiệu một số khái niệm và kỹ thuật cơ bản tómtắt văn bản Bên cạnh đó đồ án cũng trình bày một số khái niệm về khai phá dữ liệuvăn bản Để nâng cao hiệu quả tóm tắt, đồ án tập trung vào phương pháp tóm tắt vănbản tiếng việt sử dụng mạng nơ ron.
Trang 21Chương 2 MẠNG NƠRON VÀ TÓM TẮT VĂN BẢN SỬ DỤNG
MẠNG NƠRON
Mạng nơ ron đã được sử dụng thành công trong một loạt các vấn đề phân loại.Mục đích của đồ án này là áp dụng mạng trong vấn đề tóm tắt Trong chương này sẽtrình bày sơ lược về mạng nơ ron Các mô hình, phương pháp, thuật toán của mạng vàứng dụng mạng nơ ron vào tóm tắt văn bản tiếng việt
2.1 Mạng nơron
2.1.1 Giới thiệu mạng nơron
Mạng nơron được giới thiệu đầu tiên năm 1943 bởi nhà thần kinh học WarrenMcCulloch và nhà logic học Walter Pits Dựa trên quan điểm cho rằng bộ não người là
bộ điều khiển Mạng nơron nhân tạo được thiết kế tương tự như nơron sinh học sẽ cókhả năng giải quyết hàng loạt các bài toán như tính toán tối ưu, điều khiển, công nghệrobot… Nhưng với những kỹ thuật trong thời gian này chưa cho phép họ nghiên cứuđược nhiều
Qua quá trình nghiên cứu về bộ não, người ta thấy rằng: bộ não con người baogồm khoảng 1011 nơron tham gia vào khoảng 1015 kết nối trên các đường truyền [6].Mỗi đường truyền này dài khoảng hơn một mét Các nơron có nhiều đặc điểm chungvới các tế bào khác trong cơ thể, ngoài ra chúng còn có những khả năng mà các tế bàokhác không có được, đó là khả năng nhận, xử lý và truyền các tín hiệu điện hóa trêncác đường mòn nơron, các con đường này tạo nên hệ thống giao tiếp của bộ não
Mỗi nơron sinh học có 4 thành phần cơ bản:
- Thân nơron (soma),
Trang 22- Nhánh hình cây (dendrite),
- Sợi trục (axon) và
- Khớp (synapse)
Các nhánh hình cây truyền tín hiệu vào đến thân nơron Thân nơron tổng hợp và
xử lý cho tín hiệu đi ra Sợi trục truyền tín hiệu ra từ thân nơron này sang nơron khác.Liên kết giữa các nơron và độ nhạy của mỗi khớp được xác định bởi quá trình hóa họcphức tạp Một số cấu trúc của nơron được xác định trước lúc sinh ra Một số cấu trúcđược phát triển thông qua quá trình học Trong cuộc đời cá thể, một số liên kết mớiđược hình thành, một số khác bị hủy bỏ
Nơron sinh học hoạt động theo cách thức sau: nhận tín hiệu đầu vào(input), xử lý
các tín hiệu này và cho ra một tín hiệu đầu ra(output) Tín hiệu output này sau đó được
truyền đi làm tín hiệu đầu vào cho các nơron khác
Dựa trên những hiểu biết về nơron sinh học, con người đã xây dựng nơron nhântạo với hy vọng tạo nên một mô hình có sức mạnh như bộ não
Hình 2.1 Mô phỏng nơ ron sinh học
Trang 23Định nghĩa: Mạng nơron nhân tạo (Artificial Neural Network -ANN) gọi tắt là
mạng nơron là một mô hình xử lý thông tin phỏng theo cách thức xử lý thông tin củacác hệ nơron sinh học Nó được tạo lên từ một số lượng lớn các phần tử (gọi là cácnơron) kết nối với nhau thông qua các liên kết (gọi là trọng số liên kết) làm việc nhưmột thể thống nhất để giải quyết một vấn đề cụ thể nào đó
Một mạng nơron nhân tạo được cấu hình cho một ứng dụng cụ thể như nhận dạngmẫu, phân loại dữ liệu, thông qua một quá trình học từ tập các mẫu huấn luyện Vềbản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các nơron
2.1.2 Các tính chất của mạng nơ ron
Là hệ phi tuyến: Mạng nơron có khả năng to lớn trong lĩnh vực nhận dạng và điềukhiển các đối tượng phi tuyến
Là hệ xử lý song song: Mạng nơron có cấu trúc song song, do đó có tốc độ tínhtoán rất cao giúp nâng cao hiệu quả tính toán
Là hệ học và thích nghi: Mạng được luyện từ các số liệu quá khứ, có khả năng tựchỉnh khi số liệu đầu vào bị mất, rất phù hợp với các hệ thống máy học
Là hệ nhiều biến, là hệ nhiều đầu vào, nhiều đầu ra (Many Input Many Output MIMO), rất tiện dùng khi đối tượng có nhiều biến
-2.1.3 Các thành phần nơron nhân tạo
Một nơron là một đơn vị xử lý thông tin và là thành phần cơ bản của một mạngnơron Cấu trúc của một nơron được mô tả trên
Trang 24Hình 2.2 Cấu trúc một nơron Các thành phần cơ bản của một nơron nhân tạo bao gồm:
- Tập các đầu vào: Là các tín hiệu vào (input signals) của nơron, các tín hiệu này
thường được đưa vào dưới dạng một vector n chiều
- Tập các liên kết: Mỗi liên kết được thể hiện bởi một trọng số (gọi là trọng số
liên kết – Synaptic weight) Trọng số liên kết giữa tín hiệu vào thứ j với nơron n
thường được kí hiệu là wnj Thông thường, các trọng số này được khởi tạo mộtcá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ọc mạng
- Bộ tổng (Summing function): Thường dùng để tính tổng của tích các đầu vào với
trọng số liên kết của nó
- Ngưỡng (còn gọi là một độ lệch - bias): Được đưa vào như một thành phần của
hàm truyền
- Hàm truyền (Transfer function) : Dùng để giới hạn phạm vi đầu ra của mỗi
nơron Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho Thông
Trang 25thường, phạm vi đầu ra của mỗi nơron được giới hạn trong đoạn [0,1] hoặc [-1,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ệclựa chọn hàm truyền nào là tuỳ thuộc vào từng bài toán và kinh nghiệm củangười thiết kế mạng Một số hàm truyền thường sử dụng trong các mô hìnhmạng nơron được đưa ra trong bảng:
Bảng 2.1 Một số hàm truyền trong mạng nơ ron
Các hàm truyền của đơn vị lớp ẩn là cần thiết để biểu diễn sự phi tuyếntrong mạng Đối với luật học lan truyền ngược, hàm phải khả vi và sẽ có nếu nhưhàm được gán với một khoảng nào đó Do vậy hàm sigmoid là sự lựa chọn phổbiến nhất
Trang 26Đối với các đơn vị đầu ra, các hàm truyền cần được chọn sao cho phù hợpvới sự phân phối với các giá trị đích mong muốn Ta thấy rằng đối với các giá trịtrong khoảng [0,1], hàm sigmoid là hữu ích Với những giá trị không được biếttrước khoảng xác định thì hàm hay được sử dụng là hàm đồng nhất, nếu giá trịđích là dương nhưng không biết khoảng xác định thì nên sử dụng hàm dạng mũ.
- Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa là một đầu
ra
Như vậy tương tự như nơron sinh học, nơron nhân tạo cũng nhận các tín hiệu đầuvào, xử lý ( nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu được rồigửi kết quả tới hàm truyền), và cho một tín hiệu đầu ra (là kết quả của hàm truyền)
2.1.4 Mô hình mạng
Hình trạng của mạng được định nghĩa bởi: số lớp, số đơn vị trên mỗi lớp, và sựliên kết giữa các lớp như thế nào Các mạng về tổng thể được chia thành hai loại dựatrên cách thức liên kết các đơn vị
Kiến trúc truyền thẳng (feedforward architechture): là kiểu kiến trúc mạng
không có các kết nối ngược trở lại từ các nơron đầu ra về các nơron đầu vào; mạngkhông lưu lại các giá trị output trước và các trạng thái kích hoạt của nơron Các mạngnơron truyền thẳng cho phép tín hiệu di chuyển theo một đường duy nhất; từ đầu vàotới đầu ra, đầu ra của một tầng bất kì sẽ không ảnh hưởng tới tầng đó Các mạng kiểuPerceptron (là mô hình đơn giản nhất của mạng nơ-ron chỉ có 1 tầng) là mạng truyềnthẳng
Mạng hồi qui (Feedback architecture): là kiểu kiến trúc mạng có các kết nối từ
nơron đầu ra tới nơron đầu vào Mạng lưu lại các trạng thái trước đó, và trạng thái tiếp
Trang 27theo không chỉ phụ thuộc vào các tín hiệu đầu vào mà còn phụ thuộc vào các trạng tháitrước đó của mạng
2.1.5.Các phương pháp học
Khái niệm: Học là quá trình thay đổi hành vi của các vật theo một cách nào đó
làm cho chúng có thể thực hiện tốt hơn trong tương lai
Một mạng nơron được huyấn luyện(học) sao cho với một tập các vector đầu vào
X, mạng có khả năng tạo ra tập các vector đầu ra mong muốn Y của nó Tập X được sử
dụng cho huấn luyện mạng được gọi là tập huấn luyện (training set) Các phần tử x thuộc X được gọi là các mẫu huấn luyện (training example) Quá trình huấn luyện bản
chất là sự thay đổi các trọng số liên kết của mạng Trong quá trình này, các trọng sốcủa mạng sẽ hội tụ dần tới các giá trị sao cho với mỗi vector đầu vào x từ tập huấnluyện, mạng sẽ cho ra vector đầu ra y như mong muốn
Có ba phương pháp học phổ biến là học có giám sát (supervised learning), học không giám sát (unsupervised learning) và học tăng cường (Reinforcement learning):
Học có giám sát: Là quá trình học có sự tham gia giám sát của một “thầy giáo”.
Cũng giống như việc ta dạy một em nhỏ các chữ cái Ta đưa ra một chữ “a” và bảo với
em đó rằng đây là chữ “a” Việc này được thực hiện trên tất cả các mẫu chữ cái Sau đókhi kiểm tra ta sẽ đưa ra một chữ cái bất kì và hỏi em đó đây là chữ gì?
Học không giám sát: Là việc học không cần có bất kỳ một sự giám sát nào
Trong bài toán học không giám sát, tập dữ liệu huấn luyện được cho dưới dạng: D
= {(x1, x2, ,xN)}, với (x1, x2, ,xN) là vector đặc trưng của mẫu huấn luyện Nhiệm
vụ của thuật toán là phải phân chia tập dữ liệu D thành các nhóm con, mỗi nhóm chứacác vector đầu vào có đặc trưng giống nhau
Trang 28Học tăng cường: là sự tổ hợp của cả hai mô hình trên Phương pháp này cụ thể
như sau: với vector đầu vào, quan sát vector đầu ra do mạng tính được Nếu kết quảđược xem là “tốt” thì mạng sẽ được thưởng theo nghĩa tăng các trọng số kết nối lên;ngược lại các trọng số kết nối không thích hợp sẽ được giảm xuống Do đó học tăngcường là học theo nhà phê bình, ngược với học có giám sát là học theo thầy giáo 2.1.6 Thuật toán lan truyền ngược
Thuật toán tổng quát cho học có giám sát trong các mạng nơron có nhiều cài đặtkhác nhau, sự khác nhau chủ yếu là cách các trọng số liên kết được thay đổi trong suốtthời gian học Trong đó tiêu biểu nhất là thuật toán lan truyền ngược
Cần có một sự phân biệt giữa kiến trúc của một mạng và thuật toán học của nó,các mô tả trong các mục trên mục đích là nhằm làm rõ các yếu tố về kiến trúc củamạng và cách mà mạng tính toán các đầu ra từ tập các đầu vào Sau đây là mô tả củathuật toán học sử dụng để điều chỉnh hiệu năng của mạng sao cho mạng có khả năngsinh ra được các kết quả mong muốn
Về cơ bản, thuật toán lan truyền ngược là dạng tổng quát của thuật toán trungbình bình phương tối thiểu (Least Means Square-LMS) Thuật toán này thuộc dạngthuật toán xấp xỉ để tìm các điểm mà tại đó hiệu năng của mạng là tối ưu Chỉ số tối ưuthường được xác định bởi một hàm số của ma trận trọng số và các đầu vào nào đó màtrong quá trình tìm hiểu bài toán đặt ra
Xét một mạng nơ-rơn 3 lớp: lớp đầu vào(input), lớp ẩn(hiden), lớp đầu
Trang 29 Truyền tuyến tính (tính output của các nơ-ron): Dữ liệu từ lớp đầu vàoqua lớp ẩn và đến lớp đẩu ra để thay đổi giá trị của trọng số liên kết wcủa các nơ ron trong mạng biểu diễn dữ liệu học Sự khác nhau giữa giátrị mong muốn và giá trị mà mạng tính được gọi là lỗi.
Truyền ngược (thay đổi trọng số của các cung, dùng thông tin gradientcủa hàm lỗi): giá trị lỗi sẽ được truyền ngược lại sao cho quá trình huấnluyện sẽ tìm ra trọng số để lỗi nhỏ nhất