Python học tập không giám sát

Các thuật toán học máy không giám sát quan trọng nhất là gì?

Show

Học máy không giám sát có nghĩa là không có kết quả hoặc nhãn được xác định trước cho bất kỳ điểm dữ liệu nào trong quá trình đào tạo. Nếu không có tập dữ liệu được gắn nhãn, làm sao người ta biết nên sử dụng thuật toán nào?

Mục tiêu của bài đăng trên blog này là giúp bạn tìm ra thuật toán học máy không giám sát nào là tốt nhất cho vấn đề của bạn. Chúng tôi sẽ cung cấp tổng quan ngắn gọn và các ví dụ cũng như chi tiết về thuật toán nào phù hợp hơn cho các loại tập dữ liệu cụ thể

Các thuật toán học máy không giám sát hàng đầu bao gồm

1. Phân cụm K-Means

Phân cụm K-Means trong Python. Hướng dẫn thực hành - Real Python

Trong hướng dẫn này, bạn sẽ học. Phân cụm là một tập hợp các kỹ thuật được sử dụng để phân vùng dữ liệu thành các nhóm hoặc cụm…

trăn thật. com

Thuật toán phân cụm K-means là một trong những thuật toán học máy không giám sát phổ biến nhất và nó được sử dụng để phân đoạn dữ liệu. Nó hoạt động bằng cách phân vùng tập dữ liệu thành k cụm, trong đó mỗi cụm có giá trị trung bình được tính từ dữ liệu huấn luyện. Số cụm, k, thường được xác định thông qua thực nghiệm

Ưu điểm của việc sử dụng thuật toán phân cụm K-mean là dễ hiểu và có thể thực hiện trong một khoảng thời gian ngắn. Ngoài ra, nó không yêu cầu bất kỳ giả định nào về phân phối cơ bản của dữ liệu. Tuy nhiên, có một số nhược điểm khi sử dụng thuật toán này. Đầu tiên, nó có thể nhạy cảm với các giá trị khởi tạo và có thể dẫn đến phân cụm kém. Thứ hai, nó không thể mở rộng thành các tập dữ liệu lớn. Cuối cùng, nó không hoạt động tốt với dữ liệu phân loại

2. Phân tích thành phần chính (PCA)

PCA sử dụng Python (scikit-learning)

hướng tới khoa học dữ liệu. com

Thuật toán PCA được sử dụng để giảm kích thước và thường được sử dụng cùng với thuật toán phân cụm k-means. Nó hoạt động bằng cách tìm một không gian có chiều thấp hơn chứa hầu hết các biến thể trong tập dữ liệu gốc. Điều này có thể hữu ích khi làm việc với các tập dữ liệu nhiều chiều vì nó làm giảm số lượng chiều mà không làm mất nhiều thông tin. Ngoài ra, sử dụng PCA có thể cải thiện hiệu suất trên nhiều thuật toán học máy vì chúng thường nhạy cảm với kích thước của tập dữ liệu đầu vào

Tuy nhiên, có một số nhược điểm khi sử dụng PCA. Đầu tiên, nó có thể tốn kém về mặt tính toán. Thứ hai, không phải lúc nào cũng có thể giảm kích thước của tập dữ liệu mà không làm mất thông tin. Cuối cùng, PCA không hoạt động tốt với dữ liệu phân loại

3. Bộ mã hóa tự động

Bộ mã hóa tự động Python. Cách sử dụng Bộ mã hóa tự động trong Python

Bộ mã hóa tự động là một loại mạng thần kinh chuyển tiếp nguồn cấp dữ liệu cụ thể. Bài viết này là một hướng dẫn đầy đủ để tìm hiểu cách sử dụng…

www. phân tíchvidhya. com

Thuật toán AutoEncoder là một loại mạng thần kinh được sử dụng cho việc học không giám sát. Nó hoạt động bằng cách lấy một tập dữ liệu đầu vào và mã hóa nó thành một lớp ẩn. Dữ liệu được mã hóa sau đó được giải mã và so sánh với bộ dữ liệu đầu vào ban đầu. Nếu có mức độ tương đồng cao giữa hai bộ, thì bộ mã hóa đã thực hiện chính xác nhiệm vụ của nó. Mặt khác, bộ mã hóa cần được điều chỉnh cho đến khi có mức độ tương đồng cao giữa hai bộ

Ưu điểm của việc sử dụng thuật toán AutoEncoder là nó có thể học các mẫu phức tạp trong dữ liệu. Ngoài ra, nó là một loại mạng thần kinh và do đó, có thể được đào tạo bằng cách sử dụng lan truyền ngược. Tuy nhiên, có một số nhược điểm khi sử dụng thuật toán này. Đầu tiên, nó có thể tốn kém về mặt tính toán. Thứ hai, nếu bộ mã hóa và bộ giải mã không đủ giống nhau thì thuật toán sẽ không hoạt động tốt. Cuối cùng, nó không hoạt động tốt với dữ liệu phân loại

4. Mạng niềm tin sâu sắc

Hiểu về mạng lưới niềm tin sâu sắc bằng Python - CodeSpeedy

Trong hướng dẫn này, chúng ta sẽ tìm hiểu Mạng niềm tin sâu sắc trong Python. Trước khi đọc hướng dẫn này, dự kiến…

www. mật mã. com

Thuật toán Deep Belief Network (DBN) là một thuật toán học sâu được sử dụng cho việc học không giám sát. Nó hoạt động bằng cách tạo ra một hệ thống phân cấp các lớp trong đó mỗi lớp bao gồm nhiều nơ-ron. Lớp đầu tiên được gọi là lớp đầu vào và bao gồm các nơ-ron được kết nối với tập dữ liệu gốc. Lớp cuối cùng được gọi là lớp đầu ra và nó bao gồm các nơ-ron được sử dụng để phân loại hoặc hồi quy tùy thuộc vào việc học có giám sát có cần thiết hay không

Ưu điểm của việc sử dụng DBN là chúng có thể được đào tạo nhanh chóng vì việc đào tạo chỉ diễn ra theo một hướng từ lớp đầu vào đến lớp đầu ra. Ngoài ra, nó hoạt động tốt với các vấn đề không có nhiều dữ liệu được gắn nhãn miễn là có một số thông tin về chức năng được lập mô hình. Tuy nhiên, có một số nhược điểm khi sử dụng thuật toán này, chẳng hạn như khả năng vượt quá lượng lớn dữ liệu huấn luyện, điều này hạn chế mức độ mạng lưới thần kinh có thể tự cải thiện mà không cần thêm các tập huấn luyện được gắn nhãn. Một vấn đề khác là các loại mạng sâu này yêu cầu một lượng lớn tính toán để đào tạo. Cuối cùng, nó không hoạt động tốt với dữ liệu phân loại

5. Máy Boltzmann bị hạn chế (RBM)

Triển khai Máy Boltzmann bị hạn chế (RBM) và các biến thể của nó trong Tensorflow. PythonRepo

Tôi chưa quen với Mạng nơ-ron. Cảm ơn rất nhiều vì xRBM của bạn. Tuy nhiên, khi tôi thử rbm_mnist_simple. giá trị py, nan là…

pythonrepo. com

Thuật toán Máy Boltzmann bị hạn chế (RBM) là một loại mạng thần kinh được sử dụng cho việc học không giám sát. Nó hoạt động bằng cách lấy một tập dữ liệu đầu vào và chia nó thành hai phần. lớp hiển thị và lớp ẩn. Lớp hiển thị bao gồm các nơ-ron được kết nối với tập dữ liệu gốc trong khi lớp ẩn bao gồm các nơ-ron không được kết nối với tập dữ liệu gốc. Mục đích của thuật toán này là tìm hiểu mối quan hệ giữa các lớp đầu vào và đầu ra

