1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề cương chuyên Đề học phần học máy nâng cao Đề ti phương pháp svm Để phân loại tên trẻ em phổ biến d

25 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phương Pháp Svm Để Phân Loại Tên Trẻ Em Phổ Biến
Tác giả Đỗ Văn Tiến, Phạm Xuân Tùng
Người hướng dẫn Vũ Văn Định
Trường học Trường Đại Học Điện Lực
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đề Cương Chuyên Đề
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 25
Dung lượng 3,28 MB

Nội dung

Và gần đây, một thuật ngữ “học máy nâng cao” rất được nhiều người quantâm.Thay vì phải code phần mềm với cách thức thủ công theo một bộ hướng dẫn cụ thểnhằm hoàn thành một nhiệm vụ đề ra

Trang 1

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC

KHOA CÔNG NGHỆ THÔNG TIN

ĐỀ CƯƠNG CHUYÊN ĐỀ HỌC PHẦN

HỌC MÁY NÂNG CAO

ĐỀ TI:

PHƯƠNG PHÁP SVM ĐỂ PHÂN LOẠI TÊN TRẺ EM PHỔ BIẾN

Sinh viên thực hiện : ĐỖ VĂN TIẾN

PHẠM XUÂN TỪNG Giảng viên hướng dẫn : VŨ VĂN ĐỊNH

Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : CÔNG NGHỆ PHẦN MỀM

Hà Nội, tháng năm 2023

1.

Trang 2

PHIẾU CHẤM ĐIỂM STT Họ và tên sinh viên Nội dung thực hiện Điểm Chữ ký

Trang 3

MỤC LỤC

LỜI MỞ ĐẦU 9

CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY NÂNG CAO 10

1.1 Khái niệm về học máy nâng cao 10

1.1.1 Xu hướng chính trong học máy nâng cao 10

1.1.2 Tại sao cần phải ứng dụng học máy nâng cao 11

CHƯƠNG 2 PHƯƠNG PHÁP SVM TRONG BI TOÁN PHÂN LOẠI TÊN TRẺ EM PHỔ BIẾN 13

2.1 Tổng quan về phương pháp SVM 13

2.1.1 Phương pháp SVM: 13

2.1.2 Các đặc điểm quan trọng của phương pháp SVM: 13

2.1.3 Cách thức hoạt động của phương pháp SVM 15

2.2 Các bước giải quyết bài toán 17

CHƯƠNG 3 TRIỂN KHAI PHƯƠNG PHÁP SVM VO BI TOÁN TÊN TRẺ EM PHỔ BIẾN 19

3.1 Giới thiệu về pycharm 19

3.1.1 Khái niệm về pycharm 19

3.1.2 Các tính năng của pycharm 19

3.1.3 Cài dặt pycharm 20

3.1.4 Hướng dẫn sử dụng pycharm 24

KẾT LUẬN 26

Trang 4

LIỆT KÊ CHỮ VIẾT TẮT

CSI Current source Inverters Bộ biến đổi nguồn dòngVSI Voltage source Inverters Bộ biến đổi nguồn áp

Trang 5

DANH MỤC HÌNH ẢNH

Trang 6

DANH MỤC BẢNG BIỂU

Bảng 4.1: Bảng lưu trữ thông tin các ảnh Image 33Bảng 4.2: Bảng lưu trữ đặc trưng của ảnh Feature 33Bảng 4.3: Bảng lưu trữ thông tin độ lệch chuẩn của tập ảnh 33

Trang 7

LỜI MỞ ĐẦU

Công nghệ ngày càng phổ biến và không ai có thể phủ nhận được tầm quan trọng

và những hiệu quả mà nó đem lại cho cuộc sống chúng ta Bất kỳ trong lĩnh vực nào,

sự góp mặt của trí tuệ nhân tạo sẽ giúp con người làm việc và hoàn thành tốt công việchơn Và gần đây, một thuật ngữ “học máy nâng cao” rất được nhiều người quantâm.Thay vì phải code phần mềm với cách thức thủ công theo một bộ hướng dẫn cụ thểnhằm hoàn thành một nhiệm vụ đề ra thì máy tính sẽ tự “học hỏi” bằng cách sử dụngmột lượng lớn dữ liệu cùng những thuật toán cho phép nó thực hiện các tác vụ.Đây là một lĩnh vực khoa học tuy không mới, nhưng cho thấy lĩnh vực trí tuệnhân tạo đang ngày càng phát triển và có thể tiến xa hơn trong tương lai Đồng thời,thời điểm này nó được xem là một lĩnh vực “nóng” và dành rất nhiều mối quan tâm

