✨Học máy

Học máy

Học máy hay máy học (machine learning) là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho phép các hệ thống "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể. Các thuật toán học máy xây dựng một mô hình dựa trên dữ liệu mẫu, được gọi là dữ liệu huấn luyện, để đưa ra dự đoán hoặc quyết định mà không cần được lập trình chi tiết về việc đưa ra dự đoán hoặc quyết định này. Ví dụ như các máy có thể "học" cách phân loại thư điện tử xem có phải thư rác (spam) hay không và tự động xếp thư vào thư mục tương ứng. Học máy rất gần với suy diễn thống kê (statistical inference) tuy có khác nhau về thuật ngữ. Một nhánh của học máy là học sâu phát triển rất mạnh mẽ gần đây và có những kết quả vượt trội so với các phương pháp học máy khác. Học máy 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ê, học máy 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 toán. Nhiều bài toán suy luận được xếp vào loại bài toán NP-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.

Học máy có hiện nay được áp dụng rộng rãi bao gồm máy truy tìm dữ liệu, chẩn đoán y khoa, phát hiện thẻ tín dụng giả, phân tích thị trường chứng khoán, phân loại các chuỗi DNA, nhận dạng tiếng nói và chữ viết, dịch tự động, chơi trò chơi và cử động rô-bốt (robot locomotion).

Định nghĩa

Dưới góc nhìn của trí tuệ nhân tạo, động lực chính học máy bởi là nhu cầu thu nhận tri thức (knowledge acquisition). Thật vậy, trong nhiều trường hợp ta cần kiến thức chuyên gia là khan hiếm (không đủ chuyên gia ngồi phân loại lừa đảo thẻ tín dụng của tất cả giao dịch hàng ngày) hoặc chậm vì một số nhiệm vụ cần đưa ra quyết định nhanh chóng dựa trên xử lý dữ liệu khổng lồ (trong mua bán chứng khoán phải quyết định trong vài khoảng khắc của giây chẳng hạn) và thiếu ổn định thì buộc phải cần đến máy tính. Ngoài ra, đại đa số dữ liệu sinh ra ngày nay chỉ phù hợp cho máy đọc (computer readable) tiềm tàng nguồn kiến thức quan trọng. Máy học nghiên cứu cách thức để mô hình hóa bài toán cho phép máy tính tự động hiểu, xử lý và học từ dữ liệu để thực thi nhiệm vụ được giao cũng như cách đánh giá giúp tăng tính hiệu quả.

Tom Mitchell, giáo sư nổi tiếng của Đại học Carnegie Mellon University – CMU định nghĩa cụ thể và chuẩn mực hơn như sau: "Một chương trình máy tính CT được xem là học cách thực thi một lớp nhiệm vụ NV thông qua trải nghiệm KN, đối với thang đo năng lực NL nếu như dùng NL ta đo thấy năng lực thực thi của chương trình có tiến bộ sau khi trải qua KN" (máy đã học).

Biểu diễn

Biểu diễn (representation) là một trong những vấn đề quan trọng của học máy. Biểu diễn ở đây có thể hiểu làm sao mã hóa (encode) những thông tin của thế giới thật giúp hoàn thành nhiệm vụ một cách hiệu quả và đầy đủ nhất có thể. Thông tin ở đây bao hàm cả thông tin về dữ liệu đầu vào, đầu ra hay các trạng thái của hệ thống; cũng như cách đánh giá hiệu quả của chương trình.

Thông thường, trong học máy người ta hay xây dựng các mô hình sử dụng những biến ngẫu nhiên cho việc biểu diễn dữ liệu và nội trạng thái của hệ thống. Ví dụ: dùng biến ngẫu nhiên để biểu thị cho tính chất của email là spam (tương ứng giá trị 0) hay là bình thường (tương ứng 1). Mối tương quan giữa các biến ngẫu nhiên này có thể sử dụng ví dụ như mô hình xác suất dạng đồ thị để miêu tả. Mặt khác, để đo hiệu quả có thể dùng các hàm thiệt hại (hay hàm tiện ích, trong tiếng Anh là loss functionutility function tương ứng).

Tính phổ quát

Một trong những trọng tâm khác của học máy là đạt được tính phổ quát (generalization), nói cách khác là tính chất của chương trình có thể làm việc tốt với dữ liệu mà nó chưa gặp bao giờ (unseen data). Một chương trình chỉ hiệu quả với dữ liệu đã gặp nhìn chung không có nhiều tính hữu dụng.

Lấy ví dụ về xếp thư điện tử tự động như trên, một hệ thống tự động sau khi trải qua quá trình học từ dữ liệu ("training") có thể suy diễn một số nguyên tắc riêng (chẳng hạn như xem xét nội dung: nếu thư được viết bằng tiếng Anh mà chứa một số từ như "porn", "sell", "good product" hoặc người gửi đến từ Somalia trong khi người nhận ở Hà Nội không thân quen nhau) để quyết định xem có phải là thư rác hay không. Tuy nhiên, nếu như trong dữ liệu bài giảng (training data) có ngôn ngữ khác trong thực tế (tiếng Việt thay vì tiếng Anh) hoặc thậm chí không phải dạng thuần văn bản (dạng ảnh khiến cho bóc tách nội dung khó hơn hoặc không thể) thì rất có thể máy sẽ dự báo không chính xác nữa.

Một số chương trình có thể tự động cập nhật trong thời gian thực (ví dụ như người sử dụng có chỉ ra rằng thư bị sắp xếp sai danh mục).

Tương tác với con người

Một số hệ thống học máy nỗ lực loại bỏ nhu cầu trực giác của con người trong việc phân tích dữ liệu, trong khi các hệ thống khác hướng đến việc tăng sự cộng tác giữa người và máy. Không thể loại bỏ hoàn toàn tác động của con người vì các nhà thiết kế hệ thống phải chỉ định cách biểu diễn của dữ liệu và những cơ chế nào sẽ được dùng để tìm kiếm các đặc tính của dữ liệu. Học máy có thể được xem là một nỗ lực để tự động hóa một số phần của phương pháp khoa học. Một số nhà nghiên cứu học máy tạo ra các phương pháp bên trong các khuôn khổ của thống kê Bayes.

Tương quan với Khai phá dữ liệu

Khai phá dữ liệu và học máy là hai khái niệm hay bị nhầm lẫn. Hai lĩnh vực này nhìn chung gần với nhau và đôi khi dùng chung nhiều phương pháp, công cụ nhưng khác biệt chính là ở mục tiêu:

  • Khai phá dữ liệu: thường mục tiêu là tìm kiếm những thông tin, tri thức hoàn toàn mới tiềm năng có ích trong nguồn dữ liệu.
  • Học máy: dự đoán một số thông tin của dữ liệu dựa trên những đặc tính đã biết.

Các loại giải thuật

Các thuật toán học máy được phân loại theo kết quả mong muốn của thuật toán. Các loại thuật toán thường dùng bao gồm:

  • Học có giám sát—trong đó, thuật toán tạo ra một hàm ánh xạ dữ liệu vào tới kết quả mong muốn. Một phát biểu chuẩn về một việc học có giám sát là bài toán phân loại: chương trình cần học (cách xấp xỉ biểu hiện của) một hàm ánh xạ một vector [X_1, X_2, \ldots X_N] tới một vài lớp bằng cách xem xét một số mẫu dữ liệu – kết quả của hàm đó.
  • Học không giám sát—mô hình hóa một tập dữ liệu, không có sẵn các ví dụ đã được gắn nhãn.
  • Học nửa giám sát—kết hợp các ví dụ có gắn nhãn và không gắn nhãn để sinh một hàm hoặc một bộ phân loại thích hợp.
  • Học tăng cường—trong đó, thuật toán học một chính sách hành động tùy theo các quan sát về thế giới. Mỗi hành động đều có tác động tới môi trường, và môi trường cung cấp thông tin phản hồi để hướng dẫn cho thuật toán của quá trình học.
  • Chuyển đổi—tương tự học có giám sát nhưng không xây dựng hàm một cách rõ ràng. Thay vì thế, cố gắng đoán kết quả mới dựa vào các dữ liệu huấn luyện, kết quả huấn luyện, và dữ liệu thử nghiệm có sẵn trong quá trình huấn luyện.
  • Học cách học—trong đó thuật toán học thiên kiến quy nạp của chính mình, dựa theo các kinh nghiệm đã gặp.

