Học sâu -  Deep learning


Trí tuệ nhân tạo (AI) và Machine Learning (ML) là một số chủ đề nóng nhất hiện nay.

Thuật ngữ AI AI được ném xung quanh mỗi ngày. Bạn nghe các nhà phát triển đầy tham vọng nói rằng họ muốn học AI. Bạn cũng nghe các giám đốc điều hành nói rằng họ muốn triển khai AI trong các dịch vụ của họ. Nhưng khá thường xuyên, nhiều người trong số họ không hiểu AI là gì.

Khi bạn đã đọc bài viết này, bạn sẽ hiểu những điều cơ bản về AI và ML. Quan trọng hơn, bạn sẽ hiểu Deep Learning , loại ML phổ biến nhất, hoạt động như thế nào.

Hướng dẫn này dành cho tất cả mọi người, vì vậy sẽ không có toán học nâng cao nào được tham gia.

Lý lịch

Bước đầu tiên để hiểu cách Deep Learning hoạt động là nắm bắt sự khác biệt giữa các điều khoản quan trọng.

Trí tuệ nhân tạo vs Học máy

Trí tuệ nhân tạo là sự sao chép trí thông minh của con người trong máy tính.

Khi nghiên cứu AI lần đầu tiên bắt đầu, các nhà nghiên cứu đã cố gắng tái tạo trí thông minh của con người cho các nhiệm vụ cụ thể - như chơi một trò chơi.

Họ đã giới thiệu một số lượng lớn các quy tắc mà máy tính cần phải tôn trọng. Máy tính có một danh sách cụ thể các hành động có thể và đưa ra quyết định dựa trên các quy tắc đó .

Học máy đề cập đến khả năng của một máy học cách sử dụng các tập dữ liệu lớn thay vì các quy tắc được mã hóa cứng.

ML cho phép máy tính tự học. Kiểu học này tận dụng sức mạnh xử lý của các máy tính hiện đại, có thể dễ dàng xử lý các tập dữ liệu lớn.

Học có giám sát so với học không giám sát

Học có giám sát liên quan đến việc sử dụng các bộ dữ liệu được dán nhãn có đầu vào và đầu ra dự kiến.

Khi bạn huấn luyện AI bằng cách học có giám sát, bạn cung cấp cho nó đầu vào và cho nó biết đầu ra dự kiến.

Nếu đầu ra do AI tạo ra là sai, nó sẽ điều chỉnh lại các tính toán của nó. Quá trình này được thực hiện lặp đi lặp lại qua tập dữ liệu, cho đến khi AI không mắc thêm lỗi nào nữa.

Một ví dụ về học tập có giám sát là AI dự báo thời tiết. Nó học cách dự đoán thời tiết bằng dữ liệu lịch sử. Dữ liệu huấn luyện đó có đầu vào (áp suất, độ ẩm, tốc độ gió) và đầu ra (nhiệt độ).

Học không giám sát là nhiệm vụ của học máy bằng cách sử dụng các tập dữ liệu không có cấu trúc được chỉ định.

Khi bạn huấn luyện AI bằng cách học không giám sát, bạn để AI thực hiện phân loại logic dữ liệu.

Một ví dụ về học tập không giám sát là AI dự đoán hành vi cho một trang web thương mại điện tử. Nó sẽ không học bằng cách sử dụng một tập hợp dữ liệu có nhãn của đầu vào và đầu ra.

Thay vào đó, nó sẽ tạo phân loại riêng của dữ liệu đầu vào. Nó sẽ cho bạn biết loại người dùng nào có khả năng mua các sản phẩm khác nhau.

Bây giờ, Deep Learning hoạt động như thế nào?


Bây giờ bạn đã sẵn sàng để hiểu Deep Learning là gì và cách thức hoạt động.

Deep Learning là một phương pháp học máy . Nó cho phép chúng ta đào tạo một AI để dự đoán đầu ra, đưa ra một bộ đầu vào. Cả học tập có giám sát và không giám sát đều có thể được sử dụng để đào tạo AI.

Chúng ta sẽ học cách học sâu hoạt động bằng cách xây dựng một dịch vụ ước tính giá vé máy bay giả định . Chúng tôi sẽ đào tạo nó bằng phương pháp học có giám sát.

Chúng tôi muốn công cụ ước tính giá vé máy bay của chúng tôi dự đoán giá bằng cách sử dụng các đầu vào sau (chúng tôi đang loại trừ vé khứ hồi cho đơn giản):

Xuất xứ sân bay
Sân bay đích
Ngày khởi hành
Hãng hàng không

Mạng lưới thần kinh

Hãy nhìn vào bộ não của AI của chúng ta.

Giống như động vật, bộ não của người ước tính AI của chúng ta có tế bào thần kinh. Chúng được đại diện bởi các vòng tròn. Những tế bào thần kinh này được liên kết với nhau.

Các tế bào thần kinh được nhóm thành ba loại lớp khác nhau:
1. Lớp đầu vào
2. Lớp ẩn
3. Lớp đầu ra

Lớp đầu vào nhận dữ liệu đầu vào. Trong trường hợp của chúng tôi, chúng tôi có bốn nơ-ron trong lớp đầu vào: Sân bay gốc, Sân bay đích, Ngày khởi hành và Đường hàng không. Lớp đầu vào chuyển các đầu vào cho lớp ẩn đầu tiên.


Các lớp ẩn thực hiện các tính toán toán học trên đầu vào của chúng tôi. Một trong những thách thức trong việc tạo mạng lưới thần kinh là quyết định số lượng các lớp ẩn, cũng như số lượng tế bào thần kinh cho mỗi lớp.

Các Deep Deep trong Deep Learning đề cập đến việc có nhiều hơn một lớp ẩn.


Lớp đầu ra trả về dữ liệu đầu ra. Trong trường hợp của chúng tôi, nó cung cấp cho chúng tôi dự đoán giá.


Vậy làm thế nào để nó tính toán dự đoán giá?

Đây là nơi ma thuật của Deep Learning bắt đầu.
Mỗi kết nối giữa các tế bào thần kinh được liên kết với một trọng lượng . Trọng lượng này cho thấy tầm quan trọng của giá trị đầu vào. Các trọng lượng ban đầu được đặt ngẫu nhiên.
Khi dự đoán giá vé máy bay, ngày khởi hành là một trong những yếu tố nặng nề hơn. Do đó, các kết nối nơ-ron ngày khởi hành sẽ có trọng lượng lớn.


Mỗi tế bào thần kinh có một chức năng kích hoạt . Các hàm này rất khó hiểu nếu không có lý luận toán học.
Nói một cách đơn giản, một trong những mục đích của nó là để tiêu chuẩn hóa ra đầu ra từ nơ ron.
Khi một tập hợp dữ liệu đầu vào đã đi qua tất cả các lớp của mạng thần kinh, nó sẽ trả về dữ liệu đầu ra thông qua lớp đầu ra.

Không có gì phức tạp, phải không?

Đào tạo mạng lưới thần kinh


Đào tạo AI là phần khó nhất của Deep Learning. Tại sao?

1. Bạn cần một bộ dữ liệu lớn .
2. Bạn cần một lượng lớn tiền của sức mạnh tính toán .

Đối với người ước tính giá vé máy bay của chúng tôi, chúng tôi cần tìm dữ liệu lịch sử về giá vé. Và do số lượng lớn các sân bay có thể và kết hợp ngày khởi hành, chúng tôi cần một danh sách rất lớn về giá vé.


Để đào tạo AI, chúng ta cần cung cấp cho nó các đầu vào từ tập dữ liệu của chúng tôi và so sánh các đầu ra của nó với các đầu ra từ tập dữ liệu. Vì AI vẫn chưa được đào tạo, kết quả đầu ra của nó sẽ sai.


Khi chúng ta đi qua toàn bộ tập dữ liệu, chúng ta có thể tạo một hàm cho chúng ta thấy các đầu ra của AI đã sai từ các đầu ra thực như thế nào. Hàm này được gọi là Hàm chi phí .

Lý tưởng nhất, chúng tôi muốn hàm chi phí của chúng tôi bằng không. Đó là khi các đầu ra AI của chúng ta giống như các đầu ra của tập dữ liệu.

Làm thế nào chúng ta có thể giảm chức năng chi phí?


Chúng tôi thay đổi trọng lượng giữa các tế bào thần kinh. Chúng tôi có thể ngẫu nhiên thay đổi chúng cho đến khi chức năng chi phí của chúng tôi thấp, nhưng điều đó không hiệu quả lắm.

Thay vào đó, chúng tôi sẽ sử dụng một kỹ thuật gọi là Gradient Descent .


Gradient Descent là một kỹ thuật cho phép chúng ta tìm ra mức tối thiểu của hàm. Trong trường hợp của chúng tôi, chúng tôi đang tìm kiếm tối thiểu của hàm chi phí.

Nó hoạt động bằng cách thay đổi các trọng số theo từng bước nhỏ sau mỗi lần lặp lại tập dữ liệu . Bằng cách tính đạo hàm (hoặc độ dốc) của hàm chi phí theo một trọng số nhất định, chúng ta có thể thấy hướng tối thiểu là hướng nào.


Để giảm thiểu hàm chi phí, bạn cần lặp lại thông qua bộ dữ liệu của mình nhiều lần. Đây là lý do tại sao bạn cần một lượng lớn sức mạnh tính toán.
Cập nhật các trọng số bằng cách sử dụng độ dốc được thực hiện tự động . Đó là điều kỳ diệu của Deep Learning!
Khi chúng tôi đã đào tạo AI ước tính giá vé máy bay, chúng tôi có thể sử dụng nó để dự đoán giá trong tương lai.