HỌC MÁY (MACHINE LEARNING) THỰC HÀNH VỚI SCIKIT-LEARN, KERAS VÀ TENSORFLOW

Estimated reading: 30 minutes 60 views

Thông qua một loạt các bước đột phá, Học sâu (Deep Learning / ディープラーニング) đã thúc đẩy toàn bộ lĩnh vực Học máy (Machine Learning / 機械学習). Giờ đây, ngay cả những lập trình viên hầu như không biết gì về công nghệ này cũng có thể sử dụng các công cụ đơn giản, hiệu quả để triển khai các chương trình có khả năng học từ dữ liệu. Ấn bản cập nhật của cuốn sách bán chạy nhất này sử dụng các ví dụ cụ thể, lý thuyết tối giản và các bộ khung Python sẵn sàng cho môi trường thực tế (production-ready Python frameworks) để giúp bạn có được sự hiểu biết trực quan về các khái niệm và công cụ để xây dựng các hệ thống thông minh.

Bạn sẽ học được một loạt các kỹ thuật mà bạn có thể nhanh chóng đưa vào sử dụng. Với các bài tập ở mỗi chương để giúp bạn áp dụng những gì đã học, tất cả những gì bạn cần là kinh nghiệm lập trình để bắt đầu. Toàn bộ mã nguồn đều có sẵn trên GitHub. Cuốn sách đã được cập nhật lên TensorFlow 2 và phiên bản mới nhất của Scikit-Learn.

• Học các kiến thức nền tảng về Học máy thông qua một dự án từ đầu đến cuối (end-to-end project) sử dụng Scikit-Learn và pandas 

• Xây dựng và huấn luyện nhiều kiến trúc Mạng nơ-ron (Neural network / ニューラルネットワーク) cho bài toán phân loại và hồi quy sử dụng TensorFlow 2 

• Khám phá Phát hiện đối tượng (Object detection / 物体検出), Phân vùng ngữ nghĩa (Semantic segmentation / セマンティックセグメンテーション), Cơ chế chú ý (Attention mechanisms / アテンション機構), Mô hình ngôn ngữ (Language models / 言語モデル), GANs (Mạng đối nghịch phát sinh / 敵対的生成ネットワーク), và nhiều hơn nữa 

• Khám phá Keras API, API bậc cao (high-level API) chính thức dành cho TensorFlow 2

 • Đưa các mô hình TensorFlow vào môi trường thực tế (Productionize) bằng cách sử dụng Data API của TensorFlow, Distribution Strategies API, TF Transform, và TF-Serving 

• Triển khai (Deploy) trên Google Cloud AI Platform hoặc trên các thiết bị di động 

• Khai thác các kỹ thuật Học không giám sát (Unsupervised learning / 教師なし学習) như Giảm chiều dữ liệu (Dimensionality reduction / 次元削減), Gom cụm (Clustering / クラスタリング), và Phát hiện bất thường (Anomaly detection / 異常検知) 

• Tạo ra các tác tử học tự trị (autonomous learning agents) bằng Học tăng cường (Reinforcement Learning / 強化学習), bao gồm việc sử dụng thư viện TF-Agents

Cơn sóng thần Học máy

Năm 2006, Geoffrey Hinton và các cộng sự đã xuất bản một bài báo cho thấy cách huấn luyện một mạng nơ-ron sâu có khả năng nhận dạng các chữ số viết tay với độ chuẩn xác hiện đại nhất (state-of-the-art precision) (>98%). Họ đã đặt tên cho kỹ thuật này là “Deep Learning”. Một mạng nơ-ron sâu là một mô hình (rất) đơn giản hóa của vỏ não chúng ta, bao gồm một ngăn xếp các lớp Nơ-ron nhân tạo (Artificial neurons / 人工ニューロン). Việc huấn luyện một mạng nơ-ron sâu được nhiều người coi là bất khả thi vào thời điểm đó, và hầu hết các nhà nghiên cứu đã từ bỏ ý tưởng này vào cuối những năm 1990. Bài báo này đã làm sống lại sự quan tâm của cộng đồng khoa học, và không lâu sau, nhiều bài báo mới đã chứng minh rằng Học sâu không chỉ khả thi mà còn có khả năng đạt được những thành tựu đáng kinh ngạc mà không một kỹ thuật Học máy nào khác có thể hy vọng sánh kịp (với sự trợ giúp của sức mạnh tính toán khổng lồ và lượng lớn dữ liệu). Sự nhiệt tình này nhanh chóng lan rộng sang nhiều lĩnh vực khác của Học máy.

Khoảng một thập kỷ sau, Học máy đã chinh phục ngành công nghiệp: nó là trung tâm của phần lớn phép màu trong các sản phẩm công nghệ cao ngày nay, xếp hạng kết quả tìm kiếm web của bạn, cung cấp sức mạnh cho tính năng nhận dạng giọng nói trên điện thoại thông minh, đề xuất video và đánh bại nhà vô địch thế giới trong trò chơi cờ vây (Go). Trước khi bạn kịp nhận ra, nó sẽ đang lái chiếc xe của bạn.

Học máy trong các Dự án của bạn

Vì vậy, lẽ tự nhiên là bạn cảm thấy hào hứng với Học máy và muốn tham gia vào bữa tiệc này! Có lẽ bạn muốn cung cấp cho con robot tự chế của mình một bộ não riêng? Làm cho nó nhận dạng khuôn mặt? Hoặc học cách đi loanh quanh? Hoặc có thể công ty của bạn có hàng tấn dữ liệu (nhật ký người dùng, dữ liệu tài chính, dữ liệu sản xuất, dữ liệu cảm biến máy móc, thống kê đường dây nóng, báo cáo nhân sự, v.v.), và rất có khả năng bạn có thể khai quật được một số viên ngọc ẩn nếu bạn biết tìm ở đâu. Với Học máy, bạn có thể hoàn thành những điều sau và hơn thế nữa: 

• Phân khúc khách hàng và tìm ra chiến lược tiếp thị tốt nhất cho từng nhóm. 

• Đề xuất sản phẩm cho mỗi khách hàng dựa trên những gì các khách hàng tương tự đã mua.

 • Phát hiện xem giao dịch nào có khả năng là gian lận. 

• Dự báo doanh thu của năm tới. 

Dù lý do là gì, bạn đã quyết định học Học máy và triển khai nó trong các dự án của mình. Ý tưởng tuyệt vời!

Mục tiêu và Phương pháp tiếp cận

Cuốn sách này giả định rằng bạn hầu như không biết gì về Học máy. Mục tiêu của nó là cung cấp cho bạn các khái niệm, công cụ và trực giác mà bạn cần để triển khai các chương trình có khả năng học từ dữ liệu. Chúng tôi sẽ đề cập đến một số lượng lớn các kỹ thuật, từ những kỹ thuật đơn giản và thông dụng nhất (như Hồi quy tuyến tính (Linear Regression / 線形回帰)) cho đến một số kỹ thuật Học sâu thường xuyên giành chiến thắng trong các cuộc thi. Thay vì tự triển khai các phiên bản đồ chơi (toy versions) của riêng mình cho từng thuật toán, chúng ta sẽ sử dụng các bộ khung Python sẵn sàng cho môi trường thực tế: 

• Scikit-Learn rất dễ sử dụng, nhưng nó triển khai nhiều thuật toán Học máy một cách hiệu quả, vì vậy nó tạo ra một điểm khởi đầu tuyệt vời để học Học máy. Nó được David Cournapeau tạo ra vào năm 2007, và hiện được dẫn dắt bởi một nhóm các nhà nghiên cứu tại Viện Nghiên cứu Khoa học Máy tính và Tự động hóa Pháp (Inria). 

• TensorFlow là một thư viện phức tạp hơn dành cho tính toán số học phân tán (distributed numerical computation). Nó giúp cho việc huấn luyện và chạy các mạng nơ-ron rất lớn trở nên hiệu quả bằng cách phân phối các phép tính qua hàng trăm máy chủ đa GPU (bộ xử lý đồ họa). TensorFlow (TF) được tạo ra tại Google và hỗ trợ nhiều ứng dụng Học máy quy mô lớn của hãng. Nó đã được mã nguồn mở vào tháng 11 năm 2015 và phiên bản 2.0 được phát hành vào tháng 9 năm 2019. 

• Keras là một API Học sâu bậc cao (high-level API) giúp việc huấn luyện và chạy các mạng nơ-ron trở nên rất đơn giản. Nó có thể chạy trên nền tảng của TensorFlow, Theano hoặc Microsoft Cognitive Toolkit (trước đây gọi là CNTK). TensorFlow đi kèm với bản triển khai riêng của API này, được gọi là tf.keras, cung cấp hỗ trợ cho một số tính năng nâng cao của TensorFlow (ví dụ: khả năng tải dữ liệu một cách hiệu quả).

Cuốn sách ưu tiên phương pháp tiếp cận thực hành (hands-on approach), phát triển sự hiểu biết trực quan về Học máy thông qua các ví dụ thực tế cụ thể và chỉ một chút lý thuyết. Mặc dù bạn có thể đọc cuốn sách này mà không cần động đến máy tính xách tay, nhưng tôi thực sự khuyên bạn nên thử nghiệm các ví dụ mã có sẵn trực tuyến dưới dạng Jupyter notebook tại https://github.com/ageron/handson-ml2.

Điều kiện tiên quyết

Cuốn sách này giả định rằng bạn đã có một số kinh nghiệm lập trình Python và bạn quen thuộc với các thư viện khoa học chính của Python—cụ thể là NumPy, pandas và Matplotlib. Ngoài ra, nếu bạn quan tâm đến những gì diễn ra bên dưới bề mặt (under the hood), bạn cũng nên có một sự hiểu biết hợp lý về toán học cấp đại học (giải tích, đại số tuyến tính, xác suất và thống kê). Nếu bạn chưa biết Python, http://learnpython.org/ là một nơi tuyệt vời để bắt đầu. Hướng dẫn chính thức trên Python.org cũng khá tốt. Nếu bạn chưa từng sử dụng Jupyter, Chương 2 sẽ hướng dẫn bạn cách cài đặt và những điều cơ bản: nó là một công cụ mạnh mẽ cần có trong hộp công cụ của bạn. Nếu bạn không quen thuộc với các thư viện khoa học của Python, các tệp Jupyter notebook được cung cấp có bao gồm một vài bài hướng dẫn. Ngoài ra còn có một bài hướng dẫn toán học nhanh về đại số tuyến tính.

Lộ trình

Cuốn sách này được tổ chức thành hai phần. Phần I, Nền tảng của Học máy, bao gồm các chủ đề sau: 

• Học máy là gì, những vấn đề nó cố gắng giải quyết, và các danh mục chính cũng như các khái niệm cơ bản của các hệ thống Học máy 

• Các bước trong một dự án Học máy điển hình 

• Học bằng cách làm khớp một mô hình với dữ liệu (fitting a model to data) 

• Tối ưu hóa một Hàm chi phí (Cost function / コスト関数) 

• Xử lý, làm sạch và chuẩn bị dữ liệu 

• Chọn lọc và chế tác Đặc trưng (Feature engineering / 特徴量エンジニアリング) 

• Lựa chọn một mô hình và tinh chỉnh các Siêu tham số (Hyperparameters / ハイパーパラメータ) sử dụng Kiểm chứng chéo (Cross-validation / 交差検証) 

• Những thách thức của Học máy, cụ thể là Chưa khớp (Underfitting / 未学習) và Quá khớp (Overfitting / 過学習) (sự đánh đổi giữa độ chệch/phương sai) 

• Các thuật toán học phổ biến nhất: Hồi quy Tuyến tính và Đa thức (Linear and Polynomial Regression / 線形回帰と多項式回帰), Hồi quy Logistic (Logistic Regression / ロジスティック回帰), k-Láng giềng gần nhất (k-Nearest Neighbors), Máy véc-tơ hỗ trợ (Support Vector Machines / サポートベクターマシン), Cây quyết định (Decision Trees / 決定木), Rừng ngẫu nhiên (Random Forests / ランダムフォレスト), và các phương pháp Học kết hợp (Ensemble methods / アンサンブル法) 

• Giảm chiều dữ liệu huấn luyện để chống lại “lời nguyền của số chiều” 

• Các kỹ thuật học không giám sát khác, bao gồm gom cụm, ước lượng mật độ (density estimation), và phát hiện bất thường

Phần II, Mạng nơ-ron và Học sâu, bao gồm các chủ đề sau: 

• Mạng nơ-ron là gì và chúng có lợi thế ở điểm nào 

• Xây dựng và huấn luyện mạng nơ-ron bằng TensorFlow và Keras 

• Các kiến trúc mạng nơ-ron quan trọng nhất: mạng nơ-ron truyền thẳng (feedforward) cho dữ liệu dạng bảng, Mạng tích chập (Convolutional nets / 畳み込みネットワーク) cho thị giác máy tính, Mạng tuần hoàn (Recurrent nets / 回帰ネットワーク) và mạng bộ nhớ ngắn hạn dài (LSTM) cho xử lý chuỗi, bộ mã hóa/bộ giải mã (encoder/decoders) và Transformers cho xử lý ngôn ngữ tự nhiên, Bộ tự mã hóa (Autoencoders / オートエンコーダ) và Mạng đối nghịch phát sinh (GANs) cho học phát sinh 

• Các kỹ thuật để huấn luyện mạng nơ-ron sâu 

• Cách xây dựng một tác tử (ví dụ: một con bot trong trò chơi) có thể học các chiến lược tốt thông qua thử và sai (trial and error), sử dụng Học tăng cường 

• Tải và tiền xử lý một lượng lớn dữ liệu một cách hiệu quả 

• Huấn luyện và triển khai các mô hình TensorFlow ở quy mô lớn

Phần đầu tiên chủ yếu dựa trên Scikit-Learn, trong khi phần thứ hai sử dụng TensorFlow và Keras.

Đừng vội vã nhảy vào vùng nước sâu: mặc dù Học sâu chắc chắn là một trong những lĩnh vực thú vị nhất trong Học máy, bạn nên nắm vững các kiến thức nền tảng trước. Hơn nữa, hầu hết các vấn đề đều có thể được giải quyết khá tốt bằng cách sử dụng các kỹ thuật đơn giản hơn như Rừng ngẫu nhiên và phương pháp Học kết hợp (được thảo luận trong Phần I). Học sâu phù hợp nhất cho các vấn đề phức tạp như nhận dạng hình ảnh, nhận dạng giọng nói hoặc xử lý ngôn ngữ tự nhiên, với điều kiện bạn có đủ dữ liệu, sức mạnh tính toán và sự kiên nhẫn.

Những Thay đổi trong Ấn bản Thứ hai

Ấn bản thứ hai này có sáu mục tiêu chính:

  1. Bao gồm thêm các chủ đề ML: bổ sung các kỹ thuật học không giám sát (bao gồm gom cụm, phát hiện bất thường, ước lượng mật độ và mô hình hỗn hợp); thêm các kỹ thuật huấn luyện mạng sâu (bao gồm các mạng tự chuẩn hóa); các kỹ thuật thị giác máy tính bổ sung (bao gồm Xception, SENet, phát hiện đối tượng với YOLO và phân vùng ngữ nghĩa sử dụng R-CNN); xử lý các chuỗi sử dụng mạng nơ-ron tích chập (CNNs, bao gồm WaveNet); xử lý ngôn ngữ tự nhiên sử dụng Mạng nơ-ron tuần hoàn (RNNs / 再帰型ニューラルネットワーク), CNNs và Transformers; và GANs.

  2. Bao gồm các thư viện và API bổ sung (Keras, Data API, TF-Agents cho Học tăng cường) cũng như huấn luyện và triển khai các mô hình TF ở quy mô lớn sử dụng Distribution Strategies API, TF-Serving và Google Cloud AI Platform. Đồng thời giới thiệu ngắn gọn về TF Transform, TFLite, TF Addons/Seq2Seq và TensorFlow.js.

  3. Thảo luận về một số kết quả quan trọng mới nhất từ các nghiên cứu Học sâu.

  4. Chuyển đổi toàn bộ các chương về TensorFlow sang TensorFlow 2, và sử dụng bản triển khai Keras API của TensorFlow (tf.keras) bất cứ khi nào có thể.

  5. Cập nhật các ví dụ mã để sử dụng các phiên bản mới nhất của Scikit-Learn, NumPy, pandas, Matplotlib và các thư viện khác.

  6. Làm rõ một số phần và sửa một vài lỗi, nhờ vào rất nhiều phản hồi tuyệt vời từ độc giả. Một số chương đã được thêm vào, những chương khác được viết lại và một vài chương được sắp xếp lại. Xem https://homl.info/changes2 để biết thêm chi tiết về những thay đổi trong ấn bản thứ hai.

Các Tài nguyên Khác

Có rất nhiều tài nguyên xuất sắc để tìm hiểu về Học máy. Ví dụ, khóa học ML của Andrew Ng trên Coursera rất tuyệt vời, mặc dù nó đòi hỏi một sự đầu tư thời gian đáng kể (tính bằng tháng). Ngoài ra còn có nhiều trang web thú vị về Học máy, dĩ nhiên bao gồm cả Hướng dẫn Người dùng xuất sắc của Scikit-Learn. Bạn cũng có thể thích Dataquest, nơi cung cấp các bài hướng dẫn tương tác rất hay, và các blog về ML như những blog được liệt kê trên Quora. Cuối cùng, trang web Deep Learning có một danh sách các tài nguyên tốt để bạn tham khảo nhằm tìm hiểu thêm. Có rất nhiều cuốn sách nhập môn khác về Học máy. Cụ thể là: 

• Data Science from Scratch của Joel Grus (O’Reilly) trình bày các nền tảng của Học máy và triển khai một số thuật toán chính bằng Python thuần túy (từ đầu – from scratch, như tên gọi của nó). 

• Machine Learning: An Algorithmic Perspective của Stephen Marsland (Chapman & Hall) là một cuốn sách nhập môn tuyệt vời về Học máy, đề cập chuyên sâu đến một loạt các chủ đề với các ví dụ mã bằng Python (cũng xây dựng từ đầu, nhưng sử dụng NumPy). 

• Python Machine Learning của Sebastian Raschka (Packt Publishing) cũng là một tài liệu nhập môn tuyệt vời về Học máy và tận dụng các thư viện mã nguồn mở của Python (Pylearn 2 và Theano). 

• Deep Learning with Python của François Chollet (Manning) là một cuốn sách rất thực tế, đề cập đến nhiều chủ đề một cách rõ ràng và súc tích, như bạn có thể mong đợi từ tác giả của thư viện Keras xuất sắc. Cuốn sách thiên về các ví dụ mã nguồn hơn là lý thuyết toán học. 

• The Hundred-Page Machine Learning Book của Andriy Burkov rất ngắn gọn và bao hàm một phạm vi chủ đề ấn tượng, giới thiệu chúng bằng các thuật ngữ dễ tiếp cận mà không né tránh các phương trình toán học. 

• Learning from Data của Yaser S. Abu-Mostafa, Malik Magdon-Ismail và Hsuan-Tien Lin (AMLBook) là một cách tiếp cận mang tính lý thuyết hơn đối với ML, cung cấp những hiểu biết sâu sắc, đặc biệt là về sự đánh đổi giữa độ chệch/phương sai (xem Chương 4). 

• Artificial Intelligence: A Modern Approach, Ấn bản thứ 3 của Stuart Russell và Peter Norvig (Pearson), là một cuốn sách tuyệt vời (và đồ sộ) đề cập đến một lượng lớn các chủ đề, bao gồm cả Học máy. Nó giúp đặt ML vào một góc nhìn toàn cảnh. 

Cuối cùng, việc tham gia các trang web thi đấu ML như Kaggle.com sẽ cho phép bạn thực hành các kỹ năng của mình trên các vấn đề trong thế giới thực, với sự trợ giúp và hiểu biết từ một số chuyên gia ML giỏi nhất hiện nay.

Các Quy ước Được sử dụng trong Cuốn sách này

Các quy ước in ấn sau đây được sử dụng trong cuốn sách này:

In nghiêng (Italic) 

Chỉ ra các thuật ngữ mới, URL, địa chỉ email, tên tệp và phần mở rộng tệp.

Độ rộng không đổi (Constant width) 

Được sử dụng cho các danh sách chương trình, cũng như trong các đoạn văn để chỉ các phần tử của chương trình như tên biến hoặc hàm, cơ sở dữ liệu, kiểu dữ liệu, biến môi trường, câu lệnh và từ khóa.

Độ rộng không đổi in đậm (Constant width bold) 

Hiển thị các lệnh hoặc văn bản khác mà người dùng nên nhập chính xác theo nghĩa đen.

Độ rộng không đổi in nghiêng (Constant width italic) 

Hiển thị văn bản cần được thay thế bằng các giá trị do người dùng cung cấp hoặc bằng các giá trị được xác định bởi ngữ cảnh. 

Phần tử này biểu thị một mẹo (tip) hoặc gợi ý. 

Phần tử này biểu thị một lưu ý chung. 

Phần tử này chỉ ra một cảnh báo (warning) hoặc sự thận trọng (caution).

Ví dụ về Mã nguồn

Có một chuỗi các tệp Jupyter notebook chứa đầy đủ tài liệu bổ sung, chẳng hạn như các ví dụ mã và bài tập, có sẵn để tải xuống tại https://github.com/ageron/handson-ml2. Một số ví dụ mã trong sách bỏ qua các phần lặp đi lặp lại hoặc các chi tiết hiển nhiên hoặc không liên quan đến Học máy. Điều này giúp duy trì sự tập trung vào các phần quan trọng của mã và tiết kiệm không gian để đề cập đến nhiều chủ đề hơn. Nếu bạn muốn các ví dụ mã nguồn đầy đủ, tất cả chúng đều có sẵn trong các tệp Jupyter notebook. Lưu ý rằng khi các ví dụ mã hiển thị một số kết quả đầu ra, các ví dụ mã này được hiển thị với các dấu nhắc Python (>>> và ...), giống như trong một Python shell, để phân biệt rõ ràng mã nguồn với kết quả đầu ra. Ví dụ, đoạn mã này định nghĩa hàm square(), sau đó nó tính toán và hiển thị bình phương của 3:

				
					>>> def square(x):
...     return x ** 2
... 
>>> result = square(3)
>>> result
9				
			

Khi mã không hiển thị bất cứ điều gì, các dấu nhắc sẽ không được sử dụng. Tuy nhiên, kết quả đôi khi có thể được hiển thị dưới dạng bình luận, như thế này:

 
				
					def square(x): 
    return x ** 2

result = square(3) # result is 9				
			

Sử dụng các Ví dụ Mã nguồn (Using Code Examples / コード例の使用)

Cuốn sách này ở đây để giúp bạn hoàn thành công việc của mình. Nói chung, nếu mã ví dụ (example code) được cung cấp cùng với cuốn sách này, bạn có thể sử dụng nó trong các chương trình và tài liệu của mình. Bạn không cần phải liên hệ với chúng tôi để xin phép trừ khi bạn sao chép một phần đáng kể của mã nguồn. Ví dụ: việc viết một chương trình sử dụng một vài đoạn mã (chunks of code) từ cuốn sách này không yêu cầu xin phép. Việc bán hoặc phân phối đĩa CD-ROM chứa các ví dụ từ sách của O’Reilly yêu cầu phải có sự cho phép. Việc trả lời một câu hỏi bằng cách trích dẫn cuốn sách này và dẫn lại mã ví dụ không cần xin phép. Việc kết hợp một lượng đáng kể mã ví dụ từ cuốn sách này vào tài liệu sản phẩm của bạn yêu cầu phải có sự cho phép.

Chúng tôi đánh giá cao, nhưng không bắt buộc, việc ghi công (attribution / 属性 biểu thị nguồn). Một phần ghi công thường bao gồm tiêu đề, tác giả, nhà xuất bản và mã số ISBN. Ví dụ: “Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition, bởi Aurélien Géron (O’Reilly). Bản quyền 2019 Kiwisoft S.A.S., 978-1-492-03264-9.” Nếu bạn cảm thấy việc sử dụng các ví dụ mã của mình nằm ngoài phạm vi sử dụng hợp lý (fair use) hoặc sự cho phép được đưa ra ở trên, vui lòng liên hệ với chúng tôi tại permissions@oreilly.com.

Hệ thống Học tập Trực tuyến O’Reilly (O’Reilly Online Learning / オライリー・オンライン・ラーニング)

Trong gần 40 năm qua, O’Reilly Media đã cung cấp các chương trình đào tạo về công nghệ và kinh doanh, kiến thức cũng như sự hiểu biết sâu sắc để giúp các công ty thành công.

Mạng lưới các chuyên gia và nhà đổi mới (innovators / 革新者) độc đáo của chúng tôi chia sẻ kiến thức và chuyên môn của họ thông qua sách, bài báo, hội nghị và nền tảng học tập trực tuyến của chúng tôi. Nền tảng học tập trực tuyến của O’Reilly cung cấp cho bạn quyền truy cập theo yêu cầu (on-demand access) vào các khóa đào tạo trực tiếp, các lộ trình học tập chuyên sâu (learning paths), môi trường lập trình tương tác và một bộ sưu tập khổng lồ các văn bản và video từ O’Reilly và hơn 200 nhà xuất bản khác. Để biết thêm thông tin, vui lòng truy cập http://oreilly.com.

Articles

Leave a Comment

Chia sẻ:

HỌC MÁY (MACHINE LEARNING) THỰC HÀNH VỚI SCIKIT-LEARN, KERAS VÀ TENSORFLOW

Or copy link

CONTENTS