Phân tích hiệu quả các thuật toán học máy là một nhánh của ngành thống kê, được biết với tên lý thuyết học điện toán.

Các chủ đề về máy học

Danh sách các chủ đề của môn học này:

  • Mô hình hóa các hàm mật độ xác suất điều kiện: hồi quy và phân loại Mạng nơ-ron Máy học cực độ (Extreme learning machine) Cây quyết định Lập trình biểu thức gen Lập trình di truyền Hồi quy quá trình Gauss Phân tích biệt thức tuyến tính k láng giềng gần nhất Độ dài thông điệp tối thiểu Cảm tri nguyên Hàm cơ sở xuyên tâm Máy vector hỗ trợ (Support Vector Machine)
  • Mô hình hóa các hàm mật độ xác suất qua các mô hình phát sinh: Thuật toán cực đại kì vọng Các mô hình đồ họa gồm mạng Bayes và mạng Markov ** Ánh xạ topo phát sinh
  • Các kỹ thuật suy luận xấp xỉ đúng: Chuỗi Markov phương pháp Monte Carlo Phương pháp biến thiên
  • Tối ưu hóa: hầu hết các phương pháp trên đều sử dụng tối ưu hóa hoặc là các thể hiện của các thuật toán tối ưu hóa.
👁️ 3 | 🔗 | 💖 | ✨ | 🌍 | ⌚
Khoa học máy tính nghiên cứu các cơ sở lý thuyết của thông tin và tính toán, cùng với các kỹ thuật thực tiễn để thực hiện và
**Học máy** hay **máy học** (_machine learning_) là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho phép các hệ thống "học" tự
**John McCarthy** (4 tháng 9 năm 1927 - 24 tháng 10 năm 2011) là một nhà khoa học máy tính và nhà khoa học nhận thức người Mỹ. McCarthy là một trong những người sáng
**Khoa học máy tính lý thuyết** () là một tập hợp con của khoa học máy tính và toán học tập trung vào nhiều chủ đề toán học hơn của điện toán và bao gồm
**Nhà khoa học máy tính** là một người có được kiến thức về khoa học máy tính, nghiên cứu về nền tảng lý thuyết của thông tin và tính toán và ứng dụng của họ.
Trong khoa học máy tính, một **số nguyên** (tiếng Anh: **integer**) là một dữ liệu của **kiểu dữ liệu nguyên**, một kiểu dữ liệu đại diện cho tập con hữu hạn của các số nguyên
**Bar** là một biến siêu cú pháp được sử dụng nhiều trong khoa học máy tính để đại diện cho những khái niệm trừu tượng và có thể dùng để đại diện cho bất kỳ
**Weka** (viết tắt của Waikato Environment for Knowledge Analysis) là một bộ phần mềm học máy được Đại học Waikato, New Zealand phát triển bằng Java. Weka là phần mềm tự do phát hành theo
"[[Bài toán bữa tối của các triết gia" (_Dining Philosophers_), một bài toán kinh điển về tương tranh và chia sẻ tài nguyên]] Trong ngành khoa học máy tính, **tương tranh** là một tính chất
Trong khoa học máy tính, một **đối tượng** () có thể là một biến, một cấu trúc dữ liệu, một hàm, hay một phương thức, và như vậy, là một vị trí trong bộ nhớ
**Đại học Máy tính Magway** (, ), là một trường đại học tại Magway, Myanmar, trực thuộc Bộ Khoa học và Kỹ thuật Myanmar. Trường đào tạo bậc đại học về khoa học và công
Trong lập trình máy tính, một **biến** (_variable_) hay **vô hướng** (_scalar_) là một vị trí lưu trữ gắn liền với một tên tượng trưng (_định danh_) liên quan, chứa một số lượng thông tin
**Mặc định** (tiếng Anh: _default_), trong khoa học máy tính, đề cập đến những giá trị có từ trước của những thiết lập mà người dùng có thể cấu hình được để gán cho một
Trong ngành khoa học máy tính, **tiến trình** () là một thực thể (instance) của một chương trình máy tính đang được thực thi bởi một hoặc nhiều luồng (thread). Một tiến trình có riêng
Trong khoa học máy tính, một hàm hay biểu thức được cho là có **hiệu ứng lề** hay **tác dụng phụ** (_side effect_) nếu nó thay đổi một số trạng thái ngoài tầm vực của
Trong lập trình hướng đối tượng (OOP), **thực thể** (tiếng Anh: _instance_) là một sự xuất hiện cụ thể của bất kì đối tượng nào, thường tồn tại trong khoảng thời gian chạy của một
Trong khoa học máy tính, **giá trị** (tiếng Anh: _value_) là một biểu thức mà không thể đánh giá thêm được nữa (một dạng chuẩn). Các thành viên của một loại là những giá trị
**Torch** là một thư viện học máy mã nguồn mở, một framework tính toán khoa học và là một ngôn ngữ kịch bản dựa trên ngôn ngữ lập trình Lua. Nó cung cấp một lượng
Trong ngôn ngữ lập trình và lý thuyết kiểu, **đa hình** (, từ tiếng Hy Lạp πολύς, _polys_, "nhiều" và μορφή, _morphē_, "hình dạng") là việc cung cấp một giao diện cho các thực thể
**Phòng thí nghiệm khoa học máy tính và trí tuệ nhân tạo MIT (CSAIL) **là một phòng thí nghiệm nghiên cứu tại viện công nghệ Massachusetts thành lập bởi sự sáp nhập vào năm 2003
Mô hình 3D với DirectX 9.0: Ấm trà Utah **Đồ họa máy tính** () là một lĩnh vực của khoa học máy tính nghiên cứu về cơ sở toán học, các thuật toán cũng như
Máy Turing **Máy Turing** là một mô hình toán học về thiết bị xử lý các ký tự, tuy đơn giản, nhưng có thể thực hiện được tất cả các thuật toán máy tính. Các
thumb|354x354px|Sơ đồ mô hình học đặc trưng trong học máy, được áp dụng cho các nhiệm vụ hạ nguồn, có thể được áp dụng cho dữ liệu thô như hình ảnh hoặc văn bản, hoặc
Trí Tuệ Nhân Tạo Học Máy Và Ứng Dụng Sách được biên soạn chủ yếu cho sinh viên các trường Đại học, Cao đẳng chuyên ngành Tin học đặc biệt là Khoa học máy tính
## Học có giám sát * AODE * Mạng nơ-ron nhân tạo ** Truyền ngược ** Autoencoders ** Hopfield networks ** Máy Boltzmann ** Máy Boltzmann hạn chế ** Spiking neural networks * Thống kê
Cuốn sách giúp bạn làm chủ công nghệ, làm chủ cuộc sống Hầu hết giới trẻ ngày nay sử dụng máy tính và công nghệ hết sức thoải mái, vì vậy người ta dễ dàng
Sách sổ tay khoa học máy tính và mã hóa Á Châu Books Ý tưởng độc đáo của bộ sách nằm ở chỗ nó được thiết kế mô phỏng cuốn vở ghi chép trên lớp
Cuốn sách giúp bạn làm chủ công nghệ, làm chủ cuộc sống Hầu hết giới trẻ ngày nay sử dụng máy tính và công nghệ hết sức thoải mái, vì vậy người ta dễ dàng
Trí tuệ nhân tạo (AI) và học máy (ML) giúp mô phỏng tư duy con người, tự động hóa và dự đoán chính xác. Từ kinh doanh đến sản xuất, AI đang hiện diện ngày
Sách được biên soạn chủ yếu cho sinh viên các trường Đại học, Cao đẳng chuyên ngành Tin học đặc biệt là Khoa học máy tính làm tài liệu tham khảo. Sách vẫn sử dụng
Everything you need to ace Computer Science and Coding - Big Fat Notebooks - Sổ tay máy tính - Genbooks Tiếng anh Sách Khoa học máy tính & mã hóa - Computer Science and Coding
**Máy vectơ hỗ trợ** (**SVM** - viết tắt tên tiếng Anh **support vector machine**) là một khái niệm trong thống kê và khoa học máy tính cho một tập hợp các phương pháp học có
_Đừng nhầm lẫn với diễn viên Margaret Brainard Hamilton.**_Margaret Heafield Hamilton** (sinh ngày 17 tháng 8 năm 1936) là một nhà khoa học máy tính, kỹ sư hệ thống, và là chủ doanh nghiệp. Bà
Toán Học Cho Trẻ Tò Mò Số Học, Hình Học, Khoa Học Máy Tính Và Hơn Thế Nữa Bạn có biết mỗi lần bạn xem giờ, nấu ăn, tính tiền trả lại, đo lường đồ
nhỏ|phải|300x300|[[Tam giác Sierpinski]] **Đệ quy** (tiếng Anh: _recursion_) là phương pháp dùng trong các chương trình máy tính trong đó có một hàm tự gọi chính nó. ## Khái niệm hình thức về đệ quy
Trong công nghệ thông tin và khoa học máy tính, một chương trình được mô tả là có **trạng thái** nếu nó được thiết kế để ghi nhớ các sự kiện hoặc tương tác người
Bạn muốn giúp trẻ hiểu về khoa học máy tính, nhưng không biết bắt đầu từ đâu Cuốn sách này sẽ hướng dẫn trẻ tư duy logic, các mô hình phát hiện và chia nhỏ
Trong ngành khoa học máy tính, **học tăng cường** (tiếng Anh: _reinforcement learning_) là một lĩnh vực con của học máy, nghiên cứu cách thức một _agent_ trong một _môi trường_ nên chọn thực hiện
Trong khoa học máy tính, **học nửa giám sát** là một lớp của kỹ thuật học máy, sử dụng cả dữ liệu đã gán nhãn và chưa gán nhãn để huấn luyện - điển hình
Sách - Trí Tuệ Nhân Tạo - Học Máy Và Ứng Dụng Tác giả Nguyễn Tất Bảo Thiện, Nguyễn Quốc Huy Nhà xuất bản NXB Thanh Niên Đơn vị phát hành Công ty TNHH Thương
**Thạc sĩ Khoa học Công nghệ Thông tin** (tiếng Anh: **Master of Science in Information Technology**, viết tắt **M.Sc. IT**, **MSc IT** or **MSIT**) là một chứng chỉ thạc sĩ đào tạo sau đại học
**Học có giám sát** là một kĩ thuật của ngành học máy để xây dựng một hàm (_function_) từ dữ liệu huấn luyện. Dữ liệu huấn luyện bao gồm các cặp gồm đối tượng đầu
Trong khoa học máy tính, **reflection** (có thể dịch là "phản tỉnh", "tự xét mình") là việc tiến trình có khả năng xem xét, nội quan, và sửa đổi kết cấu cùng với hành trạng
Trong khoa học máy tính, **tham chiếu** (tiếng Anh: _reference_) là một giá trị cho phép chương trình truy xuất gián tiếp tới một số liệu cụ thể, như một biến hay một bản ghi,
**Học tự giám sát** (**self-supervised learning** hay **SSL**) là một kỹ thuật trong học máy mà trong đó, một mô hình được huấn luyện trên một tác vụ bằng cách sử dụng chính dữ liệu
**Học không có giám sát** (tiếng Anh: **unsupervised learning**) là một phương pháp của ngành học máy nhằm tìm ra một mô hình mà phù hợp với các quan sát. Nó khác biệt với học
Trí Tuệ Nhân Tạo Học Máy Và Ứng Dụng
Tớ Đến Với Khoa Học Máy Tính Logic Và Dữ Liệu
Trong khoa học máy tính, dữ liệu có nhiều phần, còn được gọi là một _bản ghi,_ có thể được chia thành các **trường** (tiếng Anh: _field_). Cơ sở dữ liệu quan hệ sắp xếp
Trong khoa học máy tính, **thu gom rác** (tiếng Anh: _garbage collection_ hay _GC_) là một dạng quản lý bộ nhớ tự động. **Bộ gom rác** (_garbage collector_ hay _collector_), sẽ cố gắng thu hồi