fmcquillan99 edited a comment on pull request #564: URL: https://github.com/apache/madlib/pull/564#issuecomment-833828733
(4) another longer Adam run with good results ``` DROP TABLE IF EXISTS mnist_result, mnist_result_summary, mnist_result_standardization; SELECT madlib.mlp_classification( 'mnist_train_packed', -- Packed table from preprocessor 'mnist_result', -- Destination table 'independent_varname', -- Independent 'dependent_varname', -- Dependent ARRAY[128,64,32], -- Hidden layer sizes 'learning_rate_init=0.002, learning_rate_policy=inv, lambda=0.0001, n_iterations=100, tolerance=0, solver=adam', 'tanh', -- Activation function '', -- No weights FALSE, -- No warmstart TRUE); ``` produces ``` INFO: Iteration: 1, Loss: <0.902267447201> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 2, Loss: <0.598510687962> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 3, Loss: <0.286804674375> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 4, Loss: <0.214872382935> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 5, Loss: <0.174830631353> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 6, Loss: <0.149865038752> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 7, Loss: <0.128815250269> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 8, Loss: <0.114025672182> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 9, Loss: <0.106044468904> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 10, Loss: <0.0984815372721> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 11, Loss: <0.0944217427572> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 12, Loss: <0.0895817812755> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 13, Loss: <0.0884403009213> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 14, Loss: <0.0861769912095> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 15, Loss: <0.0814695315592> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 16, Loss: <0.0804790522705> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 17, Loss: <0.0775169408297> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 18, Loss: <0.0764146973052> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 19, Loss: <0.0757419797301> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 20, Loss: <0.0758552070182> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 21, Loss: <0.0735085846694> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 22, Loss: <0.0755760352792> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 23, Loss: <0.0700921090611> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 24, Loss: <0.0699933417869> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 25, Loss: <0.0688131599703> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 26, Loss: <0.0725052743146> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 27, Loss: <0.0725268665202> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 28, Loss: <0.0666086435623> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 29, Loss: <0.0741028809836> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 30, Loss: <0.0671763458167> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 31, Loss: <0.0697350330521> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 32, Loss: <0.0667838907866> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 33, Loss: <0.0635439441312> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 34, Loss: <0.0676861103983> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 35, Loss: <0.0703095924077> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 36, Loss: <0.0721540679773> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 37, Loss: <0.0717182423827> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 38, Loss: <0.0656415085666> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 39, Loss: <0.0690685212853> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 40, Loss: <0.0675374770694> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 41, Loss: <0.0675042878676> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 42, Loss: <0.0674985265926> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 43, Loss: <0.0675290178992> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 44, Loss: <0.0607875111124> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 45, Loss: <0.0650367051397> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 46, Loss: <0.0627215456775> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 47, Loss: <0.0649998953224> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 48, Loss: <0.0657624684347> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 49, Loss: <0.064268713466> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 50, Loss: <0.0663068656827> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 51, Loss: <0.0652286454642> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 52, Loss: <0.0638700131975> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 53, Loss: <0.0659493254549> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 54, Loss: <0.0629981702187> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 55, Loss: <0.0637005548072> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 56, Loss: <0.0651030083855> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 57, Loss: <0.0629989608839> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 58, Loss: <0.068609358975> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 59, Loss: <0.0664457200772> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 60, Loss: <0.0651432575634> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 61, Loss: <0.064159688375> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 62, Loss: <0.0640972271976> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 63, Loss: <0.0661632950085> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 64, Loss: <0.0632920682493> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 65, Loss: <0.0669431223201> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 66, Loss: <0.065579426695> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 67, Loss: <0.0632646726844> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 68, Loss: <0.0626511454898> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 69, Loss: <0.0632329553396> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 70, Loss: <0.0638328982203> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 71, Loss: <0.0630246262545> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 72, Loss: <0.0631025239082> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 73, Loss: <0.0638566023843> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 74, Loss: <0.062216488031> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 75, Loss: <0.0624262779407> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 76, Loss: <0.0607505387425> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 77, Loss: <0.0624001087663> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 78, Loss: <0.0617815442258> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 79, Loss: <0.0611698656165> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 80, Loss: <0.059515434491> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 81, Loss: <0.0623617359447> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 82, Loss: <0.0624725383955> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 83, Loss: <0.0615110026584> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 84, Loss: <0.061247445539> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 85, Loss: <0.0627963698688> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 86, Loss: <0.060241794136> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 87, Loss: <0.0612733399677> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 88, Loss: <0.0616559619981> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 89, Loss: <0.0645934404705> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 90, Loss: <0.059122357762> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 91, Loss: <0.0617805159628> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 92, Loss: <0.0627599575141> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 93, Loss: <0.0657164730795> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 94, Loss: <0.0604601958382> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 95, Loss: <0.0641176483941> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 96, Loss: <0.0636301085118> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 97, Loss: <0.0643300967777> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 98, Loss: <0.067113660572> CONTEXT: PL/Python function "mlp_classification" INFO: Iteration: 99, Loss: <0.0585629777653> CONTEXT: PL/Python function "mlp_classification" train_accuracy_percent ------------------------ 99.87 test_accuracy_percent ----------------------- 97.58 ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org