Bí kíp Tóm tắt Tham khảo Nhanh (Cheat Sheet)

Mục lục

1. Lựa chọn Dịch vụ AWS (AWS Service Selection)

Bài toán (Use Case) Dịch vụ (Service)
Tự build mô hình ML từ đầu SageMaker
Dùng mô hình nền tảng có sẵn (LLMs, sinh ảnh) Bedrock hoặc JumpStart
Làm Chatbot, tóm tắt chữ, viết content Bedrock
Triển khai LLMs nguồn mở (Llama, Falcon) JumpStart
Xài các khuôn mẫu ML (fraud, churn) JumpStart
Phân tích chữ (cảm xúc, thực thể) Comprehend
Đọc chữ thành tiếng (Text-to-speech) Polly
Viết tiếng thành chữ (Speech-to-text) Transcribe
Dịch thuật ngôn ngữ Translate
Soi hình/video (Image/video analysis) Rekognition
Scan chữ từ tài liệu (hóa đơn, bảng biểu) Textract
Chế tạo Chatbots Lex
Bộ máy tìm kiếm cho công ty Kendra
Máy gợi ý sản phẩm/cá nhân hóa Personalize
Bắt gian lận Fraud Detector
Thuê người thật duyệt lại dự đoán của ML Augmented AI (A2I)
Thuê đám đông dán nhãn dữ liệu (data public) Ground Truth + Mechanical Turk
Thuê team kín dán nhãn (data mật) Ground Truth + Private workforce
Bắt số liệu bất thường (metrics anomaly) Lookout for Metrics
Soi lỗi sản phẩm trên băng chuyền Lookout for Vision
Hỏi đáp Q&A nội bộ công ty (GenAI) Q Business
Trợ lý AI viết code Q Developer
Trạm dán nhãn dữ liệu Ground Truth
Kho cất giữ đặc trưng Feature Store
Data lake bảo mật (chặn theo cột/hàng) Lake Formation
Kho vứt dữ liệu thô phục vụ ML S3 (Data Lake)
Phân tích BI/Data Warehouse cấu trúc Redshift (Data Warehouse)

2. Lựa chọn Thuật toán Có sẵn của SageMaker (Built-in Algorithms)

Loại Bài toán Thuật toán Ngon nhất cho (Best For)
Phân loại nhị phân/đa lớp (Dữ liệu bảng) Linear Learner, XGBoost, KNN XGBoost (ăn độ chính xác), Linear Learner (ăn tốc độ)
Hồi quy (Dữ liệu bảng) Linear Learner, XGBoost, KNN XGBoost (luôn là lựa chọn ưu tiên)
Dự báo chuỗi thời gian DeepAR Dự báo có khoảng tin cậy (Probabilistic forecasts)
Gợi ý (Recommendations) Factorization Machines Đề cử lúc user/item thưa thớt (Sparse data)
Phân cụm (Clustering) K-Means Gom nhóm các thành phần giống nhau
Giảm chiều (Dimensionality reduction) PCA Ép giảm bớt số lượng đặc trưng
Phân tích Chủ đề (Topic modeling) LDA, NTM LDA (dễ giải thích), NTM (xử lý khối data siêu to/nhanh)
Phân loại văn bản BlazingText Phân tích cảm xúc tốc độ bàn thờ
Nhúng từ (Word embeddings) BlazingText Chạy chế độ Word2Vec
Chuỗi-sang-Chuỗi (Sequence-to-sequence) Seq2Seq Máy tự dịch thuật
Nhúng vật thể (Object embeddings) Object2Vec Học sự tương đồng
Phân loại ảnh Image Classification Dán đúng 1 nhãn cho mỗi tấm ảnh
Phát hiện vật thể Object Detection Vẽ khung (Bounding boxes) quanh vật thể
Phân vùng ngữ nghĩa Semantic Segmentation Tô màu từng điểm ảnh (Pixel-level masks)
Phát hiện bất thường (chung chung) Random Cut Forest Dò giá trị ngoại lai (Unsupervised outliers)
Phát hiện bất thường (IP) IP Insights Bảo mật tài khoản (soi IP)

3. Yêu cầu về Định dạng Dữ liệu #exam-tip

Thuật toán Định dạng Hỗ trợ
Linear Learner RecordIO-protobuf, CSV
XGBoost CSV, LibSVM, Parquet
KNN RecordIO-protobuf, CSV
Factorization Machines RecordIO-protobuf (BẮT BUỘC)
DeepAR JSON Lines
K-Means RecordIO-protobuf, CSV
PCA RecordIO-protobuf, CSV
LDA RecordIO-protobuf, CSV
NTM RecordIO-protobuf, CSV
Random Cut Forest RecordIO-protobuf, CSV
IP Insights CSV
Image Classification RecordIO, File ảnh (JPG, PNG)
Object Detection RecordIO, File ảnh + file JSON
Semantic Segmentation File ảnh + ảnh mặt nạ (PNG masks)
BlazingText File chữ thường (mỗi câu một dòng)
Seq2Seq RecordIO-protobuf, JSON
Object2Vec JSON

4. Lựa chọn Loại Máy (Instance Type) #exam-tip

Các loại máy dùng cho Training

Dòng máy (Family) Mã máy GPU Phù hợp cho Tiền
M (Đa dụng) ml.m5, ml.m6i Không Data bảng, XGBoost, chạy nháp $
C (Tính toán) ml.c5, ml.c6i Không Bào CPU, cần nuốt data nhanh $
P3 (GPU Xịn) ml.p3 NVIDIA V100 Train Deep learning (tiêu chuẩn) $$$
P4d (GPU Khủng) ml.p4d NVIDIA A100 Model khổng lồ, train phân tán \(\)
G4dn (GPU Rẻ) ml.g4dn NVIDIA T4 Train GPU nhưng sợ tốn tiền $$
G5 (GPU Ngon) ml.g5 NVIDIA A10G Cân bằng giữa tiền và tốc độ $$$
Trn1 (Đồ AWS) ml.trn1 Trainium DL training tối ưu giá nhà làm $$

Các loại máy dùng cho Inference (Suy luận)

Dòng máy (Family) Mã máy GPU Phù hợp cho Tiền
M (Đa dụng) ml.m5 Không Suy luận CPU, model cùi bắp $
C (Tính toán) ml.c5 Không Suy luận CPU ngốn data nhanh $
G4dn (GPU Rẻ) ml.g4dn NVIDIA T4 Suy luận GPU, ngon bổ rẻ $$
P3 (GPU Xịn) ml.p3 NVIDIA V100 Suy luận GPU, độ trễ cực thấp $$$
Inf1 (Đồ AWS) ml.inf1 Inferentia Suy luận siêu tốc đồ nhà làm $$

Hướng dẫn Chọn nhanh

Kịch bản Bốc ngay con
Train XGBoost/Linear Learner bằng data bảng ml.m5
Train CNN/RNN (ảnh/chữ) ml.p3
Train mô hình transformer siêu to khổng lồ ml.p4d
Train GPU nhưng nhà nghèo ml.g4dn hoặc ml.trn1
Inference xài CPU ml.c5 hoặc ml.m5
Inference xài GPU (tiết kiệm) ml.g4dn hoặc ml.inf1
Train đa GPU phân tán ml.p3.8xlarge hoặc ml.p4d.24xlarge
Train rẻ thúi (rẻ 90%) Bất kỳ máy nào + bật Managed Spot

Quy tắc Cốt lõi #exam-tip

  • Deep Learning (CNNs, RNNs, Transformers) → Bắt buộc xài GPU (P3, P4d, G4dn)
  • ML Cổ điển (XGBoost, Random Forest, Linear) → Chỉ cần CPU (M5, C5)
  • Lúc Training: Phang hệ P-family (P3/P4d) hoặc bèo thì G4dn.
  • Lúc Inference: Chọn mấy con rẻ rách thôi (C5, M5, G4dn, Inf1).
  • Trùm Tối ưu chi phí: G4dn (GPU rẻ nhất) hoặc xài Spot instances.
  • Tốc độ ánh sáng: P4d (Chạy card A100).

5. Các Công thức Quan trọng

Các Chỉ số Phân loại (Classification Metrics)

Precision (Độ chính xác - kén chọn) = TP / (TP + FP)
Recall (Độ phủ - bắt nhầm hơn bỏ sót) = TP / (TP + FN)
F1 Score (Trung bình điều hòa) = 2 × (Precision × Recall) / (Precision + Recall)
Accuracy (Độ chính xác tổng thể) = (TP + TN) / (TP + TN + FP + FN)

6. Các Siêu tham số (Hyperparameters) Quan trọng #exam-tip

Điều chuẩn (Regularization - Trị bệnh Quá khớp)

Tham số Thuật toán Cơ chế Tác dụng Khi nào dùng
l1 Linear Learner Ép trọng số VỀ ĐÚNG bằng không Chọn lọc đặc trưng (vứt bớt đặc trưng đi) Có quá nhiều đặc trưng, muốn tỉa bớt
wd Linear Learner Ép trọng số LÙI về 0 (nhưng không bao giờ bằng 0) Giữ nguyên mọi đặc trưng, chỉ bóp nhỏ độ lớn Các đặc trưng có sự tương quan (correlated)
alpha XGBoost Hình phạt L1 (trị tuyệt đối) Chọn lọc đặc trưng Quá nhiều đặc trưng, muốn tỉa bớt
lambda XGBoost Hình phạt L2 (bình phương) Ép đều mọi trọng số nhỏ lại Ngăn overfitting, giúp model ổn định

Mất cân bằng Lớp (Class Imbalance)

Tham số Thuật toán Cơ chế Khi nào dùng
balance_multiclass_weights Linear Learner Tự động bơm thêm trọng số cho cái lớp thiểu số Gặp data lệch pha (gian lận, sự kiện hiếm)
scale_pos_weight XGBoost Tỉ lệ của: mẫu âm tính / mẫu dương tính Bất cân bằng nhị phân (nhập cái tỷ lệ âm/dương vào)
target_recall Linear Learner Chỉnh mô hình cố bắt sạch bọn dương tính (chấp nhận bắt nhầm) Dò gian lận/bệnh tật (thà bắt nhầm không thể bỏ sót)
target_precision Linear Learner Chỉnh mô hình né triệt để bọn dương tính giả (thà bỏ sót còn hơn) Bắt thư rác (chặn nhầm mail sếp là đuổi việc)

Kiểm soát Quá trình Training

Tham số Thuật toán Khoảng Cơ chế Tác dụng
learning_rate / eta Cả hai 0.001-0.3 Độ lớn của bước chân mỗi lần update trọng số Nhỏ = train chậm rùa, nhưng mô hình lì lợm hơn, bớt overfitting
mini_batch_size Linear Learner 1-10000 Số mẫu mỗi lần gom lại để update Nhỏ = độ dốc bị giật cục (nhiễu - đóng vai trò như regularization)
max_depth XGBoost 1-10+ Cắt ngọn cây (giới hạn độ sâu) Nhỏ = cây đơn giản hơn, đỡ bị overfitting
num_round XGBoost Tùy Tổng số vòng lặp boosting Càng nhiều vòng = mô hình càng não to (phức tạp)
subsample XGBoost 0-1 Lấy bao nhiêu % data cho mỗi cây (stochastic) < 1 nghĩa là thêm sự ngẫu nhiên, trị overfitting

Mẹo Tối ưu Chi phí #exam-tip

  • Xài Spot instances nhớ cắm thêm checkpointing (Tiết kiệm 90%).
  • Ưu tiên Batch Transform thay vì cắm endpoint 24/7.
  • Xài Serverless Inference nếu traffic lúc có lúc không.
  • Nhét chung nhiều mô hình vào (Multi-model endpoints) để share tiền hạ tầng.
  • Bật S3 Intelligent-Tiering cho cái mâm training data.

7. Các Kịch bản Bài thi Thường gặp (Common Exam Scenarios)

Kịch bản Giải pháp
Muốn train mô hình rẻ thúi Managed Spot Training
Dữ liệu gửi lên suy luận lúc có lúc không Serverless Inference
Suy luận cần trả về ngay lập tức (real-time) SageMaker Endpoint
Cầm một cục data quăng lên dự đoán offline Batch Transform
Có 10 cái model nhưng chỉ muốn trả tiền 1 cái máy Multi-model Endpoints
Phát hiện dữ liệu production bị lệch (drift) Model Monitor
Muốn bắt đầu theo dõi cái endpoint Bật Data Capture + Xài Model Monitor
Lười bấm tay, muốn ML chạy tự động SageMaker Pipelines
Muốn điều khiển SageMaker bằng Kubernetes SageMaker Operators for Kubernetes
Chạy Kubeflow Pipelines nhưng muốn train bằng SageMaker SageMaker Components for Kubeflow
Không rành ML (AutoML) SageMaker Autopilot
Đòi mang container tự chế lên chạy Bring Your Own Container (BYOC)
Soi số liệu bất thường theo thời gian thực Kinesis Data Analytics + RCF
Sợ mô hình bị thiên vị phân biệt chủng tộc SageMaker Clarify
Dữ liệu lệch pha (Class imbalance) Xài SMOTE, undersampling, hoặc bơm class weights
Dữ liệu bị lủng lỗ mà lại có nhiều outliers Lấy trung vị đắp vào (Median replacement)
Độ quan trọng của đặc trưng bị thay đổi Theo dõi chỉ số NDCG score (trong Model Monitor)
Đọc chữ từ hóa đơn/biểu mẫu Xài Textract (ĐỪNG xài Rekognition)
Kiểm duyệt hình sex / chữ láo lếu Rekognition (để soi ảnh), Comprehend (để đọc chữ)
Làm bộ máy gợi ý sản phẩm/phim ảnh Personalize
Mô hình dự đoán lấn cấn, độ tự tin quá thấp Giao cho Augmented AI (A2I) bốc người vào xem
Chạy Gradient boosting trên data bảng XGBoost
Dự báo chuỗi thời gian đính kèm khoảng tin cậy DeepAR
Dịch thuật Xài Seq2Seq (tự train) hoặc Translate (hàng xài sẵn)
Đẻ ra chữ (chatbot, tóm tắt) Bedrock (Claude, Titan) hoặc JumpStart (Llama)
Gõ chữ đẻ ra hình Bedrock (Stable Diffusion, Titan Image) hoặc JumpStart
Chat với xấp tài liệu của công ty Bedrock + RAG hoặc quất Q Business
Cần cái baseline bắt gian lận chạy ăn liền Xài mẫu JumpStart solution template
Xài Llama 2 nhưng muốn kiểm soát 100% Bốc từ JumpStart ra
Cần phân loại ảnh nhưng data ít xỉn Xài Học chuyển giao (Transfer learning - xài ResNet, VGG)
Tiền ít nhưng muốn hít thơm lúc training Xài Transfer learning thay vì train từ con số không
Có đúng 500 tấm ảnh để train phân loại Xài Transfer learning (Chế độ Feature Extraction)
Khoanh vùng con chó con mèo trong ảnh Object Detection
Cắt cúp từng sợi lông con mèo (Pixel-level) Semantic Segmentation
Bắt cái thằng trộm account cty IP Insights
Bốc chủ đề từ một đống tài liệu LDA hoặc NTM
Cấm không cho xem cột data Lương Lake Formation (Cấp quyền theo cột)
Chỉ cho thằng sếp xem data của chi nhánh nó Lake Formation (Bảo mật theo hàng - row-level)
Cấp quyền data dựa trên thẻ (Tag) Lake Formation (Xài LF-Tags)
Chia sẻ data cho công ty con xài chung Lake Formation
Đổ dữ liệu thô phục vụ ML S3 Data Lake
Truy vấn BI xịn xò có cấu trúc Redshift (Data Warehouse)
Train mô hình DL lòi mắt (CNN) Bốc con ml.p3 (Mâm GPU)
Train XGBoost bằng bảng excel Bốc con ml.m5 (Mâm CPU)
Train GPU nhưng nhà nghèo ml.g4dn (Con chip T4)
Đua top server train Deep learning ml.p4d (Con chip A100)
Nhai data inference tốc độ cao ml.inf1 (Chip Inferentia) hoặc ml.c5

8. Hướng dẫn Chọn nhanh Dịch vụ AI (Quick AI Service Selection) #exam-tip

Nếu bài toán yêu cầu… Nhắm mắt chọn ngay…
Làm Chatbot (AI nói chuyện giỡn hớt) Bedrock (Claude) hoặc Lex
Đọc văn tế tóm tắt lại (Text summarization) Bedrock
Đẻ ra nội dung (Content generation) Bedrock
Vẽ ảnh từ chữ Bedrock (Stable Diffusion)
Tìm kiếm ngữ nghĩa (Semantic search) Bedrock Embeddings
Coi thử nó đang chửi hay khen (Sentiment) Comprehend
Phiên dịch Translate
Chép chính tả từ audio Transcribe
Đọc chữ ra tiếng Polly
Tìm đồ vật trong tấm hình Rekognition
Scan hóa đơn điện nước Textract
Chatbot nhận lệnh (hỏi intents/nhập slots) Lex
Tìm kiếm bằng câu hỏi tự nhiên Kendra
Gợi ý chốt đơn Personalize
Bắt bọn lừa đảo Fraud Detector
Cần con người kiểm duyệt A2I

9. Thực tiễn Tốt nhất về Bảo mật (Security Best Practices) #important

Checklist Bảo mật SageMaker

  • Chế độ VPC - Nhốt mớ training/inference vào private subnets.
  • Mã hóa lúc nghỉ (Encryption at rest) - Bơm KMS cho S3, EBS, và cái đống model artifacts.
  • Mã hóa đường truyền (Encryption in transit) - Bắt mọi luồng giao tiếp phải bọc TLS.
  • IAM quyền tối thiểu (Least privilege) - Tách bạch các roles của training, inference và users ra riêng.
  • VPC Endpoints - Cắm cái S3 Gateway Endpoint và mớ SageMaker Interface Endpoints vào.
  • Nhóm bảo mật (Security Groups) - Bóp cổ đầu vào (inbound), chỉ mở đúng các port sinh tử.
  • Secrets Manager - TUYỆT ĐỐI không hardcode mật khẩu vào code.
  • CloudTrail - Con mắt thần soi mói mọi API calls.
  • Macie - Cho chó săn đi lùng PII trước khi bắt đầu train.