để phát triển nó một cách mạnh mẽ, bùng nổ hơn

Những điều trên được hiểu là nó có thể thực hiện tự động, nhanh chóng để tạo ranhững mô hình cho phép phân tích các dữ liệu có quy mô lớn hơn và phức tạp hơnđồng thời đưa ra những kết quả một cách nhanh và chính xác hơn

Chính sự hiệu quả trong công việc và các lợi ích vượt bậc mà nó đem lại chochúng ta khiến học máy nâng cao ngày càng được chú trọng và quan tâm nhiều hơn

Vì vậy chúng em đã chọn đề tài “Sử dụng phương pháp SVM để phân loại tên trẻ emphổ biến” để làm báo cáo

Chúng em xin chân thành gửi lời cảm ơn tới các thầy cô giáo trong Trường Đạihọc Điện Lực nói chung và các thầy cô giáo trong Khoa Công nghệ thông tin nói riêng

đã tận tình giảng dạy, truyền đạt cho chúng em những kiến thức cũng như kinh nghiệmquý báu trong suốt quá trình học Đặc biệt, em gửi lời cảm ơn đến thầy Vũ Văn Định

đã tận tình theo sát giúp đỡ, trực tiếp chỉ bảo, hướng dẫn trong suốt quá trình nghiêncứu và học tập của chúng em

Trang 8

CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY NÂNG CAO

1.1 Khái niệm về học máy nâng cao

Học máy nâng cao là một nhánh của học máy tập trung vào việc phát triển cácthuật toán và mô hình học máy mới, tiên tiến hơn Học máy nâng cao thường được sửdụng để giải quyết các vấn đề khó khăn hoặc phức tạp mà các phương pháp học máytruyền thống không thể xử lý

1.1.1 Xu hướng chính trong học máy nâng cao

 Máy học sâu: Máy học sâu sử dụng các mạng nơ-ron nhân tạo để học các mối

quan hệ phức tạp giữa các dữ liệu Máy học sâu đã được áp dụng thành côngtrong nhiều lĩnh vực khác nhau, bao gồm nhận dạng hình ảnh, xử lý ngôn ngữ tựnhiên và dịch máy

Hình 1: máy học sâu

Trang 9

 Học máy tăng cường: Học máy tăng cường sử dụng các thuật toán để học cách

thực hiện các hành động trong môi trường để đạt được mục tiêu mong muốn.Học máy tăng cường đã được áp dụng thành công trong các lĩnh vực như chơigame, điều khiển robot và tự lái xe

Hình 2: Học máy tang cường

 Học máy tích hợp: Học máy tích hợp kết hợp các kỹ thuật học máy khác nhau

để tạo ra các mô hình học máy hiệu quả hơn Học máy tích hợp đã được áp dụngthành công trong các lĩnh vực như phát hiện gian lận, phân tích thị trường và yhọc

1.1.2 Tại sao cần phải ứng dụng học máy nâng cao

Ứng dụng học máy nâng cao (Advanced Machine Learning) đóng vai trò quantrọng trong nhiều lĩnh vực khác nhau vì nó cung cấp khả năng giải quyết các vấn đềphức tạp và đưa ra dự đoán chính xác hơn Dưới đây là một số lý do tại sao cần phảiứng dụng học máy nâng cao:

 Xử lý dữ liệu lớn và phức tạp: Trong nhiều trường hợp, dữ liệu thu thập được

không chỉ lớn mà còn phức tạp Học máy nâng cao cung cấp các kỹ thuật và môhình phức tạp hơn có khả năng xử lý các tập dữ liệu lớn và phức tạp hơn

 Khả năng học từ dữ liệu không cấu trúc: Trong thế giới thực, nhiều dữ liệu

không được cấu trúc hoặc không có dạng số học truyền thống Học máy nângcao cung cấp các phương pháp như học sâu (deep learning) có thể học từ dữ liệuhình ảnh, âm thanh, văn bản và nhiều loại dữ liệu khác

Trang 10

 Giải quyết vấn đề phân loại và nhận diện: Trong các bài toán phân loại và

nhận diện, học máy nâng cao thường dẫn đến kết quả tốt hơn Ví dụ, trong nhậndiện văn bản từ hình ảnh (OCR), sử dụng mạng nơ-ron sâu có thể cung cấp kếtquả chính xác hơn so với các phương pháp truyền thống

 Học sâu trong thị giác máy: Học sâu (deep learning) đã mang lại những tiến bộ

