机器学习中的数据处理与特征工程设计模式
1. 数据仓库中的嵌入表示
在数据仓库中直接使用 SQL 对结构化数据进行机器学习是最优选择,这样可以避免将数据导出仓库,减少数据隐私和安全方面的问题。然而,很多问题需要同时处理结构化数据和自然语言文本或图像数据。在数据仓库中,自然语言文本(如评论)直接存储为列,图像通常存储为云存储桶中文件的 URL。此时,将文本列或图像的嵌入表示作为数组类型的列额外存储,可以简化后续的机器学习过程,便于将非结构化数据轻松融入机器学习模型。
要创建文本嵌入表示,可以将预训练模型(如来自 TensorFlow Hub 的 Swivel)加载到 BigQuery 中,完整代码可在 GitHub 上找到:
CREATE OR REPLACE MODEL advdata.swivel_text_embed
OPTIONS(model_type='tensorflow',
model_path='gs://BUCKET/swivel/*')
然后,使用该模型将自然语言文本列转换为嵌入数组,并将嵌入查找结果存储到新表中:
CREATE OR REPLACE TABLE advdata.comments_embedding AS
SELECT
output_0 as comments_embedding,
comments
FROM ML.PREDICT(MODEL advdata.swivel_text_embed,(
SELECT comments, LOWER(comments) A
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



