Câu hỏi: AID301c Thiết kế sản phẩm TTNT – Bộ ôn tập cuối kỳ số 1
50 câu trắc nghiệm kèm lời giải của môn AID301c - Thiết kế sản phẩm TTNT, xếp đúng thứ tự trong đề. Trang 3/3 — câu 41–50.
Danh sách câu hỏi
50/50 câuHết danh sách
41Which of the following neural network architectures are most-commonly used for time-series analysis?5 lựa chọn
AMulti-layer perceptron
BRecurrent neural networks
CTransfer learning
DConvolutional neural network
EAutoencoders
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Recurrent neural networks". Recurrent neural network (mạng nơ-ron hồi quy) xử lý dữ liệu theo từng bước thời gian và mang theo một trạng thái ẩn đóng vai trò bộ nhớ, nên nắm được sự phụ thuộc giữa giá trị hiện tại với các giá trị trước đó; các biến thể như LSTM và GRU là lựa chọn quen thuộc nhất cho chuỗi thời gian. "Multi-layer perceptron" nhận một vectơ đầu vào cố định và không có cơ chế ghi nhớ thứ tự, nên phải tự tạo đặc trưng trễ bằng tay. "Transfer learning" là kỹ thuật tái sử dụng mô hình đã huấn luyện cho bài toán mới, không phải một kiến trúc mạng. "Convolutional neural network" mạnh nhất với dữ liệu ảnh; tích chập một chiều có thể dùng cho chuỗi nhưng không phải lựa chọn phổ biến nhất. "Autoencoders" chủ yếu dùng để nén dữ liệu hoặc phát hiện bất thường, không phải kiến trúc chính để mô hình hóa chuỗi thời gian.
ATrue
BFalse
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "True". Dữ liệu rời bỏ thuê bao (churn) của AAVAIL là bài toán phân loại có giám sát với nhãn hai lớp (khách ở lại hay huỷ), đặc trưng gồm cả biến số như tuổi, số lượt xem lẫn biến phân loại như quốc gia, loại thuê bao. Cây quyết định (decision tree) hợp với dạng dữ liệu này: nó chia dữ liệu theo ngưỡng của từng đặc trưng, không cần chuẩn hoá thang đo, nắm được quan hệ phi tuyến và tương tác giữa các biến, và cho ra các luật dễ giải thích với bộ phận kinh doanh, ví dụ nhóm khách nào có nguy cơ huỷ cao. Nó cũng là nền của các mô hình tập hợp như random forest. Vì vậy "False" không đúng: hạn chế của một cây đơn như dễ quá khớp (overfitting) chỉ đòi hỏi giới hạn độ sâu hay cắt tỉa, chứ không làm cây trở thành mô hình vô dụng cho dữ liệu churn.
ATo write new algorithms from scratch
BTo identify which parts of the code are bottlenecks
CTo increase the number of processor cores
DTo reduce the amount of data used
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "To identify which parts of the code are bottlenecks". Profiling (đo hồ sơ thực thi) là chạy chương trình dưới một công cụ đo như cProfile hay line_profiler để biết hàm hoặc dòng nào chiếm nhiều thời gian và bộ nhớ nhất, từ đó tối ưu đúng chỗ thay vì đoán; nguyên tắc là đo trước rồi mới sửa, vì phần lớn thời gian chạy thường dồn vào một phần nhỏ của mã. "To write new algorithms from scratch" sai vì profiling chỉ chỉ ra chỗ chậm, còn viết lại thuật toán là bước có thể làm sau đó và không phải lúc nào cũng cần. "To increase the number of processor cores" sai vì số nhân là phần cứng; profiling có thể gợi ý nên song song hoá nhưng không thay đổi tài nguyên máy. "To reduce the amount of data used" sai vì giảm dữ liệu là một chiến lược tối ưu khác, còn profiling giữ nguyên đầu vào để đo hành vi của mã.
44What type of data structures are used as standardized input to the interfaces in scikit-learn?4 lựa chọn
ALists and dictionaries
BDataFrames and Series
CNumPy arrays and SciPy sparse matrices
DStrings and tuples
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "NumPy arrays and SciPy sparse matrices". Các estimator (bộ ước lượng) của scikit-learn có giao diện thống nhất fit, predict, transform, và đầu vào chuẩn của chúng là mảng NumPy cho dữ liệu dày đặc và ma trận thưa của SciPy cho dữ liệu có rất nhiều số 0 như ma trận đếm từ khi xử lý văn bản. Phương án "Lists and dictionaries" sai vì đây là cấu trúc Python thuần; list có thể được chuyển ngầm thành mảng, còn dictionary phải qua DictVectorizer mới dùng được, nên chúng không phải dạng đầu vào chuẩn. Phương án "DataFrames and Series" là dạng dữ liệu của pandas, được chấp nhận vì scikit-learn chuyển chúng về mảng NumPy bên trong, nhưng cấu trúc chuẩn mà giao diện được thiết kế quanh vẫn là mảng. Phương án "Strings and tuples" sai vì mô hình cần đặc trưng dạng số; chuỗi ký tự phải được mã hoá hoặc vector hoá trước khi đưa vào.
AKubelet
BKube CTL
CDocker
DHelm
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Kube CTL". kubectl (đọc là kube control hoặc kube CTL) là công cụ dòng lệnh chính thức để gửi yêu cầu tới Kubernetes API server, dùng để tạo, xem, cập nhật và xoá tài nguyên như pod, deployment, service, ví dụ lệnh kubectl get pods. "Kubelet" là tác tử chạy trên mỗi node, nhận chỉ thị từ control plane và bảo đảm container chạy đúng, người dùng không gõ lệnh qua nó. "Docker" là công cụ đóng gói và chạy container, không phải giao diện tới Kubernetes API. "Helm" là trình quản lý gói (chart) cho Kubernetes; nó cũng làm việc với cụm nhưng là công cụ đóng gói triển khai ở tầng cao hơn, không phải công cụ dòng lệnh cơ bản để tương tác với API.
ATrue
BFalse
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "False". Trong Kubernetes, pod là đơn vị triển khai nhỏ nhất, gói một hoặc vài container dùng chung mạng và ổ lưu trữ. Deployment là đối tượng cấp cao hơn: nó khai báo trạng thái mong muốn, chẳng hạn chạy ba bản sao của một pod mẫu, rồi thông qua ReplicaSet tạo, thay thế và cập nhật dần các pod đó. Quan hệ vì vậy là Deployment quản lý nhiều pod, không có chiều ngược lại; một pod chỉ chứa container, không thể chứa Deployment. Phát biểu "True" sai vì đảo ngược thứ bậc này: nếu nhầm như vậy, người vận hành sẽ hiểu sai cách mở rộng ứng dụng, vốn được làm bằng cách tăng số bản sao trong Deployment chứ không phải nhét thêm thứ gì vào một pod.
ATrue
BFalse
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "True". Docker image (ảnh Docker) là bản mẫu chỉ đọc gồm hệ điều hành tối giản, thư viện và mã ứng dụng; container là một phiên bản đang chạy được tạo ra từ image đó. Quy trình mô tả trong câu là đúng: lệnh docker pull tải image từ registry (kho chứa image, như Docker Hub) về máy, rồi docker run yêu cầu Docker client tạo và chạy container dựa trên image ấy. Trên Docker Hub cũng có cả image chính thức (official image) do Docker và nhà phát triển phần mềm duy trì, như python hay ubuntu, lẫn rất nhiều image do người dùng tự xây và đẩy lên. Chọn "False" là sai, vì mọi vế trong phát biểu, từ vai trò làm nền của image, thao tác kéo và chạy, đến sự tồn tại song song của image chính thức và image người dùng, đều khớp với cách Docker hoạt động.
48Which of the following classifiers is inherently designed for multiclass classification?4 lựa chọn
ALinear Regression
BNaive Bayes
CK-Means Clustering
DDecision Trees (in binary mode)
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Naive Bayes". Naive Bayes dùng định lý Bayes với giả định các đặc trưng độc lập có điều kiện để tính xác suất hậu nghiệm P(lớp | đặc trưng) cho từng lớp rồi chọn lớp có xác suất lớn nhất, nên nó xử lý tự nhiên bất kỳ số lớp nào mà không cần chiến lược one-vs-rest (một-đấu-phần-còn-lại). "Linear Regression" là mô hình hồi quy dự đoán giá trị liên tục, không phải bộ phân loại. "K-Means Clustering" là thuật toán phân cụm không giám sát, không học từ nhãn lớp nên không phải bộ phân loại đa lớp. "Decision Trees (in binary mode)" tự giới hạn ở chế độ nhị phân; cây quyết định thông thường vẫn phân loại được nhiều lớp, nhưng mô tả gắn với chế độ nhị phân này không phải ví dụ của một bộ phân loại vốn được thiết kế cho đa lớp như câu hỏi yêu cầu.
ATransformer, Estimator, Predictor
BTransformer, Estimator
CEstimator, Predictor
DTransformer
ETransformer, Predictor
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Transformer, Estimator". Trong scikit-learn, mọi đối tượng học từ dữ liệu bằng fit đều theo giao diện Estimator (bộ ước lượng), còn giao diện Transformer (bộ biến đổi) bổ sung transform để biến đổi dữ liệu; fit_transform là phương thức của transformer, gộp fit rồi transform trên cùng dữ liệu, nên nó gắn với cả hai giao diện, ví dụ StandardScaler hay PCA. "Transformer, Estimator, Predictor" sai vì giao diện Predictor gắn với phương thức predict, mà fit_transform không trả về dự đoán. "Estimator, Predictor" sai vì thiếu Transformer, chính là giao diện định nghĩa bước transform trong fit_transform, lại thêm Predictor không liên quan. "Transformer" sai vì bỏ sót Estimator: phần fit của phương thức là đặc trưng của estimator, và transformer trong sklearn vốn đồng thời là estimator. "Transformer, Predictor" sai vì Predictor chỉ áp dụng cho mô hình có predict như hồi quy hay phân loại, đồng thời lại thiếu Estimator.
Apip install ibm-watson
Bpip install --upgrade ibm-watson
Cinstall ibm-watson
Dupgrade ibm-watson
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "pip install ibm-watson". Watson Developer Cloud Python SDK được phát hành trên PyPI với tên gói ibm-watson, nên lệnh cài đặt cơ bản là dùng trình quản lý gói pip với lệnh install và tên gói đó. Phương án "pip install --upgrade ibm-watson" là biến thể dùng để cập nhật gói lên bản mới nhất khi đã cài, hoặc cài mới kèm nâng cấp; nó cũng chạy được, nhưng câu hỏi hỏi lệnh cài đặt, và cờ --upgrade chỉ bổ sung hành vi nâng cấp chứ không phải lệnh cài chuẩn. Phương án "install ibm-watson" sai vì thiếu chương trình pip đứng trước, shell sẽ không hiểu install là lệnh cài gói Python. Phương án "upgrade ibm-watson" sai vì không có lệnh upgrade độc lập trong pip hay trong shell; nâng cấp phải viết dưới dạng cờ của lệnh pip install.