Giải nhanh Tình huống Bảo mật #exam-tip

Kịch bản Giải pháp
Train bằng dữ liệu mật Nhốt VPC + Mã hóa + Cấp IAM quyền tối thiểu
Bị nhốt trong VPC không thấy đường ra S3 Đập cái S3 VPC Gateway Endpoint vào
Tìm bọn PII trà trộn trước khi train Kêu Amazon Macie ra dọn dẹp
Cất mật khẩu DB Nhét vào AWS Secrets Manager
Muốn khóa mõm một cái IP lì lợm Chơi NACL (đừng xài Security Group)
Cứu API khỏi bọn DDoS Combo: API Gateway + WAF + Shield
Ép S3 phải chạy HTTPS Cắm bucket policy: aws:SecureTransport=true
Muốn chọt vào SageMaker từ cái private subnet Gắn SageMaker VPC Interface Endpoints
Mã hóa cục model artifacts Điền khóa KMS vào tham số output_kms_key

IAM Roles dành cho SageMaker

Role (Vai trò) Cần Chọc Vào Đâu
Training Job S3 (để lấy data, cất model), ECR, CloudWatch Logs, KMS
Endpoint S3 (để lấy model artifacts), CloudWatch Logs, ECR
Data Scientist SageMaker Studio, S3 (chỉ được ĐỌC), CẤM XÓA đồ trên production

Các Lựa chọn Cấu hình VPC

Option Tiền Truy cập Internet Phù hợp cho
Không xài VPC Chùa ✅ Thả phanh Xài data public, đang múa lửa thử nghiệm
VPC + NAT Gateway $$ ✅ Chỉ được chui ra Khi cần down mấy cái packages trên mạng về
VPC + Full Endpoints $ ❌ Cấm tiệt Cô lập tuyệt đối, đáp ứng mọi luật lá compliance

Chìa khóa Mã hóa (Encryption Keys)

Loại Khóa Trưởng Phòng Đổi pass (Rotation) Tiền Khi nào xài
AWS Managed Thằng AWS Auto (mỗi năm 1 lần) Free Lười, chả có yêu cầu gì sất
Customer Managed Mình cầm Mình tự xoay/Auto $1/tháng Do mấy sếp bên Compliance bắt buộc

10. Bí kíp Tóm tắt về Học chuyển giao (Transfer Learning) #exam-tip

Kích cỡ Data Chiến thuật (Strategy) Ví dụ
Ít xỉn (< 1K) Rút trích Đặc trưng (Đóng băng thân - freeze base) Có 500 tấm ảnh → Lấy con ResNet ra, chỉ xách cổ cái lớp cuối cùng ra train lại
Vừa vừa (1K-10K) Tinh chỉnh (Rã đông các lớp sâu - Fine-Tuning) Có 5000 tấm ảnh → Rã đông block cuối + lớp cuối ra train
Bao la (> 10K) Tinh chỉnh toàn bộ hoặc Train từ số không Có 50K ảnh → Rã đông train hết các lớp hoặc vứt luôn model cũ tự train model mới

Khi nào thì lôi Transfer Learning ra xài

  • ✅ Dataset quá phèn (ít hơn 10K mẫu).
  • ✅ Ví lép (ngân sách compute eo hẹp).
  • ✅ Cần kết quả ngay và luôn.
  • ✅ Dữ liệu của mình na ná cái dữ liệu mà cái model pre-trained kia từng được học.

Các “Ông kẹ” Pre-trained Models

  • Ảnh: ResNet, VGG, Inception, MobileNet (Mấy con này ăn dữ liệu ImageNet lớn lên).
  • Chữ (NLP): BERT, GPT, RoBERTa (Chơi hệ Hugging Face).
  • SageMaker: Bật thuật toán Image Classification lên (gài tham số use_pretrained_model=1).

Các Trọng điểm Đi thi

  • “Ít data (Limited data)” → Quất ngay Transfer learning.
  • “Tiết kiệm chi phí (Cost optimization)” → Lại là Transfer learning (train lẹ = bớt tốn tiền điện).
  • “Train bằng tập data bé xíu toàn văng lỗi” → Quay xe sang Transfer learning.
  • Learning rate phải KHỂ ĐỘNG RẤT NHỎ khi chạy fine-tuning (thường thấp hơn 10-100 lần so với việc train từ con số không).