Ưu điểm của việc sử dụng thuật toán RBM là chúng có thể được sử dụng để giảm kích thước vì chúng thường dẫn đến không gian đầu vào có chiều thấp hơn. Ngoài ra, chúng có thể tìm hiểu các mối quan hệ phức tạp giữa tập dữ liệu và có thể được đào tạo nhanh chóng vì chỉ yêu cầu lan truyền ngược để đào tạo. Tuy nhiên, có một số nhược điểm khi sử dụng loại thuật toán này chẳng hạn như không có khả năng tạo nhiều hơn một lớp ẩn. Một vấn đề khác là việc học không thể xảy ra với các phương pháp đào tạo trước không được giám sát như AutoEncoders hoặc PCA một mình. Cuối cùng, thuật toán RBM không hoạt động tốt với dữ liệu phân loại

6. Bộ nhớ thời gian phân cấp (HTM)

Ký ức tạm thời phân cấp - phần 1 - bắt đầu * người đàn ông thứ 3

Tôi đã bắt gặp khái niệm Bộ nhớ Thời gian Phân cấp (HTM) và cách triển khai nó cách đây một thời gian, và tôi vẫn rất…

người thứ 3. de

Thuật toán Bộ nhớ thời gian phân cấp (HTM) là một loại mạng nơ-ron được sử dụng cho việc học không giám sát cùng với các vấn đề học tập có giám sát trong đó tồn tại các ví dụ được gắn nhãn nhưng không đủ nhãn được tạo trong thời gian đào tạo. Nó hoạt động bằng cách tạo một hệ thống phân cấp các cấp trong đó các nút cấp thấp hơn biểu thị các pixel riêng lẻ và các nút cấp cao hơn biểu thị các phân loại đối tượng như khuôn mặt, bàn tay hoặc ô tô tùy thuộc vào những gì đang được học

Ưu điểm của việc sử dụng thuật toán HTM là chúng có thể được sử dụng để học không giám sát trong khi đưa ra dự đoán về toàn bộ chuỗi thay vì chỉ các sự kiện đơn lẻ như các phương pháp khác. Ngoài ra, nó cho phép học phân cấp với nhiều cấp độ trừu tượng giúp phân tích các tập dữ liệu hiệu quả hơn và làm việc với các đầu vào không xác định. Tuy nhiên, có một số nhược điểm khi sử dụng loại thuật toán này như thời gian đào tạo dài so với các mạng thần kinh truyền thống. Một vấn đề khác là cách tiếp cận này không hoạt động tốt nếu mỗi lớp kế tiếp có ít phần tử xử lý hơn các lớp trước đó vì các loại lớp này sẽ không thể học bất cứ điều gì. Cuối cùng, thuật toán HTM không thể xử lý dữ liệu phân loại

7. Mạng thần kinh tích chập (CNN)

Mạng thần kinh tích chập (CNN). Lõi TensorFlow

Để hoàn thành mô hình, bạn sẽ đưa tenxơ đầu ra cuối cùng từ cơ sở tích chập (có hình dạng (4, 4, 64)) vào một…

www. dòng chảy căng. tổ chức

Mạng thần kinh chuyển đổi (CNN) là một loại mạng thần kinh được sử dụng cho cả các vấn đề học tập không giám sát và giám sát. Chúng hoạt động bằng cách lấy một hình ảnh đầu vào và chia nó thành các ô vuông nhỏ gọi là “cửa sổ. ” Sau đó, mỗi cửa sổ được chuyển qua một nơ-ron trong lớp đầu tiên của CNN, nơ-ron này thực hiện thao tác tích chập trên nó bằng cách sử dụng ma trận hạt nhân. Đầu ra của lớp này sau đó được chuyển qua một lớp tế bào thần kinh khác, lớp này thực hiện một thao tác tích chập khác, lần này với một ma trận nhân khác. Quá trình này được lặp lại cho đến khi đạt đến lớp cuối cùng tạo ra đầu ra là dự đoán của hình ảnh đầu vào

