我使用以下查询来创建模型,但编辑器抱怨转换子句中不支持 ML.NGRAM。
CREATE OR REPLACE MODEL
`singular-hub-291814.movie_sentiment.mymodel3`
TRANSFORM(ML.NGRAM(string_field_0,[1,2])OVER() as ngram )
OPTIONS
( model_type='LOGISTIC_REG',
auto_class_weights=TRUE,
data_split_method='RANDOM',
DATA_SPLIT_EVAL_FRACTION = .10,
input_label_cols=['review']
) AS
SELECT
string_field_0 , review from table;
即使可以在 SELECT 查询中使用相同的转换。
SELECT
ML.NGRAMS(words_array, [1,2]) as ngrams,
review
from table;
而其他转换函数(如 bag_of_words、min_abs_scalar)可以在转换中使用。为什么这种行为会如此不同?是否有不能在 TRANSFORM 子句中使用的转换器的明确列表?
我已复制您的询问。代码似乎缺少“S”,它应该是
ML.NGRAMS
而不是 ML.NGRAM
CREATE OR REPLACE MODEL
`singular-hub-291814.movie_sentiment.mymodel3`
TRANSFORM(ML.NGRAMS(string_field_0,[1,2])OVER() as ngram )
OPTIONS
( model_type='LOGISTIC_REG',
auto_class_weights=TRUE,
data_split_method='RANDOM',
DATA_SPLIT_EVAL_FRACTION = .10,
input_label_cols=['review']
) AS
SELECT
string_field_0 , review from table;
在文本函数中添加S后,错误被替换为缺少表名。(因为我没有任何表atm)