SAP HANA PAL预测有过载错误异常73001060

时间:2019-01-23 03:54:44

标签: sap hana-studio

我在PAL上运行BPNN模型,但是我的测试编码有错误。我该如何解决这个问题?我已经成功建立了BPNN训练模型,并尝试输入测试数据集进行预测。

我尝试了多种方法来执行此操作,但是似乎没有一个可行。在此之前,我已经在训练和测试上成功运行了更大的数据集,在我更改为新数据集之后,它弹出了此错误。

  

无法执行'CALL   CRMNL.CRMNL_NN_PREDICT(CRMNL_PREDICT_NN_DATA_TBL,模型,   “ #CRMNL_CONTROL_TBL”,...“在383 ms 928 µs中。 SAP DBTech JDBC:[423]:   AFL错误:搜索表错误:   _SYS_AFL.AFLPAL:PREDICTWITHBPNN__OVERLOAD_3_2:[423](范围3)AFL错误异常:异常73001060:PAL错误[73001060]:内部   错误。检查跟踪以了解详细信息。

-- cleanup
SET SCHEMA "CRMNL";
DROP TYPE CRMNL_PREDICT_NN_DATA_T;
DROP TYPE CRMNL_PREDICT_NN_RESULT_T;s
DROP TYPE CRMNL_PREDICT_NN_SOFTMAX_T;
DROP TYPE CRMNL_NN_MODEL_T;
DROP TYPE CRMNL_CONTROL_T;
--cleanup for procedure 
DROP TABLE CRMNL_NN_PDATA_TBL;


--PREDICT PART
CREATE TYPE CRMNL_PREDICT_NN_DATA_T AS TABLE ( "CUSTOMER" INTEGER, "1" FLOAT,"2" FLOAT,"3" FLOAT);


CREATE TYPE CRMNL_PREDICT_NN_RESULT_T AS TABLE(
    "ID" INTEGER,
    "TARGET" VARCHAR(256)
);

CREATE TYPE CRMNL_PREDICT_NN_SOFTMAX_T AS TABLE(
    "ID" INTEGER,
    "TARGET" VARCHAR(256),
    "SOFTMAX" DOUBLE
);

CREATE TYPE CRMNL_NN_MODEL_T AS TABLE(
    "NAME" VARCHAR(256),
    "MODEL" CLOB
);

CREATE TYPE CRMNL_CONTROL_T AS TABLE(
    "NAME" VARCHAR(256),
    "INTARGS" INTEGER,
    "DOUBLEARGS" DOUBLE,
    "STRINGARGS" VARCHAR(256)
);

--CREATE PROCEDURE
CREATE COLUMN TABLE CRMNL_NN_PDATA_TBL(
    "POSITION" INT,
    "SCHEMA_NAME" NVARCHAR(256),
    "TYPE_NAME" NVARCHAR(256),
    "PARAMETER_TYPE" VARCHAR(7)
);

INSERT INTO CRMNL_NN_PDATA_TBL VALUES (1, 'CRMNL', 'CRMNL_PREDICT_NN_DATA_T', 'IN');
INSERT INTO CRMNL_NN_PDATA_TBL VALUES (2, 'CRMNL', 'CRMNL_NN_MODEL_T', 'IN');
INSERT INTO CRMNL_NN_PDATA_TBL VALUES (3, 'CRMNL', 'CRMNL_CONTROL_T', 'IN');
INSERT INTO CRMNL_NN_PDATA_TBL VALUES (4, 'CRMNL', 'CRMNL_PREDICT_NN_RESULT_T', 'OUT');
INSERT INTO CRMNL_NN_PDATA_TBL VALUES (5, 'CRMNL', 'CRMNL_PREDICT_NN_SOFTMAX_T', 'OUT');

CALL SYS.AFLLANG_WRAPPER_PROCEDURE_DROP('CRMNL', 'CRMNL_NN_PREDICT');
CALL SYS.AFLLANG_WRAPPER_PROCEDURE_CREATE('AFLPAL', 'PREDICTWITHBPNN', 'CRMNL', 'CRMNL_NN_PREDICT', CRMNL_NN_PDATA_TBL);


--RUN
DROP TABLE #CRMNL_CONTROL_TBL;
CREATE LOCAL TEMPORARY COLUMN TABLE #CRMNL_CONTROL_TBL(
    "NAME" VARCHAR(256),
    "INTARGS" INTEGER,
    "DOUBLEARGS" DOUBLE,
    "STRINGARGS" VARCHAR(256)
);

INSERT INTO #CRMNL_CONTROL_TBL VALUES ('THREAD_NUMBER', 6, NULL, NULL);

-- data & view setup
DROP VIEW CRMNL_PREDICT_NN_DATA_TBL;
CREATE VIEW "CRMNL_PREDICT_NN_DATA_TBL" AS
SELECT "CUSTOMER","1","2","3"
from "CRMNL"."NEW_TEST_VEGETARIAN_PIVOT_SUBDEPARTMENT";


DROP TABLE CRMNL_PREDICT_NN_SOFTMAX_TBL;
CREATE COLUMN TABLE CRMNL_PREDICT_NN_SOFTMAX_TBL LIKE CRMNL_PREDICT_NN_SOFTMAX_T;

DROP TABLE CRMNL_PREDICT_NN_RESULT_TBL;
CREATE COLUMN TABLE CRMNL_PREDICT_NN_RESULT_TBL LIKE CRMNL_PREDICT_NN_RESULT_T;

--CALL PROCEDURE
CALL CRMNL.CRMNL_NN_PREDICT(CRMNL_PREDICT_NN_DATA_TBL, MODEL, "#CRMNL_CONTROL_TBL", CRMNL_PREDICT_NN_RESULT_TBL, CRMNL_PREDICT_NN_SOFTMAX_TBL) WITH OVERVIEW;

0 个答案:

没有答案