Luận văn thạc sĩ: Tìm hiểu mạng tích chập và ứng dụng đếm vật thể

Luận văn thạc sĩ nghiên cứu mạng tích chập (CNN) và RetinaNet, trình bày chi tiết quá trình xây dựng ứng dụng đếm các vật thể thông dụng thực tế.

Trường đại học

Trường Đại Học Duy Tân

Chuyên ngành

Khoa học máy tính

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ

2021

78
0
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

MỞ ĐẦU

1. CHƯƠNG 1: TỔNG QUAN CHUNG VỀ HỌC MÁY

1.1. MỐI LIÊN HỆ VỚI CÁC LĨNH VỰC KHÁC

1.1.1. Trí tuệ nhân tạo

1.1.2. Khai phá dữ liệu

1.1.3. Số liệu thống kê

1.2. CÁC LỚP PHƯƠNG PHÁP TRONG MACHINE LEARNING

1.2.1. Học không giám sát

1.2.2. Học tăng cường

1.2.3. Nén chiều dữ liệu

1.2.4. Các vấn đề liên quan khác

2. CHƯƠNG 2: TRÌNH BÀY VỀ MẠNG TÍCH CHẬP CNN

2.1. MẠNG NƠ-RON TÍCH CHẬP

2.1.1. Các loại mạng CNN

2.2. GIỚI THIỆU VỀ RETINANET

2.2.1. Mạng Kim Tự Tháp tính năng (FPN)

2.2.2. Kiến trúc RetinaNet

3. CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG RETINANET TRONG NHẬN DIỆN VẬT THỂ

3.1. TRIỂN KHAI HỆ THỐNG

3.1.1. import các thư viện cần thiết của python

3.1.2. tải bộ dataset sử dụng để huấn luyện

3.1.3. xây dựng các hàm hỗ trợ

3.2. INTERSECTION OVER UNION (IOU)

3.3. Triển khai hàm sinh các Anchor Box

3.4. Tiền xử lý dữ liệu

3.5. Xây dựng khung xương RESNET50

3.6. Xây dựng mạng kim tự tháp tính năng

3.7. Xây dựng phân loại và các đầu hồi quy hộp

3.8. Xây dựng RetinaNet

3.9. Triển khai lớp tùy chọn để giải mã dự đoán

3.10. Triển khai Smooth L1 loss và Focal Loss

3.11. Cài đặt các tham số huấn luyện

3.12. Khởi tạo và biên dịch model

3.13. Cài đặt các gàm callbacks

3.14. Nạp tập dữ liệu sử dụng TensorFlow

3.15. Cài đặt đường ống tf

3.16. Huấn luyện model

3.17. Xây dựng giao diện model

3.18. Sinh các kết quả nhận diện

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CHO ĐỀ TÀI

TÀI LIỆU THAM KHẢO

DANH MỤC CÁC HÌNH

Tóm tắt

I. Hướng dẫn luận văn CNN Tổng quan về đếm vật thể

Trong bối cảnh công nghệ 4.0, chủ đề luận văn CNN: Xây dựng ứng dụng đếm vật thể thông dụng đang trở thành một hướng nghiên cứu hấp dẫn và mang tính ứng dụng cao. Đề tài này không chỉ là một thách thức kỹ thuật mà còn mở ra nhiều cơ hội giải quyết các bài toán thực tiễn trong đời sống. Cốt lõi của đề tài nằm ở việc vận dụng Mạng nơ-ron tích chập (CNN), một kiến trúc Học sâu (Deep Learning) tiên tiến, để tự động hóa công việc nhận diện và đếm số lượng đối tượng trong hình ảnh hoặc video. Sự phát triển mạnh mẽ của Thị giác máy tính (Computer Vision) đã cung cấp những công cụ và phương pháp luận mạnh mẽ để máy tính có thể "nhìn" và hiểu được thế giới xung quanh. Nhiệm vụ đếm đối tượng (Object counting) là một bài toán cụ thể trong lĩnh vực này, yêu cầu hệ thống không chỉ xác định sự hiện diện của vật thể mà còn phải đưa ra số lượng chính xác. Các mô hình Deep Learning hiện đại như YOLOv8 hay RetinaNet đã chứng tỏ hiệu quả vượt trội so với các phương pháp xử lý ảnh truyền thống. Một đồ án tốt nghiệp hoặc báo cáo khoa học về lĩnh vực này đòi hỏi sự kết hợp nhuần nhuyễn giữa kiến thức lý thuyết về CNN, kỹ năng lập trình với Mã nguồn Python, và kinh nghiệm làm việc với các framework như TensorFlow hay PyTorch. Quá trình thực hiện bao gồm các bước quan trọng như thu thập tập dữ liệu (dataset), tiền xử lý, huấn luyện mô hình, và cuối cùng là triển khai mô hình thành một ứng dụng hoàn chỉnh. Thành công của một dự án như vậy không chỉ nằm ở độ chính xác của mô hình mà còn ở khả năng ứng dụng thực tế, chẳng hạn như trong hệ thống đếm người tại sự kiện hoặc đếm xe cộ trong quản lý giao thông.

1.1. Tầm quan trọng của bài toán Object Counting trong thực tế

Bài toán đếm đối tượng (Object Counting) không chỉ là một vấn đề lý thuyết trong ngành Khoa học máy tính mà còn có ý nghĩa thực tiễn to lớn. Trong lĩnh vực bán lẻ, các hệ thống có thể tự động đếm số lượng sản phẩm trên kệ, giúp quản lý kho và tối ưu hóa chuỗi cung ứng. Trong quản lý đô thị, các ứng dụng đếm xe cộ giúp phân tích mật độ giao thông, điều khiển đèn tín hiệu và giảm thiểu ùn tắc. Tương tự, hệ thống đếm người được triển khai tại các sân bay, trung tâm thương mại, hoặc sân vận động để giám sát an ninh và quản lý đám đông hiệu quả. Luận văn của Nguyễn Trần Hoàng Linh (2021) nhấn mạnh rằng việc đếm vật thể số lượng lớn là một vấn đề cần giải quyết, từ những yêu cầu đơn giản như đếm ly nước trên bàn đến các tác vụ phức tạp như kiểm đếm số người tham dự hội nghị. Việc tự động hóa quy trình này giúp tiết kiệm thời gian, giảm sai sót của con người và cung cấp dữ liệu tức thời cho việc ra quyết định.

1.2. Mạng nơ ron tích chập CNN và vai trò trong thị giác máy tính

Mạng nơ-ron tích chập (CNN hay ConvNet) là một lớp mạng nơ-ron sâu, được thiết kế đặc biệt để xử lý dữ liệu có cấu trúc dạng lưới, chẳng hạn như hình ảnh. Theo tài liệu nghiên cứu, CNN là phiên bản chính quy hóa của perceptron nhiều lớp, giúp giảm thiểu số lượng tham số và chống lại hiện tượng overfitting. Kiến trúc của CNN lấy cảm hứng từ vỏ não thị giác của động vật, nơi các tế bào thần kinh chỉ phản ứng với các kích thích trong một vùng giới hạn gọi là trường tiếp nhận. Bằng cách sử dụng các bộ lọc (kernels) trượt qua hình ảnh đầu vào, CNN có khả năng tự động học và trích xuất các đặc trưng phân cấp, từ các cạnh và góc đơn giản ở các lớp đầu đến các cấu trúc phức tạp như khuôn mặt hay vật thể ở các lớp sâu hơn. Chính khả năng này làm cho CNN trở thành nền tảng cho hầu hết các tác vụ Thị giác máy tính hiện đại, bao gồm phân loại ảnh, nhận dạng đối tượng (Object Detection), và dĩ nhiên là đếm vật thể.

II. Thách thức khi xây dựng ứng dụng đếm vật thể thông dụng

Việc xây dựng ứng dụng đếm vật thể thông dụng không phải là một quá trình đơn giản mà đối mặt với nhiều thách thức kỹ thuật. Một trong những khó khăn lớn nhất là sự đa dạng về kích thước, hình dạng, và góc nhìn của các vật thể trong một khung hình. Các vật thể có thể bị che khuất một phần, xuất hiện với mật độ dày đặc, hoặc nằm trong các điều kiện ánh sáng phức tạp, gây khó khăn cho quá trình nhận dạng đối tượng. Một thách thức khác, được nhấn mạnh trong các nghiên cứu về Object Detection một giai đoạn, là sự mất cân bằng nghiêm trọng giữa các mẫu nền (background) và các mẫu đối tượng (foreground). Trong một bức ảnh, số lượng các vùng không chứa vật thể thường áp đảo hoàn toàn số lượng vùng có vật thể, điều này có thể làm cho mô hình Deep Learning bị thiên vị, ưu tiên dự đoán nền và bỏ qua các vật thể quan trọng. Quá trình huấn luyện mô hình do đó đòi hỏi các kỹ thuật xử lý đặc biệt. Ngoài ra, việc thu thập và gán nhãn một tập dữ liệu (dataset) lớn và chất lượng cao cũng là một công việc tốn nhiều thời gian và công sức. Để triển khai mô hình thành một ứng dụng thực tế, các yếu tố như tốc độ xử lý (fps) và yêu cầu tài nguyên phần cứng cũng cần được cân nhắc kỹ lưỡng, đặc biệt là đối với các ứng dụng thời gian thực như đếm xe cộ qua camera giám sát.

2.1. Vấn đề mất cân bằng lớp trong nhận dạng đối tượng

Sự mất cân bằng lớp là một vấn đề cố hữu trong các bài toán nhận dạng đối tượng sử dụng phương pháp one-stage detector. Các bộ dò này thường tạo ra hàng chục nghìn anchor boxes (hộp neo) trên mỗi ảnh để dự đoán vị trí vật thể. Tuy nhiên, chỉ một phần rất nhỏ trong số các hộp neo này thực sự chứa vật thể (lớp positive), trong khi phần lớn còn lại thuộc về nền (lớp negative). Theo nghiên cứu về RetinaNet, những ví dụ negative "dễ" này, dù có giá trị loss riêng lẻ rất nhỏ, nhưng với số lượng áp đảo có thể lấn át gradient của các ví dụ positive quan trọng trong quá trình huấn luyện mô hình. Điều này làm cho mô hình học kém hiệu quả, giảm độ chính xác trong việc phát hiện các vật thể khó. Để giải quyết vấn đề này, các phương pháp như Focal Loss đã được đề xuất, nhằm giảm trọng số của các ví dụ dễ phân loại và tập trung vào việc học từ các ví dụ khó.

2.2. Khó khăn khi phát hiện vật thể đa dạng kích thước và mật độ

Trong thực tế, các vật thể cần đếm thường có kích thước rất khác nhau, từ những vật thể nhỏ chiếm vài pixel đến những vật thể lớn bao phủ phần lớn khung hình. Các mô hình CNN truyền thống thường gặp khó khăn trong việc phát hiện hiệu quả trên nhiều tỷ lệ như vậy. Hơn nữa, khi các vật thể xuất hiện với mật độ cao và chồng chéo lên nhau, ví dụ như trong một đám đông người hoặc một bãi đậu xe, việc phân tách và đếm chính xác từng đối tượng trở nên cực kỳ phức tạp. Các kiến trúc như Mạng Kim Tự Tháp (Feature Pyramid Network - FPN) được phát triển để giải quyết vấn đề này. FPN cho phép mô hình tạo ra các bản đồ đặc trưng giàu ngữ nghĩa ở nhiều cấp độ phân giải khác nhau, giúp cải thiện khả năng phát hiện vật thể ở cả kích thước nhỏ và lớn.

III. Phương pháp RetinaNet Giải pháp tối ưu cho luận văn CNN

Để giải quyết các thách thức đã nêu, luận văn CNN của Nguyễn Trần Hoàng Linh (2021) đã tập trung nghiên cứu và triển khai mô hình RetinaNet, một giải pháp hiệu quả cho bài toán đếm vật thể thông dụng. RetinaNet là một bộ dò đối tượng một giai đoạn (one-stage detector) nổi bật với khả năng đạt được độ chính xác tương đương các bộ dò hai giai đoạn phức tạp như Faster R-CNN nhưng vẫn duy trì tốc độ xử lý nhanh. Sự thành công của RetinaNet đến từ hai cải tiến cốt lõi: việc tích hợp Mạng Kim Tự Tháp (Feature Pyramid Network - FPN) và việc giới thiệu một hàm mất mát mới gọi là Focal Loss. FPN cho phép mô hình Deep Learning phát hiện các đối tượng ở nhiều tỷ lệ khác nhau một cách hiệu quả bằng cách kết hợp các đặc trưng từ các lớp sâu (giàu ngữ nghĩa) và các lớp nông (giàu thông tin không gian). Trong khi đó, Focal Loss được thiết kế đặc biệt để giải quyết vấn đề mất cân bằng lớp giữa đối tượng và nền. Bằng cách giảm tác động của các ví dụ nền dễ phân loại trong quá trình huấn luyện mô hình, Focal Loss giúp mạng tập trung học các đặc trưng của những vật thể khó phát hiện hơn. Sự kết hợp này làm cho RetinaNet trở thành một lựa chọn lý tưởng cho các đồ án tốt nghiệp và nghiên cứu khoa học về Computer Vision, đặc biệt là trong các ứng dụng yêu cầu cả độ chính xác cao và hiệu suất tốt.

3.1. Kiến trúc Mạng Kim Tự Tháp FPN trong RetinaNet

Mạng Kim Tự Tháp (FPN) là một thành phần kiến trúc quan trọng giúp RetinaNet xử lý hiệu quả các vật thể đa tỷ lệ. FPN xây dựng một kim tự tháp đặc trưng với ngữ nghĩa phong phú ở mọi cấp độ. Kiến trúc này bao gồm một đường dẫn từ dưới lên (bottom-up pathway), chính là mạng backbone (ví dụ: ResNet) để trích xuất đặc trưng, và một đường dẫn từ trên xuống (top-down pathway) để tái tạo các bản đồ đặc trưng có độ phân giải cao hơn. Trong quá trình từ trên xuống, các bản đồ đặc trưng ở lớp cao hơn (giàu ngữ nghĩa nhưng độ phân giải thấp) được lấy mẫu ngược (upsampling). Sau đó, chúng được kết hợp với các bản đồ đặc trưng tương ứng từ đường dẫn dưới lên thông qua các kết nối bên (lateral connections). Quá trình này giúp lan truyền các ngữ nghĩa mạnh mẽ từ các lớp sâu đến các lớp nông, tạo ra các bản đồ đặc trưng vừa có độ phân giải cao vừa giàu thông tin ngữ nghĩa, từ đó cải thiện đáng kể khả năng nhận dạng đối tượng ở các kích thước khác nhau.

3.2. Vượt qua mất cân bằng với Focal Loss trong Deep Learning

Focal Loss là một hàm mất mát được thiết kế để giải quyết tình trạng mất cân bằng lớp cực đoan trong các bộ dò một giai đoạn. Nó là một phiên bản cải tiến của hàm Cross Entropy Loss tiêu chuẩn. Công thức của Focal Loss bổ sung một hệ số điều biến (1 - p_t)^γ vào hàm Cross Entropy. Ở đây, p_t là xác suất dự đoán của mô hình cho lớp đúng, và γ là một tham số có thể điều chỉnh. Khi một mẫu được phân loại đúng với độ tin cậy cao (ví dụ p_t -> 1), hệ số điều biến này sẽ tiến về 0, làm giảm đáng kể đóng góp của mẫu đó vào tổng loss. Ngược lại, đối với các mẫu khó, bị phân loại sai (p_t nhỏ), hệ số điều biến sẽ gần bằng 1, giữ nguyên hoặc khuếch đại đóng góp của chúng. Nhờ cơ chế này, quá trình huấn luyện mô hình sẽ tự động tập trung vào việc sửa chữa các dự đoán sai trên những mẫu khó, giúp cải thiện độ chính xác tổng thể của mô hình đếm vật thể.

IV. Cách triển khai mô hình CNN Từ lý thuyết đến thực tiễn

Việc triển khai mô hình là bước quan trọng biến những nghiên cứu lý thuyết trong luận văn CNN thành một sản phẩm cụ thể. Quá trình này bắt đầu bằng việc lựa chọn một mạng backbone mạnh mẽ để trích xuất đặc trưng. Trong luận văn tham khảo, ResNet50 được sử dụng làm nền tảng cho kiến trúc RetinaNet, tận dụng khả năng học các biểu diễn sâu mà không gặp vấn đề suy giảm gradient nhờ các kết nối tắt (skip connections). Tiếp theo là giai đoạn chuẩn bị dữ liệu. Một tập dữ liệu (dataset) phù hợp cần được thu thập, làm sạch và gán nhãn cẩn thận. Dữ liệu này sau đó được chia thành các tập huấn luyện, kiểm định và kiểm tra. Giai đoạn cốt lõi là huấn luyện mô hình. Sử dụng các framework phổ biến như TensorFlow hoặc PyTorch, mô hình RetinaNet được huấn luyện trên tập dữ liệu đã chuẩn bị. Quá trình này bao gồm việc thiết lập các siêu tham số như tốc độ học (learning rate), số epoch, kích thước batch, và tối ưu hóa hàm Focal Loss. Sau khi huấn luyện, mô hình cần được đánh giá hiệu suất trên tập kiểm tra để đo lường độ chính xác. Cuối cùng, mô hình đã được huấn luyện sẽ được tích hợp vào một ứng dụng, có thể là một chương trình desktop sử dụng OpenCV để đọc ảnh/video hoặc một ứng dụng web, để thực hiện nhiệm vụ đếm vật thể thông dụng trong thời gian thực.

4.1. Sử dụng ResNet50 và vai trò trích xuất đặc trưng

ResNet (Residual Network) là một kiến trúc CNN mang tính cách mạng, cho phép xây dựng các mạng nơ-ron rất sâu (hàng trăm lớp) mà vẫn hiệu quả. ResNet50, phiên bản có 50 lớp, thường được chọn làm backbone vì sự cân bằng tốt giữa độ chính xác và hiệu suất tính toán. Điểm đặc biệt của ResNet là các "khối phần dư" (residual blocks), sử dụng các kết nối tắt để cho phép gradient lan truyền trực tiếp qua nhiều lớp. Điều này giải quyết vấn đề gradient biến mất hoặc bùng nổ thường gặp ở các mạng sâu. Trong hệ thống đếm đối tượng, ResNet50 đóng vai trò là bộ trích xuất đặc trưng mạnh mẽ, tạo ra các bản đồ đặc trưng phân cấp làm đầu vào cho Mạng Kim Tự Tháp (FPN), cung cấp nền tảng vững chắc cho việc nhận dạng đối tượng chính xác.

4.2. Huấn luyện mô hình với TensorFlow và tập dữ liệu phù hợp

TensorFlow là một trong những thư viện Học sâu mã nguồn mở mạnh mẽ và phổ biến nhất, được phát triển bởi Google. Nó cung cấp một hệ sinh thái toàn diện từ việc xây dựng, huấn luyện mô hình đến triển khai mô hình trên nhiều nền tảng khác nhau. Trong khuôn khổ một đồ án tốt nghiệp, việc sử dụng TensorFlow cùng với API Keras giúp đơn giản hóa quá trình xây dựng các kiến trúc phức tạp như RetinaNet. Để huấn luyện, việc lựa chọn một tập dữ liệu (dataset) chất lượng là yếu tố quyết định. Các bộ dữ liệu công khai như COCO (Common Objects in Context) thường được sử dụng để tiền huấn luyện (pre-training) mô hình. Sau đó, mô hình có thể được tinh chỉnh (fine-tuning) trên một bộ dữ liệu tùy chỉnh, nhỏ hơn, tập trung vào các vật thể cụ thể mà ứng dụng cần đếm, chẳng hạn như dữ liệu hình ảnh xe cộ hoặc người đi bộ được thu thập riêng.

V. Kết quả xây dựng ứng dụng đếm vật thể và ý nghĩa thực tiễn

Kết quả cuối cùng của đề tài luận văn CNN: Xây dựng ứng dụng đếm vật thể thông dụng là một hệ thống hoàn chỉnh có khả năng phân tích hình ảnh hoặc luồng video để đưa ra số lượng các đối tượng quan tâm. Hiệu quả của hệ thống được đánh giá một cách định lượng thông qua các độ đo (metrics) phổ biến trong Thị giác máy tính như Mean Average Precision (mAP) cho tác vụ nhận dạng đối tượng và Mean Absolute Error (MAE) cho tác vụ đếm. Các thực nghiệm được tiến hành trên các tập dữ liệu kiểm thử cho thấy mô hình, chẳng hạn như RetinaNet, có khả năng đếm chính xác trong nhiều kịch bản khác nhau. Ý nghĩa thực tiễn của một ứng dụng như vậy là rất lớn. Trong lĩnh vực giao thông thông minh, nó có thể được dùng để đếm xe cộ, phân tích lưu lượng và phát hiện ùn tắc. Trong ngành bán lẻ, ứng dụng có thể theo dõi số lượng khách hàng (đếm người) ra vào cửa hàng hoặc đếm sản phẩm trên băng chuyền. Trong nông nghiệp, công nghệ này có thể hỗ trợ đếm số lượng cây trồng hoặc trái cây để ước tính năng suất. Luận văn của Nguyễn Trần Hoàng Linh (2021) cũng chỉ ra các ứng dụng tiềm năng như tính toán giá đồ ăn dựa trên nhận dạng món hoặc điểm danh tự động trong hội thảo. Việc triển khai mô hình thành công chứng tỏ tiềm năng to lớn của Deep Learning trong việc tự động hóa các quy trình giám sát và thống kê.

5.1. Đánh giá độ chính xác của mô hình qua các độ đo Metrics

