MỐI QUAN HỆ GIỮA TOÁN HỌC VÀ KHOA HỌC MÁY TÍNH
Introduction to Computer Science FIT – HNUE 2020
Toán học
Toán học thuần túy (Pure Math)
Nghiên cứu, phát triển nội tại của Toán học
Phát triển theo chiều sâu, giải quyết những vấn đề mới, khó của Toán học
Toán học ứng dụng (Applied Math)
Toán học cần cho cuộc sống
Nền tảng cho các khoa học khác
Phát triển theo động lực của các khoa học khác, như CNTT, Lý, Hóa,…
Introduction to Computer Science FIT – HNUE 2020
Các lĩnh vực ứng dụng
Toán học trong CNTT
Toán học trong Vật lý
Toán học trong Hóa
Toán học trong Sinh học
….
Introduction to Computer Science FIT – HNUE 2020
Khoa học máy tính
Các thuật ngữ
Khoa học máy tính (computer science)
Tin học (informatics)
Công nghệ thông tin (information technology)
Bản chất
Là khoa học về xử lý thông tin tự động bằng máy tính điện tử.
Xử lý thông tin là quá trình biến đổi dữ liệu từ dạng này sang dạng khác để thu được tri thức
Introduction to Computer Science FIT – HNUE 2020
Toán học và KHMT
Toán học là nền tảng của KHMT
Quá trình biến đổi dữ liệu chính là các biến đổi toán học, nên cốt lõi của KHMT là toán học
Các lý thuyết, mô hình toán học làm cơ sở cho sự phát triển của KHMT
KHMT sử dụng máy tính để giải quyết một số vấn đề của toán học
Các bài toán có độ phức tạp hàm mũ
Tìm nghiệm của bài toán đối ưu
….
Introduction to Computer Science FIT – HNUE 2020
Alan Turing – Cha đẻ của KHMT
Nhà toán học, logic học và mật mã học người Anhthường được xem là cha đẻ của ngành KHMT.
Phép thử Turing là một trong những cống hiến củaông trong ngành trí tuệ nhân tạo; đặt ra câu hỏi máytính có thể suy nghĩ như con người?
Máy Turing, là một mô hình thiết bị xử lý các kí tự,có thể thực hiện được tất cả các thuật toán; các hàmtoán học tính được đều có thể thực hiện được.
Giải thưởng Turing, tương đương giải thưởngNobel, trao cho những cá nhân có đóng góp nổi bậttrong lĩnh vực KHMT.
Introduction to Computer Science FIT – HNUE 2020
7 bài toán của thế kỷ 21
Ngày 24 tháng 5 năm 2000, Viện Toán học Clay công bố và thách thức 7 bài toán của thế kỷ 21
Các bài toán: P versus NP
The Hodge Conjecture
The Poincaré Conjecture (solved 2006)
The Riemann Hypothesis
Yang-Mills Existence and Mass Gap
Navier-Stokes Existence and Smoothness
The Birch and Swinnerton-Dyer Conjecture.
Introduction to Computer Science FIT – HNUE 2020
Bài toán “P versus NP”
“P versus NP” là một bài toán mở quan trọng trong lýthuyết khoa học máy tính. Bài toán đặt ra là có phải bất kìvấn đề nào có lời giải có thể được kiểm chứng "nhanhchóng" cũng có thể được giải một cách "nhanh chóng”.
Cụm từ "nhanh chóng“ ám chỉ thời gian đa thức. Lớp cácbài toán có lời giải thực thi trong thời gian đa thức đượcgọi là P. Lớp các bài toán mà lời giải có thể được kiểm tratính đúng sai trong thời gian đa thức là lớp NP.
Introduction to Computer Science FIT – HNUE 2020
Bài toán đường đi ngắn nhất nguồnđơn là bài toán tìm một đường đigiữa hai đỉnh sao cho tổng các trọngsố của các cạnh tạo nên đường đi đólà nhỏ nhất.
Tìm đường đi ngắn nhất giữa đỉnh Avà F
Lời giải {A, D, E, F}
Ví dụ: Tìm đường đi ngăn nhất
Introduction to Computer Science FIT – HNUE 2020
Ví dụ: Bài toán Halmiton
Tìm đường đi qua tất cả các đỉnh của đồ thị mỗi đỉnh đúng mộtlần được gọi là đường đi Hamilton. Chu trình bắt đầu từ một đỉnh v nào đó qua tất cả các đỉnh còn lại mỗi đỉnh
đúng một lần rồi quay trở về v được gọi là chu trình Hamilton.
Introduction to Computer Science FIT – HNUE 2020
Ví dụ: bài toán tìm tập con
Có tập hợp con nào của {−2, −3, 15, 14, 7, −10} có tổng bằng 0?
Lời giải: {−2, −3, −10, 15} có tổng bằng 0 có thể được kiểm chứng dễ dàng bằng cách cộng các số đó lại.
Tuy nhiên, hiện chưa có thuật toán nào để tìm ra một tập hợp như thế trong thời gian đa thức (có một thuật toán đơn giản thực thi trong thời gian hàm mũ là kiểm tra tất cả 2n-1 tập con).
Như vậy, bài toán này nằm trong NP (kiểm chứng nhanh chóng) nhưng chưa biết có nằm trong P (giải nhanh chóng) hay không.
Có rất nhiều bài toán như vậy. Chưa ai có thể chứng minh được rằng, với bất kỳ bài toán nào như vậy, thực sự cần rất nhiều thời gian để giải.
Introduction to Computer Science FIT – HNUE 2020
Giả thuyết Hodge
Trong thế kỷ XX, các đường thẳng và đường tròn đã bị thay thế bởi các khái niệm đại số, khái quát và hiệu quả hơn. Việc mở rộng các khái niệm đã dẫn đến hậu quả là bản chất hình học dần
dần biến mất trong toán học
Vào năm 1950, nhà toán học người Anh William Hodge cho rằng trong một số dạng không gian, các thành phần của tính đồng đẳng sẽ tìm lại bản chất hình học của chúng
Introduction to Computer Science FIT – HNUE 2020
Jules-Henri Poincaré đưa ra năm 1904
Chứng minh là trong không gian 3 chiều, mọi bề mặt liên thôngđơn giản hữu hạn và không có biên đều là bề mặt của một vậthình cầu.
Ví dụ chứng minh: Lấy một quả bóng (hoặc một vật hình cầu), vẽ trên đó một đường cong
khép kín không có điểm cắt nhau, sau đó cắt quả bóng theo đường vừa vẽ:bạn sẽ nhận được hai mảnh bóng vỡ. Làm lại như vậy với một cái phao(hay một vật hình xuyến): lần này bạn không được hai mảnh phao vỡ màchỉ được có một.
Giả thuyết Poincaré
Introduction to Computer Science FIT – HNUE 2020
Giả thuyết Riemann
Những số nguyên tố, tức những số chỉ có thể chia hết cho 1 và nócó phải có phân bố ngẫu nhiên hay không? 2, 3, 5, 7, 11, 13, 17, 19, 23, …
Sự phân bố này có liên kết chặt chẽ với hàm số Zeta do thiên tàiThụy Sĩ Leonard Euler đưa ra vào thế kỷ XVIII.
Năm 1850, Bernard Riemann đưa ra ý tưởng các giá trị khôngphù hợp với hàm số Euler được sắp xếp theo thứ tự. Giả thuyết Riemann hàm ý kết quả về sự phân bố các số nguyên tố.
Người ta đã kiểm tra tính đúng đắn của nó trong 1,5 tỷ giá trị đầu tiênnhưng vẫn không chứng minh được
Introduction to Computer Science FIT – HNUE 2020
Phương trình của Yang-Mills ra đời vào những năm 50, tác giả là2 nhà Vật lý học người Mỹ Chen Nin Yang và Robert Mills.
Các phương trình này đã biểu diễn mối quan hệ mật thiết giữa vậtlý về hạt cơ bản với hình học của các không gian sợi.
Các phương trình cho thấy sự thống nhất của hình học với phầntrung tâm của thế giới lượng tử, gồm tương tác tác yếu, mạnh vàtương tác điện từ
Các phương trình của Yang-Mills
Introduction to Computer Science FIT – HNUE 2020
Các phương trình Navier-Stokes
Henri Navier và George Stokes đưa ra cách đây 150 năm.
Mô tả hình dạng của sóng, xoáy lốc không khí, chuyển động của khí quyển vàcả hình thái của các thiên hà trong thời điểm nguyên thủy của vũ trụ.
Người ta vẫn chưa thể giải hay xác định chính xác số nghiệm của phương trìnhnày.
“Thậm chí người ta không thể biết là phương trình này có nghiệm hay không”
Introduction to Computer Science FIT – HNUE 2020
Giả thuyết của Birch và Swinnerton-Dyer
Tìm nghiệm nguyên của phương trình x2+y2=z2
Ví dụ: 32 + 42 = 52
Cách đây hơn 2300 năm, Euclide đã chứng minh rằng phương trình này có vô số nghiệm
Các nhà toán học người Anh Bryan Birch và Peter Swinnerton-Dyer từ đầu những năm 60 đã đưa ra giả thuyết là số nghiệm của phương trình phụ thuộc vào một hàm số f: Nếu hàm số f triệt tiêu tại giá trị bằng 1 (nghĩa là nếu f(1)= 0), phương
trình có vô số nghiệm
Ngược lại, số nghiệm là hữu hạn
Introduction to Computer Science FIT – HNUE 2020
Giải pháp khi dữ liệu lớn
Điều gì xảy ra khi dữ liệu lớn, N>106?
Cần thuật toán heuristic nhanh, gần đúng
Chú trọng đến giá của tính toán
Cần luôn điều khiển được độ chính xác
Đạt kết quả tốt nhất trong thời gian và tài nguyên cho phép
Sử dụng máy tính song song
Introduction to Computer Science FIT – HNUE 2020
Toán học trong một số lĩnh vực của KHMT
Mật mã và an toàn thông tin
Học máy (machine learning)
Khai phá dữ liệu (data mining)
Xử lý ngôn ngữ tự nhiên
Tin-sinh học (bioinformatics)
….
Introduction to Computer Science FIT – HNUE 2020
Mật mã và an toàn thông tin
Là nghiên cứu về bí mật của truyền tin (truyền tin trong điều kiện có kẻ địch).
An toàn mạng và máy tính: quản lý sự truy nhập máytính và tin cậy của thông tin, và các ứng dụng như: ATM cards, computer passwords, e-commerce, ...
Là lĩnh nghiên cứu lâu đời
Có tầm quan trọng
Có ảnh hưởng đến xã hội
Introduction to Computer Science FIT – HNUE 2020
Mật mã và an toàn thông tin
Mã hoá đối xứng Dùng cùng một chìa khoá để khoá và mở thông tin cần được giữ bí mật
Cả bên gửi và nhận thông tin đều phải có chìa khoá này
Introduction to Computer Science FIT – HNUE 2020
Mật mã và an toàn thông tin
Bảng 8 chữ cái A, B, C, D, E, F, G, H được mã hóa dưới dạng 3 bit
Chuỗi mã hóa “head” => 111100000011
Chữ cái Mã hóa
A 000
B 001
C 010
D 011
E 100
F 101
G 110
H 111
Introduction to Computer Science FIT – HNUE 2020
Mật mã và an toàn thông tin
Mã hoá bất đối xứng Dùng hai chìa khoá khác nhau để khoá và mở khoá thông tin bí mật.
Public key sẽ được công khai và được gửi đi đến đối tượng cần mã hoá thông tin, còn private key được giữ bí mật
Dựa trên việc tìm một thuật toán để nhân tử hóa các số trong thời gian đa thức (như RSA)
Introduction to Computer Science FIT – HNUE 2020
Mật mã và an toàn thông tin
Ví dụ cho e=17, n=3233, d=2753. Thông điệp cần mã hóa m=42
Mã hóa: 4217 mod 3233 = 2557
Giải mã: 25572753 mod 3233 = 42
Introduction to Computer Science FIT – HNUE 2020
Học máy (machine learning)
Học máy là một lĩnh vực con của Trí tuệ nhân tạo (ArtificialIntelligence) sử dụng các thuật toán cho phép máy tính có thể họcđược từ dữ liệu để thực hiện các công việc thay vì được lập trìnhmột cách rõ ràng.
Introduction to Computer Science FIT – HNUE 2020
Ví dụ
VD1: Một hệ thống nhận vào một hình ảnh, nó phải xác định xemtrong đó có khuôn mặt của Ngọc Trinh hay không. Điều này thấyrõ nhất ở chức năng tự động gắn thẻ khuôn mặt của Facebook. Kinh nghiệm có thể là một tập hợp các ảnh có khuôn mặc Ngọc Trinh và
một tập ảnh khác không có. Hiệu suất sẽ được tính bằng tỉ lệ đoán chínhxác trên một tập ảnh mới.
VD2: Hệ thống nhận vào các reviews về một sản phẩm đồ ăn. cầnxác định các reviews đó có nội dung tích cực hay tiêu cực. Kinh nghiệm ở đây có thể là tập hợp các review và nhãn tương ứng của nó.
Hiệu suất được đo bằng tỉ lệ dự đoán nhãn chính xác trên các review mới.
Introduction to Computer Science FIT – HNUE 2020
Học máy (machine learning)
Có nhiều bài toán đặt ra Bài toán phân lớp (classification)
Bài toán hồi quy (regression)
Bài toán phân cụm (clustering)
Bản chất của các thuật toán học máy là tìm nghiệm của một bài toán tối ưu Được phát biểu dưới dạng một bài toán tối ưu có hoặc không có ràng buộc
Quá trình giải bài toán là tìm giá trị tối ưu của các tham số mô hình dựa trên dữ liệu đã có
Introduction to Computer Science FIT – HNUE 2020
Học máy (machine learning)
Bài toán học máy gồm hai pha
Pha huấn luyện mô hình (training phase)
Kiểm thử mô hình (testing phase)
ML có nhiều ứng dụng trong AI
Introduction to Computer Science FIT – HNUE 2020
Khai phá dữ liệu (data mining)
Là quá trình khám phá tri thức (knowledge) từ các nguồn dữ liệu cho trước
Tri thức có thể tồn tại dưới dạng các luật (rules), các mẫu (patterns), hoặccác mô hình (models)
Có ứng dụng trong nhiều lĩnh vực khác nhau của đời sống xã hội
Introduction to Computer Science FIT – HNUE 2020
Khai phá dữ liệu (data mining)
Khai phá tri thức từ dữ liệu
Các mô hình toán học được dùng trong các bước khác nhau
Introduction to Computer Science FIT – HNUE 2020
Xử lý ngôn ngữ tự nhiên
Là quá trình giúp cho máy tính (computer) có thể hiểu và nói chuyện được với con người thông qua một ngôn ngữ tự nhiên
Là lĩnh vực nghiên cứu sôi động và có nhiều ứng dụng thực tế nhất hiện nay
Làm thế nào để con người có thể nóichuyện được với máy tính thông qua ngônngữ của con người?
Introduction to Computer Science FIT – HNUE 2020
Xử lý ngôn ngữ tự nhiên
Có nhiều bài toán đã và đang được giải quyết
Dịch máy; Tóm tắt văn bản; Phát hiện xu thế người dùng; Chatbot,…
Sử dụng các mô hình toán học
Các mô hình thống kê; Các mô hình mạng nở-ron; Mô hình học sâu (deep learning)
Đã có những bước tiến đáng kể, tuynhiên, gặp nhiều thách thức, vì sao?
Introduction to Computer Science FIT – HNUE 2020
Tin-sinh học (bioinformatics)
Lượng dữ liệu sinh học vô cùng lớn, đa dạng, phức tạp, và được lưu trữ dưới nhiều dạng khác nhau Đồ thị, chuỗi, ma trận số, text,…
Có nhiều bài toán đặt ra Xây dựng cây phân loài, để hiểu được quan hệ
giữa các loài sinh vật
Gióng hang các hệ gen để phát hiện các điểm đặc biệt, như đột biến, khiếm khuyết, quan hệ huyết thống,…
Tìm kiếm các vùng chứa thông tin di truyền (gen)
….
Introduction to Computer Science FIT – HNUE 2020
Tin-sinh học (bioinformatics)
Cần các mô hình toán học đủ mạnh để mô hình hóa lượng dữ liệu lớn, đa dạng.