đáng kể trong các lĩnh vực như nhận diện vật thể, nhận diện khuôn mặt, xử lýhình ảnh y tế và nhiều ứng dụng khác

 Xử lý ngôn ngữ tự nhiên (NLP) phức tạp: Học máy nâng cao đóng vai trò

quan trọng trong việc phân tích, dịch, và tạo ra văn bản tự nhiên, cung cấp khảnăng hiểu rõ nghĩa của ngôn ngữ tự nhiên

 Tăng tính tổ chức và khả năng tìm kiếm thông tin: Học máy nâng cao giúp

xây dựng các hệ thống tổ chức thông tin, tìm kiếm thông tin hiệu quả, và đưa racác đề xuất tùy chỉnh

 Tối ưu hóa quy trình công nghiệp: Trong các ngành công nghiệp như sản xuất,

y tế, tài chính, học máy nâng cao có thể được áp dụng để tối ưu hóa các quytrình và tăng cường hiệu suất

 Dự báo và tiên đoán: Các mô hình học máy nâng cao thường có khả năng dự

đoán tốt hơn, giúp trong việc đưa ra quyết định dựa trên thông tin dự báo chínhxác

Trang 11

1.2 Ứng dụng học máy nâng cao

Nhiều hoạt động hàng ngày của chúng ta được trợ giúp bởi các thuật toán baogồm:

 Trong y tế: xác định bệnh lý của người bệnh mới dựa trên dữ liệu lịch sửcủa

các bệnh nhân có cùng bệnh lý có cùng các đặc điểm đã được chữa khỏitrước đây, hay xác định loại thuốc phù hợp

 Trong lĩnh vực ngân hàng: xác định khả năng khách hàng chậm trả các khoảnvay hoặc rủi ro tín dụng do nợ xấu dựa trên phân tích Credit score; xác địnhxem liệu các giao dịch có hành vi phạm tội, lừa đảo hay không

 Trong giáo dục: phân loại các học sinh theo hoàn cảnh, học lực để xem xemcần

hỗ trợ gì cho những học sinh ví dụ như hoàn cảnh sống khó khăn nhưng học lựclại tốt

 Trong thương mại điện tử: phân loại khách hàng theo sở thích cụ thể để hỗ trợpersonalized marketing hay xây dựng hệ thống khuyến nghị, dựa trên dữ liệu từwebsite, social media

 Trong kinh tế nói chung: giúp dự báo các sự kiện kinh tế trong tương lai, dự báotình hình thời tiết trong nông nghiệp, xác định xu hướng thị trườngchứngkhoán để lên kế hoạch đầu tư thích hợp

Trang 12

CHƯƠNG 2 PHƯƠNG PHÁP SVM TRONG BI TOÁN PHÂN LOẠI TÊN

Hình:

Support Vectors hiểu một cách đơn giản là các đối tượng trên đồ thị tọa độquan sát, Support Vector Machine là một biên giới để chia hai lớp tốt nhất

2.1.2 Các đặc điểm quan trọng của phương pháp SVM:

 Ranh giới quyết định (Decision Boundary): SVM tìm ra ranh giới quyết

định (hyperplane) tốt nhất để phân tách các lớp dữ liệu Ranh giới này đượcchọn sao cho khoảng cách từ các điểm dữ liệu gần nhất (các vector hỗ trợ)tới ranh giới là lớn nhất

Trang 13

 Hàm mất mát (Loss Function): SVM sử dụng hàm mất mát, thường được

gọi là hàm mất mát Hinge, để đánh giá hiệu suất của ranh giới quyết định.Mục tiêu của SVM là tối thiểu hóa hàm mất mát, trong đó các sai sót phânloại bị phạt nặng

 Hỗ trợ Vector (Support Vectors): Các điểm dữ liệu gần nhất đến ranh giới

quyết định được gọi là các vector hỗ trợ Chúng có vai trò quan trọng trongquá trình xác định ranh giới tối ưu

 Kernel Trick: SVM cho phép sử dụng kernel trick để biến đổi không gian

dữ liệu, từ đó tạo ra các ranh giới phi tuyến tính Điều này giúp SVM xử lýhiệu quả các bài toán phân loại phức tạp hơn

 Phân loại đa lớp: SVM ban đầu được phát triển cho bài toán phân loại hai