Để đánh giá một cách khách quan hiệu suất của mô hình đếm vật thể, việc sử dụng các độ đo tiêu chuẩn là bắt buộc. Đối với phần Object Detection, độ đo phổ biến nhất là Precision (Độ chính xác) và Recall (Độ phủ), được kết hợp thành Average Precision (AP) cho mỗi lớp đối tượng. Mean Average Precision (mAP) là giá trị trung bình của AP trên tất cả các lớp, là thước đo tổng thể về chất lượng nhận dạng. Đối với riêng tác vụ đếm, các độ đo thường dùng là Mean Absolute Error (MAE), tính trung bình của giá trị tuyệt đối của sai số giữa số lượng đếm được và số lượng thực tế, và Mean Squared Error (MSE). Các kết quả này cung cấp cái nhìn định lượng, giúp so sánh hiệu quả giữa các mô hình khác nhau như YOLOv8, SSD hay RetinaNet, và là cơ sở để cải tiến mô hình.

5.2. Các ứng dụng thực tiễn Từ đếm người đến quản lý hàng hóa

Ứng dụng đếm vật thể có phạm vi triển khai vô cùng rộng lớn. Hệ thống đếm người giúp các nhà quản lý trung tâm thương mại phân tích hành vi khách hàng, tối ưu hóa bố trí gian hàng. Tại các sự kiện lớn, nó giúp kiểm soát mật độ đám đông, đảm bảo an ninh. Trong lĩnh vực công nghiệp, các camera gắn trên dây chuyền sản xuất có thể sử dụng CNN để đếm số lượng sản phẩm lỗi, kiểm soát chất lượng tự động. Trong logistics, công nghệ này hỗ trợ kiểm kê hàng hóa trong kho một cách nhanh chóng và chính xác. Các mô hình như YOLOv5 hay YOLOv8, với tốc độ xử lý nhanh, rất phù hợp cho các ứng dụng thời gian thực này, mở ra một kỷ nguyên mới cho tự động hóa dựa trên Computer Vision.

01/10/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1 TỔNG QUAN CHUNG VỀ HỌC MÁY 1. HỌC MÁY LÀ GÌ Học máy (ML) là nghiên cứu các thuật toán máy tính cải tiến tự động thông qua kinh nghiệm và bằng cách sử dụng dữ liệu. Nó được xem như một phần của trí tuệ nhân tạo. 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 đào tạo", để đưa ra dự đoán hoặc quyết định mà không cần được lập trình rõ ràng để làm như vậy.Các thuật toán học máy được sử dụng trong nhiều ứng dụng, chẳng hạn như trong y học, lọc email, nhận dạng giọng nói và thị giác máy tính, trong đó việc phát triển các thuật toán thông thường để thực hiện các tác vụ cần thiết là rất khó hoặc không khả thi.

Một tập hợp con của học máy có liên quan chặt chẽ đến thống kê tính toán, tập trung vào việc đưa ra dự đoán bằng máy tính; nhưng không phải tất cả học máy đều là học thống kê. Nghiên cứu về tối ưu hóa toán học cung cấp các phương pháp, lý thuyết và lĩnh vực ứng dụng cho lĩnh vực học máy. Khai phá dữ liệu là một lĩnh vực nghiên cứu liên quan, tập trung vào phân tích dữ liệu khám phá thông qua học tập không giám sát. [5] [6] Trong ứng dụng của nó cho các vấn đề kinh doanh, học máy còn được gọi là phân tích dự đoán.

Học máy liên quan đến việc máy tính khám phá cách chúng có thể thực hiện các tác vụ mà không cần được lập trình rõ ràng để làm như vậy. Nó liên quan đến việc máy tính học hỏi từ dữ liệu được cung cấp để chúng thực hiện các tác vụ nhất định. Đối với các nhiệm vụ đơn giản được giao cho máy tính, có thể lập trình các thuật toán cho máy biết cách thực hiện tất cả các bước cần thiết để giải quyết vấn đề trong tầm tay; về phần máy tính, không cần học. Đối với các tác vụ nâng cao hơn, con người có thể tạo ra các thuật toán cần 5 thiết theo cách thủ công.

Trong thực tế, nó có thể hiệu quả hơn khi giúp máy phát triển thuật toán của riêng nó, thay vì để các lập trình viên con người chỉ định mọi bước cần thiết. Kỷ luật học máy sử dụng nhiều cách tiếp cận khác nhau để dạy máy tính hoàn thành các nhiệm vụ mà không có thuật toán thỏa mãn nào có sẵn. Trong trường hợp tồn tại một số lượng lớn các câu trả lời tiềm năng, một cách tiếp cận là gắn nhãn một số câu trả lời đúng là hợp lệ. Sau đó, dữ liệu này có thể được sử dụng làm dữ liệu đào tạo cho máy tính để cải thiện (các) thuật toán mà nó sử dụng để xác định câu trả lời đúng.

Ví dụ, để đào tạo một hệ thống cho nhiệm vụ nhận dạng ký tự kỹ thuật số, bộ dữ liệu MNIST gồm các chữ số viết tay thường được sử dụng. MỐI LIÊN HỆ VỚI CÁC LĨNH VỰC KHÁC Thuật ngữ học máy được đặt ra vào năm 1959 bởi Arthur Samuel, một IBMer người Mỹ và là người tiên phong trong lĩnh vực máy tính chơi game và trí tuệ nhân tạo. Một cuốn sách tiêu biểu của nghiên cứu học máy trong những năm 1960 là cuốn sách của Nilsson về Học máy, chủ yếu đề cập đến việc học máy để phân loại mẫu.Mối quan tâm liên quan đến nhận dạng mẫu tiếp tục vào những năm 1970, như được mô tả bởi Duda và Hart vào năm 1973. Năm 1981, một báo cáo đã được đưa ra về việc sử dụng các chiến lược giảng dạy để một mạng nơ-ron học cách nhận ra 40 ký tự (26 chữ cái, 10 chữ số và 4 ký hiệu đặc biệt) từ một thiết bị đầu cuối máy tính.

Mitchell đã đưa ra một định nghĩa chính thức, được trích dẫn rộng rãi hơn về các thuật toán được nghiên cứu trong lĩnh vực học máy: "Một chương trình máy tính được cho là học hỏi từ kinh nghiệm E đối với một số loại nhiệm vụ T và đo lường hiệu suất P nếu hiệu suất của nó tại các tác vụ trong T, được đo bằng P, cải thiện theo kinh nghiệm E. "Định nghĩa này về các nhiệm vụ mà học máy có liên quan đưa ra một định nghĩa hoạt động cơ 6 bản hơn là xác định lĩnh vực này theo thuật ngữ nhận thức. Điều này theo sau đề xuất của Alan Turing trong bài báo "Máy tính và trí thông minh" của ông, trong đó câu hỏi "Máy móc có thể suy nghĩ không?" được thay thế bằng câu hỏi "Liệu máy móc có thể làm những gì tôi (với tư cách là các thực thể tư duy) có thể làm được không?". Học máy hiện đại có hai mục tiêu, một là phân loại dữ liệu dựa trên các mô hình đã được phát triển, mục đích khác là đưa ra dự đoán cho các kết quả trong tương lai dựa trên các mô hình này.

Một thuật toán giả định cụ thể để phân loại dữ liệu có thể sử dụng tầm nhìn của máy tính về nốt ruồi kết hợp với việc học có giám sát để huấn luyện nó phân loại nốt ruồi ung thư. Trong đó, thuật toán học máy cho giao dịch chứng khoán có thể thông báo cho nhà giao dịch về những dự đoán tiềm năng trong tương lai. Trí tuệ nhân tạo Là một nỗ lực khoa học, học máy đã phát triển từ nhiệm vụ tìm kiếm trí tuệ nhân tạo. Trong những ngày đầu của AI như một bộ môn học thuật, một số nhà nghiên cứu quan tâm đến việc máy móc học hỏi từ dữ liệu.

Họ đã cố gắng tiếp cận vấn đề bằng nhiều phương pháp biểu tượng khác nhau, cũng như cái mà sau đó được gọi là "mạng nơ-ron"; chúng hầu hết là các perceptron và các mô hình khác sau này được phát hiện là phát minh lại của các mô hình thống kê tuyến tính tổng quát hóa. Lý luận xác suất cũng được sử dụng, đặc biệt là trong chẩn đoán y tế tự động. Tuy nhiên, việc chú trọng ngày càng nhiều vào phương pháp tiếp cận dựa trên tri thức, hợp lý đã gây ra rạn nứt giữa AI và học máy. Các hệ thống xác suất đã bị cản trở bởi các vấn đề lý thuyết và thực tế về thu thập và biểu diễn dữ liệu.Đến năm 1980, các hệ thống chuyên gia đã thống trị AI và thống kê không còn được ưa chuộng.Công việc học tập dựa trên biểu tượng / kiến thức đã tiếp tục trong AI, dẫn đến lập trình logic quy nạp, nhưng dòng nghiên 7 cứu thống kê hơn hiện nằm ngoài lĩnh vực AI thích hợp, trong nhận dạng mẫu và truy xuất thông tin.

Nghiên cứu mạng thần kinh đã bị AI và khoa học máy tính từ bỏ cùng thời gian. Dòng này cũng được tiếp tục bên ngoài lĩnh vực AI / CS, với tên gọi "chủ nghĩa kết nối", bởi các nhà nghiên cứu từ các ngành khác bao gồm Hopfield, Rumelhart và Hinton. Thành công chính của họ đến vào giữa những năm 1980 với việc tái tạo lại nhân giống. Học máy (ML), được tổ chức lại thành một lĩnh vực riêng biệt, bắt đầu phát triển mạnh mẽ vào những năm 1990.

Lĩnh vực này đã thay đổi mục tiêu từ đạt được trí thông minh nhân tạo sang giải quyết các vấn đề có thể giải quyết được có bản chất thực tế. Nó chuyển trọng tâm ra khỏi các phương pháp tiếp cận biểu tượng mà nó đã thừa hưởng từ AI, và hướng tới các phương pháp và mô hình vay mượn từ thống kê và lý thuyết xác suất. Tính đến năm 2020, nhiều nguồn tiếp tục khẳng định rằng học máy vẫn là một trường con của AI.Bất đồng chính là liệu tất cả ML có phải là một phần của AI hay không, vì điều này có nghĩa là bất kỳ ai sử dụng ML đều có thể khẳng định họ đang sử dụng AI. Những người khác có quan điểm rằng không phải tất cả ML là một phần của AI trong đó chỉ một tập hợp con 'thông minh' của ML là một phần của AI.

Câu hỏi về sự khác biệt giữa ML và AI là gì đã được Judea Pearl trả lời trong The Book of Why.Theo đó, ML học hỏi và dự đoán dựa trên các quan sát thụ động, trong khi AI ngụ ý một tác nhân tương tác với môi trường để tìm hiểu và thực hiện các hành động nhằm tối đa hóa cơ hội đạt được thành công mục tiêu của mình. Khai phá dữ liệu Học máy và khai thác dữ liệu thường sử dụng các phương pháp giống nhau và trùng lặp đáng kể, nhưng trong khi học máy tập trung vào dự đoán, dựa trên các thuộc tính đã biết học được từ dữ liệu đào tạo, khai thác dữ liệu 8 tập trung vào việc khám phá (trước đây) các thuộc tính chưa biết trong dữ liệu (đây là bước phân tích khám phá tri thức trong cơ sở dữ liệu). Khai thác dữ liệu sử dụng nhiều phương pháp học máy, nhưng với các mục tiêu khác nhau; mặt khác, học máy cũng sử dụng các phương pháp khai thác dữ liệu là "học không giám sát" hoặc như một bước tiền xử lý để cải thiện độ chính xác của người học. Phần lớn sự nhầm lẫn giữa hai cộng đồng nghiên cứu này (thường có các hội nghị riêng biệt và tạp chí riêng biệt, ECML PKDD là một ngoại lệ chính) xuất phát từ các giả định cơ bản mà họ làm việc với nhau: trong học máy, hiệu suất thường được đánh giá dựa trên khả năng tái tạo kiến thức đã biết, trong khi trong khám phá kiến thức và khai thác dữ liệu (KDD), nhiệm vụ chính là khám phá kiến thức chưa biết trước đó.

Được đánh giá dựa trên kiến thức đã biết, một phương pháp không được thông tin (không được giám sát) sẽ dễ dàng bị đánh giá tốt hơn các phương pháp được giám sát khác, trong khi trong một nhiệm vụ KDD điển hình, không thể sử dụng phương pháp được giám sát do không có dữ liệu huấn luyện. Tối ưu hóa Học máy cũng có mối quan hệ mật thiết với tối ưu hóa: nhiều vấn đề học tập được xây dựng dưới dạng tối thiểu hóa một số hàm mất mát trên một tập hợp các ví dụ đào tạo. Các hàm mất mát thể hiện sự khác biệt giữa các dự đoán của mô hình đang được huấn luyện và các trường hợp vấn đề thực tế (ví dụ: trong phân loại, người Tôi muốn gán nhãn cho các trường hợp và các mô hình được đào tạo để dự đoán chính xác các nhãn được gán trước của một tập hợp ví dụ).

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