-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLinear-Regression-models-Train-Loss.sql
33 lines (29 loc) · 1.25 KB
/
Linear-Regression-models-Train-Loss.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#Create Linear Regression Model with different features
-- Using MSE metrics to compare training loss and choose the best model performance (or features variables)
CREATE OR REPLACE MODEL`01_nyc_bike_sharing.trip_duration_by_stations`
OPTIONS
(MODEL_TYPE='linear_reg',
INPUT_LABEL_COLS=['tripduration']) AS
SELECT start_station_name, end_station_name, tripduration
FROM `01_nyc_bike_sharing.training_table`
-- Add 1 new feature
CREATE OR REPLACE MODEL
`01_nyc_bike_sharing.trip_duration_by_stations_and_day`
OPTIONS
(MODEL_TYPE='linear_reg',
INPUT_LABEL_COLS=['tripduration']) AS
SELECT start_station_name, end_station_name, tripduration,
IF (EXTRACT (DAYOFWEEK FROM starttime)= 1 OR
EXTRACT (DAYOFWEEK FROM starttime)= 7, TRUE, FALSE) AS is_weekend
FROM `01_nyc_bike_sharing.training_table`;
-- Add 2 new features
CREATE OR REPLACE MODEL
`01_nyc_bike_sharing.trip_duration_by_stations_day_age`
OPTIONS
(MODEL_TYPE='linear_reg',
INPUT_LABEL_COLS=['tripduration']) AS
SELECT start_station_name, end_station_name, tripduration,
IF (EXTRACT (DAYOFWEEK FROM starttime)= 1 OR
EXTRACT (DAYOFWEEK FROM starttime)= 7, TRUE, FALSE) AS is_weekend,
EXTRACT (YEAR FROM starttime) - birth_year AS age
FROM `01_nyc_bike_sharing.training_table`;