lớp (binary classification), nhưng nó có thể mở rộng để xử lý phân loại đalớp Một số kỹ thuật cho phân loại đa lớp bao gồm One-vs-All (OvA) vàOne-vs-One (OvO)

 Regularization (Chế tạo mô hình): SVM hỗ trợ sự kiểm soát sự phức tạp

của mô hình thông qua tham số C Tham số này điều chỉnh mức độ phạt saisót phân loại trên tập huấn luyện Giá trị C lớn sẽ tạo ra một mô hình nghiêmngặt, trong khi C nhỏ hơn cho phép mô hình chấp nhận một số sai sót

 SVM trong học sâu: Mô hình mạng nơ-ron sâu (deep neural networks) đã

trở nên phổ biến hơn, nhưng SVM vẫn có vai trò trong một số ứng dụng cụthể Các mô hình SVM sử dụng trong học sâu thường gọi là Support VectorMachines for Deep Learning (SVM-DL) và kết hợp các đặc điểm của SVMvới khả năng học sâu

 Phân loại không tuyến tính: SVM có thể sử dụng các hàm kernel như hàm

đa thức, hàm Radial Basis Function (RBF), hoặc hàm Sigmoid để xử lý phân

Trang 14

loại không tuyến tính Nhờ đó, nó có thể phân loại dữ liệu không thể đượcphân chia bằng ranh giới tuyến tính.

 Ứng dụng thực tế: SVM đã được áp dụng rộng rãi trong các lĩnh vực như y

tế (nhận diện bệnh, dự đoán kết quả điều trị), tài chính (phân loại rủi ro tíndụng), thị giác máy tính (nhận diện đối tượng), và nhiều lĩnh vực khác

2.1.3 Cách thức hoạt động của phương pháp SVM

- Identify the right hyper-plane (Scenario-1):

Ở đây, có 3 đường hyper-lane (A, B and C) Bây giờ đường nào là hyper-laneđúng cho nhóm ngôi sao và hình tròn

Hình:

Quy tắc số một để chọn 1 hyper-lane, chọn một hyper-plane để phân chia hailớp tốt nhất Trong ví dụ này chính là đường B

- identify the right hyper-plane (Scenario-2):

Ở đây chúng ta cũng có 3 đường hyper-plane (A, B và C), theo quy tắc số 1,chúng đều thỏa mãn

Trang 15

Quy tắc thứ hai chính là xác định khoảng cách lớn nhất từ điểu gần nhất củamột lớp nào đó đến đường hyper-plane Khoảng cách này được gọi là "Margin",Hãy nhìn hình bên dưới, trong đấy có thể nhìn thấy khoảng cách margin lớn nhấtđấy là đường C Cần nhớ nếu chọn lầm hyper-lane có margin thấp hơn thì sau nàykhi dữ liệu tăng lên thì sẽ sinh ra nguy cơ cao về việc xác định nhầm lớp cho dữliệu

- Identify the right hyper-plane (Scenario-3):

Sử dụng các nguyên tắc đã nêu trên để chọn ra hyper-plane cho trường hợpsau:

Hình:

Trang 16

Có thể có một vài người sẽ chọn đường B bởi vì nó có margin cao hơn đường

A, nhưng đấy sẽ không đúng bởi vì nguyên tắc đầu tiên sẽ là nguyên tắc số 1,chúng ta cần chọn hyper-plane để phân chia các lớp thành riêng biệt Vì vậy đường

A mới là lựa chọn chính xác

- Can we classify two classes (Scenario-4):

Tiếp theo hãy xem hình bên dưới, không thể chia thành hai lớp riêng biệt với 1đường thẳng, để tạo 1 phần chỉ có các ngôi sao và một vùng chỉ chứa các điểmtròn

Hình:

Ở đây sẽ chấp nhận, một ngôi sao ở bên ngoài cuối được xem như một ngôisao phía ngoài hơn, SVM có tính năng cho phép bỏ qua các ngoại lệ và tìm rahyper-plane có biên giới tối đa Do đó có thể nói, SVM có khả năng mạnh trongviệc chấp nhận ngoại lệ

2.2 Các bước giải quyết bài toán

B1: Thu thập dữ liệu

Dữ liệu có thể được tham khảo từ các nguồn để làm thành file csv ví dụ như:

 Các trang web đăng kí

 Các cơ sở giáo dục

Trang 17

B2: Chuẩn bị dữ liệu:

Sau khi thu thập dữ liệu, cần chuẩn bị dữ liệu để phù hợp với việc sử dụngphương pháp SVM Dữ liệu cần được chuyển đổi thành dạng vector đặc trưng.Các đặc trưng thường được sử dụng để phân loại tên trẻ em phổ biến bao gồm:

 Số lượng ký tự trong tên

 Số lượng nguyên âm trong tên

 Số lượng phụ âm trong tên

 Tần suất xuất hiện của các chữ cái trong tên

B3: Sử dụng PCA:

Tiếp theo, sử dụng PCA để giảm chiều dữ liệu PCA là một kỹ thuật giảmchiều dữ liệu bằng cách chuyển đổi dữ liệu từ không gian có chiều cao sang khônggian có chiều thấp hơn Điều này giúp giảm số lượng đặc trưng cần thiết để phânloại tên trẻ em

B4: Huấn luyện phương pháp SVM:

Sau khi dữ liệu đã được giảm chiều, cần huấn luyện phương pháp SVM trên

dữ liệu đã được chuẩn bị Phương pháp SVM sẽ học cách phân loại các tên trẻ emthành các nhóm phổ biến

Trang 18

CHƯƠNG 3 TRIỂN KHAI PHƯƠNG PHÁP SVM VO BI TOÁN TÊN

TRẺ EM PHỔ BIẾN

1.1 Giới thiệu về pycharm

1.1.1Khái niệm về pycharm

Pycharm là một nền tảng kết kết hợp được JetBrains phát triển như một IDE(Môi trường phát triển tích hợp) để phát triển các ứng dụng cho lập trình trongPython Một số ứng dụng lớn như Tweeter, Facebook, Amazon và Pinterest sửdụng Pycharm để làm IDE Python của họ

1.1.2 Các tính năng của pycharm

Pycharm có thể chạy trên Windows, Linux, hoặc Mac OS Ngoài ra, nó cũngchứa các Mô đun và các gói giúp các lập trình viên phát triển phần mềm bằngPython trong thời gian ngắn với ít công sức hơn Hơn nữa, nó cũng có khả năng tùychỉnh theo yêu cầu của nhà phát triển

Khi cài đặt Pycharm, LTV có thể sử dụng một số tính năng sau:

- Giúp các lập trình viên viết mã chất lượng cao

- Xác định lỗi một cách dễ dàng

- Cung cấp tính năng tự động hoàn thiện và hướng dẫn hoàn thiện mã

Trang 19

- Giúp các nhà phát triển trong việc chỉnh sửa và nâng cao mã với ít nỗ lực

và thời gian hơn

- Với việc điều hướng mã, nhà phát triển có thể dễ dàng điều hướng một lớp,hàm hoặc tệp

- LTV có thể xác định vị trí của một phần tử, một ký hiệu hoặc một biếntrong mã nguồn trong thời gian ngắn khi sử dụng Pycharm

- Bằng việc sử dụng chế độ thấu kính, nhà phát triển có thể kiểm tra và gỡ lỗitoàn bộ mã nguồn

- Tái cấu trúc trong Pycharm cho phép các nhà phát triển cải thiện cấu trúcbên trong mà không thay đổi hiệu suất bên ngoài của mã

- Nó cũng cho phép phân chia các lớp với các chức năng mở rộng hơn.1.1.3Cài dặt pycharm

Cài đặt Pycharm vô cùng đơn giản

B1: Bạn truy cập vào link sau: www.jetbeans.com

Hình:

Có hai phiên bản: Chuyên nghiệp và Cộng đồng Phiên bản cộng đồng là

mã nguồn mở miễn phí trong khi phiên bản Chuyên nghiệp là phiên bản yêucầu trả phí Bạn có thể tùy chọn cài đặt Pycharm dựa theo nhu cầu của bạn

Trang 20

B2: Tải xuống phiên bản cộng đồng Nếu muốn làm việc với phiên bản Pro,thì bạn cần tải và dung thử có hạn.

B3: Tệp tải xuống sẽ nằm trong mục bạn tải, nhấn vào tệp để cài đặtpycharm

B4: Khi cửa sổ sau hiện, nhấn vào tiếp theo và quá trình cài đặt sẽ được bắtđầu

Hình:

B5: Sau khi nhấn vào Next, đầu tiên sẽ xuất hiện cửa sổ thiết lập vị trí càiđặt Lưu ý : Bạn có thể chọn một thư mục cho vị trí cài đặt hoặc giữ lại đườngdẫn mặc định

Ngày đăng: 22/01/2025, 15:13

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN