Luận văn Thạc sĩ Kỹ thuật điện tử: Nghiên cứu phát triển các giải pháp thị giác máy công nghiệp kết hợp AI cho nền tảng Robot thông minh
lượt xem 5
download
Luận văn "Nghiên cứu phát triển các giải pháp thị giác máy công nghiệp kết hợp AI cho nền tảng Robot thông minh" được hoàn thành với mục tiêu nhằm nghiên cứu ứng dụng trí thông minh nhân tạo trong bài toán tương tác robot với con người qua cử chỉ bàn tay.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Luận văn Thạc sĩ Kỹ thuật điện tử: Nghiên cứu phát triển các giải pháp thị giác máy công nghiệp kết hợp AI cho nền tảng Robot thông minh
- ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN VĂN THÀNH NGHIÊN CỨU PHÁT TRIỂN CÁC GIẢI PHÁP THỊ GIÁC MÁY CÔNG NGHIỆP KẾT HỢP AI CHO NỀN TẢNG ROBOT THÔNG MINH LUẬN VĂN THẠC SĨ HÀ NỘI, 2022
- ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN VĂN THÀNH NGHIÊN CỨU PHÁT TRIỂN CÁC GIẢI PHÁP THỊ GIÁC MÁY CÔNG NGHIỆP KẾT HỢP AI CHO NỀN TẢNG ROBOT THÔNG MINH NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG Chuyên ngành: Kỹ thuật điện tử LUẬN VĂN THẠC SĨ Cán bộ hƣớng dẫn: 1. TS. Đinh Triều Dƣơng 2. PGS.TS. Hoàng Văn Xiêm HÀ NỘI, 2022
- LỜI CAM ĐOAN Tôi xin cam đoan đề tài “NGHIÊN CỨU PHÁT TRIỂN CÁC GIẢI PHÁP THỊ GIÁC MÁY CÔNG NGHIỆP KẾT HỢP AI CHO NỀN TẢNG ROBOT THÔNG MINH” do TS. Đinh Triều Dƣơng và PGS.TS. Hoàng Văn Xiêm hƣớng dẫn là công trình nghiên cứu của tôi. Các nội dung nghiên cứu, kết quả trong luận văn này là trung thực và không sao chép các công trình của ngƣời khác. Tất cả các tài liệu tham khảo đƣợc sử dụng trong khóa luận này đƣợc ghi rõ nguồn gốc và ghi tên tác giả. Nếu có sai sót, tôi xin chịu hoàn toàn trách nhiệm. Hà Nội, ngày tháng năm 2022 Tác giả Nguyễn Văn Thành i
- LỜI CẢM ƠN Em xin bày tỏ lòng biết ơn sâu sắc đến hai thầy TS. Đinh Triều Dƣơng và PGS.TS. Hoàng Văn Xiêm đã tận tình hƣớng dẫn và hỗ trợ em hoàn thành luận văn này. Em cũng xin cảm ơn các thầy, cô giáo của khoa Điện tử - Viễn thông, Trƣờng Đại học Công nghệ - Đại học Quốc gia Hà Nội đã giảng dạy cho em những kiến thức bổ ích trong suốt quá trình học tập tại trƣờng. Tôi cũng xin gửi lời cảm ơn chân thành đến công ty TNHH Samsung Display Việt Nam nơi tôi đang công tác đã tạo điều kiện cho tôi tham gia chƣơng trình đào tạo thạc sỹ tại trƣờng Trƣờng Đại học Công nghệ - Đại học Quốc gia Hà Nội. Trong quá trình thực hiện luận văn này, do kiến thức còn hạn chế, không thể tránh khỏi những thiếu sót, em rất mong nhận đƣợc những ý kiến góp ý của các thầy cô để em có thể tiếp tục hoàn thiện và phát triển đề tài này. Hà Nội, ngày tháng năm 2022 Tác giả Nguyễn Văn Thành ii
- MỤC LỤC CÁC THUẬT NGỮ VÀ CHỮ VIẾT TẮT .................................................. iv DANH MỤC HÌNH ẢNH/ HÌNH VẼ .......................................................... v DANH MỤC BẢNG BIỂU ......................................................................... vi LỜI NÓI ĐẦU .............................................................................................. 1 CHƢƠNG 1. GIỚI THIỆU CHUNG ............................................................ 2 1.1 Đặt vấn đề................................................................................................ 2 1.2 Đóng góp luận văn .................................................................................. 3 1.3 Cấu trúc luận văn .................................................................................... 3 CHƢƠNG 2. TỔNG QUAN VỀ CÁC GIẢI PHÁP THỊ GIÁC MÁY CÔNG NGHIỆP KẾT HỢP AI CHO NỀN TẢNG ROBOT THÔNG MINH................ 4 2.1 Tổng quan về các giải pháp thị giác máy công nghiệp kết hợp AI......... 4 2.1.1 Thị giác máy tính .......................................................................... 4 2.1.2 Trí thông minh nhân tạo ............................................................... 6 2.2 Tổng quan về robot tay máy thông minh .............................................. 21 CHƢƠNG 3: ỨNG DỤNG THỊ GIÁC MÁY CÔNG NGHIỆP KẾT HỢP AI ĐIỀU KHIỂN ROBOT THEO CỬ CHỈ CON NGƢỜI ........................ 26 3.1 Mô tả hệ thống ...................................................................................... 26 3.2 Ứng dụng thị giác máy kết hợp AI nhận dạng cử chỉ tay ngƣời........... 27 3.2.1 Những ứng dụng với cử chỉ bàn tay ........................................... 27 3.2.2 Những phƣơng pháp nhận diện cử chỉ bàn tay .......................... 28 3.3 Điều khiển robot .................................................................................... 32 3.3.1 Tính toán động học thuận. .......................................................... 32 3.3.2 Tính toán động học nghịch. ........................................................ 34 CHƢƠNG 4: ĐÁNH GIÁ VÀ KẾT QUẢ ................................................. 36 4.1 Công cụ thực nghiệm ............................................................................ 36 4.2 Chuẩn bị dữ liệu .................................................................................... 37 4.3 Phƣơng pháp thực nghiệm .................................................................... 39 4.4 Kết quả đánh giá.................................................................................... 42 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN .................................................. 45 TÀI LIỆU THAM KHẢO iii
- CÁC THUẬT NGỮ VÀ CHỮ VIẾT TẮT C CNN: Convolutional Neural Mạng thần kinh tích chập Netwwork CSDL Cơ sở dữ liệu D DOF: Degrees of Freedom Bậc tự do H HOG: Histrogram of Oriented Biểu đồ của gradient định hƣớng Gradient HSV: Hue, Saturation, Lightness Vùng màu, độ bão hòa, độ sáng I IOU: Intersection over union Tỉ lệ diện tích giao trên hợp KNN:K-nearest neighbor Thuật toán K-láng giềng gần N NMS:Non-Max Suppression Triệt tiêu tối đa R ReLU: Rectified Linear Unit Đơn vị tuyến tính chỉnh lƣu S SRM:Structural Risk Minimization Giảm thiểu rủi ro cấu trúc SVM: Support Vector Machine Thuật học máy sử dụng véctơ hỗ trợ Y YOLO: You Only look Once Bạn chỉ nhìn một lần iv
- DANH MỤC HÌNH ẢNH/ HÌNH VẼ Hình 2.1. Mô tả về thị giác máy tính ..................................................................... 5 Hình 2.2. Ví dụ về KNN trong classification ......................................................... 8 Hình 2.4. Kiến trúc cơ bản của một mạng tích chập ............................................ 12 Hình 2.5. ví dụ bộ lọc tích chập đƣợc sử dụng trên ma trận điểm ảnh ................ 13 Hình 2.6. Trƣờng hợp thêm/không thêm viền trắng vào ảnh khi tích chập ......... 14 Hình 2.7. Phƣơng thức Avarage pooling và Max pooling ................................... 15 Hình 2.8. Sơ đồ kiến trúc mạng YOLO................................................................ 16 Hình 2.9. Phát hiện vật thể bằng thuật toán YOLO ............................................. 17 Hình 2.10 Mô tả quá trình của YOLO.................................................................. 17 Hình 2.11 Minh họa cách xác định bounding box trong YOLO ......................... 18 Hình 2.12. Minh họa biểu diễn công thức tính IOU ............................................ 19 Hình 2.13. Bounding box khi áp dụng nms ......................................................... 20 Hình 2.14. Sơ đồ kết nối mạch điều khiển Robot ................................................ 23 Hình 2.15. Mô phỏng robot hoàn chỉnh .............................................................. 25 Hình 2.16. Tay máy 4 bậc tự do sau khi lắp ghép hoàn chỉnh (Uet robotics lab) 25 Hình 3.1. Mô tả bài toán robot thực thi theo cử chỉ tay ngƣời thông qua camera..... 26 Hình 3.2. Phân đoạn ảnh dựa vào màu da ............................................................ 29 Hình 3.3. Nhị phân ảnh và tạo đƣờng viền .......................................................... 31 Hình 3.4. Hình minh họa động học thuận của cánh tay robot ............................. 33 Hình 4.1. Mô tả công cụ thực nghiệm .................................................................. 37 Hình 4.2. Thực nghiệm với phƣơng pháp học máy truyền thống ........................ 39 Hình 4.3. Thực nghiệm với phƣơng pháp học máy truyền thống áp dụng một số kỹ thuật xử lý ảnh nhận diện vùng da .................................................................. 39 Hình 4.4 Thực nghiệm với phƣơng pháp học sâu ................................................ 41 Hình 4.5. Hình ảnh minh họa kết quả thực tế…………………………………...42 Hình 4.6. Thuật toán YOLO phát hiện vật thể gắp của robot………………...…42 Hình 4.7. Độ chính xác của các thuật toán ứng dụng .......................................... 43 Hình 4.8. Biểu đồ thể hiện thời gian tiền xử lý - đào tạo của các thuật toán AI .. 44 Hình 4.9. Biểu đồ thể hiện thời gian dự đoán ảnh của các thuật toán AI ............ 44 v
- DANH MỤC BẢNG BIỂU Bảng 2.1. Chi tiết các linh kiện sử dụng trong tay máy 4 bậc tự do ........... 22 Bảng 2.2. Các bƣớc thiết kế tay máy 4 bậc tự do ....................................... 24 Bảng 3.1. Thông số D – H của tay máy robot............................................. 33 Bảng 3.2. Công thức tính động học nghịch................................................. 35 Bảng 4.1. Bộ dữ liệu 1 sử dụng để nhận diện cử chỉ .................................. 38 Bảng 4.2. Bộ dữ liệu 2 bao gồm các hình ảnh về sạc điện thoại. ............... 38 vi
- LỜI NÓI ĐẦU Ngày nay với sự phát triển nhanh chóng của các ứng dụng công nghệ thông tin vào trong cuộc sống con ngƣời, việc tƣơng tác giữa con ngƣời và các máy móc ngày càng trở nên quan trọng hơn. Trƣớc đây, bàn phím và chuột là các giao diện chính để giao tiếp giữa ngƣời và máy tính. Tuy nhiên, con ngƣời giao tiếp chủ yếu với nhau bởi tƣơng tác “nghe” và “nhìn”, do đó một giao diện giữa ngƣời với máy móc sẽ trực quan hơn nhiều nếu con ngƣời có thể điều khiển máy móc bằng giọng nói hay cử chỉ giống nhƣ khi tƣơng tác giữa ngƣời với ngƣời trong thế giới thực mà không cần thông qua các thiết bị điều khiển nhƣ chuột hay bàn phím và có thể giao tiếp từ xa. So với các hệ thống điều khiển bằng lệnh âm thanh, một hệ thống thị giác sẽ thích hợp hơn trong môi trƣờng ồn ào hoặc trong trƣờng hợp âm thanh bị nhiễu, trong đó việc thị giác nhận dạng các cử động của tay ngƣời trong giao tiếp là cách tƣơng tác tự nhiên khi giao tiếp giữa con ngƣời với con ngƣời, do đó nhiều nhà nghiên cứu trong các học viện và ngành công nghiệp đang quan tâm đến hƣớng nghiên cứu và ứng dụng tƣơng tác giữa con ngƣời với máy móc qua các cử chỉ tay. Nghiên cứu và ứng dụng này cho phép con ngƣời tƣơng tác với máy rất dễ dàng và thuận tiện từ xa mà không cần phải mang thêm bất kỳ thiết bị ngoại vi nào, thay đổi các quá trình giao tiếp trƣớc đây và tăng tính thuật tiện cũng nhƣ sự kết hợp thông minh giữa con ngƣời và máy móc. Do vậy luận văn này tôi tập trung và nghiên cứu với đề tài: “Nghiên cứu phát triển các giải pháp thị giác máy công nghiệp kết hợp AI cho nền tảng Robot thông minh”. 1
- CHƢƠNG 1. GIỚI THIỆU CHUNG 1.1 Đặt vấn đề Trong thế giới ngày nay, các nhà sản xuất đang ngày càng chuyển sang tự động hóa dựa trên sự cộng tác giữa con ngƣời và máy móc. Tự động hóa cộng tác linh hoạt giúp giảm thời gian cần thiết cho việc lập kế hoạch, ngân sách, chi phí, thuê và đào tạo nhân viên để có đƣợc các kỹ năng mới cần thiết để thực hiện cấu hình một nhà máy lớn. Mặc dù sự phát triển của robot hợp tác (cobots - collaborative robots) vẫn tồn tại, nhƣng cobots đã đƣợc tích hợp thành công vào các quy trình khác nhau và chúng đã đƣợc sử dụng trong nhiều ứng dụng khác nhau từ công nghiệp thông qua chăm sóc sức khỏe và nghiên cứu. Có nhiều sự khác biệt hơn về cách một robot công nghiệp thông thƣờng khác với cobots, trong khi robot công nghiệp thông thƣờng bị cô lập khỏi ngƣời điều khiển (bằng hàng rào, rào cản quang học hoặc các phƣơng tiện khác để ngăn chuyển động của robot), thì cobots hoạt động trực tiếp bên cạnh con ngƣời giúp con ngƣời xử lý các công việc hàng ngày. Trong thời đại tự động hóa, robot không chỉ loại bỏ sự can thiệp của con ngƣời vào các công việc lặp đi lặp lại mà còn đƣợc coi là sự thay thế phù hợp cho con ngƣời đối với các công việc phức tạp, nơi các kỹ năng ra quyết định gắn với lập kế hoạch di chuyển là rất cần thiết, một bối cảnh tƣơng lai nhƣ vậy cũng có thể yêu cầu chia sẻ không gian làm việc giữa con ngƣời và robot. Do đó, những robot có thể học các kỹ năng từ con ngƣời chỉ bằng cách quan sát là một nhiệm vụ cần thiết để phát triển và ứng dụng trong tƣơng lai. Vì vậy động cơ thực hiện luận văn này là mong muốn điều khiển robot mà không cần lập trình thủ công trực tiếp hoặc sử dụng các cảm biến mà thay vào đó là sử dụng các phƣơng pháp học sâu và trí tuệ nhân tạo để phát hiện các cử chỉ của tay ngƣời đƣợc thu thập bằng camera vision qua đó gửi tín hiệu điều khiển tới robot. Điều này giúp loại bỏ sự tiếp xúc trực 2
- tiếp với ngƣời vận hành, tăng tính di động và loại bỏ một số hạn chế về tƣơng tác giữa con ngƣời và robot. 1.2 Đóng góp luận văn Luận văn nghiên cứu ứng dụng trí thông minh nhân tạo trong bài toán tƣơng tác robot với con ngƣời qua cử chỉ bàn tay. 1.3 Cấu trúc luận văn Nội dung chính của luận văn đƣợc trình bày qua 5 chƣơng: Chương 1: Giới thiệu chung. Nội dung của chƣơng sẽ trình bày về vấn đề nghiên cứu, cấu trúc và đóng góp của luận văn. Chương 2: Tổng quan về các giải pháp thị giác máy công nghiệp kết hợp AI cho nền tảng robot thông minh. Nội dung của chƣơng sẽ trình bày về tổng quan các giải pháp thị giác máy công nghiệp và robot tay máy thông minh. Chương 3: Ứng dụng thị giác máy công nghiệp kết hợp AI điều khiển robot theo cử chỉ con người. Nội dung của chƣơng sẽ mô tả về hệ thống ứng dụng thị giác máy AI nhận dạng cử chỉ tay ngƣời và tiến hành điều khiển robot. Chương 4: Đánh giá và kết quả. Nội dung của chƣơng sẽ mô tả bộ bộ dữ liệu, hệ thống và các kết quả đạt đƣợc sau khi ứng dụng các thuật toán. Kết luận và hướng phát triển. Nội dung của phần này sẽ đƣa ra kết luận giữa các thuật toán trí tuệ nhân tạo và hƣớng phát triển tiếp theo trong tƣơng lai. 3
- CHƢƠNG 2. TỔNG QUAN VỀ CÁC GIẢI PHÁP THỊ GIÁC MÁY CÔNG NGHIỆP KẾT HỢP AI CHO NỀN TẢNG ROBOT THÔNG MINH 2.1 Tổng quan về các giải pháp thị giác máy công nghiệp kết hợp AI 2.1.1 Thị giác máy tính Thị giác máy tính là một lĩnh vực bao gồm các phƣơng pháp thu nhận, xử lý ảnh kỹ thuật số, phân tích và nhận dạng các hình ảnh từ thế giới thực để cho ra các thông tin số hoặc biểu tƣợng. Thị giác máy tính nhằm tạo ra một hệ thống nhân tạo có thể tiếp nhận các hình ảnh thu đƣợc hay tập dữ liệu đa chiều để phân tích, xử lý nó theo ý muốn. Máy móc ngày càng thông minh, nó không chỉ thay thế con ngƣời làm những công việc tính toán đơn giản đến khó khăn, mà nó còn có khả năng bắt chƣớc động vật và con ngƣời, một trong số những khả năng đó là nhận biết đƣợc thế giới qua “mắt” của nó. Bằng việc kết hợp các mô hình khác nhƣ: học máy, mạng noron,… giúp cho chúng dần tiến tới một hệ thống nhân tạo có những quyết định linh hoạt và chính xác hơn. Thị giác máy tính bao gồm các lĩnh vực sau: Xử lí hình ảnh: Phát triển các thuật toán xử lí ảnh nhƣ tăng/giảm chất lƣợng ảnh, lọc nhiễu. Nhận diện mẫu: Giải thích các kỹ thuật khác nhau để phân loại mẫu. Quang trắc: Liên quan đến việc thu thập các số đo chính xác từ hình ảnh 4
- Hình 2.1. Mô tả về thị giác máy tính [1] Thị giác máy tính là một chuyên ngành đã phát triển khá lâu và có nhiều ứng dụng rộng rãi trong đời sống, giúp cho máy tính “nhìn” đƣợc nhƣ con ngƣời [1]. Nó đã đƣợc ứng dụng rộng rãi trong nhiều lĩnh vực, các thành tựu nổi bật đáng kể đến nhƣ: - Trong y học, các thuật toán xử lí ảnh cho phép biến đổi hình ảnh đƣợc tạo ra từ nguồn bức xạ X-ray hay kết quả từ hình ảnh siêu âm quang học trên bề mặt phim x-quang hoặc những hình ảnh trực tiếp trên màn hình hiển thị. Trong đó hình ảnh các cơ quan chức năng của con ngƣời đƣợc xử lí nâng cao độ tƣơng phản, lọc, tách các phần cần thiết hay tạo ra hình ảnh không gian 3 chiều (siêu âm ba chiều). Mới nhất hiện nay, thị giác máy tính tạo ra ứng dụng giúp hỗ trợ thị giác cho ngƣời mù… - Trong lĩnh vực địa chất, kỹ thuật làm nổi đƣờng biên và khôi phục hình ảnh giúp nâng cao chất lƣợng vệ tinh tạo ra bản đồ địa hình 3D với độ 5
- chính xác cao. Trong khí tƣợng học, hình ảnh thông qua vệ tinh đƣa ra các thông tin Trái Đất trên một vùng rộng lớn, giúp cho việc dự báo thời tiết chính xác hơn. - Trong lĩnh vực hình sự và bảo mật, kiểm soát truy cập trong quá trình xử lí nhận dạng vân tay, khuôn mặt hay nhận dạng biển số xe giúp phát hiện nhanh đối tƣợng nghi vấn, cũng nhƣ nâng cao quá trình bảo mật, giám sát hay nhận dạng mục tiêu trong lĩnh vực quân sự. Không chỉ thế, thị giác máy tính ứng dụng trong việc điều khiển tiến trình nhƣ các robot trong công nghiệp, hay các thiết bị, xe tự hành. Ngoài ra, ứng dụng đặc biệt quan trọng là thị giác máy tính còn đóng vai trò làm đầu vào cho thiết bị trong quá trình tƣơng tác giữa ngƣời và máy. 2.1.2 Trí thông minh nhân tạo Trí thông minh nhân tạo (Artificial intelligence – viết tắt là AI) là một ngành thuộc lĩnh vực khoa học máy tính (Computer science). Là trí tuệ do con ngƣời lập trình tạo nên với mục tiêu giúp máy tính có thể tự động hóa các hành vi thông minh nhƣ con ngƣời. Trí tuệ nhân tạo khác với việc lập trình logic trong các ngôn ngữ lập trình là ở việc ứng dụng các hệ thống học máy (machine learning) để mô phỏng trí tuệ của con ngƣời trong các xử lý mà con ngƣời làm tốt hơn máy tính. Trí tuệ nhân tạo giúp máy tính có đƣợc những trí tuệ của con ngƣời nhƣ: biết suy nghĩ và lập luận để giải quyết vấn đề, biết giao tiếp do hiểu ngôn ngữ, tiếng nói, biết học và tự thích nghi [2]. Một cách tiếp cận của AI là machine learning là một thuật ngữ rộng để chỉ hành động mà con ngƣời dạy máy tính cải thiện một nhiệm vụ mà nó đang thực hiện. Cụ thể hơn, machine learning đề cập tới bất kỳ hệ thống mà hiệu suất của máy tính khi thực hiện một nhiệm vụ sẽ trở nên tốt hơn sau khi hoàn thành nhiệm vụ đó nhiều lần. Hay nói cách khác, khả năng cơ bản nhất của machine learning là sử dụng thuật toán để phân tích những thông tin có sẵn, học hỏi từ nó rồi đƣa ra quyết định hoặc dự đoán về một thứ gì đó có liên quan. Thay vì tạo ra một phần mềm với những hành động, hƣớng dẫn chi tiết để thực hiện một nhiệm vụ cụ thể, máy tính đƣợc “huấn luyện” 6
- bằng cách sử dụng lƣợng dữ liệu và các thuật toán để học cách thực hiện nhiệm vụ. Một thuật ngữ của machine learning là deep learning có thể xử lý dữ liệu theo cách tƣơng tự nhƣ một bộ não con ngƣời có thể thực hiện. Điểm khác biệt chính ở đây là con ngƣời sẽ không phải dạy một chƣơng trình deep learning biết một vật thể trông nhƣ thế nào, mà chỉ cần cung cấp cho nó đủ hình ảnh cần thiết về vật thể, và nó sẽ tự mình hình dung, tự học và đƣa ra kết quả đầu ra. 2.1.2.1 Thuật toán KNN K-nearest neighbor (thuật toán K láng giềng gần) là một trong những thuật toán học có giám sát đơn giản. Khi đào tạo thuật toán này không học từ dữ liệu đào tạo, mọi tính toán đƣợc thực hiện khi cần dự đoán kết quả của dữ liệu mới. K-nearest neighbor có thể áp dụng đƣợc vào cả hai loại của bài toán học có giám sát là Classification (phân loại) và Regression (hồi quy) [3]. Với KNN, trong bài toán Classification, nhãn của một điểm dữ liệu đƣợc suy ra trực tiếp từ K điểm dữ liệu gần nhất trong dữ liệu đào tạo. Nhãn của một test data (dữ liệu kiểm chứng) có thể đƣợc quyết định bằng bầu chọn theo số phiếu giữa các điểm gần nhất, hoặc có thể đƣợc suy ra bằng cách đánh trọng số khác nhau cho mỗi trong các điểm gần nhất đó rồi suy ra nhãn của dữ liệu. Trong bài toán Regresssion, đầu ra của một điểm dữ liệu sẽ bằng chính đầu ra của điểm dữ liệu đã biết gần nhất (trong trƣờng hợp K=1), hoặc bằng trung bình có trọng số của đầu ra của những điểm gần nhất, hay một các tính khác chính bằng một mối quan hệ dựa trên khoảng cách tới các điểm gần nhất đó. Có thể tóm tắt một cách đơn giản KNN là thuật toán đi tìm đầu ra của một điểm dữ liệu mới bằng cách chỉ dựa trên thông tin của K điểm dữ liệu trong đào tạo set gần nó nhất (K-lân cận), không quan tâm đến việc có một vài điểm dữ liệu trong những điểm gần nhất này là nhiễu. Hình 2.2 dƣới đây là một ví dụ về KNN trong classification. 7
- Hình 2.2. Ví dụ về KNN trong classification [3] Thuật toán KNN cho rằng những dữ liệu tƣơng tự nhau sẽ tồn tại gần nhau trong một không gian, từ đó sẽ tìm k điểm gần với dữ liệu cần kiểm tra nhất. Việc tìm khoảng cách giữa 2 điểm củng có nhiều công thức có thể sử dụng, tùy trƣờng hợp mà chúng ta lựa chọn cho phù hợp. Dƣới đây là 3 cách cơ bản để tính khoảng cách 2 điểm dữ liệu x, y có k thuộc tính. Euclidean: √∑ (2.1) Manhattan: ∑ (2.2) Minkowski: (∑ ) (2.3) Ƣu điểm của thuật toán KNN: - Thuật toán đơn giản, dễ dàng triển khai. - Độ phức tạp tính toán nhỏ. - Xử lý tốt với tập dữ liệu nhiễu Nhƣợc điểm của thuật toán KNN: - Với K nhỏ dễ gặp nhiễu dẫn tới kết quả đƣa ra không chính xác - Cần nhiều thời gian để thực hiện do phải tính toán khoảng cách với tất cả các đối tƣợng trong tập dữ liệu. - Cần chuyển đổi kiểu dữ liệu thành các yếu tố định tính. 8
- 2.1.2.2 Thuật toán SVM Phƣơng pháp SVM ( Support Vector Machine ) đƣợc coi là công cụ mạnh cho những bài toán phân lớp phi tuyến tính đƣợc các tác giả Vapnik và Chervonenkis phát triển mạnh mẽ năm 1995. Phƣơng pháp này thực hiện phân lớp dựa trên nguyên lý SRM (Structural Risk Minimization - Cực tiểu hóa rủi ro có cấu trúc), đƣợc xem là một trong các phƣơng pháp phân lớp giám sát không tham số tinh vi nhất cho đến nay. Các hàm công cụ đa dạng của SVM cho phép tạo không gian chuyên đổi để xây dựng mặt phẳng phân lớp [4]. Ý tƣởng của phƣơng pháp: Cho trƣớc một tập huấn luyện, đƣợc biểu diễn trong không gian vector, trong đó mỗi tài liệu là một điểm, phƣơng pháp này tìm ra một siêu phẳng quyết định tốt nhất có thể chia các điểm trên không gian này thành hai lớp riêng biệt tƣơng ứng là lớp + và lớp -. Chất lƣợng của siêu phẳng này đƣợc quyết định bởi khoảng cách (gọi là biên) của điểm dữ liệu gần nhất của mỗi lớp đến mặt phẳng này. Khi đó, khoảng cách biên càng lớn thì mặt phẳng quyết định càng tốt, đồng thời việc phân loại càng chính xác. Mục đích của phƣơng pháp SVM là tìm đƣợc khoảng cách biên lớn nhất, điều này đƣợc minh họa nhƣ hình 2.3 sau: Hình 2.3. Siêu phẳng phân chia dữ liệu học thành 2 lớp + và - với khoảng cách biên lớn nhất. Các điểm gần nhất (điểm được khoanh tròn) là các Support Vector [4] 9
- Cơ sở lý thuyết: SVM là một bài toán tối ƣu, mục tiêu của thuật toán này là tìm đƣợc một không gian F và siêu phẳng quyết định f trên F sao cho sai số phân loại là thấp nhất. Cho tập mẫu ( , ), ( , ), … ( , )} với ∈ , thuộc vào hai lớp nhãn: ∈ {-1,1} là nhãn lớp tƣơng ứng của các xi (-1 biểu thị lớp I, 1 biểu thị lớp II). Ta có, phƣơng trình siêu phẳng chứa vectơ ⃗⃗⃗ trong không gian: ⃗⃗⃗ ⃗⃗ (2.4) ⃗⃗⃗ ⃗⃗⃗⃗⃗ Đặt f(⃗⃗⃗ ) = sign (⃗⃗⃗ ⃗⃗⃗ ={ ⃗⃗⃗ ⃗⃗⃗⃗⃗ Nhƣ vậy, f(⃗⃗⃗ ) biểu diễn sự phân lớp của ⃗⃗⃗ vào hai lớp nhƣ đã nêu. Ta nói = +1 nếu ⃗⃗⃗ ∈ lớp I và = -1 nếu ⃗⃗⃗ ∈ lớp II . Khi đó, để có siêu phẳng f ta sẽ phải giải bài toán sau: Tìm min ‖⃗⃗⃗ ‖ với W thỏa mãn điều kiện sau: ⃗⃗⃗ ⃗⃗⃗ + b)) 1 với ∀ I ∈ ⃗⃗⃗⃗⃗⃗ (2.5) Bài toán SVM có thể giải bằng kỹ thuật sử dụng toán tử Lagrange để biến đổi về thành dạng đẳng thức. Một đặc điểm thú vị của SVM là mặt phẳng quyết định chỉ phụ thuộc các Support Vector và nó có khoảng cách đến mặt phẳng quyết định là 1/‖⃗⃗⃗ ‖, cho dù các điểm khác bị xóa đi thì thuật toán vẫn cho kết quả giống nhƣ ban đầu. Đây chính là điểm nổi bật của phƣơng pháp SVM so với các phƣơng pháp khác vì tất cả các dữ liệu trong tập huấn luyện đều đƣợc đùng để tối ƣu hóa kết quả. Tổng kết lại trong trƣờng hợp nhị phân phân tách tuyến tính, việc phân lớp đƣợc thực hiện qua hàm quyết định f(x) = sign( +b) hàm này thu đƣợc bằng việc thay đổi vectơ chuẩn w, đây là vectơ để cực đại hóa viền chức năng. 10
- Việc mở rộng SVM để phân đa lớp hiện nay vẫn đang đƣợc đầu tƣ nghiên cứu. Có một phƣơng pháp tiếp cận để giải quyết vấn để này là xây dựng và kết hợp nhiều bộ phân lớp nhị phân SVM (Chẳng hạn: trong quá trình huấn luyện với SVM, bài toán phân m lớp có thể đƣợc biến đổi thành bài toán phân 2*m lớp, khi đó trong mỗi hai lớp hàm quyết định sẽ đƣợc xác định cho khả năng tổng quát hóa tối đa) [5]. Phƣơng pháp SVM yêu cầu dữ liệu đƣợc diễn tả nhƣ các vector của các số thực. Nhƣ vậy nếu đầu vào chƣa phải là số thì ta cần phải tìm cách chuyển chúng về dạng số của SVM tiền xử lý dữ liệu, thực hiện biến đổi dữ liệu phù hợp cho quá trình tính toán, tránh các số quá lớn mô tả các thuộc tính. Thƣờng nên scaling (co giãn) dữ liệu để chuyển về đoạn [-1, 1] hoặc [0, 1]. Lựa chọn hàm hạt nhân phù hợp tƣơng ứng cho từng bài toán cụ thể để đạt đƣợc độ chính xác cao trong quá trình phân lớp, thực hiện việc kiểm tra chéo để xác định các thám số cho ứng đụng. Điều này cũng quyết định đến tính chính xác của quá trình phân lớp, sử dụng các tham số cho việc huấn luyện với tập mẫu. Trong quá trình huấn luyện sẽ sử dụng thuật toán tối ƣu hóa khoảng cách giữa các siêu phẳng trong quá trình phân lớp, xác định hàm phân lớp trong không gian đặc trƣng nhờ việc ánh xạ dữ liệu vào không gian đặc trƣng bằng cách mô tả hạt nhân, giải quyết cho cả hai trƣờng hợp dữ liệu là phân tách và không phân tách tuyến tính trong không gian đặc trƣng. 2.1.2.3 Thuật toán CNN Mạng nơ-ron tích chập (CNN - Convolutional Neural Network) là một trong những mô hình mạng Học sâu phổ biến nhất hiện nay, có khả năng nhận dạng và phân loại hình ảnh với độ chính xác rất cao, thậm chí còn tốt hơn con ngƣời trong nhiều trƣờng hợp. Mô hình này đã và đang đƣợc phát triển, ứng dụng vào các hệ thống xử lý ảnh lớn của Facebook, Google hay Amazon… cho các mục đích khác nhau nhƣ các thuật toán tagging tự động, tìm kiếm ảnh hoặc gợi ý sản phẩm cho ngƣời tiêu dùng. 11
- Sự ra đời của mạng CNN là dựa trên ý tƣởng cải tiến cách thức các mạng nơ-ron nhân tạo truyền thống học thông tin trong ảnh. Do sử dụng các liên kết đầy đủ giữa các điểm ảnh vào nút (node), các mạng nơ-ron nhân tạo truyền thẳng (Feedforward Neural Network) bị hạn chế rất nhiều bởi kích thƣớc của ảnh, ảnh càng lớn thì số lƣợng liên kết càng tăng nhanh và kéo theo sự bùng nổ khối lƣợng tính toán. Ngoài ra sự liên kết đầy đủ này cũng là sự dƣ thừa khi với mỗi bức ảnh, các thông tin chủ yếu thể hiện qua sự phụ thuộc giữa các điểm ảnh với những điểm xung quanh nó mà không quan tâm nhiều đến các điểm ảnh ở cách xa nhau. Mạng CNN ra đời với kiến trúc thay đổi, có khả năng xây dựng liên kết chỉ sử dụng một phần cục bộ trong ảnh kết nối đến node trong lớp tiếp theo thay vì toàn bộ ảnh nhƣ trong mạng nơ-ron truyền thẳng [6]. Các lớp cơ bản trong một mạng CNN bao gồm: Lớp tích chập (Convolutional), lớp kích hoạt phi tuyến ReLU (Rectified Linear Unit), lớp lấy mẫu (Pooling) và lớp kết nối đầy đủ (Fully-connected), đƣợc thay đổi về số lƣợng và cách sắp xếp để tạo ra các mô hình huấn luyện phù hợp cho từng bài toán khác nhau. Hình 2.4. Kiến trúc cơ bản của một mạng tích chập [6] Lớp tích chập: Đây là thành phần quan trọng nhất trong mạng CNN, cũng là nơi thể hiện tƣ tƣởng xây dựng sự liên kết cục bộ thay vì kết nối toàn bộ các điểm ảnh. Các liên kết cục bộ này đƣợc tính toán bằng phép tích chập giữa các 12
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Luận văn thạc sĩ kỹ thuật: Nghiên cứu các công nghệ cơ bản và ứng dụng truyền hình di động
143 p | 348 | 79
-
Tóm tắt luận văn thạc sĩ kỹ thuật: Nghiên cứu xây dựng hệ thống hỗ trợ quản lý chất lượng sản phẩm in theo tiêu chuẩn Iso 9001:2008 tại Công ty TNHH MTV In Bình Định
26 p | 302 | 75
-
Tóm tắt luận văn thạc sĩ kỹ thuật: Nghiên cứu xây dựng hệ thống phục vụ tra cứu thông tin khoa học và công nghệ tại tỉnh Bình Định
24 p | 290 | 70
-
Luận văn thạc sĩ kỹ thuật: Đánh giá các chỉ tiêu về kinh tế kỹ thuật của hệ thống truyền tải điện lạnh và siêu dẫn
98 p | 185 | 48
-
Tóm tắt luận văn thạc sĩ kỹ thuật: Nghiên cứu xây dựng chương trình tích hợp xử lý chữ viết tắt, gõ tắt
26 p | 333 | 35
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Ứng dụng khai phá dữ liệu để trích rút thông tin theo chủ đề từ các mạng xã hội
26 p | 226 | 30
-
Tóm tắt luận văn thạc sĩ kỹ thuật: Nghiên cứu và xây dựng hệ thống Uni-Portal hỗ trợ ra quyết định tại trường Đại học Bách khoa, Đại học Đà Nẵng
26 p | 212 | 25
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Ứng dụng giải thuật di truyền giải quyết bài toán tối ưu hóa xếp dỡ hàng hóa
26 p | 240 | 23
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Nghiên cứu thực trạng và đề xuất các giải pháp nâng cao hiệu quả đầu tư Xây dựng cơ bản tại thành phố Đà Nẵng
26 p | 122 | 15
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Khai phá dữ liệu từ các mạng xã hội để khảo sát ý kiến đánh giá các địa điểm du lịch tại Đà Nẵng
26 p | 201 | 15
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Phương pháp đồ thị và ứng dụng trong dạy Tin học THPT
26 p | 178 | 12
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Ứng dụng công nghệ Gis xây dựng hệ thống quản lý chất thải sinh hoạt tại thành phố Quảng Ngãi
26 p | 145 | 10
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Khai phá luật kết hợp mờ đa cấp và ứng dụng
26 p | 128 | 8
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Nghiên cứu ứng dụng thuật toán ACO cho việc định tuyến mạng IP
26 p | 156 | 8
-
Tóm tắt luận văn Thạc sĩ Kỹ thuật: Vấn đề bề rộng khe nứt ở khớp dẻo của dầm bê tông cốt thép
26 p | 95 | 8
-
Luận văn Thạc sĩ Kỹ thuật: Nghiên cứu đánh giá và đề xuất giải pháp nâng cao hiệu quả khai thác Vỉa 10 mức -300 Công ty than Hà Lầm
98 p | 22 | 8
-
Luận văn Thạc sĩ Kỹ thuật: Nghiên cứu đề xuất một số giải pháp kỹ thuật phòng chống cháy nổ khí metan khi khai thác xuống sâu dưới mức -35, khu Lộ Trí - Công ty than Thống Nhất - TKV
73 p | 10 | 7
-
Luận văn Thạc sĩ Kỹ thuật: Nghiên cứu đánh giá hiện trạng và đề xuất công nghệ cơ giới hóa đồng bộ hạng nhẹ có thu hồi than nóc khai thác vỉa L7, Cánh Tây, công ty cổ phần than Mông Dương-Vinacomin
95 p | 15 | 5
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn