[
https://issues.apache.org/jira/browse/MADLIB-1471?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Frank McQuillan closed MADLIB-1471.
-----------------------------------
Resolution: Fixed
https://github.com/apache/madlib/pull/557
> MLP weights param not working
> -----------------------------
>
> Key: MADLIB-1471
> URL: https://issues.apache.org/jira/browse/MADLIB-1471
> Project: Apache MADlib
> Issue Type: New Feature
> Components: Module: Neural Networks
> Reporter: Frank McQuillan
> Priority: Major
> Fix For: v1.18.0
>
>
> Weights function not working for MLP with weight as numeric type:
> {code}
> DROP TABLE IF EXISTS temp1;
> CREATE TABLE temp1(
> id serial,
> attributes numeric[],
> class_text varchar,
> row_weight numeric
> );
> INSERT INTO temp1(id, attributes, class_text, row_weight) VALUES
> (1,ARRAY[5.1,3.5,1.4,0.2],'Iris-setosa', 1.0),
> (2,ARRAY[4.9,3.0,1.4,0.2],'Iris-setosa', 1.0),
> (3,ARRAY[4.7,3.2,1.3,0.2],'Iris-setosa', 1.0),
> (4,ARRAY[4.6,3.1,1.5,0.2],'Iris-setosa', 1.0),
> (5,ARRAY[5.0,3.6,1.4,0.2],'Iris-setosa', 1.0),
> (6,ARRAY[5.4,3.9,1.7,0.4],'Iris-setosa', 1.0),
> (7,ARRAY[4.6,3.4,1.4,0.3],'Iris-setosa', 1.0),
> (8,ARRAY[5.0,3.4,1.5,0.2],'Iris-setosa', 1.0),
> (9,ARRAY[4.4,2.9,1.4,0.2],'Iris-setosa', 1.0),
> (10,ARRAY[4.9,3.1,1.5,0.1],'Iris-setosa', 1.0),
> (11,ARRAY[5.4,3.7,1.5,0.2],'Iris-setosa', 1.0),
> (12,ARRAY[4.8,3.4,1.6,0.2],'Iris-setosa', 1.0),
> (13,ARRAY[4.8,3.0,1.4,0.1],'Iris-setosa', 1.0),
> (14,ARRAY[4.3,3.0,1.1,0.1],'Iris-setosa', 1.0),
> (15,ARRAY[5.8,4.0,1.2,0.2],'Iris-setosa', 1.0),
> (16,ARRAY[5.7,4.4,1.5,0.4],'Iris-setosa', 1.0),
> (17,ARRAY[5.4,3.9,1.3,0.4],'Iris-setosa', 1.0),
> (18,ARRAY[5.1,3.5,1.4,0.3],'Iris-setosa', 1.0),
> (19,ARRAY[5.7,3.8,1.7,0.3],'Iris-setosa', 1.0),
> (20,ARRAY[5.1,3.8,1.5,0.3],'Iris-setosa', 1.0),
> (21,ARRAY[5.4,3.4,1.7,0.2],'Iris-setosa', 1.0),
> (22,ARRAY[5.1,3.7,1.5,0.4],'Iris-setosa', 1.0),
> (23,ARRAY[4.6,3.6,1.0,0.2],'Iris-setosa', 1.0),
> (24,ARRAY[5.1,3.3,1.7,0.5],'Iris-setosa', 1.0),
> (25,ARRAY[4.8,3.4,1.9,0.2],'Iris-setosa', 1.0),
> (26,ARRAY[5.0,3.0,1.6,0.2],'Iris-setosa', 1.0),
> (27,ARRAY[5.0,3.4,1.6,0.4],'Iris-setosa', 1.0),
> (28,ARRAY[5.2,3.5,1.5,0.2],'Iris-setosa', 1.0),
> (29,ARRAY[5.2,3.4,1.4,0.2],'Iris-setosa', 1.0),
> (30,ARRAY[4.7,3.2,1.6,0.2],'Iris-setosa', 1.0),
> (31,ARRAY[4.8,3.1,1.6,0.2],'Iris-setosa', 1.0),
> (32,ARRAY[5.4,3.4,1.5,0.4],'Iris-setosa', 1.0),
> (33,ARRAY[5.2,4.1,1.5,0.1],'Iris-setosa', 1.0),
> (34,ARRAY[5.5,4.2,1.4,0.2],'Iris-setosa', 1.0),
> (35,ARRAY[4.9,3.1,1.5,0.1],'Iris-setosa', 1.0),
> (36,ARRAY[5.0,3.2,1.2,0.2],'Iris-setosa', 1.0),
> (37,ARRAY[5.5,3.5,1.3,0.2],'Iris-setosa', 1.0),
> (38,ARRAY[4.9,3.1,1.5,0.1],'Iris-setosa', 1.0),
> (39,ARRAY[4.4,3.0,1.3,0.2],'Iris-setosa', 1.0),
> (40,ARRAY[5.1,3.4,1.5,0.2],'Iris-setosa', 1.0),
> (41,ARRAY[5.0,3.5,1.3,0.3],'Iris-setosa', 1.0),
> (42,ARRAY[4.5,2.3,1.3,0.3],'Iris-setosa', 1.0),
> (43,ARRAY[4.4,3.2,1.3,0.2],'Iris-setosa', 1.0),
> (44,ARRAY[5.0,3.5,1.6,0.6],'Iris-setosa', 1.0),
> (45,ARRAY[5.1,3.8,1.9,0.4],'Iris-setosa', 1.0),
> (46,ARRAY[4.8,3.0,1.4,0.3],'Iris-setosa', 1.0),
> (47,ARRAY[5.1,3.8,1.6,0.2],'Iris-setosa', 1.0),
> (48,ARRAY[4.6,3.2,1.4,0.2],'Iris-setosa', 1.0),
> (49,ARRAY[5.3,3.7,1.5,0.2],'Iris-setosa', 1.0),
> (50,ARRAY[5.0,3.3,1.4,0.2],'Iris-setosa', 1.0),
> (51,ARRAY[7.0,3.2,4.7,1.4],'Iris-versicolor', 1.0),
> (52,ARRAY[6.4,3.2,4.5,1.5],'Iris-versicolor', 1.0),
> (53,ARRAY[6.9,3.1,4.9,1.5],'Iris-versicolor', 1.0),
> (54,ARRAY[5.5,2.3,4.0,1.3],'Iris-versicolor', 1.0),
> (55,ARRAY[6.5,2.8,4.6,1.5],'Iris-versicolor', 1.0),
> (56,ARRAY[5.7,2.8,4.5,1.3],'Iris-versicolor', 1.0),
> (57,ARRAY[6.3,3.3,4.7,1.6],'Iris-versicolor', 1.0),
> (58,ARRAY[4.9,2.4,3.3,1.0],'Iris-versicolor', 1.0),
> (59,ARRAY[6.6,2.9,4.6,1.3],'Iris-versicolor', 1.0),
> (60,ARRAY[5.2,2.7,3.9,1.4],'Iris-versicolor', 1.0),
> (61,ARRAY[5.0,2.0,3.5,1.0],'Iris-versicolor', 1.0),
> (62,ARRAY[5.9,3.0,4.2,1.5],'Iris-versicolor', 1.0),
> (63,ARRAY[6.0,2.2,4.0,1.0],'Iris-versicolor', 1.0),
> (64,ARRAY[6.1,2.9,4.7,1.4],'Iris-versicolor', 1.0),
> (65,ARRAY[5.6,2.9,3.6,1.3],'Iris-versicolor', 1.0),
> (66,ARRAY[6.7,3.1,4.4,1.4],'Iris-versicolor', 1.0),
> (67,ARRAY[5.6,3.0,4.5,1.5],'Iris-versicolor', 1.0),
> (68,ARRAY[5.8,2.7,4.1,1.0],'Iris-versicolor', 1.0),
> (69,ARRAY[6.2,2.2,4.5,1.5],'Iris-versicolor', 1.0),
> (70,ARRAY[5.6,2.5,3.9,1.1],'Iris-versicolor', 1.0),
> (71,ARRAY[5.9,3.2,4.8,1.8],'Iris-versicolor', 1.0),
> (72,ARRAY[6.1,2.8,4.0,1.3],'Iris-versicolor', 1.0),
> (73,ARRAY[6.3,2.5,4.9,1.5],'Iris-versicolor', 1.0),
> (74,ARRAY[6.1,2.8,4.7,1.2],'Iris-versicolor', 1.0),
> (75,ARRAY[6.4,2.9,4.3,1.3],'Iris-versicolor', 1.0),
> (76,ARRAY[6.6,3.0,4.4,1.4],'Iris-versicolor', 1.0),
> (77,ARRAY[6.8,2.8,4.8,1.4],'Iris-versicolor', 1.0),
> (78,ARRAY[6.7,3.0,5.0,1.7],'Iris-versicolor', 1.0),
> (79,ARRAY[6.0,2.9,4.5,1.5],'Iris-versicolor', 1.0),
> (80,ARRAY[5.7,2.6,3.5,1.0],'Iris-versicolor', 1.0),
> (81,ARRAY[5.5,2.4,3.8,1.1],'Iris-versicolor', 1.0),
> (82,ARRAY[5.5,2.4,3.7,1.0],'Iris-versicolor', 1.0),
> (83,ARRAY[5.8,2.7,3.9,1.2],'Iris-versicolor', 1.0),
> (84,ARRAY[6.0,2.7,5.1,1.6],'Iris-versicolor', 1.0),
> (85,ARRAY[5.4,3.0,4.5,1.5],'Iris-versicolor', 1.0),
> (86,ARRAY[6.0,3.4,4.5,1.6],'Iris-versicolor', 1.0),
> (87,ARRAY[6.7,3.1,4.7,1.5],'Iris-versicolor', 1.0),
> (88,ARRAY[6.3,2.3,4.4,1.3],'Iris-versicolor', 1.0),
> (89,ARRAY[5.6,3.0,4.1,1.3],'Iris-versicolor', 1.0),
> (90,ARRAY[5.5,2.5,4.0,1.3],'Iris-versicolor', 1.0),
> (91,ARRAY[5.5,2.6,4.4,1.2],'Iris-versicolor', 1.0),
> (92,ARRAY[6.1,3.0,4.6,1.4],'Iris-versicolor', 1.0),
> (93,ARRAY[5.8,2.6,4.0,1.2],'Iris-versicolor', 1.0),
> (94,ARRAY[5.0,2.3,3.3,1.0],'Iris-versicolor', 1.0),
> (95,ARRAY[5.6,2.7,4.2,1.3],'Iris-versicolor', 1.0),
> (96,ARRAY[5.7,3.0,4.2,1.2],'Iris-versicolor', 1.0),
> (97,ARRAY[5.7,2.9,4.2,1.3],'Iris-versicolor', 1.0),
> (98,ARRAY[6.2,2.9,4.3,1.3],'Iris-versicolor', 1.0),
> (99,ARRAY[5.1,2.5,3.0,1.1],'Iris-versicolor', 1.0),
> (100,ARRAY[5.7,2.8,4.1,1.3],'Iris-versicolor', 1.0),
> (101,ARRAY[6.3,3.3,6.0,2.5],'Iris-virginica', 1.0),
> (102,ARRAY[5.8,2.7,5.1,1.9],'Iris-virginica', 1.0),
> (103,ARRAY[7.1,3.0,5.9,2.1],'Iris-virginica', 1.0),
> (104,ARRAY[6.3,2.9,5.6,1.8],'Iris-virginica', 1.0),
> (105,ARRAY[6.5,3.0,5.8,2.2],'Iris-virginica', 1.0),
> (106,ARRAY[7.6,3.0,6.6,2.1],'Iris-virginica', 1.0),
> (107,ARRAY[4.9,2.5,4.5,1.7],'Iris-virginica', 1.0),
> (108,ARRAY[7.3,2.9,6.3,1.8],'Iris-virginica', 1.0),
> (109,ARRAY[6.7,2.5,5.8,1.8],'Iris-virginica', 1.0),
> (110,ARRAY[7.2,3.6,6.1,2.5],'Iris-virginica', 1.0),
> (111,ARRAY[6.5,3.2,5.1,2.0],'Iris-virginica', 1.0),
> (112,ARRAY[6.4,2.7,5.3,1.9],'Iris-virginica', 1.0),
> (113,ARRAY[6.8,3.0,5.5,2.1],'Iris-virginica', 1.0),
> (114,ARRAY[5.7,2.5,5.0,2.0],'Iris-virginica', 1.0),
> (115,ARRAY[5.8,2.8,5.1,2.4],'Iris-virginica', 1.0),
> (116,ARRAY[6.4,3.2,5.3,2.3],'Iris-virginica', 1.0),
> (117,ARRAY[6.5,3.0,5.5,1.8],'Iris-virginica', 1.0),
> (118,ARRAY[7.7,3.8,6.7,2.2],'Iris-virginica', 1.0),
> (119,ARRAY[7.7,2.6,6.9,2.3],'Iris-virginica', 1.0),
> (120,ARRAY[6.0,2.2,5.0,1.5],'Iris-virginica', 1.0),
> (121,ARRAY[6.9,3.2,5.7,2.3],'Iris-virginica', 1.0),
> (122,ARRAY[5.6,2.8,4.9,2.0],'Iris-virginica', 1.0),
> (123,ARRAY[7.7,2.8,6.7,2.0],'Iris-virginica', 1.0),
> (124,ARRAY[6.3,2.7,4.9,1.8],'Iris-virginica', 1.0),
> (125,ARRAY[6.7,3.3,5.7,2.1],'Iris-virginica', 1.0),
> (126,ARRAY[7.2,3.2,6.0,1.8],'Iris-virginica', 1.0),
> (127,ARRAY[6.2,2.8,4.8,1.8],'Iris-virginica', 1.0),
> (128,ARRAY[6.1,3.0,4.9,1.8],'Iris-virginica', 1.0),
> (129,ARRAY[6.4,2.8,5.6,2.1],'Iris-virginica', 1.0),
> (130,ARRAY[7.2,3.0,5.8,1.6],'Iris-virginica', 1.0),
> (131,ARRAY[7.4,2.8,6.1,1.9],'Iris-virginica', 1.0),
> (132,ARRAY[7.9,3.8,6.4,2.0],'Iris-virginica', 1.0),
> (133,ARRAY[6.4,2.8,5.6,2.2],'Iris-virginica', 1.0),
> (134,ARRAY[6.3,2.8,5.1,1.5],'Iris-virginica', 1.0),
> (135,ARRAY[6.1,2.6,5.6,1.4],'Iris-virginica', 1.0),
> (136,ARRAY[7.7,3.0,6.1,2.3],'Iris-virginica', 1.0),
> (137,ARRAY[6.3,3.4,5.6,2.4],'Iris-virginica', 1.0),
> (138,ARRAY[6.4,3.1,5.5,1.8],'Iris-virginica', 1.0),
> (139,ARRAY[6.0,3.0,4.8,1.8],'Iris-virginica', 1.0),
> (140,ARRAY[6.9,3.1,5.4,2.1],'Iris-virginica', 1.0),
> (141,ARRAY[6.7,3.1,5.6,2.4],'Iris-virginica', 1.0),
> (142,ARRAY[6.9,3.1,5.1,2.3],'Iris-virginica', 1.0),
> (143,ARRAY[5.8,2.7,5.1,1.9],'Iris-virginica', 1.0),
> (144,ARRAY[6.8,3.2,5.9,2.3],'Iris-virginica', 1.0),
> (145,ARRAY[6.7,3.3,5.7,2.5],'Iris-virginica', 1.0),
> (146,ARRAY[6.7,3.0,5.2,2.3],'Iris-virginica', 1.0),
> (147,ARRAY[6.3,2.5,5.0,1.9],'Iris-virginica', 1.0),
> (148,ARRAY[6.5,3.0,5.2,2.0],'Iris-virginica', 1.0),
> (149,ARRAY[6.2,3.4,5.4,2.3],'Iris-virginica', 1.0),
> (150,ARRAY[5.9,3.0,5.1,1.8],'Iris-virginica', 1.0);
> DROP TABLE IF EXISTS mlp_model, mlp_model_summary, mlp_model_standardization;
> -- Set seed so results are reproducible
> SELECT setseed(0);
> SELECT madlib.mlp_classification(
> 'temp1', -- Source table
> 'mlp_model', -- Destination table
> 'attributes', -- Input features
> 'class_text', -- Label
> ARRAY[5], -- Number of units per layer
> 'learning_rate_init=0.003,
> n_iterations=500,
> tolerance=0', -- Optimizer params
> 'tanh', -- Activation function
> 'row_weight', -- Weight
> FALSE, -- No warm start
> FALSE -- Not verbose
> );
> {code}
> produces
> {code}
> ERROR: plpy.Error: MLP error: Weights should be a numeric type
> CONTEXT: Traceback (most recent call last):
> PL/Python function "mlp_classification", line 33, in <module>
> grouping_col)
> PL/Python function "mlp_classification", line 42, in wrapper
> PL/Python function "mlp_classification", line 116, in mlp
> PL/Python function "mlp_classification", line 740, in
> _validate_params_based_on_minibatch
> PL/Python function "mlp_classification", line 123, in _assert
> PL/Python function "mlp_classification"
> {code}
> Also error with weight as double precision type:
> {code}
> DROP TABLE IF EXISTS temp1;
> CREATE TABLE temp1(
> id serial,
> attributes numeric[],
> class_text varchar,
> row_weight double precision
> );
> INSERT INTO temp1(id, attributes, class_text, row_weight) VALUES
> (1,ARRAY[5.1,3.5,1.4,0.2],'Iris-setosa', 1.0),
> (2,ARRAY[4.9,3.0,1.4,0.2],'Iris-setosa', 1.0),
> (3,ARRAY[4.7,3.2,1.3,0.2],'Iris-setosa', 1.0),
> (4,ARRAY[4.6,3.1,1.5,0.2],'Iris-setosa', 1.0),
> (5,ARRAY[5.0,3.6,1.4,0.2],'Iris-setosa', 1.0),
> (6,ARRAY[5.4,3.9,1.7,0.4],'Iris-setosa', 1.0),
> (7,ARRAY[4.6,3.4,1.4,0.3],'Iris-setosa', 1.0),
> (8,ARRAY[5.0,3.4,1.5,0.2],'Iris-setosa', 1.0),
> (9,ARRAY[4.4,2.9,1.4,0.2],'Iris-setosa', 1.0),
> (10,ARRAY[4.9,3.1,1.5,0.1],'Iris-setosa', 1.0),
> (11,ARRAY[5.4,3.7,1.5,0.2],'Iris-setosa', 1.0),
> (12,ARRAY[4.8,3.4,1.6,0.2],'Iris-setosa', 1.0),
> (13,ARRAY[4.8,3.0,1.4,0.1],'Iris-setosa', 1.0),
> (14,ARRAY[4.3,3.0,1.1,0.1],'Iris-setosa', 1.0),
> (15,ARRAY[5.8,4.0,1.2,0.2],'Iris-setosa', 1.0),
> (16,ARRAY[5.7,4.4,1.5,0.4],'Iris-setosa', 1.0),
> (17,ARRAY[5.4,3.9,1.3,0.4],'Iris-setosa', 1.0),
> (18,ARRAY[5.1,3.5,1.4,0.3],'Iris-setosa', 1.0),
> (19,ARRAY[5.7,3.8,1.7,0.3],'Iris-setosa', 1.0),
> (20,ARRAY[5.1,3.8,1.5,0.3],'Iris-setosa', 1.0),
> (21,ARRAY[5.4,3.4,1.7,0.2],'Iris-setosa', 1.0),
> (22,ARRAY[5.1,3.7,1.5,0.4],'Iris-setosa', 1.0),
> (23,ARRAY[4.6,3.6,1.0,0.2],'Iris-setosa', 1.0),
> (24,ARRAY[5.1,3.3,1.7,0.5],'Iris-setosa', 1.0),
> (25,ARRAY[4.8,3.4,1.9,0.2],'Iris-setosa', 1.0),
> (26,ARRAY[5.0,3.0,1.6,0.2],'Iris-setosa', 1.0),
> (27,ARRAY[5.0,3.4,1.6,0.4],'Iris-setosa', 1.0),
> (28,ARRAY[5.2,3.5,1.5,0.2],'Iris-setosa', 1.0),
> (29,ARRAY[5.2,3.4,1.4,0.2],'Iris-setosa', 1.0),
> (30,ARRAY[4.7,3.2,1.6,0.2],'Iris-setosa', 1.0),
> (31,ARRAY[4.8,3.1,1.6,0.2],'Iris-setosa', 1.0),
> (32,ARRAY[5.4,3.4,1.5,0.4],'Iris-setosa', 1.0),
> (33,ARRAY[5.2,4.1,1.5,0.1],'Iris-setosa', 1.0),
> (34,ARRAY[5.5,4.2,1.4,0.2],'Iris-setosa', 1.0),
> (35,ARRAY[4.9,3.1,1.5,0.1],'Iris-setosa', 1.0),
> (36,ARRAY[5.0,3.2,1.2,0.2],'Iris-setosa', 1.0),
> (37,ARRAY[5.5,3.5,1.3,0.2],'Iris-setosa', 1.0),
> (38,ARRAY[4.9,3.1,1.5,0.1],'Iris-setosa', 1.0),
> (39,ARRAY[4.4,3.0,1.3,0.2],'Iris-setosa', 1.0),
> (40,ARRAY[5.1,3.4,1.5,0.2],'Iris-setosa', 1.0),
> (41,ARRAY[5.0,3.5,1.3,0.3],'Iris-setosa', 1.0),
> (42,ARRAY[4.5,2.3,1.3,0.3],'Iris-setosa', 1.0),
> (43,ARRAY[4.4,3.2,1.3,0.2],'Iris-setosa', 1.0),
> (44,ARRAY[5.0,3.5,1.6,0.6],'Iris-setosa', 1.0),
> (45,ARRAY[5.1,3.8,1.9,0.4],'Iris-setosa', 1.0),
> (46,ARRAY[4.8,3.0,1.4,0.3],'Iris-setosa', 1.0),
> (47,ARRAY[5.1,3.8,1.6,0.2],'Iris-setosa', 1.0),
> (48,ARRAY[4.6,3.2,1.4,0.2],'Iris-setosa', 1.0),
> (49,ARRAY[5.3,3.7,1.5,0.2],'Iris-setosa', 1.0),
> (50,ARRAY[5.0,3.3,1.4,0.2],'Iris-setosa', 1.0),
> (51,ARRAY[7.0,3.2,4.7,1.4],'Iris-versicolor', 1.0),
> (52,ARRAY[6.4,3.2,4.5,1.5],'Iris-versicolor', 1.0),
> (53,ARRAY[6.9,3.1,4.9,1.5],'Iris-versicolor', 1.0),
> (54,ARRAY[5.5,2.3,4.0,1.3],'Iris-versicolor', 1.0),
> (55,ARRAY[6.5,2.8,4.6,1.5],'Iris-versicolor', 1.0),
> (56,ARRAY[5.7,2.8,4.5,1.3],'Iris-versicolor', 1.0),
> (57,ARRAY[6.3,3.3,4.7,1.6],'Iris-versicolor', 1.0),
> (58,ARRAY[4.9,2.4,3.3,1.0],'Iris-versicolor', 1.0),
> (59,ARRAY[6.6,2.9,4.6,1.3],'Iris-versicolor', 1.0),
> (60,ARRAY[5.2,2.7,3.9,1.4],'Iris-versicolor', 1.0),
> (61,ARRAY[5.0,2.0,3.5,1.0],'Iris-versicolor', 1.0),
> (62,ARRAY[5.9,3.0,4.2,1.5],'Iris-versicolor', 1.0),
> (63,ARRAY[6.0,2.2,4.0,1.0],'Iris-versicolor', 1.0),
> (64,ARRAY[6.1,2.9,4.7,1.4],'Iris-versicolor', 1.0),
> (65,ARRAY[5.6,2.9,3.6,1.3],'Iris-versicolor', 1.0),
> (66,ARRAY[6.7,3.1,4.4,1.4],'Iris-versicolor', 1.0),
> (67,ARRAY[5.6,3.0,4.5,1.5],'Iris-versicolor', 1.0),
> (68,ARRAY[5.8,2.7,4.1,1.0],'Iris-versicolor', 1.0),
> (69,ARRAY[6.2,2.2,4.5,1.5],'Iris-versicolor', 1.0),
> (70,ARRAY[5.6,2.5,3.9,1.1],'Iris-versicolor', 1.0),
> (71,ARRAY[5.9,3.2,4.8,1.8],'Iris-versicolor', 1.0),
> (72,ARRAY[6.1,2.8,4.0,1.3],'Iris-versicolor', 1.0),
> (73,ARRAY[6.3,2.5,4.9,1.5],'Iris-versicolor', 1.0),
> (74,ARRAY[6.1,2.8,4.7,1.2],'Iris-versicolor', 1.0),
> (75,ARRAY[6.4,2.9,4.3,1.3],'Iris-versicolor', 1.0),
> (76,ARRAY[6.6,3.0,4.4,1.4],'Iris-versicolor', 1.0),
> (77,ARRAY[6.8,2.8,4.8,1.4],'Iris-versicolor', 1.0),
> (78,ARRAY[6.7,3.0,5.0,1.7],'Iris-versicolor', 1.0),
> (79,ARRAY[6.0,2.9,4.5,1.5],'Iris-versicolor', 1.0),
> (80,ARRAY[5.7,2.6,3.5,1.0],'Iris-versicolor', 1.0),
> (81,ARRAY[5.5,2.4,3.8,1.1],'Iris-versicolor', 1.0),
> (82,ARRAY[5.5,2.4,3.7,1.0],'Iris-versicolor', 1.0),
> (83,ARRAY[5.8,2.7,3.9,1.2],'Iris-versicolor', 1.0),
> (84,ARRAY[6.0,2.7,5.1,1.6],'Iris-versicolor', 1.0),
> (85,ARRAY[5.4,3.0,4.5,1.5],'Iris-versicolor', 1.0),
> (86,ARRAY[6.0,3.4,4.5,1.6],'Iris-versicolor', 1.0),
> (87,ARRAY[6.7,3.1,4.7,1.5],'Iris-versicolor', 1.0),
> (88,ARRAY[6.3,2.3,4.4,1.3],'Iris-versicolor', 1.0),
> (89,ARRAY[5.6,3.0,4.1,1.3],'Iris-versicolor', 1.0),
> (90,ARRAY[5.5,2.5,4.0,1.3],'Iris-versicolor', 1.0),
> (91,ARRAY[5.5,2.6,4.4,1.2],'Iris-versicolor', 1.0),
> (92,ARRAY[6.1,3.0,4.6,1.4],'Iris-versicolor', 1.0),
> (93,ARRAY[5.8,2.6,4.0,1.2],'Iris-versicolor', 1.0),
> (94,ARRAY[5.0,2.3,3.3,1.0],'Iris-versicolor', 1.0),
> (95,ARRAY[5.6,2.7,4.2,1.3],'Iris-versicolor', 1.0),
> (96,ARRAY[5.7,3.0,4.2,1.2],'Iris-versicolor', 1.0),
> (97,ARRAY[5.7,2.9,4.2,1.3],'Iris-versicolor', 1.0),
> (98,ARRAY[6.2,2.9,4.3,1.3],'Iris-versicolor', 1.0),
> (99,ARRAY[5.1,2.5,3.0,1.1],'Iris-versicolor', 1.0),
> (100,ARRAY[5.7,2.8,4.1,1.3],'Iris-versicolor', 1.0),
> (101,ARRAY[6.3,3.3,6.0,2.5],'Iris-virginica', 1.0),
> (102,ARRAY[5.8,2.7,5.1,1.9],'Iris-virginica', 1.0),
> (103,ARRAY[7.1,3.0,5.9,2.1],'Iris-virginica', 1.0),
> (104,ARRAY[6.3,2.9,5.6,1.8],'Iris-virginica', 1.0),
> (105,ARRAY[6.5,3.0,5.8,2.2],'Iris-virginica', 1.0),
> (106,ARRAY[7.6,3.0,6.6,2.1],'Iris-virginica', 1.0),
> (107,ARRAY[4.9,2.5,4.5,1.7],'Iris-virginica', 1.0),
> (108,ARRAY[7.3,2.9,6.3,1.8],'Iris-virginica', 1.0),
> (109,ARRAY[6.7,2.5,5.8,1.8],'Iris-virginica', 1.0),
> (110,ARRAY[7.2,3.6,6.1,2.5],'Iris-virginica', 1.0),
> (111,ARRAY[6.5,3.2,5.1,2.0],'Iris-virginica', 1.0),
> (112,ARRAY[6.4,2.7,5.3,1.9],'Iris-virginica', 1.0),
> (113,ARRAY[6.8,3.0,5.5,2.1],'Iris-virginica', 1.0),
> (114,ARRAY[5.7,2.5,5.0,2.0],'Iris-virginica', 1.0),
> (115,ARRAY[5.8,2.8,5.1,2.4],'Iris-virginica', 1.0),
> (116,ARRAY[6.4,3.2,5.3,2.3],'Iris-virginica', 1.0),
> (117,ARRAY[6.5,3.0,5.5,1.8],'Iris-virginica', 1.0),
> (118,ARRAY[7.7,3.8,6.7,2.2],'Iris-virginica', 1.0),
> (119,ARRAY[7.7,2.6,6.9,2.3],'Iris-virginica', 1.0),
> (120,ARRAY[6.0,2.2,5.0,1.5],'Iris-virginica', 1.0),
> (121,ARRAY[6.9,3.2,5.7,2.3],'Iris-virginica', 1.0),
> (122,ARRAY[5.6,2.8,4.9,2.0],'Iris-virginica', 1.0),
> (123,ARRAY[7.7,2.8,6.7,2.0],'Iris-virginica', 1.0),
> (124,ARRAY[6.3,2.7,4.9,1.8],'Iris-virginica', 1.0),
> (125,ARRAY[6.7,3.3,5.7,2.1],'Iris-virginica', 1.0),
> (126,ARRAY[7.2,3.2,6.0,1.8],'Iris-virginica', 1.0),
> (127,ARRAY[6.2,2.8,4.8,1.8],'Iris-virginica', 1.0),
> (128,ARRAY[6.1,3.0,4.9,1.8],'Iris-virginica', 1.0),
> (129,ARRAY[6.4,2.8,5.6,2.1],'Iris-virginica', 1.0),
> (130,ARRAY[7.2,3.0,5.8,1.6],'Iris-virginica', 1.0),
> (131,ARRAY[7.4,2.8,6.1,1.9],'Iris-virginica', 1.0),
> (132,ARRAY[7.9,3.8,6.4,2.0],'Iris-virginica', 1.0),
> (133,ARRAY[6.4,2.8,5.6,2.2],'Iris-virginica', 1.0),
> (134,ARRAY[6.3,2.8,5.1,1.5],'Iris-virginica', 1.0),
> (135,ARRAY[6.1,2.6,5.6,1.4],'Iris-virginica', 1.0),
> (136,ARRAY[7.7,3.0,6.1,2.3],'Iris-virginica', 1.0),
> (137,ARRAY[6.3,3.4,5.6,2.4],'Iris-virginica', 1.0),
> (138,ARRAY[6.4,3.1,5.5,1.8],'Iris-virginica', 1.0),
> (139,ARRAY[6.0,3.0,4.8,1.8],'Iris-virginica', 1.0),
> (140,ARRAY[6.9,3.1,5.4,2.1],'Iris-virginica', 1.0),
> (141,ARRAY[6.7,3.1,5.6,2.4],'Iris-virginica', 1.0),
> (142,ARRAY[6.9,3.1,5.1,2.3],'Iris-virginica', 1.0),
> (143,ARRAY[5.8,2.7,5.1,1.9],'Iris-virginica', 1.0),
> (144,ARRAY[6.8,3.2,5.9,2.3],'Iris-virginica', 1.0),
> (145,ARRAY[6.7,3.3,5.7,2.5],'Iris-virginica', 1.0),
> (146,ARRAY[6.7,3.0,5.2,2.3],'Iris-virginica', 1.0),
> (147,ARRAY[6.3,2.5,5.0,1.9],'Iris-virginica', 1.0),
> (148,ARRAY[6.5,3.0,5.2,2.0],'Iris-virginica', 1.0),
> (149,ARRAY[6.2,3.4,5.4,2.3],'Iris-virginica', 1.0),
> (150,ARRAY[5.9,3.0,5.1,1.8],'Iris-virginica', 1.0);
> DROP TABLE IF EXISTS mlp_model, mlp_model_summary, mlp_model_standardization;
> -- Set seed so results are reproducible
> SELECT setseed(0);
> SELECT madlib.mlp_classification(
> 'temp1', -- Source table
> 'mlp_model', -- Destination table
> 'attributes', -- Input features
> 'class_text', -- Label
> ARRAY[5], -- Number of units per layer
> 'learning_rate_init=0.003,
> n_iterations=500,
> tolerance=0', -- Optimizer params
> 'tanh', -- Activation function
> 'row_weight', -- Weight
> FALSE, -- No warm start
> FALSE -- Not verbose
> );
> {code}
> produces
> {code}
> ERROR: spiexceptions.UndefinedColumn: column "row_weight" does not exist
> LINE 15: (row_weight)::DOUBLE PRECISION,
> ^
> QUERY:
> SELECT
> array_to_string(ARRAY[Null], ',') AS
> __madlib_temp_col_grp_key37112385_1614190822_33660952__,
> NULL,
> 1 AS
> __madlib_temp_col_grp_iteration8055158_1614190822_5448717__,
> (
> madlib.mlp_igd_step(
>
> (__madlib_temp_ind_var_norm9652667_1614190822_1337450__)::DOUBLE PRECISION[],
>
> (ARRAY[(__madlib_temp_dep_var_norm15181682_1614190822_42979282__) =
> 'Iris-setosa', (__madlib_temp_dep_var_norm15181682_1614190822_42979282__) =
> 'Iris-versicolor', (__madlib_temp_dep_var_norm15181682_1614190822_42979282__)
> = 'Iris-virginica']::INTEGER[])::DOUBLE PRECISION[],
>
> __madlib_temp_rel_state63146625_1614190822_28739242__.__madlib_temp_col_grp_state22029204_1614190822_47058640__,
> ARRAY[ 4,5,3 ]::DOUBLE PRECISION[],
> (0.003)::FLOAT8,
> 2,
> 1,
> (row_weight)::DOUBLE PRECISION,
> (NULL::DOUBLE PRECISION[])::DOUBLE PRECISION[],
> 0,
> 0.9::FLOAT8,
> True::boolean
> )
> ) AS
> __madlib_temp_col_grp_state22029204_1614190822_47058640__
> FROM (
> SELECT *,
> array_to_string(ARRAY[Null], ',') AS
> __madlib_temp_col_grp_key37112385_1614190822_33660952__
> FROM
> __madlib_temp_tbl_data_scaled79575459_1614190822_3285917__
> ) AS _src
> JOIN ( SELECT grp_key AS
> __madlib_temp_col_grp_key37112385_1614190822_33660952__,state AS
> __madlib_temp_col_grp_state22029204_1614190822_47058640__ FROM
> madlib._gen_state($1, NULL, $2) ) AS
> __madlib_temp_rel_state63146625_1614190822_28739242__
> ON TRUE
> JOIN ( SELECT unnest($3) AS
> __madlib_temp_col_grp_key37112385_1614190822_33660952__, unnest($4) AS
> __madlib_temp_col_n_tuples70500775_1614190822_4678022__ ) AS _rel_n_tuples
> ON TRUE
>
>
> CONTEXT: Traceback (most recent call last):
> PL/Python function "mlp_classification", line 33, in <module>
> grouping_col)
> PL/Python function "mlp_classification", line 42, in wrapper
> PL/Python function "mlp_classification", line 334, in mlp
> PL/Python function "mlp_classification", line 576, in update
> PL/Python function "mlp_classification"
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)