最佳实践:基于腾讯云 ES 的机器学习功能,实现一站式 NLP 语义聚合

模型推理服务的日志分析与故障预测,如何通过机器学习实现? 通过上述技术体系,某金融风控系统的实践数据显示:模型推理服务的故障预测准确率达到97.3%,平均故障恢复时间缩短82%,资源浪费减少45%。时序对齐:确保日志时间戳间隔统一,处理缺失值(如中要求时序数据需基于相同时间间隔)采用Stacking策略融合基模型(的Boosting/Bagging方法)构建故障知识图谱(的NLP应用),关联日志事件、服务依赖、配置变更等实体。(如结合语音日志与文本日志),持续提升系统的智能化水平。基于SHAP值的特征归因(的决策树可解释性)引入量子退火优化特征权重(的前沿方向) 阅读详情

c05f7a8f810ff09073cadcaa9f2c1b8c.gif

随着腾讯云 ES 8.8.1 及其后续版本 8.11.3、8.13.3 的推出,腾讯云 ES 在人工智能、向量搜索和自然语言处理(NLP)等领域功能得到了显著的增强。这些新功能为开发者提供了更多的可能性,尤其是在处理复杂的 NLP 任务时。

本文将探讨如何利用腾讯云 ES 的机器学习功能,实现一站式的 NLP 语义聚合,并通过 demo 来实践来这一过程。

语义聚合的挑战

语义聚合,就是将多个文档中的文本,从表达意义上进行归类。举个简单的例子来理解,比如“我爱中国”,“我喜欢钻研技术”,都属于积极表述,而“我讨厌雨天”,“我很生气”,都属于消极的表述。

ES 传统的文本聚合方法依赖于文本中的共同 value 或 term,而表述各异的文本几乎不存在相同的 value,即便对 text 字段开启 fielddata,利用不同文档分词后会产生相同的 term,这种归类方式仅仅是表面的词汇聚类,也无法达成语义上的聚合归类。

我们知道,通过将文本转换为向量表示,我们可以捕捉到文本的语义信息,利用这些信息 ES 可以进行更加精准的搜索。

那么聚合呢?用于存储向量化的字段类型 dense_vector 是不支持聚合的。这是因为向量字段不同于传统的文本、数值型字段,不同的原文的 embedding 向量几乎不会有相同的取值,密集向量类型的值的分布是“稀疏”的,这使得对其进行聚合既缺乏意义,也在技术上难以实现。

利用 ES 机器学习功能的最佳实践

ES 的机器学习功能提供了一种解决方案。从官方这篇文档,Classify text,可以了解到 ES 的机器学习功能,除了支持向量化模型推理外,还支持文本分类模型的推理。那么利用这一点,我们可以使用文本分类模型对文本数据打上语义“标签”,从而使传统的 ES 聚合能力得以应用于语义聚合。

我们动手尝试一个 demo

1、在 Hugging Face 上查找 Text Classification 类的模型,比如这个情感分析的文本分类模型,它可以推理一段文字的情感表达类型。

f9e005607d86c31987d1f67fb5330cd8.png

2、我们通过 eland 工具,将该模型导入 ES,在可以访问公网的机器上执行  docker run -it -e HF_ENDPOINT=https://hf-mirror.com --rm docker.elastic.co/eland/eland eland_import_hub_model --url http://9.99.64.21:9200 -u elastic -p elastic_123 --hub-model-id SamLowe/roberta-base-go_emotions --start --insecure --task-type text_classification,从 Hugging Face 上拉取模型导入 ES。

ce5c421455d107699ee83926a4da54d7.png

3、导入模型后,在 Kibana 的模型管理页面中,可以看到该模型,我们直接点击 Deploy 对该模型进行部署。

101b72ac885498eec28d1362a023328b.png

4、同样在 Kibana 的 Ingest Pipelines 管理页面,我们可以定义一个用于“文本分类”的推理管道,按照图示简单填写即可。这个管道将在数据写入时自动应用模型,为文本数据添加语义标签。

e806a8f07da44578ffa4db13eac146f5.png

5、创建一个 demo 用的索引。

PUT text_classification_demo
{
  "mappings": {
    "dynamic_templates": [
      {
        "message": {
          "match": "text",
          "mapping": {
            "fields": {
              "keyword": {
                "ignore_above": 2048,
                "type": "keyword"
              }
            },
            "type": "text"
          }
        }
      },
      {
        "strings": {
          "match_mapping_type": "string",
          "mapping": {
            "type": "keyword"
          }
        }
      }
    ]
  },
  "settings": {
    "index": {
      "refresh_interval": "1s",
      "number_of_shards": "2"
    }
  }
}

6、结合 Hugging Face 上开源的测试集,我们简单编写一个 python 脚本,将文本数据批量写入 ES 索引,并指定推理管道。安装 python 依赖 pip install datasets elasticsearch ,demo 代码如下。

import json


from elasticsearch import Elasticsearch
from elasticsearch.helpers import bulk
from elasticsearch.helpers import BulkIndexError
from datasets import load_dataset


dataset = load_dataset("go_emotions", "simplified", split='train')


es_username = 'elastic'
es_password = 'elastic_123'  # 修改ES密码
es_host = '9.99.64.21'  # 修改ES HOST
es_port = 9200


es = Elasticsearch(
    hosts=[{'host': es_host, 'port': es_port, 'scheme': 'http'}],
    basic_auth=(es_username, es_password),
)




def prepare_data(dataset):
    for doc in dataset.select(range(40000)):
        yield {
            '_index': 'text_classification_demo',
            '_id': doc['id'],
            '_source': json.dumps(doc)
        }




def bulk_insert(data, chunk_size=100):
    try:
        success, _ = bulk(es, data, chunk_size=chunk_size, stats_only=True,
                          pipeline="text_classification_inference_pipeline",
                          request_timeout=600)
        print(f"Successfully indexed {success} documents.")
    except BulkIndexError as e:
        print(f"{len(e.errors)} document(s) failed to index.")
        for error in e.errors:
            print("Error details:", error)




bulk_insert(prepare_data(dataset))

7、运行脚本,我们会从 Hugging Face 的测试集中拉取 40000 条文本,通过 _bulk 的方式,指定 ingest pipeline 为我们刚刚定义的 text_classification_inference_pipeline,将数据写入 ES 的 text_classification_demo 索引。

e3abf2b670a3add246b139f5ee4d7d06.png

8、数据写入后,可以看到 JSON source 如图所示,扩充了我们通过 pipeline 推理得到的标签。

3f19fd01c8e4843449302a89f87bf02c.png

9、对语义标签字段进行聚合查询,可以看到测试集中表述各异的不同文本,在情绪语义上得到了良好的分类。至此,我们得到了文档的语义聚合结果。

c9b6a27e115a9e0e3a95d869dddbd5ca.png

10、进一步,也可以利用 Kibana 的可视化工具,对聚合结果进行可视化分析,从而更直观地理解文本数据的语义分布。

9c13c68e649c9044a99d2ca13fd6c5c2.png

引申

/ 文本分类模型

如果场景简单,如本次 demo,使用开源的文本分类模型就可以实现。针对具体业务的场景,需要贴合业务的文本分类模型,可能需要根据具体业务场景定制化文本分类模型。这可能涉及到模型的训练或微调,以确保语义标签的准确性和覆盖范围。

ES 支持以下类型的NLP模型:

● BERT

● BART

● DPR bi-encoders

● DistilBERT

● ELECTRA

● MobileBERT

● RoBERTa

● RetriBERT

● MPNet

● SentenceTransformers bi-encoders with the above transformer architectures

● XLM-RoBERTa

/ 结合向量搜索

文本的向量化表示,也可以通过 ingest pipeline 推理得到。如果绑定多个 pipeline,我们可以得到字段更丰富的索引,结合向量搜索、文本搜索、混合搜索的能力,语义搜索和聚合也都能更加的灵活。

/ 机器学习节点

在腾讯云 ES 中,支持选用专用的机器学习节点,可以将推理与读写进行资源性的隔离,满足生产环境业务所需的稳定性和易运维性。当然,在测试验证阶段,或要求不高的业务中,也可以不选择专用的机器学习节点,腾讯云 ES 的数据节点会默认包含机器学习节点的角色。

7c3eed9348d9254770045a1b08dba55e.png

总结

我们通过腾讯云 ES 的机器学习能力,使用文本分类的 NLP 模型,在 ES 中一站式地完成了复杂文本的语义聚合能力。这一过程简化了 NLP 模型的集成,使得 ES 开发者可以更加专注于应用开发,而不必关注和维护底层的实现细节。

Elasticsearch中文分词插件IK实战指南 Elasticsearch 是一个开源的分布式搜索与数据分析引擎,基于 Lucene 构建,具备高可用性、可扩展性和实时性。其核心特性包括:支持全文检索、结构化查询、聚合分析以及近实时的数据处理能力。在大数据生态系统中,Elasticsearch 被广泛应用于日志分析(如 ELK Stack)、商品搜索、行为监控、指标可视化等场景。其分布式架构支持水平扩展,能够高效处理 PB 级别的结构化或非结构化数据。下一章将深入探讨中文分词的基本原理及其在搜索引擎中的关键作用。分词。 阅读详情

相关推荐

【深度剖析】三一重工的数字化转型(中篇)

三一重工在数字化转型方面取得了提高效率、降低成本、加强研发创新和改善内控管理等多方面的成效。本研究旨在通过对三一重工数字化转型的深入分析,引导企业思考在第四次工业革命与第三次能源革命交汇的超级技术窗口期,如何进一步把握发展机遇,并为同行业其他企业提供探索性的建议。作为装备制造行业的佼佼者,三一重工的数字化转型受到了业界的广泛关注。作为行业内首批接触并实践数字化转型的企业之一,三一重工的转型经验不仅成功,而且积累了丰富的理论与实践,为其他制造业企业的数字化转型提供了可借鉴的范例。

领信卓越的博客 2306

Elasticsearch的机器学习与推荐

1.背景介绍 Elasticsearch是一个开源的搜索和分析引擎,它基于Lucene库,可以用于实现全文搜索、实时搜索、数据聚合等功能。Elasticsearch支持多种数据类型,如文本、数值、日期等,并提供了强大的查询和分析功能。 在近年来,Elasticsearch逐渐被应用于机器学习和推荐系统领域,因为它具有高性能、高可扩展性和易用性等优势。机器学习和推荐系统是现代信息技术中不可或缺的...

AI天才研究院 1606

深度残差网络的无人机多目标识别

深度残差网络的无人机多目标识别 人工智能技术与咨询 来源:《图学学报》。作者翟进有等 摘要:传统目标识别算法中,经典的区域建议网络(RPN)在提取目标候选区域时计算量大,时间复杂度较高,因此提出一种级联区域建议网络(CRPN)的搜索模式对其进行改善。此外,深层次的卷积神经网络训练中易产生退化现象,而引入残差学习的深度残差网络(ResNet),能够有效抑制该现象。对多种不同深度以及不同参数的网络模型进行研究,将两层残差学习模块与三层残差学习模块结合使用,设计出一种占用内存更小、时间复杂度更低的新型多捷.

m0_62870606的博客 3111

Elastic:机器学习的原理及实践 - single metric job

在Elasticsearch中,可以将机器学习视为搜索和分析的自然扩展。它是对时间序列数据的分析。 Elasticsearch支持的机器学习功能可以通过运行metric任务来自动分析时间序列数据,该metric任务包含一个或多个定义了将要分析的字段的检测器。 它可以帮助我们识别单变量时间序列数据中的异常,并向我们显示正常情况。在Elasticsearch中,我们可以通过机器学习来检测时间系列中的异...

Elastic 中国社区官方博客 7460

Canoe主要功能的详细介绍

CANoe是德国Vetor公司推出的一款用于总线开发的设备,全程为CAN open environment。后来随着总线技术的发展,CANoe不仅限于CAN类型的总线开发,还包含LIN、FlexRay、MOST和以太网等开发。在车载网络和ECU开发、测试和分析方面,CANoe几乎长期占据着垄断地位,当然是因为其强大的功能性了。目前用这个工具的主要是整车厂和供应商的网络设计工程是、开发工程师和测试工程师。小编当时安装CANoe的时候也是花了一定的时间和精力,好在没有崩溃。

车载测试 3723

正直摄影方式的精度估算式_利用BDS数据反演大气可降水量及其精度分析

可降水量(PWV)对中小尺度灾害性天气预报具有指示意义,是降雨强度预报的重要参数之一。自20世纪80、90年代起,国外已经对GPS探测大气可降水量进行了大量研究。国内最早由毛节泰引进并详细介绍了地基GPS反演大气可降水量的方法,近年来发展迅速并取得了一定的成果。随着中国北斗卫星导航系统(BDS)提供服务并不断地建设完善,其已经能够应用到气象学领域,可以获得大气可降水量。文献[11]利用...

weixin_39796752的博客 1246

【Elasticsearch】ES机器学习源码分析

它是一种数据框分析,通过分析每个数据点与其他数据点的接近程度及其周围点簇的密度来识别数据集中的异常点。以 customer_full_name(顾客名称)为实体聚合每个顾客所有订单的总金额 sum/avg(taxful_total_price),得到一个每个顾客的平均消费金额和总消费金额,也就是 transfer 得到的是一般意义的样本数据而不是 datafeed 一样的时序数据。这是一种监督的途径。在这种模式下,用户不用训练机器学习什么是异常,期望得到的是什么,什么是对的,什么是错误的。

这个人很懒什么都没有~ 1万+

系统安装、qt配置、安装pcie驱动

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 安装Linux系统指定:ununtu20.04并配置相关软件环境 前言 提示:这里可以添加本文要记录的大概内容: ununtu20.04、Qt 5.9.0、pcie驱动 提示:以下是本篇文章正文内容,下面案例可供参考 一、安装系统 制作系统盘(win10),在开机时按相应键进入BIOS,(华硕需要先改配置启动->CSM->开启->第一个选项选第一个或第二个),等待即可 进入后按照https://www.sysgeek.

weixin_44832804的博客 2205

ElasticSearch与机器学习

ElasticSearch是一个开源的搜索和分析引擎,基于Lucene库构建,具有高性能、可扩展性和易用性。它广泛应用于企业级搜索、日志分析、实时数据处理等领域。机器学习是一种自动学习和改进的算法,通过大量数据的训练和优化,使计算机能够自主地进行决策和预测。它在各个领域都有广泛的应用,如图像识别、自然语言处理、推荐系统等。在ElasticSearch与机器学习之间,我们可以看到一种紧密的联系。ElasticSearch可以作为机器学习的数据处理和存储平台,同时也可以利用机器学习算法来优化搜索和分析结果。

AI天才研究院 1284

告别调参烦恼:用Simulink手把手实现自适应模糊PID温度控制(附模型下载)

本文详细介绍了如何使用Simulink实现自适应模糊PID温度控制,解决传统PID调参难题。通过模糊推理引擎动态调整PID参数,系统能自动适应不同工况,显著提升控制精度和响应速度。文章包含完整的建模步骤、参数优化技巧和工业应用扩展,并附赠可下载模型,帮助工程师快速掌握这一智能控制技术。

weixin_30872499的博客 153

FPGA SoC 的 RISC-V 固件开发全攻略(三):RISC-V MCU 启动流程深入解析

本文是《FPGA SoC 的 RISC-V 固件开发全攻略》专栏第 3 篇。上一篇:第 2 篇《开发环境搭建与工具链避坑》 | 下一篇:第 4 篇《RISC-V 与 ARM Cortex-M 开发差异对比》

XavierKong的博客 44

ElasticSearch的数据挖掘与机器学习

1.背景介绍 1. 背景介绍 ElasticSearch是一个开源的搜索和分析引擎,它基于Lucene库构建,具有高性能、易用性和扩展性。ElasticSearch可以用于实时搜索、数据分析和机器学习等应用场景。本文将涵盖ElasticSearch的数据挖掘与机器学习方面的核心概念、算法原理、最佳实践以及实际应用场景。 2. 核心概念与联系 在ElasticSearch中,数据挖掘与机器学...

AI天才研究院 1222

代码复现3—VLN-CE

运行训练完后在 data文件下会自动生成一个“checkpoints”文件,文件下包含任务文件“seq2seq”,该文件下会包括训练出来的权重和评估结果。数据集下载完后路径提取:data/scene_datasets/mp3d/{scene}/{scene}.glb。注意这里下载的数据集并不是所有的matterport3d,只需要一部分,包含90个场景,大小压缩后约16G。在“eval”时,会在data文件下生成videos文件,里面存放的是可视化的轨迹视频。

qq_44100524的博客 3202

使用腾讯云大数据Elasticsearch 8.8.1实现:NLP+Vector Search+GAI

导读腾讯云大数据Elasticsearch Service在最近上线了8.8.1版本。该版本中的核心能力,是为AI革命提供高级搜索能力!该版本特别引入了Elasticsearch Relevance Engine™(ESRE™)—— 一款强大的AI增强搜索引擎,为搜索与分析带来全新的前沿体验。虽然大家会觉得现在遍地开花的向量库,这个发布也仅仅是“其中之一”。但如果我给大家强调一下其中的重点,或许会...

cloudbigdata的博客 2278

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

腾讯云大数据ES:结合AI大模型与向量检索的新一代云端检索分析引擎

腾讯云大数据Elasticsearch Service近期首发上线的ES 8.8.1版本,提供向量检索和AI增强功能,支持在单一端到端搜索与分析平台中实现自然语言处理、向量搜索以及与大模型的集成,结合腾讯云ES提供的丰富的云原生能力,支持高达十亿级向量检索,平均响应延迟控制在毫秒级。

cloudbigdata的博客 1939

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

为AI革命提供高级搜索能力!腾讯云大数据ES国内首发上线8.8.1版本

为AI革命提供高级搜索能力,腾讯云Elasticsearch Service正式上线8.8.1版本!该版本特别引入了Elasticsearch Relevance Engine™(ESRE™)—— 一款强大的AI增强搜索引擎,为搜索与分析带来全新的前沿体验。

cloudbigdata的博客 1391

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Elastic:开发者上手指南

你们好,我是Elastic的刘晓国。如果大家想开始学习Elastic的话,那么这里将是你理想的学习园地。在我的博客几乎涵盖了你想学习的许多方面。在这里,我来讲述一下作为一个菜鸟该如何阅读我的这些博客文章。 我们可以按照如下的步骤来学习: 1)Elasticsearch简介:对Elasticsearch做了一个简单的介绍 2)Elasticsearch中的一些重要概念:cluster,n..........................................................

Elastic 中国社区官方博客 17万+

诸神缄默不语-个人技术博文与视频目录

诸神缄默不语的优快云博文目录

诸神缄默不语的博客 1万+

生产级机器学习系统:从模型上线到稳定服役的工程实践

机器学习模型部署不是算法落地的终点,而是系统工程的真正起点。在真实业务场景中,模型需面对延迟敏感、数据漂移、外部依赖不稳定等复杂挑战,其稳定性、可观测性与可降级能力远比离线指标(如AUC)关键。本文围绕生产级ML系统的四大支柱——可靠集成、性能韧性、智能监控与合规治理,深入解析契约测试、三明治验证、P99延迟优化、漂移响应SOP等实战方法,融合‘优雅降级’与‘数字孪生体’等前沿工程理念,为金融、电商、医疗等高后果场景提供可复用的落地框架。

weixin_33720078的博客 381

springboot的电影评论网站系统设计与实现(源码+文档+部署讲解)

在电影评论网站场景中,Spring Boot可高效处理高并发用户请求,整合数据库(如MySQL/PostgreSQL)和缓存(Redis),同时通过RESTful API支持前后端分离架构。作为全栈开发教学案例,电影评论网站覆盖前端(Vue/React)、后端(Spring Boot)、数据库设计及安全认证(OAuth2/JWT)等核心技术点。传统社交媒体平台(如微博、豆瓣)虽具备评论功能,但垂直类电影评论网站能提供更专业的交互体验,例如基于电影标签的分类讨论、评分聚合、剧透过滤等。

java python定制开发 970

云原生数据湖平台VS传统数据湖:五大差异与适用场景解析

云原生数据湖平台凭借其弹性、智能与开放性,已成为企业应对海量数据挑战的首选方案。腾讯云DLC依托Gartner认证的技术实力与丰富的行业实践,为企业提供从数据存储到AI洞察的全链路能力,助力释放数据资产的最大价值。在“数据即资产”的时代,数据湖被视为企业数字化转型的“数据中枢”。然而,传统数据湖在架构僵化、成本高昂等问题上饱受诟病,而云原生数据湖凭借其灵活性与智能化能力成为破局者。本文将深度剖析两者的差异,并通过腾讯云DLC的实践案例,为企业提供选型参考。物理集群架构,资源固定,需手动扩缩容。

2501_93823128的博客 623
上一篇: 腾讯云BI助凌锋公益挖掘数据价值
下一篇: 腾讯云联合中科软发布 “保险行业一体化大数据解决方案” 共筑保司数据基座...
腾讯云大数据
博客等级 码龄6年 348粉丝 218原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值