Google Professional Machine Learning Engineer Question 217
Single answerGoogle Cloud PlatformYou are designing a machine learning model to classify millions of images into 1000 categories for a global e-commerce platform. High accuracy is critical, and you need to ensure that the model can be retrained efficiently as more labeled data becomes available. The platform’s data is stored in Google Cloud Storage, and you need to select the most appropriate ML framework and model architecture. Which combination should you choose?
- A
Use TensorFlow with a pre-trained EfficientNet architecture and fine-tune it using transfer learning.
- B
Use Scikit-learn with a Random Forest model trained from scratch on the entire dataset.
- C
Use PyTorch with a custom Convolutional Neural Network (CNN) designed and trained from scratch.
- D
Use TensorFlow with a pre-trained MobileNet architecture and perform feature extraction.
Show answer and explanation
Correct answer: A
Explanation
For large-scale image classification tasks with high accuracy requirements, using TensorFlow with a pre-trained model like EfficientNet is the best choice. EfficientNet offers state-of-the-art accuracy and efficiency, while TensorFlow’s integration with Google Cloud Storage ensures seamless data access and retraining capabilities. Fine-tuning a pre-trained model significantly reduces the computational burden compared to training a model from scratch.
- A. Correct.
This option is correct because TensorFlow is well-suited for large-scale image classification tasks and integrates seamlessly with Google Cloud Storage. Using a pre-trained EfficientNet architecture and fine-tuning with transfer learning allows you to achieve high accuracy while reducing training time and computing costs.
- B. Incorrect.
This option is incorrect because Scikit-learn and Random Forest models are not ideal for high-dimensional data such as images. Additionally, training from scratch on such a large dataset would be computationally expensive and unlikely to achieve state-of-the-art performance.
- C. Incorrect.
This option is incorrect because designing and training a custom CNN from scratch would require significant computational resources, a large amount of labeled data, and expertise. Using a pre-trained model would be more efficient and effective.
- D. Incorrect.
This option is incorrect because MobileNet is more suited for mobile and edge devices where lightweight models are prioritized. While it can perform well, it may not achieve the same level of accuracy as EfficientNet for a high-stakes, large-scale classification task.