Google Professional Machine Learning Engineer Question 2
Select 3Google Cloud PlatformYou are a machine learning engineer at a retail company. Your team wants to predict product sales using historical sales data stored in BigQuery. You decide to use BigQuery ML to build a regression model. Which of the following are important considerations when developing the model in BigQuery ML?
- A
Ensure the dataset is split into training and evaluation sets using a SQL query.
- B
Select 'KMeans' as the model type for regression tasks.
- C
Include feature engineering steps such as creating derived features using SQL.
- D
Use the 'ML.EVALUATE' function to assess model performance.
- E
Manually implement gradient descent logic in the SQL query.
Show answer and explanation
Correct answers: A, C, D
Explanation
When developing ML models with BigQuery ML, it is important to properly split the dataset for training and evaluation, perform feature engineering to improve model performance, and use built-in functions like 'ML.EVALUATE' for model assessment. Selecting the correct model type and leveraging BigQuery ML's built-in capabilities are crucial for the success of the project.
- A. Correct.
Correct: Splitting the dataset into training and evaluation sets is a critical step to ensure model performance is evaluated properly. This can be done using SQL queries in BigQuery.
- B. Incorrect.
Incorrect: 'KMeans' is a clustering algorithm and is not suitable for regression tasks. For regression, you should use models like 'LINEAR_REG' or 'AUTO_ML'.
- C. Correct.
Correct: Feature engineering, such as creating derived features, is an important part of improving model performance, and SQL provides a powerful way to perform this in BigQuery ML.
- D. Correct.
Correct: The 'ML.EVALUATE' function is specifically designed to assess the performance of models built using BigQuery ML, providing metrics like RMSE for regression tasks.
- E. Incorrect.
Incorrect: Implementing gradient descent manually is unnecessary in BigQuery ML as it abstracts the training process, including optimization algorithms, from the user.