Ưu điểm của việc sử dụng CNN là chúng có thể tìm hiểu các mối quan hệ phức tạp giữa các tập dữ liệu và có thể được đào tạo nhanh chóng vì chỉ cần truyền ngược để đào tạo. Ngoài ra, chúng thường dẫn đến không gian đầu vào có chiều thấp hơn so với các loại mạng thần kinh khác. Tuy nhiên, có một số nhược điểm khi sử dụng loại thuật toán này, chẳng hạn như yêu cầu tính toán cao của nó có thể gây khó khăn cho việc đào tạo trên các tập dữ liệu lớn. Một vấn đề khác là CNN không hoạt động tốt với dữ liệu phân loại

8. Máy Vector hỗ trợ (SVM)

chuyên sâu. Hỗ trợ máy Vector

Chúng ta có thể thấy rằng với thứ nguyên bổ sung này, dữ liệu trở nên có thể phân tách tuyến tính tầm thường, bằng cách vẽ một…

jakevdp. github. io

Support Vector Machines (SVM) là một loại thuật toán máy học được sử dụng cho cả các vấn đề học tập không giám sát và giám sát. Chúng hoạt động bằng cách xây dựng một siêu phẳng trong không gian nhiều chiều, nơi tất cả các điểm dữ liệu đào tạo nằm trên một mặt của mặt phẳng và tất cả các điểm dữ liệu khác nằm ở phía bên kia. Mục đích của SVM là tìm siêu phẳng tốt nhất có thể để nó có thể phân loại chính xác tất cả các điểm dữ liệu huấn luyện

Ưu điểm của việc sử dụng SVM là chúng thường dẫn đến không gian đầu vào có chiều thấp hơn so với các loại thuật toán học máy khác. Ngoài ra, chúng có thể tìm hiểu các mối quan hệ phức tạp giữa các tập dữ liệu và có thể được đào tạo nhanh chóng vì chỉ cần truyền ngược để đào tạo. Tuy nhiên, có một số nhược điểm khi sử dụng loại thuật toán này, chẳng hạn như yêu cầu tính toán cao của nó có thể gây khó khăn cho việc đào tạo trên các tập dữ liệu lớn. Một vấn đề khác là các SVM không hoạt động tốt với dữ liệu phân loại

Chúng tôi hy vọng rằng danh sách 8 thuật toán học máy không giám sát quan trọng nhất này đã giúp bạn hiểu những điều cơ bản. Để biết thêm thông tin về các thuật toán này, vui lòng truy cập tài liệu tham khảo mã Python tương ứng bên dưới. Nếu có các chủ đề phổ biến hoặc thịnh hành khác trong AI và khoa học dữ liệu mà bạn muốn chúng tôi đề cập, hãy cho chúng tôi biết

Học không giám sát trong Python là gì?

Học không giám sát là một loại kỹ thuật máy học (ML) được sử dụng để tìm các mẫu trong dữ liệu . Dữ liệu được cung cấp cho các thuật toán không được giám sát không được gắn nhãn, điều đó có nghĩa là chỉ các biến đầu vào (x) được cung cấp mà không có biến đầu ra tương ứng.

Một ví dụ học tập không giám sát là gì?

Học tập không giám sát là khi nó có thể cung cấp một tập hợp dữ liệu không được gắn nhãn để phân tích và tìm các mẫu bên trong. Các ví dụ là giảm kích thước và phân cụm .

Thuật toán nào có thể là học không giám sát?

Một số thuật toán phổ biến nhất được sử dụng trong học tập không giám sát bao gồm. (1) Phân cụm, (2) Phát hiện bất thường, (3) Phương pháp tiếp cận để học các mô hình biến tiềm ẩn . Mỗi cách tiếp cận sử dụng một số phương pháp như sau. Phương pháp phân cụm bao gồm. phân cụm theo cấp bậc, phương tiện k, mô hình hỗn hợp, thuật toán DBSCAN và OPTICS.

Thuật toán nào là tốt nhất cho học máy không giám sát?

K-Means . Nó là một thuật toán học tập không giám sát để giải quyết các vấn đề phân cụm. Các tập dữ liệu được phân loại thành một số cụm cụ thể (hãy gọi số đó là K) theo cách sao cho tất cả các điểm dữ liệu trong một cụm là đồng nhất và không đồng nhất với dữ liệu trong các cụm khác.