Luyện thi chứng chỉ Tensorflow
Cấu trúc đề thi
Đề thi mẫu
Một số chú ý quan trọng khi thi
1. Cấu trúc đề thi
1.1. Cấu trúc đề thi Tensorflow.pdf
1.2. [New] Cấu trúc đề thi Tensorlow
Cấu trúc đề thi Tensorflow
Dành cho lớp học TF
Lưu ý quan trọng
1/ Hệ thống chấm bài:
Mỗi đầu bài đều có ghi rõ input shape của grading system, để ý phần này để khớp với data/model
Nếu submit sai dimension, hệ thống sẽ báo là sai Dimension (vd: inputEmbedding shape is 120, but expecting 100)
Không được dùng lambda layer.
2/ Các đường dẫn quan trọng
Hướng dẫn thi: https://www.tensorflow.org/extras/cert/TF_Certificate_Candidate_Handbook.pdf
Đăng ký thi tại: https://app.trueability.com/google-certificates/tensorflow-developer
3/ Dàn bài thi
Bài 1. Linear Regression:
Chú ý: Không có tập validation nên train tầm 500 - 1000 epochs để đảm bảo đạt acc
Bài 2. Phân loại: MNIST, Fashion MNIST, IRIS
Lời giải mẫu
Hướng dẫn xây mô hình trên bộ MNIST: https://youtu.be/8WxENdR46qA
Chú ý
Chú ý 1:
Bài này chỉ cần sử dụng mạng Neural Network với vài lớp Dense, không dùng CNN (nếu dùng sẽ báo lỗi)
Chú ý 2:
Đề có thể cho tf.dataset nên ôn kỹ phần load dataset (), nhớ chia ảnh đầu vào cho 255
Gần đây nhóm thấy không có nhiều học viên gặp tf dataset, tuy nhiên vẫn nên ôn kỹ.
Một số hướng dẫn về tensorflow dataset
https://www.tensorflow.org/api_docs/python/tf/data/Dataset
https://www.tensorflow.org/datasets/keras_example
Bài 3. Phân loại ảnh thực tế:
Dataset: Chó - mèo, Ngựa - người, Dao - Búa - Kéo
Lời giải mẫu:
Chó mèo: https://youtu.be/kShvYHDXvvg
Dao búa kéo: https://www.tensorflow.org/datasets/catalog/rock_paper_scissors
Chú ý:
Chú ý 1:
Ưu tiên không sử dụng Transfer Learning sớm, sử dụng một mô hình CNN thông thường.
Nếu cần sử dụng Transfer learning - ưu tiên MobileNet
Video hướng dẫn sử dụng Transfer Learning: https://youtu.be/Y-4KLFt_c6Y
Notebook dùng Transfer learning:
Bài sử dụng transfer learning có thể có kết quả khi submit là 2/5, 3/5, …. Vì vậy nên submit nhiều lần. Nếu đạt từ 4/5 trở lên thì có thể làm bài khác (áp dụng với tất cả các bài)
Chú ý 2:
Phân loại nhị phân nhưng đề bài có thể yêu cầu lớp cuối cùng của model phải sử dụng hàm softmax(thay vì sigmoid), vì vậy cần chọn làm loss phù hợp với hàm softmax
Học kỹ hai hàm flow_from_directory + generator
Chú ý 3:
Cách resize ảnh, rescale input và transfer learning có thể tham khảo: https://www.tensorflow.org/tutorials/images/transfer_learning
Chi tiết thêm dataset tại đây.
Chú ý 4:
Có thể đề yêu cầu load data từ tf.dataset. Đề bài có thể yêu cầu resize ảnh về kích thước nào đó (ví dụ 224x224x3) và re-scale input về khoảng [-1, 1]. Thực hiện resize và rescale ảnh trong hàm map: https://www.tensorflow.org/api_docs/python/tf/data/Dataset#map
Bài 4. Phân loại mỉa mai - Detecting sarcasm (chưa đổi đề)
RNN, sentiment classification, chú ý sử dụng tokenizer + padding,
Bài phân loại cảm xúc câu, (chưa đổi đề)
Bài này yêu cầu độ chính xác khoảng 84-87% là phù hợp.
Lời giải mẫu:
Một số video tham khảo thêm.
5. Một bài Time-series: Sunspot trên coursera (chưa đổi đề)
Tham khảo bài Daily Temperature ở đây: https://youtu.be/zCxMLNzPa1M
Lời giải mẫu:
Chú ý:
Không dùng Lambda layer
Bài này yêu cầu MAE < 0.12. Nên phải dùng Min Max Scale
Có một chút khó khăn khi bài 5 sẽ có dạng đầu vào có chiều thứ 3 và bắt chia data theo tỉ lệ ở giữa.
Chú ý này nằm trong slide Time Series phần cập nhật mới.
Đặt chiều của LSTM hay chiều của h nhỏ tương ứng với chiều thứ 3 (ví dụ đề cho 15 chúng ta có thể chọn 15 trước)
Chú ý đôi khi đề yêu cầu scale về khoảng (-1, 1): https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.MinMaxScaler.html
Tài liệu chuẩn bị: