Blog về Trí tuệ nhân tạo Với Python này sẽ giúp bạn hiểu tất cả các khái niệm về AI với các triển khai thực tế bằng Python.

Bạn đang xem : học python cho ai

Trí tuệ nhân tạo với Python:

Trí tuệ nhân tạo đã xuất hiện hơn nửa thế kỷ nay và những tiến bộ của nó đang phát triển với tốc độ cấp số nhân. Nhu cầu về AI đang ở mức đỉnh điểm và nếu bạn muốn tìm hiểu về Trí tuệ nhân tạo, bạn đã đến đúng nơi. Blog về Trí tuệ nhân tạo với Python này sẽ giúp bạn hiểu tất cả các khái niệm về AI với các triển khai thực tế bằng Python.

Để có kiến ​​thức chuyên sâu về Trí tuệ nhân tạo và Máy học, bạn có thể đăng ký tham gia trực tiếp Chương trình tổng thể kỹ sư máy học của Edureka với sự hỗ trợ 24/7 và quyền truy cập trọn đời.

Các chủ đề sau được đề cập trong Trí tuệ nhân tạo này Với Blog Python:

Tại sao Python lại tốt nhất cho AI?

Rất nhiều người đã hỏi tôi, ‘Ngôn ngữ lập trình nào tốt nhất cho AI?’ hoặc “Tại sao Python lại dành cho AI?”

Mặc dù là một ngôn ngữ có mục đích chung, nhưng Python có đã tiến vào những công nghệ phức tạp nhất như Trí tuệ nhân tạo, Học máy, Học sâu, v.v..

Tại sao Python lại trở nên phổ biến trong tất cả các lĩnh vực này?

Dưới đây là danh sách lý do tại sao Python là sự lựa chọn ngôn ngữ cho mọi Nhà phát triển cốt lõi, Nhà khoa học dữ liệu, Kỹ sư học máy, v.v.:

Tại sao nên sử dụng Python cho AI – Trí tuệ nhân tạo Với Python – Edureka

  • Ít mã hơn: Việc triển khai AI liên quan đến rất nhiều thuật toán. Nhờ sự hỗ trợ của Pythons đối với các gói được xác định trước, chúng tôi không phải viết mã các thuật toán. Và để giúp mọi thứ dễ dàng hơn, Python cung cấp phương pháp luận “kiểm tra khi bạn viết mã” để giảm gánh nặng kiểm tra mã.
  • Thư viện xây dựng sẵn: Python có hàng trăm thư viện được tạo sẵn để triển khai các thuật toán Học máy và Học sâu khác nhau. Vì vậy, mỗi khi bạn muốn chạy một thuật toán trên một tập dữ liệu, tất cả những gì bạn phải làm là cài đặt và tải các gói cần thiết bằng một lệnh duy nhất. Ví dụ về các thư viện được tạo sẵn bao gồm NumPy, Keras, Tensorflow, Pytorch, v.v.
  • Dễ học: Python sử dụng một cú pháp rất đơn giản có thể được sử dụng để triển khai các phép tính như bổ sung hai chuỗi vào các quy trình phức tạp như xây dựng mô hình Học máy.
  • Độc lập với nền tảng : Python có thể chạy trên nhiều nền tảng bao gồm Windows, MacOS, Linux, Unix , và như thế. Trong khi chuyển mã từ nền tảng này sang nền tảng khác, bạn có thể sử dụng các gói như PyInstaller để xử lý mọi vấn đề phụ thuộc.
  • Hỗ trợ cộng đồng rộng lớn: Python có một cộng đồng lớn của người dùng, điều này luôn hữu ích khi chúng tôi gặp lỗi mã hóa. Ngoài lượng người hâm mộ khổng lồ theo dõi, Python còn có nhiều cộng đồng, nhóm và diễn đàn, nơi các lập trình viên đăng lỗi của họ và giúp đỡ lẫn nhau.

Nếu bạn muốn tìm hiểu sâu về Lập trình Python, đây là vài liên kết, hãy đọc các blog này:

Vì blog này là toàn bộ về Trí tuệ nhân tạo với Python, nên tôi sẽ giới thiệu cho bạn các Thư viện Python dựa trên AI hiệu quả và phổ biến nhất.

< ol>

  • Tensorflow : Do Google phát triển, thư viện này được sử dụng phổ biến trong văn bản thuật toán Máy học và thực hiện các phép tính nặng liên quan đến Mạng thần kinh.
  • Scikit-Learn : Scikit-learning là một thư viện Python được liên kết với NumPy và SciPy. Nó được coi là một trong những thư viện tốt nhất để làm việc với dữ liệu phức tạp.
  • NumPy : Numpy là một thư viện python đặc biệt được sử dụng để tính toán dữ liệu khoa học / toán học.
  • Theano: Theano là một thư viện hàm có hiệu quả tính toán và tính toán các biểu thức toán học liên quan đến mảng nhiều chiều.
  • Keras: Thư viện này đơn giản hóa việc triển khai mạng nơ-ron. Nó cũng có các chức năng tốt nhất cho các mô hình máy tính, đánh giá tập dữ liệu, hiển thị biểu đồ và hơn thế nữa.
  • NLTK: NLTK hoặc Natural Language ToolKit là một thư viện Python mã nguồn mở được xây dựng đặc biệt để xử lý ngôn ngữ tự nhiên, phân tích văn bản và khai thác văn bản.
  • Ngoài các thư viện nêu trên, hãy đảm bảo bạn hãy xem blog 10 thư viện Python hàng đầu mà bạn phải biết trong năm 2019 để hiểu rõ hơn.

    Giờ thì bạn đã biết các thư viện Python quan trọng được sử dụng để triển khai các kỹ thuật AI, hãy tập trung vào Trí tuệ nhân tạo. Trong phần tiếp theo, tôi sẽ trình bày tất cả các khái niệm cơ bản về AI.

    Trước tiên, hãy bắt đầu bằng cách tìm hiểu nhu cầu đột ngột về AI.

    Nhu cầu về AI

    Kể từ khi AI xuất hiện vào những năm 1950, chúng ta đã thấy tiềm năng của nó tăng trưởng theo cấp số nhân. Nhưng nếu AI đã ở đây hơn nửa thế kỷ, tại sao nó đột nhiên trở nên quan trọng đến vậy? Tại sao chúng ta lại nói về Trí tuệ nhân tạo bây giờ?

    Nhu cầu về AI – Trí tuệ nhân tạo với Python – Edureka

    Những lý do chính cho sự phổ biến rộng rãi của AI là :

    Khả năng tính toán cao hơn: Việc triển khai AI đòi hỏi nhiều sức mạnh tính toán vì việc xây dựng các mô hình AI liên quan đến các tính toán nặng và sử dụng mạng nơ-ron phức tạp. Việc phát minh ra GPU đã biến điều này thành hiện thực. Cuối cùng, chúng tôi có thể thực hiện các phép tính cấp cao và triển khai các thuật toán phức tạp.

    Tạo dữ liệu: Trong những năm qua, chúng tôi đã tạo ra một lượng lớn dữ liệu. Dữ liệu như vậy cần được phân tích và xử lý bằng cách sử dụng thuật toán Học máy và các kỹ thuật AI khác.

    Thuật toán hiệu quả hơn: Trong thập kỷ qua, chúng tôi đã quản lý thành công để phát triển trạng thái các thuật toán nghệ thuật liên quan đến việc triển khai Mạng thần kinh sâu.

    Đầu tư rộng: Khi những gã khổng lồ công nghệ như Tesla, Netflix và Facebook bắt đầu đầu tư vào Trí tuệ nhân tạo, nó đã trở nên phổ biến hơn, dẫn đến dẫn đến sự gia tăng nhu cầu về các hệ thống dựa trên AI.

    Sự phát triển của Nhân tạo Trí thông minh theo cấp số nhân, nó cũng đang tăng thêm nền kinh tế với tốc độ tăng nhanh. Vì vậy, đây là thời điểm thích hợp để bạn tham gia vào lĩnh vực Trí tuệ nhân tạo.

    Hãy xem các khóa học về AI và Máy học này bởi E & amp; Học viện CNTT-TT NIT Warangal để tìm hiểu và xây dựng sự nghiệp trong Trí tuệ nhân tạo.

    Trí tuệ nhân tạo là gì?

    Thuật ngữ Trí tuệ nhân tạo lần đầu tiên được đặt ra cách đây nhiều thập kỷ trong năm 1956 bởi John McCarthy tại hội nghị Dartmouth. Ông định nghĩa AI là:

    “Khoa học và kỹ thuật tạo ra máy móc thông minh.”

    Nói cách khác, Trí tuệ nhân tạo là khoa học giúp máy móc suy nghĩ và đưa ra quyết định giống như con người.

    Trong quá khứ, AI đã có thể thực hiện điều này bằng cách tạo ra các loại máy móc và rô bốt được sử dụng trong nhiều lĩnh vực bao gồm chăm sóc sức khỏe, robot, tiếp thị, phân tích kinh doanh và nhiều hơn nữa.

    Bây giờ, hãy thảo luận về các giai đoạn khác nhau của Trí tuệ nhân tạo.

    Các loại Về trí tuệ nhân tạo

    AI được cấu trúc theo ba giai đoạn tiến hóa:

    1. Trí tuệ nhân tạo hẹp
    2. Trí tuệ nhân tạo nói chung
    3. < li> Siêu trí tuệ nhân tạo

    Các loại trí tuệ nhân tạo – Trí tuệ nhân tạo với Python – Edureka

    Trí tuệ nhân tạo hẹp

    Thường được gọi là AI yếu, Arti Trí tuệ thu hẹp của pháp luật chỉ liên quan đến việc áp dụng AI cho các nhiệm vụ cụ thể.

    Các hệ thống dựa trên AI hiện có tuyên bố sử dụng “trí thông minh nhân tạo” đang thực sự hoạt động như một AI yếu. Alexa là một ví dụ điển hình về trí thông minh hạn hẹp. Nó hoạt động trong một phạm vi chức năng được xác định trước hạn chế. Alexa không có trí thông minh hay khả năng tự nhận thức thực sự.

    Công cụ tìm kiếm của Google, Sophia, ô tô tự lái và thậm chí cả AlphaGo nổi tiếng, đều thuộc loại AI yếu.

    Trí thông minh nhân tạo

    Thường được gọi là AI mạnh mẽ, Trí tuệ nhân tạo liên quan đến những cỗ máy có khả năng thực hiện bất kỳ nhiệm vụ trí tuệ nào mà con người có thể làm được.

    Bạn thấy đấy , máy móc không sở hữu những khả năng như con người, chúng có một bộ phận xử lý mạnh mẽ có thể thực hiện các phép tính cấp cao nhưng chúng chưa có khả năng suy nghĩ và lập luận như con người.

    Có rất nhiều chuyên gia những người nghi ngờ rằng sẽ không bao giờ có thể thực hiện được AGI, và cũng có nhiều người đặt câu hỏi liệu nó có đáng được mong đợi hay không.

    Stephen Hawking, chẳng hạn, đã cảnh báo:

    “AI mạnh sẽ phát triển và tự thiết kế lại với tốc độ ngày càng tăng. Con người, những người bị giới hạn bởi quá trình tiến hóa sinh học chậm chạp, không thể cạnh tranh và sẽ bị thay thế. “

    Siêu trí tuệ nhân tạo

    Siêu trí tuệ nhân tạo là một thuật ngữ đề cập đến thời điểm mà khả năng của máy tính sẽ vượt qua con người.

    ASI hiện nay được coi là một tình huống giả định được mô tả trong phim và sách khoa học viễn tưởng, nơi máy móc tiếp quản thế giới. Tuy nhiên, những bậc thầy về công nghệ như Elon Musk tin rằng ASI sẽ thống trị thế giới vào năm 2040!

    Bạn nghĩ gì về Siêu trí tuệ nhân tạo? Hãy cho tôi biết suy nghĩ của bạn trong phần bình luận.

    Trước khi đi sâu hơn, hãy để tôi giải thích một quan niệm sai lầm rất phổ biến. Mọi người mới bắt đầu đều hỏi tôi những câu này:

    Sự khác biệt giữa AI với Học máy và Học sâu là gì?

    Là AI giống như ML?

    Hãy phân tích nó:

    AI vs ML vs DL (Artificial Intelligence vs Machine Learning vs Deep Learning)

    < p> Mọi người có xu hướng nghĩ rằng Trí tuệ nhân tạo, Học máy và Học sâu là giống nhau vì chúng có các ứng dụng chung. Ví dụ: Siri là ứng dụng của AI, Máy học và Học sâu.

    Vậy những công nghệ này có liên quan như thế nào?

    • Trí tuệ nhân tạo là khoa học về việc khiến máy móc bắt chước hành vi của con người.
    • Máy học là một tập hợp con của Trí tuệ nhân tạo (AI) tập trung vào việc giúp máy móc đưa ra quyết định bằng cách cung cấp dữ liệu cho chúng.
    • Học sâu là một tập hợp con của Học máy sử dụng khái niệm mạng nơ-ron để giải quyết các vấn đề phức tạp.

    Tóm lại, AI, Học máy và Học sâu là các lĩnh vực liên kết với nhau. Học máy và Học sâu hỗ trợ Trí tuệ nhân tạo bằng cách cung cấp một tập hợp các thuật toán và mạng nơ-ron để giải quyết các vấn đề theo hướng dữ liệu.

    Tuy nhiên, Trí tuệ nhân tạo không chỉ giới hạn ở Học máy và Học sâu. Nó bao gồm nhiều lĩnh vực bao gồm, Xử lý ngôn ngữ tự nhiên (NLP), phát hiện đối tượng, thị giác máy tính, rô bốt, hệ thống chuyên gia, v.v. “> bắt đầu với Học máy.

    Khái niệm cơ bản về Học máy

    Thuật ngữ Học máy lần đầu tiên được đặt ra bởi Arthur Samuel vào năm 1959. Nhìn lại, năm đó có lẽ là năm quan trọng nhất về mặt tiến bộ công nghệ.

    Nói một cách dễ hiểu,

    Học máy là một tập hợp con của Trí tuệ nhân tạo (AI) cung cấp cho máy móc khả năng để học tự động bằng cách cung cấp cho nó hàng tấn dữ liệu & amp; cho phép nó cải thiện thông qua trải nghiệm. Do đó, Học máy là một phương pháp giúp Máy móc giải quyết vấn đề bằng cách đạt được khả năng tư duy.

    Nhưng làm cách nào để máy móc có thể đưa ra quyết định?

    Nếu bạn cung cấp cho máy một lượng lớn dữ liệu, nó sẽ học cách diễn giải, xử lý và phân tích dữ liệu này bằng cách sử dụng Thuật toán học máy.

    Học máy là gì – Trí tuệ nhân tạo với Python – Edureka

    Để tóm tắt lại, hãy xem hình trên:

    • Quá trình Máy học bắt đầu bằng cách cung cấp cho máy rất nhiều dữ liệu.
    • Sau đó, máy được đào tạo về dữ liệu này, để phát hiện thông tin chi tiết và các mẫu ẩn.
    • Những thông tin chi tiết này được sử dụng để xây dựng Mô hình học máy bằng cách sử dụng một thuật toán nhằm giải quyết vấn đề.

    Bây giờ chúng ta đã biết Máy học là gì, hãy xem xét các cách khác nhau mà máy móc có thể học.

    Các loại máy học

    Máy có thể học cách giải quyết vấn đề bằng cách thực hiện theo bất kỳ một trong ba cách tiếp cận sau:

    1. Học tập có giám sát

    2. Học tập không giám sát

    3. < li>

      Học tập củng cố

    Học tập có giám sát

    Học tập có giám sát là một kỹ thuật mà chúng tôi dạy hoặc đào tạo máy sử dụng dữ liệu được gắn nhãn rõ ràng.

    Để hiểu về Học tập có giám sát, chúng ta hãy xem xét một phép loại suy. Khi còn nhỏ, tất cả chúng ta đều cần hướng dẫn để giải các bài toán. Các giáo viên của chúng tôi đã giúp chúng tôi hiểu bổ sung là gì và cách thực hiện.

    Tương tự, bạn có thể coi học tập có giám sát như một loại Học máy có hướng dẫn. Tập dữ liệu được gắn nhãn là giáo viên sẽ huấn luyện bạn hiểu các mẫu trong dữ liệu. Tập dữ liệu được gắn nhãn không là gì ngoài tập dữ liệu đào tạo.

    Học có giám sát – Trí tuệ nhân tạo với Python – Edureka

    Hãy xem xét hình trên. Ở đây, chúng tôi đang cung cấp cho máy các hình ảnh Tom và Jerry và mục đích là để máy xác định và phân loại các hình ảnh thành hai nhóm (hình ảnh Tom và hình ảnh Jerry).

    Tập dữ liệu đào tạo được cung cấp cho mô hình được gắn nhãn, như trong, chúng tôi đang nói với máy, “đây là ngoại hình của Tom và đây là Jerry”. Làm như vậy, bạn đang đào tạo máy bằng cách sử dụng dữ liệu được gắn nhãn. Trong Học tập có giám sát, có một giai đoạn đào tạo được xác định rõ ràng được thực hiện với sự trợ giúp của dữ liệu được gắn nhãn.

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

    Học tập không giám sát bao gồm đào tạo bằng cách sử dụng dữ liệu và cho phép mô hình hoạt động dựa trên thông tin đó mà không cần hướng dẫn.

    Hãy coi việc học không có giám sát như một đứa trẻ thông minh học mà không cần bất kỳ hướng dẫn nào. Trong loại Máy học này, mô hình không được cung cấp dữ liệu được gắn nhãn, vì trong mô hình không có manh mối nào cho thấy ‘hình ảnh này là Tom và đây là Jerry’, nó tự tìm ra các mẫu và sự khác biệt giữa Tom và Jerry bằng cách lấy hàng tấn dữ liệu.

    Học không giám sát – Trí tuệ nhân tạo với Python – Edureka

    Ví dụ: nó xác định các đặc điểm nổi bật của Tom như tai nhọn, kích thước lớn hơn, v.v., để hiểu rằng hình ảnh này thuộc loại 1. Tương tự, nó tìm thấy các đặc điểm như vậy trong Jerry và biết rằng hình ảnh này thuộc loại 2.

    Do đó, nó phân loại các hình ảnh thành hai lớp khác nhau mà không cần biết Tom hay Jerry là ai. là.

    Học tập củng cố

    Học tập củng cố là một phần của Học máy trong đó tác nhân được đưa vào một môi trường và anh ta học cách cư xử trong môi trường này bằng cách thực hiện một số hành động nhất định và quan sát phần thưởng mà nó nhận được từ những hành động đó.

    Hãy tưởng tượng rằng bạn bị bỏ rơi tại một địa điểm biệt lập nd!

    Bạn sẽ làm gì?

    Hoảng sợ? Vâng, tất nhiên, ban đầu tất cả chúng ta đều sẽ như vậy. Nhưng thời gian trôi qua, bạn sẽ học được cách sống trên đảo. Bạn sẽ khám phá môi trường, hiểu điều kiện khí hậu, loại thực phẩm phát triển ở đó, sự nguy hiểm của hòn đảo, v.v.

    Đây chính xác là cách hoạt động của Reinforcement Learning, nó liên quan đến một Tác nhân (bạn, mắc kẹt trên hòn đảo) được đặt trong một môi trường không xác định (hòn đảo), nơi anh ta phải học hỏi bằng cách quan sát và thực hiện các hành động dẫn đến phần thưởng.

    Học tăng cường chủ yếu được sử dụng trong các lĩnh vực Máy học nâng cao như bản thân lái xe ô tô, AplhaGo, v.v. Vì vậy, tổng hợp các loại Máy học.

    Bây giờ, hãy xem loại các vấn đề được giải quyết bằng cách sử dụng Học máy.

    Máy học có thể giải quyết những vấn đề gì?

    Có ba danh mục chính trong số các vấn đề có thể được giải quyết bằng Học máy:

    Hồi quy là gì?

    Trong loại bài toán này, đầu ra là một đại lượng liên tục. Ví dụ, nếu bạn muốn dự đoán tốc độ của một chiếc ô tô trong quãng đường, đó là một bài toán Hồi quy. Các vấn đề hồi quy có thể được giải quyết bằng cách sử dụng các thuật toán Học có giám sát như Hồi quy tuyến tính.

    Phân loại là gì?

    Trong loại này, đầu ra là một giá trị phân loại. Phân loại email thành hai lớp, spam và không spam là một vấn đề phân loại có thể được giải quyết bằng cách sử dụng các thuật toán phân loại Supervised Learning như Support Vector Machines, Naive Bayes, Logistic Regression, K Nearest Neighbor, v.v.

    Phân cụm là gì?

    Loại vấn đề này liên quan đến việc gán đầu vào thành hai hoặc nhiều cụm dựa trên tính năng tương tự. Ví dụ: nhóm người xem thành các nhóm tương tự dựa trên sở thích, độ tuổi, địa lý, v.v. của họ có thể được thực hiện bằng cách sử dụng thuật toán Học không giám sát như K-Means Clustering.

    Đây là bảng tổng hợp sự khác biệt giữa Hồi quy, Phân loại và phân cụm:

    Hồi quy so với Phân loại và phân cụm – Trí tuệ nhân tạo với Python – Edureka

    Bây giờ chúng ta hãy xem về cách hoạt động của quy trình Học máy.

    Các bước của quy trình Học máy

    Quy trình Học máy liên quan đến việc xây dựng một mô hình Dự đoán có thể được sử dụng để tìm giải pháp cho một Tuyên bố vấn đề.

    Để hiểu quy trình Học máy, hãy giả sử rằng bạn đã gặp một vấn đề cần được giải quyết bằng cách sử dụng Học máy.

    Vấn đề là dự đoán sự xuất hiện của mưa ở khu vực địa phương của bạn bằng cách sử dụng Học máy.

    Các bước dưới đây được thực hiện trong quy trình Học máy:

    Bước 1: Xác định mục tiêu của Tuyên bố Vấn đề

    Ở bước này, chúng ta phải hiểu chính xác những gì cần được dự đoán. Trong trường hợp của chúng tôi, mục tiêu là dự đoán khả năng mưa bằng cách nghiên cứu điều kiện thời tiết.

    Điều cần thiết là ghi nhớ loại dữ liệu nào có thể được sử dụng để giải quyết vấn đề này hoặc loại phương pháp tiếp cận. bạn phải làm theo để tìm ra giải pháp.

    Bước 2: Thu thập dữ liệu

    Ở giai đoạn này, bạn phải đặt ra những câu hỏi như,

    • Loại dữ liệu nào cần thiết để giải quyết vấn đề này?
    • Dữ liệu có sẵn không?
    • Làm cách nào để lấy dữ liệu?

    Sau khi bạn biết các loại dữ liệu bắt buộc, bạn phải hiểu cách bạn có thể lấy dữ liệu này. Việc thu thập dữ liệu có thể được thực hiện theo cách thủ công hoặc bằng cách tìm kiếm trên web.

    Tuy nhiên, nếu bạn là người mới bắt đầu và chỉ muốn tìm hiểu Machine Learning, bạn không phải lo lắng về việc lấy dữ liệu. Có hàng nghìn tài nguyên dữ liệu trên web, bạn chỉ cần tải xuống bộ dữ liệu và bắt đầu.

    Quay lại vấn đề trước đây, dữ liệu cần thiết cho dự báo thời tiết bao gồm các chỉ số như độ ẩm, nhiệt độ , áp lực, địa phương, bạn có sống ở trạm trên đồi hay không, v.v.

    Dữ liệu đó phải được thu thập và lưu trữ để phân tích.

    Bước 3: Chuẩn bị dữ liệu < / strong>

    Dữ liệu bạn thu thập được hầu như không có định dạng đúng. Bạn sẽ gặp rất nhiều mâu thuẫn trong tập dữ liệu như giá trị bị thiếu, biến dư thừa, giá trị trùng lặp, v.v.

    Việc loại bỏ những điểm mâu thuẫn như vậy là rất cần thiết vì chúng có thể dẫn đến tính toán và dự đoán sai. Do đó, ở giai đoạn này, bạn quét tập dữ liệu xem có bất kỳ điểm mâu thuẫn nào không và khắc phục chúng ngay sau đó.

    Bước 4: Phân tích dữ liệu khám phá

    Lấy kính thám tử của bạn bởi vì giai đoạn này là tất cả về việc đi sâu vào dữ liệu và tìm ra tất cả bí ẩn dữ liệu ẩn.

    EDA hoặc Phân tích dữ liệu khám phá là giai đoạn động não của Học máy. Khám phá dữ liệu liên quan đến việc hiểu các mẫu và xu hướng trong dữ liệu. Ở giai đoạn này, tất cả những hiểu biết hữu ích sẽ được rút ra và mối tương quan giữa các biến số được hiểu.

    Ví dụ: trong trường hợp dự đoán lượng mưa, chúng tôi biết rằng khả năng xảy ra mưa rất lớn nếu nhiệt độ giảm. Thấp. Những mối tương quan như vậy phải được hiểu và lập bản đồ ở giai đoạn này.

    Bước 5: Xây dựng mô hình học máy

    Tất cả thông tin chi tiết và mô hình thu được trong quá trình Khám phá dữ liệu là được sử dụng để xây dựng Mô hình Học máy. Giai đoạn này luôn bắt đầu bằng cách chia tập dữ liệu thành hai phần, dữ liệu đào tạo và dữ liệu thử nghiệm.

    Dữ liệu đào tạo sẽ được sử dụng để xây dựng và phân tích mô hình. Logic của mô hình dựa trên Thuật toán học máy đang được triển khai.

    Trong trường hợp dự đoán lượng mưa, vì kết quả đầu ra sẽ ở dạng Đúng (nếu ngày mai trời mưa) hoặc Sai (ngày mai trời không mưa), chúng ta có thể sử dụng Thuật toán phân loại như Hồi quy lôgic hoặc Cây quyết định.

    Việc chọn thuật toán phù hợp tùy thuộc vào loại vấn đề bạn đang cố gắng giải quyết, tập dữ liệu và cấp độ mức độ phức tạp của vấn đề.

    Bước 6: Đánh giá mô hình & amp; Tối ưu hóa

    Sau khi xây dựng mô hình bằng cách sử dụng tập dữ liệu đào tạo, cuối cùng đã đến lúc đưa mô hình vào thử nghiệm.

    Tập dữ liệu thử nghiệm được sử dụng để kiểm tra hiệu quả của mô hình và mức độ chính xác của nó có thể dự đoán kết quả.

    Sau khi tính được độ chính xác, bạn có thể thực hiện thêm bất kỳ cải tiến nào trong mô hình ở giai đoạn này. Các phương pháp như điều chỉnh tham số và xác thực chéo có thể được sử dụng để cải thiện hiệu suất của mô hình.

    Bước 7: Dự đoán

    Sau khi mô hình được đánh giá và được cải thiện, nó cuối cùng được sử dụng để đưa ra dự đoán. Đầu ra cuối cùng có thể là một biến số Phân loại (ví dụ: Đúng hoặc Sai) hoặc nó có thể là một Số lượng liên tục (ví dụ: giá trị dự đoán của một cổ phiếu).

    Trong trường hợp của chúng tôi, để dự đoán sự xuất hiện của lượng mưa , đầu ra sẽ là một biến phân loại.

    Đó là toàn bộ quá trình Học máy.

    Trong phần tiếp theo, chúng ta sẽ thảo luận về các loại Thuật toán Học máy khác nhau.

    Thuật toán học máy

    Thuật toán học máy là logic cơ bản đằng sau mỗi mô hình Học máy. Các thuật toán này dựa trên các khái niệm đơn giản như Thống kê và Xác suất.

    Theo dõi các blog được đề cập bên dưới để hiểu Toán học và số liệu thống kê đằng sau Thuật toán Máy học:

    Thuật toán học máy – Trí tuệ nhân tạo với Python – Edureka

    Hình trên cho thấy các thuật toán khác nhau được sử dụng để giải quyết một vấn đề bằng Học máy.

    Học có giám sát có thể được sử dụng để giải quyết hai loại của các vấn đề về Học máy:

    1. Hồi quy
    2. Phân loại

    Để giải quyết các vấn đề Hồi quy, bạn có thể sử dụng Thuật toán hồi quy tuyến tính nổi tiếng. Đây là Thuật toán hồi quy tuyến tính từ blog Scratch sẽ giúp bạn hiểu cách hoạt động của nó.

    Các vấn đề phân loại có thể được giải quyết bằng cách sử dụng cách sau Thuật toán phân loại:

    Học không giám sát có thể được sử dụng để giải các bài toán phân cụm và liên kết. Một trong những thuật toán phân cụm nổi tiếng là thuật toán K-means Clustering.

    Bạn có thể xem video này trên K-means clustering để tìm hiểu thêm về nó.

    K Means Thuật toán phân cụm | Edureka

    Video Edureka này sẽ giúp bạn tìm hiểu các khái niệm về phân cụm K-Means và cách triển khai nó bằng cách sử dụng python.

    Học tăng cường có thể được sử dụng để giải quyết các vấn đề dựa trên phần thưởng. Thuật toán Q-learning nổi tiếng thường được sử dụng để giải quyết các vấn đề về Học tăng cường.

    Đây là video về Học tăng cường bao gồm tất cả các khái niệm quan trọng về Học tăng cường cùng với cách triển khai thực tế của Q-learning bằng Python. < / p>

    Hướng dẫn học củng cố | Edureka

    Trong video này, bạn sẽ hiểu sâu hơn về cách học tăng cường được sử dụng trong thế giới thực.

    Bây giờ để hiểu rõ hơn về toàn bộ quy trình Học máy, hãy thực hiện triển khai thực tế Học máy bằng Python.

    Học máy với Python

    Trong phần này, chúng ta sẽ triển khai Học máy bằng Python. Vậy hãy bắt đầu.

    Tuyên bố vấn đề: Để xây dựng mô hình Học máy dự đoán liệu ngày mai trời có mưa hay không bằng cách nghiên cứu dữ liệu trong quá khứ.

    < strong> Mô tả tập dữ liệu: Tập dữ liệu này chứa khoảng 145 nghìn quan sát về điều kiện thời tiết hàng ngày được quan sát từ nhiều trạm thời tiết của Úc. Tập dữ liệu có khoảng 24 tính năng và chúng tôi sẽ sử dụng 23 tính năng (biến Dự đoán) để dự đoán biến mục tiêu, đó là “RainTomorrow”.

    Biến mục tiêu này (RainTomorrow) sẽ lưu trữ hai giá trị: < / p>

    1. Có: Biểu thị rằng ngày mai trời sẽ mưa
    2. Không: Biểu thị rằng ngày mai trời sẽ không mưa

    Do đó, đây rõ ràng là một phân loại vấn đề. Mô hình Học máy sẽ phân loại kết quả đầu ra thành 2 lớp, CÓ hoặc KHÔNG.

    Logic: Để xây dựng các mô hình Phân loại nhằm dự đoán liệu ngày mai trời có mưa hay không. điều kiện thời tiết.

    Bây giờ mục tiêu đã rõ ràng, chúng ta hãy để bộ não của chúng ta hoạt động và bắt đầu viết mã.

    Bước 1: Nhập các thư viện cần thiết

    # Đối với đại số tuyến tính
    nhập numpy dưới dạng np
    # Để xử lý dữ liệu
    nhập gấu trúc dưới dạng pd
    

    Bước 2: Tải tập dữ liệu

    # Tải tập dữ liệu
    df = pd.read_csv ('... Desktop / weatherAUS.csv')
    # Hiển thị hình dạng của tập dữ liệu
    print ('Kích thước của khung dữ liệu thời tiết là:', df.shape)
    # Hiển thị dữ liệu
    in (df [0: 5])
    
    Kích thước của khung dữ liệu thời tiết là: (145460, 24)
            Ngày Địa điểm MinTemp ... RainToday RISK_MM RainTomorrow
    0 2008-12-01 Albury 13,4 ... Không 0,0 Không
    1 2008-12-02 Albury 7.4 ... Không 0.0 Không
    2 2008-12-03 Albury 12,9 ... Không 0,0 Không
    3 2008-12-04 Albury 9.2 ... Không 1.0 Không
    4 2008-12-05 Albury 17,5 ... Không 0,2 Không
    
    

    Bước 3: Xử lý trước dữ liệu

    
    # Kiểm tra giá trị null
    print (df.count (). sort_values ​​())
    
    [5 hàng x 24 cột]
    Sunshine 75625
    Bốc hơi 82670
    Cloud3pm 86102
    Cloud9am 89572
    Áp suất 9 giờ sáng 130395
    Áp suất3pm 130432
    WindDir9am 134894
    WindGustDir 135134
    WindGustSpeed ​​135197
    Độ ẩm3pm 140953
    WindDir3pm 141232
    Temp3pm 141851
    RISK_MM 142193
    RainTomorrow 142193
    RainToday 142199
    Lượng mưa 142199
    WindSpeed3pm 142398
    Độ ẩm 9 giờ sáng 142806
    Temp9am 143693
    WindSpeed9am 143693
    MinTemp 143975
    MaxTemp 144199
    Vị trí 145460
    Ngày 145460
    dtype: int64
    
    

    Lưu ý kết quả, nó cho thấy rằng bốn cột đầu tiên có hơn 40% giá trị null, do đó, tốt nhất là chúng ta nên loại bỏ các cột này.

    Trong quá trình xử lý trước dữ liệu. luôn luôn cần thiết để loại bỏ các biến không có ý nghĩa. Dữ liệu không cần thiết sẽ chỉ làm tăng tính toán của chúng tôi. Do đó, chúng tôi sẽ xóa biến “vị trí” và biến “ngày” vì chúng không có ý nghĩa trong việc dự đoán thời tiết.

    Chúng tôi cũng sẽ xóa biến “RISK_MM” vì chúng tôi muốn dự đoán “RainTomorrow” và RISK_MM (lượng mưa vào ngày hôm sau) có thể làm rò rỉ một số thông tin cho mô hình của chúng tôi.

    
    df = df.drop (column = ['Sunshine', 'Evaporation', 'Cloud3pm', 'Cloud9am', 'Location', 'RISK_MM', 'Date'], axis = 1)
    print (df.shape)
    
    (145460, 17)
    
    

    Tiếp theo, chúng tôi sẽ xóa tất cả các giá trị null trong khung dữ liệu của chúng tôi.

    
    #Removing giá trị null
    df = df.dropna (how = 'any')
    print (df.shape)
    
    (112925, 17)
    
    

    Sau khi loại bỏ các giá trị null, chúng tôi cũng phải kiểm tra tập dữ liệu của mình để tìm bất kỳ giá trị ngoại lệ nào. Giá trị ngoại lai là một điểm dữ liệu khác biệt đáng kể so với các quan sát khác. Các giá trị ngoại lệ thường xảy ra do tính toán sai khi thu thập dữ liệu.

    Trong đoạn mã dưới đây, chúng tôi sẽ loại bỏ các giá trị ngoại lệ:

    
    từ thống kê nhập scipy
    z = np.abs (stats.zscore (df._get_numeric_data ()))
    print (z)
    df = df [(z & lt; 3) .all (axis = 1)]
    print (df.shape)
    
    [[0,11756741 0,10822071 0,20666127 ... 1,14245477 0,08843526 0,04787026]
    [0,84180219 0,20684494 0,27640495 ... 1,04184813 0,04122846 0,31776848]
    [0,03761995 0,29277194 0,27640495 ... 0,91249673 0,55672435 0,15688743]
    ...
    [1.44940294 0.23548728 0.27640495 ... 0.58223051 1.03257127 0.34701958]
    [1,16159206 0,46462594 0,27640495 ... 0,25166583 0,78080166 0,58102838]
    [0,77784422 0,4789471 0,27640495 ... 0,2085487 0,37167606 0,56640283]]
    (107868, 17)
    
    

    Tiếp theo, chúng tôi sẽ gán ‘0s’ và ‘1s’ thay cho ‘CÓ’ và ‘KHÔNG’.

    
    # Thay đổi có và không thành 1 và 0 đối với biến RainToday và RainTomorrow
    df ['RainToday']. Replace ({'No': 0, 'Yes': 1}, inplace = True)
    df ['RainTomorrow']. Replace ({'No': 0, 'Yes': 1}, inplace = True)
    
    

    Bây giờ đã đến lúc chuẩn hóa dữ liệu để tránh bất kỳ lỗi nào trong khi dự đoán kết quả. Để làm điều này, chúng ta có thể sử dụng hàm MinMaxScaler có trong thư viện sklearn.

    
    từ quá trình tiền xử lý nhập khẩu sklearn
    scaler = tiền xử lý.MinMaxScaler ()
    scaler.fit (df)
    df = pd.DataFrame (scaler.transform (df), index = df.index, cột = df.columns)
    df.iloc [4:10]
    
    MinTemp MaxTemp Lượng mưa ... WindDir9am_W WindDir9am_WNW WindDir9am_WSW
    4 0,628342 0,696296 0,035714 ... 0,0 0,0 0,0
    5 0,550802 0,632099 0,007143 ... 1,0 0,0 0,0
    6 0,542781 0,516049 0,000000 ... 0,0 0,0 0,0
    7 0,366310 0,558025 0,000000 ... 0,0 0,0 0,0
    8 0,419786 0,686420 0,000000 ... 0,0 0,0 0,0
    9 0,510695 0,641975 0,050000 ... 0,0 0,0 0,0
    
    [6 hàng x 62 cột]
    
    

    Bước 4: Phân tích dữ liệu khám phá (EDA)

    Bây giờ chúng tôi đã hoàn tất việc xử lý trước tập dữ liệu, đã đến lúc kiểm tra việc thực hiện phân tích và xác định các biến quan trọng sẽ giúp chúng ta dự đoán kết quả. Để làm điều này, chúng tôi sẽ sử dụng chức năng SelectKBest có trong thư viện sklearn:

    
    # Sử dụng SelectKBest để nhận các tính năng hàng đầu!
    từ sklearn.feature_selection nhập SelectKBest, chi2
    X = df.loc [:, df.columns! = 'RainTomorrow']
    y = df [['RainTomorrow']]
    selector = SelectKBest (chi2, k = 3)
    selector.fit (X, y)
    X_new = selector.transform (X)
    print (X.columns [selector.get_support (indices = True)])
    
    Chỉ mục (['Lượng mưa', 'Humidity3pm', 'RainToday'], dtype = 'object')
    
    

    Kết quả cung cấp cho chúng ta ba biến dự báo quan trọng nhất:

    1. Lượng mưa

    2. Độ ẩm3pm

    3. RainToday

    Mục đích chính của bản trình diễn này là giúp bạn hiểu cách hoạt động của Máy học, do đó, để đơn giản hóa các tính toán của chúng tôi. sẽ chỉ chỉ định một trong các biến quan trọng này làm đầu vào.

    
    # Các tính năng quan trọng được đưa vào khung dữ liệu
    df = df [['Humidity3pm', 'Rainfall', 'RainToday', 'RainTomorrow']]
    
    # Để đơn giản hóa việc tính toán, chúng tôi sẽ chỉ sử dụng một tính năng (Humidity3pm) để xây dựng mô hình
    
    X = df [['Humidity3pm']]
    y = df [['RainTomorrow']]
    
    

    Trong đoạn mã trên, ‘X’ và ‘y’ lần lượt biểu thị đầu vào và đầu ra.

    Bước 5: Xây dựng Mô hình Học máy

    Ở bước này, chúng tôi sẽ xây dựng mô hình Học máy bằng cách sử dụng tập dữ liệu đào tạo và đánh giá hiệu quả của mô hình bằng cách sử dụng tập dữ liệu thử nghiệm.

    Chúng tôi sẽ xây dựng mô hình phân loại, bằng cách sử dụng các thuật toán sau:

    1. Hồi quy logistic
    2. Rừng ngẫu nhiên
    3. Cây quyết định
    4. Máy vectơ hỗ trợ < / li>

    Dưới đây là đoạn mã cho từng mô hình phân loại này:

    Hồi quy logistic

    
    #Logistic Regression
    từ sklearn.linear_model import LogisticRegression
    từ sklearn.model_selection nhập train_test_split
    từ sklearn.metrics nhập precision_score
    thời gian nhập khẩu
    
    # Tính toán độ chính xác và thời gian thực hiện bởi trình phân loại
    t0 = time.time ()
    # Nối dữ liệu
    X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0,25)
    clf_logreg = LogisticRegression (random_state = 0)
    # Xây dựng mô hình bằng cách sử dụng tập dữ liệu đào tạo
    clf_logreg.fit (X_train, y_train)
    
    # Đánh giá mô hình bằng cách sử dụng tập dữ liệu thử nghiệm
    y_pred = clf_logreg.p Dự đoán (X_test)
    score = precision_score (y_test, y_pred)
    
    # In độ chính xác và thời gian thực hiện bởi trình phân loại
    print ('Độ chính xác khi sử dụng Logistic Regression:', điểm)
    print ('Thời gian sử dụng hồi quy Logistic:', time.time () - t0)
    
    Độ chính xác khi sử dụng hồi quy logistic: 0,8330181332740015
    Thời gian sử dụng Logistic Regression: 0.1741015911102295
    
    

    Công cụ phân loại rừng ngẫu nhiên

    
    # Random Forest Classifier
    từ sklearn.ensemble nhập RandomForestClassifier
    từ sklearn.model_selection nhập train_test_split
    
    # Tính toán độ chính xác và thời gian thực hiện bởi trình phân loại
    t0 = time.time ()
    # Nối dữ liệu
    X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0,25)
    clf_rf = RandomForestClassifier (n_estimators = 100, max_depth = 4, random_state = 0)
    # Xây dựng mô hình bằng cách sử dụng tập dữ liệu đào tạo
    clf_rf.fit (X_train, y_train)
    
    # Đánh giá mô hình bằng cách sử dụng tập dữ liệu thử nghiệm
    y_pred = clf_rf.p Dự đoán (X_test)
    score = precision_score (y_test, y_pred)
    
    # In độ chính xác và thời gian thực hiện bởi trình phân loại
    print ('Độ chính xác khi sử dụng Bộ phân loại rừng ngẫu nhiên:', điểm số)
    print ('Thời gian sử dụng Bộ phân loại rừng ngẫu nhiên:', time.time () - t0)
    
    Độ chính xác khi sử dụng Bộ phân loại rừng ngẫu nhiên: 0,8358363926280269
    Thời gian sử dụng Bộ phân loại rừng ngẫu nhiên: 3.7179694175720215
    
    

    Bộ phân loại cây quyết định

    
    # Trình phân loại cây quyết định
    từ sklearn.tree import Quyết địnhreeClassifier
    từ sklearn.model_selection nhập train_test_split
    
    # Tính toán độ chính xác và thời gian thực hiện bởi trình phân loại
    t0 = time.time ()
    # Nối dữ liệu
    X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0,25)
    clf_dt = DecisionTreeClassifier (random_state = 0)
    # Xây dựng mô hình bằng cách sử dụng tập dữ liệu đào tạo
    clf_dt.fit (X_train, y_train)
    
    # Đánh giá mô hình bằng cách sử dụng tập dữ liệu thử nghiệm
    y_pred = clf_dt.p Dự đoán (X_test)
    score = precision_score (y_test, y_pred)
    
    # In độ chính xác và thời gian thực hiện bởi trình phân loại
    print ('Độ chính xác khi sử dụng Công cụ phân loại cây quyết định:', điểm số)
    print ('Thời gian sử dụng Bộ phân loại Cây Quyết định:', time.time () - t0)
    
    Độ chính xác khi sử dụng Công cụ phân loại cây quyết định: 0,831423591797382
    Thời gian sử dụng Công cụ phân loại cây quyết định: 0.0849456787109375
    
    

    Máy hỗ trợ vectơ

    
    # Hỗ trợ Máy Vector
    từ sklearn nhập svm
    từ sklearn.model_selection nhập train_test_split
    
    # Tính toán độ chính xác và thời gian thực hiện bởi trình phân loại
    t0 = time.time ()
    # Nối dữ liệu
    X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0,25)
    clf_svc = svm.SVC (kernel = 'tuyến tính')
    
    # Xây dựng mô hình bằng cách sử dụng tập dữ liệu đào tạo
    clf_svc.fit (X_train, y_train)
    
    # Đánh giá mô hình bằng cách sử dụng tập dữ liệu thử nghiệm
    y_pred = clf_svc.p Dự đoán (X_test)
    score = precision_score (y_test, y_pred)
    
    # In độ chính xác và thời gian thực hiện bởi trình phân loại
    print ('Độ chính xác khi sử dụng Máy hỗ trợ Vector:', điểm số)
    print ('Thời gian thực hiện bằng Máy hỗ trợ Vector:', time.time () - t0)
    
    Độ chính xác khi sử dụng Máy hỗ trợ Vector: 0,7886676308080246
    Thời gian sử dụng Máy hỗ trợ Vector: 88.42247271537781
    
    

    Tất cả các mô hình phân loại đều cho chúng tôi điểm chính xác khoảng 83-84% ngoại trừ Máy hỗ trợ véc tơ. Xem xét kích thước tập dữ liệu của chúng tôi, độ chính xác là khá tốt.

    Vì vậy, hãy tự khen mình vì giờ đây bạn đã biết cách giải quyết vấn đề bằng cách sử dụng Máy học.

    Để tìm hiểu thêm về Học máy, hãy đọc các blog này:

    Bây giờ chúng ta hãy xem xét một khái niệm nâng cao hơn được gọi là Học sâu.

    Trước khi chúng ta hiểu Deep Learning là gì, hãy hiểu những hạn chế của Học máy. Những hạn chế này đã làm nảy sinh khái niệm Học sâu.

    Hạn chế của Học máy

    Sau đây là những hạn chế của Học máy:

    < ol>

  • Máy học không có khả năng xử lý và xử lý dữ liệu chiều cao.
  • Nó không thể được sử dụng trong nhận dạng hình ảnh phát hiện đối tượng vì chúng yêu cầu triển khai dữ liệu chiều cao
  • Một thách thức lớn khác trong Học máy là nói cho máy biết những tính năng quan trọng mà nó cần tìm kiếm để dự đoán chính xác kết quả. Chính quá trình này được gọi là trích xuất đối tượng địa lý . Trích xuất tính năng là một quy trình thủ công trong Học máy.
  • Các hạn chế trên có thể được giải quyết bằng cách sử dụng Học sâu.

    Tại sao nên học sâu?

    • Học sâu là một trong những phương pháp duy nhất mà chúng tôi có thể vượt qua những thách thức trong việc khai thác tính năng. Điều này là do các mô hình học sâu có khả năng tự học cách tập trung vào các tính năng phù hợp, yêu cầu sự can thiệp tối thiểu của con người.

    • Học sâu chủ yếu được sử dụng để xử lý dữ liệu nhiều chiều. Nó dựa trên khái niệm Mạng thần kinh và thường được sử dụng để phát hiện đối tượng và xử lý hình ảnh và .

    Bây giờ chúng ta hãy hiểu cách hoạt động của Học sâu.

    Học sâu hoạt động như thế nào?

    Học sâu mô phỏng thành phần cơ bản của não người được gọi là não tế bào hoặc một tế bào thần kinh. Lấy cảm hứng từ một tế bào thần kinh, một tế bào thần kinh nhân tạo đã được phát triển.

    Học sâu dựa trên chức năng của một tế bào thần kinh sinh học, vì vậy, hãy hiểu cách chúng tôi bắt chước chức năng này trong tế bào thần kinh nhân tạo (còn được gọi là tế bào cảm thụ):

    Neuron sinh học – Trí tuệ nhân tạo với Python – Edureka

    • Trong một neuron sinh học, các đuôi gai được sử dụng để nhận đầu vào. Các đầu vào này được tổng hợp trong thân tế bào và thông qua Axon, nó được chuyển cho tế bào thần kinh tiếp theo.
    • Tương tự như tế bào thần kinh sinh học, một tế bào cảm thụ nhận nhiều đầu vào, áp dụng các phép biến đổi và chức năng khác nhau và cung cấp đầu ra .
    • Bộ não con người bao gồm nhiều tế bào thần kinh kết nối được gọi là mạng thần kinh, tương tự, bằng cách kết hợp nhiều perceptron, chúng tôi đã phát triển cái được gọi là Mạng nơ-ron sâu.

    Bây giờ chúng ta hãy hiểu chính xác Học sâu là gì.

    Học sâu là gì?

    “Học sâu là một tập hợp các kỹ thuật máy học thống kê được sử dụng để tìm hiểu phân cấp tính năng dựa trên
    khái niệm về mạng nơ-ron nhân tạo.”

    Một mạng nơ-ron sâu bao gồm những điều sau đây các lớp:

    1. Lớp đầu vào
    2. Lớp ẩn
    3. Lớp đầu ra

    Học sâu là gì – Trí tuệ nhân tạo với Python – Ed ureka

    Trong hình trên,

    • Lớp đầu tiên là lớp đầu vào nhận tất cả các đầu vào
    • Lớp cuối cùng là lớp đầu ra. cung cấp kết quả đầu ra mong muốn
    • Tất cả các lớp ở giữa các lớp này được gọi là lớp ẩn.
    • Có thể có n số lớp ẩn và số lớp ẩn và số lượng perceptron trong mỗi lớp sẽ hoàn toàn phụ thuộc vào trường hợp sử dụng mà bạn đang cố gắng giải quyết.

    Học sâu được sử dụng trong các trường hợp sử dụng mang tính tính toán cao như Xác minh khuôn mặt, ô tô tự lái, v.v. Hãy hiểu tầm quan trọng của Học sâu bằng cách xem xét một trường hợp sử dụng trong thế giới thực.

    Trường hợp sử dụng Học sâu

    Hãy xem xét cách PayPal sử dụng Học sâu để xác định bất kỳ hoạt động gian lận nào có thể xảy ra. PayPal đã xử lý hơn 235 tỷ đô la thanh toán từ bốn tỷ giao dịch của hơn 170 triệu khách hàng.

    PayPal đã sử dụng thuật toán Học máy và Học sâu để khai thác dữ liệu từ lịch sử mua hàng của khách hàng ngoài việc xem xét các dạng gian lận có thể xảy ra được lưu trữ trong cơ sở dữ liệu của mình để dự đoán liệu một giao dịch cụ thể có gian lận hay không.

    Trường hợp sử dụng Học sâu – Trí tuệ nhân tạo với Python – Edureka

    Công ty có dựa vào Học sâu & amp; Công nghệ Máy học trong khoảng 10 năm. Ban đầu, nhóm giám sát gian lận sử dụng các mô hình tuyến tính, đơn giản. Nhưng trong những năm qua, công ty đã chuyển sang công nghệ Máy học tiên tiến hơn có tên là Học sâu.

    Người quản lý rủi ro gian lận và Nhà khoa học dữ liệu tại PayPal, Ke Wang, trích dẫn:

    “Những gì chúng tôi tận hưởng từ học máy tiên tiến, hiện đại hơn là khả năng tiêu thụ nhiều dữ liệu hơn, xử lý các lớp và lớp trừu tượng và có thể ‘nhìn thấy’ những thứ mà một công nghệ đơn giản hơn sẽ không thể nhìn thấy, ngay cả con người cũng không thể để xem. ”

    Một mô hình tuyến tính đơn giản có thể sử dụng khoảng 20 biến. Tuy nhiên, với công nghệ Học sâu, người ta có thể chạy hàng nghìn điểm dữ liệu.

    “Có rất nhiều sự khác biệt – bạn sẽ có thể phân tích nhiều thông tin hơn và xác định các mẫu phức tạp hơn rất nhiều”. Ke Wang cho biết.

    Do đó, bằng cách triển khai công nghệ Học sâu, PayPal cuối cùng có thể phân tích hàng triệu giao dịch để xác định bất kỳ hoạt động gian lận nào.

    Để hiểu rõ hơn về Học sâu, hãy hiểu cách hoạt động của Perceptron.

    Perceptron là gì?

    Perceptron là một mạng nơ-ron một lớp được sử dụng để phân loại dữ liệu tuyến tính. Perceptron có 4 thành phần quan trọng:

    1. Đầu vào
    2. Trọng số và độ lệch
    3. Hàm tổng hợp
    4. Hàm kích hoạt hoặc chuyển đổi

    Perceptron – Trí tuệ nhân tạo với Python – Edureka

    Logic cơ bản đằng sau một perceptron như sau:

    Các đầu vào (x) nhận được từ lớp đầu vào được nhân với trọng số w được ấn định của chúng. Sau đó, các giá trị nhân được thêm vào để tạo thành Tổng có Trọng số. Sau đó, tổng trọng số của các đầu vào và trọng số tương ứng của chúng được áp dụng cho một Chức năng Kích hoạt có liên quan. Chức năng kích hoạt ánh xạ đầu vào với đầu ra tương ứng.

    Trọng số và thiên vị trong học sâu

    Tại sao chúng ta phải gán trọng số cho mỗi đầu vào? < / p>

    Sau khi một biến đầu vào được đưa vào mạng, một giá trị được chọn ngẫu nhiên sẽ được chỉ định làm trọng số của đầu vào đó. Trọng số của mỗi điểm dữ liệu đầu vào cho biết mức độ quan trọng của đầu vào đó trong việc dự đoán kết quả.

    Mặt khác, tham số thiên vị cho phép bạn điều chỉnh đường cong chức năng kích hoạt sao cho đầu ra chính xác đạt được.

    Hàm tính tổng

    Khi các đầu vào được gán một trọng lượng nào đó, tích của đầu vào và trọng lượng tương ứng sẽ được tính. Thêm tất cả các sản phẩm này cho chúng ta Tổng Trọng số. Điều này được thực hiện bởi hàm tổng kết.

    Hàm kích hoạt

    Mục đích chính của các hàm kích hoạt là ánh xạ tổng có trọng số tới đầu ra. Các hàm kích hoạt như tanh, ReLU, sigmoid, v.v. là các ví dụ về các hàm biến đổi.

    Để tìm hiểu thêm về các chức năng của Perceptron, bạn có thể xem qua Deep Learning: Perceptron Learning Algorithm blog.

    Bây giờ chúng ta hãy hiểu khái niệm về Perceptron nhiều lớp.

    Tại sao Perceptron nhiều lớp lại được sử dụng?

    Một lớp duy nhất Các Perceptron không có khả năng xử lý dữ liệu nhiều chiều và chúng không thể được sử dụng để phân loại dữ liệu có thể phân tách phi tuyến tính.

    Do đó, các vấn đề phức tạp liên quan đến một số lượng lớn các tham số có thể được giải quyết bằng cách sử dụng Perceptron nhiều lớp.

    Perceptron nhiều lớp là gì?

    < p> Perceptron nhiều lớp là một bộ phân loại có chứa một hoặc nhiều lớp ẩn và nó dựa trên mạng nơ-ron nhân tạo Feed Feed. Trong mạng cấp nguồn cấp dữ liệu, mỗi lớp mạng nơ-ron được kết nối đầy đủ với lớp sau.

    Perceptron nhiều lớp – Trí tuệ nhân tạo với Python – Edureka < / p>

    Perceptron nhiều lớp hoạt động như thế nào?

    Trong Perceptron nhiều lớp, trọng số được chỉ định cho mỗi đầu vào ở đầu được cập nhật để giảm thiểu lỗi kết quả trong tính toán.

    Điều này được thực hiện vì ban đầu chúng tôi chỉ định ngẫu nhiên các giá trị trọng số cho mỗi đầu vào, các giá trị trọng số này rõ ràng không cho chúng ta kết quả mong muốn, do đó cần phải cập nhật các trọng số sao cho đầu ra là chính xác.

    Quá trình cập nhật trọng số và đào tạo mạng này được gọi là Quá trình lan truyền ngược.

    Sự lan truyền ngược là logic đằng sau Multilayer Perceptron. Phương pháp này được sử dụng để cập nhật trọng số theo cách mà biến đầu vào quan trọng nhất nhận được trọng số tối đa, do đó giảm lỗi trong khi tính toán kết quả đầu ra.

    Vì vậy, đó là logic đằng sau Mạng thần kinh nhân tạo. Nếu bạn muốn tìm hiểu thêm, hãy đảm bảo bạn cung cấp thông tin này, Hướng dẫn về Mạng thần kinh – Đa -Layer Perceptron đã đọc blog.

    Học sâu với Python

    Để tóm tắt cách hoạt động của Deep Learning, hãy xem cách triển khai của Deep Học với Python.

    Tuyên bố vấn đề: Để nghiên cứu tập dữ liệu tín dụng ngân hàng và xác định xem một giao dịch có gian lận hay không dựa trên dữ liệu trong quá khứ.

    < strong> Mô tả tập dữ liệu: Tập dữ liệu mô tả các giao dịch được thực hiện bởi các chủ thẻ ở Châu Âu trong những năm 2013. Nó chứa thông tin chi tiết về giao dịch trong hai ngày, nơi có 492 hoạt động gian lận trong số 284.807 giao dịch.

    Logic: Để xây dựng Mạng thần kinh có thể phân loại một giao dịch là gian lận hoặc không dựa trên các giao dịch trong quá khứ.

    Giờ bạn đã biết mục tiêu của bản trình diễn này, hãy bắt đầu với de tháng.

    Bước 1: Nhập các gói cần thiết

    
    #Import yêu cầu gói
    
    nhập numpy dưới dạng np
    nhập gấu trúc dưới dạng pd
    nhập hệ điều hành
    os.environ ["TF_CPP_MIN_LOG_LEVEL"] = "3"
    from sklearn.utils import shuffle
    nhập matplotlib.pyplot dưới dạng plt
    
    # Nhập Keras, Mật độ, Bỏ học
    từ keras.models nhập Tuần tự
    từ keras.layers nhập Mật độ
    from keras.layers import Dropout
    
    nhập matplotlib.pyplot dưới dạng plt
    nhập seaborn as sns
    từ sklearn.preprocessing nhập MinMaxScaler
    từ sklearn.metrics nhập vào độ chính xác, điểm chính xác, điểm số chính xác, điểm số thu hồi, f1_score
    , fbeta_score, phân loại_báo cáo, nhầm lẫn_matrix, chính xác_recall_curve, roc_auc_score
    , roc_curve
    
    

    Bước 2: Tải tập dữ liệu

    
    # Nhập tập dữ liệu
    df_full = pd.read_csv ('C: // Users // NeelTemp // Desktop // ai with python // creditcard.csv')
    
    # In ra 5 hàng đầu tiên của tập dữ liệu
    print (df_full.head (5))
    
        Thời gian V1 V2 V3 ... V27 V28 Loại số lượng
    0 0.0 -1.359807 -0.072781 2.536347 ... 0.133558 -0.021053 149.62 0
    1 0,0 1,191857 0,266151 0,166480 ... -0,008983 0,014724 2,69 0
    2 1,0 -1,358354 -1,340163 1,773209 ... -0,055353 -0,059752 378,66 0
    3 1,0 -0,966272 -0,185226 1,792993 ... 0,062723 0,061458 123,50 0
    4 2,0 ​​-1,188233 0,877737 1,548718 ... 0,219422 0,215153 69,99 0
    
    

    Trong mô tả ở trên, biến đích là biến ‘Lớp’. Nó có thể chứa hai giá trị:

    1. Loại 0: Biểu thị rằng giao dịch không gian lận
    2. Loại 1: Biểu thị rằng giao dịch đó là gian lận

    Phần còn lại của các biến là biến dự đoán sẽ giúp chúng tôi hiểu liệu một giao dịch có gian lận hay không.

    
    # Đếm số lượng mẫu cho mỗi lớp (Lớp 0 và Lớp 1)
    print (df_full.Class.value_counts ())
    
    0 284315
    1 492
    
    Tên: Class, dtype: int64
    
    

    Kết quả trên cho thấy rằng chúng tôi có khoảng 284 nghìn giao dịch không gian lận và ‘492’ giao dịch gian lận. Sự khác biệt giữa hai lớp là rất lớn và điều này làm cho tập dữ liệu của chúng tôi rất mất cân bằng. Do đó, chúng tôi phải lấy mẫu tập dữ liệu của mình theo cách sao cho số lượng các giao dịch gian lận và không gian lận được cân bằng.

    Để làm được điều này, chúng tôi có thể sử dụng kỹ thuật lấy mẫu thống kê có tên là Lấy mẫu phân tầng .

    Bước 3: Chuẩn bị trước dữ liệu

    
    # Sắp xếp tập dữ liệu theo "lớp" để áp dụng lấy mẫu phân tầng
    
    df_full.sort_values ​​(by = 'Class', ascending = False, inplace = True)
    
    

    Tiếp theo, chúng tôi sẽ xóa cột thời gian vì nó không cần thiết để dự đoán kết quả.

    
    # Xóa màu "Thời gian"
    df_full.drop ('Thời gian', axis = 1, inplace = True)
    
    # Tạo khung dữ liệu mới với "3000" mẫu đầu tiên
    df_sample = df_full.iloc [: 3000,:]
    
    # Bây giờ hãy đếm số lượng mẫu cho mỗi lớp
    print (df_sample.Class.value_counts ())
    
    0 2508
    1 492
    Tên: Class, dtype: int64
    
    
    
    #Randomly xáo trộn tập dữ liệu
    
    shuffle_df = shuffle (df_sample, random_state = 42)
    
    

    Bước 4: Ghép dữ liệu

    Ghép dữ liệu là quá trình tách tập dữ liệu thành dữ liệu đào tạo và thử nghiệm.

    
    # Đổ tập dữ liệu vào khung dữ liệu huấn luyện và thử nghiệm
    df_train = shuffle_df [0: 2400]
    df_test = shuffle_df [2400:]
    
    # Đổ từng khung dữ liệu vào tính năng và nhãn
    train_feature = np.array (df_train.values ​​[:, 0:29])
    train_label = np.array (df_train.values ​​[:, -1])
    test_feature = np.array (df_test.values ​​[:, 0:29])
    test_label = np.array (df_test.values ​​[:, -1])
    
    # Hiển thị kích thước của khung dữ liệu đoàn tàu
    print (train_feature.shape)
    
    (2400, 29)
    
    # Hiển thị kích thước của khung dữ liệu thử nghiệm
    print (train_label.shape)
    
    (2400,)
    
    

    Bước 5: Chuẩn hóa dữ liệu

    
    # Tiêu chuẩn hóa màu các tính năng để tăng tốc độ đào tạo
    scaler = MinMaxScaler ()
    scaler.fit (train_feature)
    train_feature_trans = scaler.transform (train_feature)
    test_feature_trans = scaler.transform (test_feature)
    
    # Một hàm để vẽ các đường cong học tập
    def show_train_history (train_history, train, validation):
    plt.plot (train_history.history [train])
    plt.plot (train_history.history [xác thực])
    plt.title ('Lịch sử tàu hỏa')
    plt.ylabel (xe lửa)
    plt.xlabel ('Kỷ nguyên')
    plt.legend (['train', 'validation'], loc = 'best')
    plt.show ()
    
    

    Bước 6: Xây dựng mạng thần kinh

    Trong bản trình diễn này, chúng tôi sẽ xây dựng một mạng nơ-ron chứa 3 lớp được kết nối đầy đủ với Dropout. Lớp đầu tiên và lớp thứ hai có 200 đơn vị nơ-ron với ReLU làm chức năng kích hoạt và lớp thứ ba, tức là lớp đầu ra có một đơn vị nơ-ron duy nhất.

    Để xây dựng mạng nơ-ron, chúng tôi sẽ sử dụng Gói Keras mà chúng tôi đã thảo luận trước đó. Kiểu mô hình sẽ tuần tự, đây là cách dễ nhất để xây dựng mô hình trong Keras. Trong mô hình tuần tự, mọi lớp đều được gán trọng số theo cách sao cho trọng số ở lớp tiếp theo, tương ứng với lớp trước đó.

    
    # Chọn loại mô hình
    model = Sequential ()
    
    

    Tiếp theo, chúng ta sẽ sử dụng hàm add () để thêm các Lớp dày đặc. ‘Dense’ là loại lớp cơ bản nhất hoạt động cho hầu hết các trường hợp. Tất cả các nút trong một lớp dày đặc được thiết kế sao cho các nút ở lớp trước kết nối với các nút trong lớp hiện tại.

    
    # Thêm một lớp dày đặc với 200 đơn vị nơ-ron và chức năng kích hoạt ReLu
    model.add (Mật độ (đơn vị = 200,
    input_dim = 29,
    kernel_initializer = 'thống nhất',
    kích hoạt = 'relu'))
    
    # Thêm học sinh bỏ học
    model.add (Bỏ học (0,5))
    
    

    Bỏ học là một kỹ thuật quy định được sử dụng để tránh trang bị quá nhiều trong mạng nơ-ron. Trong kỹ thuật này, các tế bào thần kinh được chọn ngẫu nhiên sẽ bị loại bỏ trong quá trình huấn luyện.

    
    # Lớp dày thứ hai với 200 đơn vị nơ-ron và chức năng kích hoạt ReLu
    model.add (Mật độ (đơn vị = 200,
    kernel_initializer = 'thống nhất',
    kích hoạt = 'relu'))
    
    # Thêm học sinh bỏ học
    model.add (Bỏ học (0,5))
    
    # Lớp đầu ra với 1 đơn vị nơ-ron và chức năng kích hoạt Sigmoid
    model.add (Dày đặc (đơn vị = 1,
    kernel_initializer = 'thống nhất',
    kích hoạt = 'sigmoid'))
    
    # Hiển thị tóm tắt mô hình
    print (model.summary ())
    
    Lớp (loại) Thông số hình dạng đầu ra #
    ================================================== ===============
    dày đặc_1 (Dày đặc) (Không có, 200) 6000
    _________________________________________________________________
    bỏ học_1 (Bỏ học) (Không, 200) 0
    _________________________________________________________________
    dày đặc_2 (Dày đặc) (Không có, 200) 40200
    _________________________________________________________________
    bỏ học_2 (Bỏ học) (Không, 200) 0
    _________________________________________________________________
    dày đặc_3 (Dày đặc) (Không có, 1) 201
    ================================================== ===============
    Tổng số tham số: 46,401
    Các thông số có thể huấn luyện: 46,401
    Các thông số không thể đào tạo: 0
    
    

    Để tối ưu hóa, chúng tôi sẽ sử dụng trình tối ưu hóa Adam (tích hợp sẵn với Keras). Trình tối ưu hóa được sử dụng để cập nhật các giá trị của thông số trọng lượng và bais trong quá trình đào tạo mô hình.

    
    # Sử dụng 'Adam' để tối ưu hóa ma trận Độ chính xác
    model.compile (mất = 'binary_crossentropy', Optimizer = 'adam',
    metrics = ['precision'])
    
    # Phù hợp với mô hình
    # số kỷ nguyên = 200 và kích thước lô = 500
    train_history = model.fit (x = train_feature_trans, y = train_label,
    validation_split = 0.8, epochs = 200,
    batch_size = 500, verbose = 2)
    
    Đào tạo trên 479 mẫu, xác nhận trên 1921 mẫu
    Kỷ nguyên 1/200
    - 1 giây - thua: 0,6916 - acc: 0,5908 - val_loss: 0,6825 - val_acc: 0,8360
    Kỷ nguyên 2/200
    - 0s - thua: 0,6837 - acc: 0,7933 - val_loss: 0,6717 - val_acc: 0,8360
    Kỷ nguyên 3/200
    - 0 giây - thua: 0,6746 - acc: 0,7996 - val_loss: 0,6576 - val_acc: 0,8360
    Kỷ nguyên 4/200
    - 0s - thua: 0,6628 - acc: 0,7996 - val_loss: 0,6419 - val_acc: 0,8360
    Kỷ nguyên 5/200
    - 0s - thua: 0.6459 - acc: 0.7996 - val_loss: 0.6248 - val_acc: 0.8360
    
    # Hiển thị các đường cong độ chính xác cho các tập hợp đào tạo và xác nhận
    show_train_history (train_history, 'acc', 'val_acc')
    
    

    Sơ đồ độ chính xác – Trí tuệ nhân tạo với Python – Edureka

    
    # Hiển thị đường cong tổn thất cho các tập hợp đào tạo và xác nhận
    show_train_history (train_history, 'loss', 'val_loss')
    
    

    Sơ đồ tổn thất – Trí tuệ nhân tạo với Python – Edureka

    Bước 7: Đánh giá mô hình < / p>

    
    # Bộ kiểm tra để đánh giá mô hình
    điểm = model.evaluate (test_feature_trans, test_label)
    
    # Hiển thị độ chính xác của mô hình
    print ('n')
    print ('Độ chính xác =', điểm số [1])
    
    Độ chính xác = 0,98
    
    dự đoán = model.posystem_classes (test_feature_trans)
    
    df_ans = pd.DataFrame ({'Real Class': test_label})
    df_ans ['Prediction'] = dự đoán
    
    df_ans ['Dự đoán']. value_counts ()
    
    df_ans ['Real Class']. value_counts ()
    
    cols = ['Real_Class_1', 'Real_Class_0'] # Tiêu chuẩn vàng
    row = ['Prediction_1', 'Prediction_0'] # Công cụ chẩn đoán (dự đoán của chúng tôi)
    
    B1P1 = len (df_ans [(df_ans ['Dự đoán'] == df_ans ['Real Class']) & amp; (df_ans ['Real Class'] == 1)])
    B1P0 = len (df_ans [(df_ans ['Dự đoán']! = Df_ans ['Real Class']) & amp; (df_ans ['Real Class'] == 1)])
    B0P1 = len (df_ans [(df_ans ['Dự đoán']! = Df_ans ['Real Class']) & amp; (df_ans ['Real Class'] == 0)])
    B0P0 = len (df_ans [(df_ans ['Dự đoán'] == df_ans ['Real Class']) & amp; (df_ans ['Real Class'] == 0)])
    
    conf = np.array ([[B1P1, B0P1], [B1P0, B0P0]])
    df_cm = pd.DataFrame (conf, column = [i for i in cols], index = [i for i in row])
    f, ax = plt.subplots (figsize = (5, 5))
    sns.heatmap (df_cm, annot = True, ax = ax, fmt = 'd')
    plt.show ()
    
    

    Bản đồ nhiệt – Trí tuệ nhân tạo với Python – Edureka

    
    # Làm cho nhãn x ở trên cùng là điều phổ biến trong sách giáo khoa.
    ax.xaxis.set_ticks_position ('top')
    
    print ('Tổng số trường hợp thử nghiệm:', np.sum (conf))
    
    Tổng số trường hợp thử nghiệm: 600
    
    # Chức năng tóm tắt mô hình
    def model_efficacy (conf):
    total_num = np.sum (conf)
    sen = conf [0] [0] / (conf [0] [0] + conf [1] [0])
    Spe = conf [1] [1] / (conf [1] [0] + conf [1] [1])
    false_positive_rate = conf [0] [1] / (conf [0] [1] + conf [1] [1])
    false_negative_rate = conf [1] [0] / (conf [0] [0] + conf [1] [0])
    
    print ('Tổng số trường hợp kiểm tra:', total_num)
    
    Tổng số trường hợp thử nghiệm: 600
    
    print ('G = tiêu chuẩn vàng, P = dự đoán')
    
    # G = bản vị vàng; P = dự đoán
    print ('G1P1:', conf [0] [0])
    print ('G0P1:', conf [0] [1])
    print ('G1P0:', conf [1] [0])
    print ('G0P0:', conf [1] [1])
    in('----------------------------------------------- --- ')
    print ('Độ nhạy:', sen)
    print ('Tính cụ thể:', giọng nói)
    print ('False_positive_rate:', false_positive_rate)
    print ('False_negative_rate:', false_negative_rate)
    
    

    Kết quả:

    
    G = bản vị vàng, P = dự đoán
    G1P1: 74
    G0P1: 5
    G1P0: 7
    G0P0: 514
    --------------------------------------------------
    Độ nhạy: 0.9135802469135802
    Độ đặc hiệu: 0,9865642994241842
    False_positive_rate: 0,009633911368015413
    False_negative_rate: 0,08641975308641975
    
    

    Như bạn có thể thấy, chúng tôi đã đạt được độ chính xác 98%, điều này thực sự tốt.

    Đó là tất cả đối với Bản trình diễn Học sâu.

    Bây giờ, hãy tập trung vào mô-đun cuối cùng mà tôi sẽ giới thiệu về Xử lý ngôn ngữ tự nhiên.

    Bạn có ý nghĩa gì bằng ngôn ngữ tự nhiên Xử lý?

    Xử lý ngôn ngữ tự nhiên (NLP) là khoa học thu thập những hiểu biết hữu ích từ văn bản ngôn ngữ tự nhiên để phân tích văn bản và khai thác văn bản.

    NLP sử dụng các khái niệm về khoa học máy tính và Trí tuệ nhân tạo để nghiên cứu dữ liệu và lấy thông tin hữu ích từ đó. Nó là thứ mà máy tính và điện thoại thông minh sử dụng để hiểu ngôn ngữ của chúng ta, cả nói và viết.

    Trước khi chúng ta hiểu NLP được sử dụng ở đâu, hãy để tôi làm rõ một quan niệm sai lầm phổ biến. Mọi người thường có xu hướng nhầm lẫn giữa Khai thác văn bản và NLP.

    Sự khác biệt giữa Khai thác văn bản và NLP là gì?

    • Khai thác văn bản là quy trình thu thập thông tin hữu ích từ văn bản.
    • Xử lý ngôn ngữ tự nhiên là một kỹ thuật được sử dụng để thực hiện khai thác văn bản và phân tích văn bản.

    Do đó, chúng ta có thể nói rằng Văn bản Có thể tiến hành khai thác bằng cách sử dụng các phương pháp NLP khác nhau.

    Bây giờ chúng ta hãy hiểu NLP được sử dụng ở đâu.

    Ứng dụng xử lý ngôn ngữ tự nhiên

    Dưới đây là danh sách các ứng dụng trong thế giới thực sử dụng kỹ thuật NLP:

    • Phân tích cảm xúc: Bằng cách triển khai các gã khổng lồ của NLP Tech như Amazon và Netflix, hãy hiểu rõ hơn về khách hàng của họ để nâng cao sản phẩm của họ và đưa ra các đề xuất tốt hơn.
    • Chatbot: Chatbot đang trở nên phổ biến trong lĩnh vực dịch vụ khách hàng. Một ví dụ phổ biến là Eva, chatbot HDFC, người đã giải quyết hơn 3 triệu truy vấn của khách hàng, tương tác với hơn nửa triệu người dùng duy nhất và tổ chức hơn một triệu cuộc trò chuyện.
    • Nhận dạng giọng nói: NLP đã được sử dụng rộng rãi trong nhận dạng giọng nói, tất cả chúng ta đều biết đến Alexa, Siri, trợ lý Google và Cortana. Tất cả chúng đều là ứng dụng của NLP.
    • Máy dịch: Trình dịch thuật phổ biến của Google sử dụng Xử lý ngôn ngữ tự nhiên để xử lý và dịch ngôn ngữ này sang ngôn ngữ khác. Nó cũng được sử dụng trong công cụ kiểm tra chính tả, tìm kiếm từ khóa, trích xuất thông tin.
    • Đối sánh quảng cáo: NLP cũng được sử dụng trong đối sánh quảng cáo để đề xuất quảng cáo dựa trên lịch sử tìm kiếm.

    Bây giờ chúng ta hãy hiểu các khái niệm quan trọng trong NLP.

    Thuật ngữ trong xử lý ngôn ngữ tự nhiên >

    Trong phần này, tôi sẽ trình bày tất cả các thuật ngữ cơ bản trong NLP. Các quy trình sau được sử dụng để phân tích ngôn ngữ tự nhiên nhằm thu được một số thông tin chi tiết có ý nghĩa:

    Tokenization

    Về cơ bản, Token hóa có nghĩa là chia nhỏ dữ liệu thành các phần nhỏ hoặc mã thông báo , để có thể dễ dàng phân tích chúng.

    Ví dụ: câu ‘Mã thông báo rất đơn giản’ có thể được chia thành các mã thông báo sau:

    1. Mã thông báo
    2. Có phải không
    3. Đơn giản

    Bằng cách thực hiện mã hóa, bạn có thể hiểu tầm quan trọng của từng mã thông báo trong một câu.

    Sơ lược < / strong>

    Tạo gốc là quá trình cắt bỏ các tiền tố và hậu tố của từ và chỉ tính đến từ gốc.

    Tạo gốc – Nhân tạo Thông minh với Python – Edureka

    Hãy hiểu điều này bằng một ví dụ. Như thể hiện trong hình, các từ,

    1. Phát hiện
    2. Phát hiện
    3. Đã phát hiện
    4. Phát hiện
    5. tất cả đều có thể được rút gọn xuống từ gốc của chúng, tức là Phát hiện . Stemming giúp chỉnh sửa những từ như vậy để việc phân tích tài liệu trở nên đơn giản hơn. Tuy nhiên, quá trình này có thể thành công trong một số trường hợp. Do đó, một quy trình khác được gọi là Lemmatization được sử dụng.

      Lemmatization

      Lemmatization tương tự như việc bổ sung gốc, tuy nhiên, nó hiệu quả hơn vì nó có tính đến hình thái phân tích các từ. Đầu ra của bổ ngữ là một từ thích hợp.

      Một ví dụ về bổ ngữ là, các từ, ‘đi’, ‘đi’ và ‘đi’ được bắt nguồn từ từ ‘đi’ bằng cách sử dụng bổ ngữ.

      Từ dừng

      Từ dừng là một tập hợp các từ thường được sử dụng trong bất kỳ ngôn ngữ nào. Các từ dừng rất quan trọng đối với phân tích văn bản và phải được loại bỏ để hiểu rõ hơn về bất kỳ tài liệu nào. Logic là nếu các từ thông dụng được xóa khỏi tài liệu thì chúng ta có thể tập trung vào các từ quan trọng nhất.

      Stop Words – Trí tuệ nhân tạo với Python – Edureka

      Ví dụ: giả sử bạn muốn làm sữa lắc dâu tây. Nếu bạn mở google và gõ ‘how to make a Straw milkshake’ bạn sẽ nhận được kết quả là ‘how’ ‘to’ ‘make’ ‘a’ ‘Strawberry’ ‘milkshake’. Mặc dù bạn chỉ muốn có kết quả cho món sữa lắc dâu tây. Những từ này được gọi là từ dừng. Tốt nhất bạn nên loại bỏ những từ như vậy trước khi thực hiện bất kỳ phân tích nào.

      Nếu bạn muốn tìm hiểu thêm về Xử lý ngôn ngữ tự nhiên, bạn có thể xem video này của các chuyên gia NLP của chúng tôi.

      < strong> Xử lý ngôn ngữ tự nhiên (NLP) & amp; Hướng dẫn khai thác văn bản bằng NLTK | Edureka

      Video Edureka này sẽ cung cấp cho bạn kiến ​​thức toàn diện và chi tiết về Ngôn ngữ tự nhiên Xử lý, thường được gọi là NLP.

      Vì vậy, với phần này, chúng ta đến phần cuối của Blog trí tuệ nhân tạo với Python. Nếu bạn muốn tìm hiểu thêm về Trí tuệ nhân tạo, bạn có thể đọc các blog này:

      Nếu bạn muốn đăng ký một khóa học hoàn chỉnh về Trí tuệ nhân tạo và Máy học, Edureka có một Chương trình tổng thể kỹ sư học máy sẽ giúp bạn thành thạo các kỹ thuật như Học có giám sát, Học không giám sát và Xử lý ngôn ngữ tự nhiên. Nó bao gồm đào tạo về những tiến bộ và cách tiếp cận kỹ thuật mới nhất trong Trí tuệ nhân tạo & amp; Học máy như Học sâu, Mô hình đồ họa và Học tăng cường.


    Xem thêm những thông tin liên quan đến chủ đề học python cho ai

    [AI] Python cơ bản cho AI (phần 1)

    • Tác giả: Đỗ Phúc Hảo
    • Ngày đăng: 2020-03-25
    • Đánh giá: 4 ⭐ ( 8199 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Tổng quan về trí tuệ nhân tạo | Học trí tuệ nhân tạo AI
      Giới thiệu python cơ bản
      string trong python
      thao tác với colab
      Lý thuyết trí tuệ nhân tạo, bài giảng trí tuệ nhân tạo, học trí tuệ nhân tạo cơ bản,
      giải bài tập môn trí tuệ nhân tạo, code realtime, colab, python

      Email: haodp@dau.edu.vn

    Python Developer for AI

    • Tác giả: vtc.edu.vn
    • Đánh giá: 5 ⭐ ( 9766 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Khóa học Trí tuệ nhân tạo Python Developer for AI chuyên sâu. Tiếp cận cấu trúc và thư viện trong Python cùng các bài toán AI cho doanh nghiệp.

    Học Lập Trình Online Miễn Phí

    • Tác giả: vncoder.vn
    • Đánh giá: 5 ⭐ ( 9173 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Trí tuệ nhân tạo đã tồn tại hơn nửa thế kỉ nay và những tiến bộ của nó đang phát triển với tốc độ theo cấp số nhân. Nhu cầu về AI đang ở mức cao nhất và bạn muốn tìm hiểu về Trí tuệ nhân tạo, bạn đã tìm đúng nơi rồi. Bài viết này về Trí tuệ nhân tạo với Python sẽ giúp bạn hiểu tất cả các khái niệm về …

    Khóa Học Lập Trình Python Cơ Bản Đến Chuyên Sâu

    • Tác giả: aptechsaigon.edu.vn
    • Đánh giá: 3 ⭐ ( 6587 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Khóa học lập trình Python cho người mới bắt đầu đến chuyên sâu. Học 100% thực chiến với đồ án của doanh nghiệp giúp phát triển tư duy sáng tạo nghề nghiệp

    Lập Trình Trí Tuệ Nhân Tạo AI Bằng Python Mới Nhất Năm 2021

    • Tác giả: mci.edu.vn
    • Đánh giá: 4 ⭐ ( 9347 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Lập trình AI bằng Python đang được sử dụng phổ biến, Python được coi là ngôn ngữ phù hợp nhất cho lập trình AI bởi tính đơn giản, cộng đồng lớn, độc lập với nền tảng.

    Học Python Để Làm Gì Cho Đời?

    • Tác giả: codelearn.io
    • Đánh giá: 5 ⭐ ( 2774 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Trong bài viết này mình sẽ điểm qua những ứng dụng chính, công việc tương lai sau khi bạn học ngôn ngữ lập trình top đầu hiện nay – Python.

    học python Archives

    • Tác giả: www.miai.vn
    • Đánh giá: 4 ⭐ ( 1345 lượt đánh giá )
    • Khớp với kết quả tìm kiếm:

    Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

    Xem Thêm  Cách tạo dấu gạch ngang không ngắt trong HTML - Tạp chí Tháng Sáu - html không ngắt gạch nối

    By ads_php