• [其他] 基于OpenCV的数字识别系统(1)
    对于这个项目的我们首先应该编写一个简单的Python应用程序以拍摄汽油泵的图像,然后尝试从中读取数字。OpenCV是用于计算机视觉应用程序的流行的跨平台库。它包括各种图像处理实用程序以及某些机器学习功能。除此之外我们希望可以先使用Python对其进行原型设计,然后将处理代码转换为C ++以在iOS应用程序上运行。目标我们首先要考虑以下两个问题:1.我们可以从图像中分离出数字吗?2.我们可以确定图像代表哪个数字吗?数字分割如何确定图像中的数字有多种方法,但是我提出了使用简单的图像阈值法来尝试查找数字的方法。图像阈值化的基本思想是将图像转换为灰度,然后说灰度值小于某个常数的任何像素,则该像素为一个值,否则为另一个。最后,您得到的二进制图像只有两种颜色,在大多数情况下只是黑白图像。这个概念在OCR应用中非常有效,但是主要问题是决定对该阈值使用什么。我们可以选择一些常量,也可以使用OpenCV选择其他一些选项。我们可以使用自适应阈值而不是使用常数,这将使用图像的较小部分并确定要使用的不同阈值。这在具有不同照明情况的应用中特别有用,特别是在扫描气泵中。将图像设置为阈值后,可以使用OpenCV的findContours方法查找图像中连接了白色像素部分的区域。绘制轮廓后,便可以裁剪出这些区域并确定它们是否可能是数字以及它是什么数字。基本图像处理流程这是我在测试图像处理中使用的原始图像。它有一些眩光点,但是图像相当干净。让我们逐步完成获取此源图像的过程,并尝试将其分解为单个数字。 本文摘自 小白学视觉 公众号
  • 如何在ImageNet-1K上训练视觉基础模型?(4)
    3. Empirical Validation我们在ImageNet-1K的训练集上进行预训练,该数据集包含约120万张图像,分布在1000个类别中。默认情况下,Proteus 是从具有相同patch大小的基础模型中蒸馏出来的。按照DINOv2和 SynCLR的设置,我们在分类任务(ImageNet-1K 和12个细粒度分类数据集)以及密集预测任务(语义分割和深度估计)上评估我们的方法。3.1 Accessing DINOv2DINOv2 在私有的大规模数据集 LVD-142M 上进行训练,我们利用预训练的 DINOv2 作为教师模型,在 ImageNet-1K 上训练一个随机初始化的网络。3.1.1 Target Model: ViT-SProteus-S 在不同任务上明显优于其他baseline方法,并且在训练数据远少于 Oracle 方法 DINOv2-S 的情况下,仅略微落后于后者。3.1.2 Target Model: ViT-B and ViT-L当我们扩大模型规模时,Proteus 与 Oracle 方法 DINOv2 之间的性能差距缩小。Proteus-L 在各项任务上的表现几乎与 DINOv2-L 相匹配。3.1.3 Comparison with Distillation in Supervised LearningProteus 在相似的成本下,在多个方面优于传统的监督训练,提供了一种被基础模型强化的新颖训练方案。3.2 Accessing SynCLR and CLIP我们通过使用其他基础模型 SynCLR 和 CLIP 作为教师网络来测试 Proteus 的泛化能力。SynCLR 通过在未公开的 6 亿张合成数据集进行对比学习而训练得到,而 CLIP 是通过在私有数据集 WIT-400M 上对图像和相应的文本描述进行对比学习获得的。3.3 Ablation on Proxy Dataset3.3.1 Dataset diversity如果我们增加Proxy Dataset的多样性,Proteus 的泛化能力可以得到提升。即使在只有单一图像作为Proxy Dataset的极端情况下,Proteus 仍然表现出很强的鲁棒性。3.3.2 Scaling behavior当我们从每个类别中子采样一部分数据或从总共1000个类别中子采样一部分类别时,Proteus 仍然表现出很强的鲁棒性。这表明即使在更小的数据规模下,也有可能训练基础模型。 本文摘自 小白学视觉 公众号
  • 如何在ImageNet-1K上训练视觉基础模型?(3)
    2. Method在本节我们将介绍Proteus,这是一种简单且通用的框架,用于在“有限”数据(即ImageNet-1K)上训练视觉基础模型。我们首先介绍了在减轻Dataset Bias方面所做的努力,以便Proteus能够通过模仿预训练基础模型的行为,有效地转移其通用的表征。然后,我们提出了包含多层次学习目标的Proxy Task,以确保模型在各种任务中的应用。2.1 Proxy Dataset在常规知识蒸馏的设置中,通常会引入KL divergence Loss来计算学生网络预测结果和教师网络预测结果的相似度,并辅以Cross-Entropy Loss来计算模型预测的概率分布与数据集One-hot Label的匹配程度,来指导模型的优化。从经验上看,这种设计在监督学习情况下效果良好,因为它在ImageNet-1K上表现出色。然而,我们认为这种设置会在以下两个方面阻碍知识传递:(1) Cross-Entropy Loss利用了One-hot Label的信息,可能导致Dataset Bias,因为模型倾向于记住训练图像和类别。这种记忆使得模型在下游评估中难以对未见过的类别进行泛化。(2) Class logits的生成隐性地引入了Dataset Bias,因为中间特征被投影到一个预定义的维度上,例如ImageNet-1K的1000维,这在下游评估中可能会被丢弃。基于这些考虑,我们在Projection head(全连接层)之前进行知识蒸馏,并利用中间特征进行知识传递[11]。2.2 Proxy Task基础模型如DINOv2 [2]旨在学习通用的视觉特征,不仅在高层次的分类任务中表现出色,而且在语义分割等密集预测任务中也表现优异。为了最大化知识传递能力并保证其在各种任务中的应用,我们在三个不同层次的训练目标(即token-level, patch-level, and feature-level)上进行蒸馏,通过模拟教师模型的行为来传递丰富的知识。Token-level Objective:为了学习用于高层次理解的discriminative的特征,我们最小化L2距离,以对齐教师模型和学生模型之间的classification token。Feature-level Objective:尽管token-level的学习目标作为Proxy Task可以获得discriminative的视觉特征,但它无法保证在语义分割或深度估计等密集预测任务上取得良好表现。为了解决这个问题,我们以类似的方式,即最小化教师模型和学生模型feature的L2距离,进行feature-level的知识传递。Patch-level Objective:为了进一步挖掘基础模型中的隐藏知识,我们借鉴Masked Image Modeling [12, 13, 14] 的思想,构建了一个patch-level的学习目标。给定一个图像,我们会生成一个额外的视图,其中部分patch被随机遮掩,然后将其送到学生网络以生成中间特征,并通过最小化教师模型和学生模型patch的L2距离来恢复被遮掩的区域。 本文摘自 小白学视觉 公众号
  • [其他] 如何在ImageNet-1K上训练视觉基础模型?(2)
    1. Introduction通过在多样且庞大的数据集上进行广泛的预训练,视觉基础模型[1,2,3,4]在计算机视觉领域取得了显著进展,旨在学习全面且多功能的视觉特征,能够很好地泛化到各种下游任务,如分类、分割等。因此,视觉基础模型正成为计算机视觉研究中的基础组件。尽管这些模型已经发布了其权重供公众使用,但由于两个主要因素,训练基础模型对于大多数研究人员来说仍然难以实现:(1)这些基础模型的训练数据很少公开。尽管已经有尝试使用替代数据集[4]来重现CLIP [1],但由于数据源私密,重现DINOv2 [2]和SynCLR [3]等基础模型的训练仍然鲜有探索。(2)即使训练数据可以获取,使用这些庞大的数据集进行训练需要大量的计算资源,这对于大多数研究人员来说是难以获取的。ImageNet-1K [5],长期以来一直是监督学习领域进步的基石,但在基础模型时代,由于其相对较“小”的规模,现在较少被用作训练集。在这项工作中,我们试图解决以下问题:是否可以在不牺牲泛化能力的情况下,在更小的数据集(如ImageNet-1K)上重现视觉基础模型的成功?直观上,利用这些基础模型的预训练权重对于完成这一任务至关重要, 例如结构化剪枝[6,7]。但结构剪枝需要精细的手工设计,无法轻易泛化到任意架构,使其难以满足现实世界中多样化的需求。为了追求更通用的设计,我们大胆选择知识蒸馏作为实现这一目标的方法,即将基础模型中丰富的知识转移到一个随机初始化的学生网络。但与TinyCLIP[8]等方法不同的是,我们选择在规模更小的数据集——ImageNet-1K上进行训练,而不是采用原基础模型的巨型数据集。在ImageNet-1K上的知识迁移仍然存在两个关键问题:(1) 那些未公开数据集(例如WIT400M [1],LVD-142M [2])的确切分布未知,并且很可能ImageNet-1K和这些大规模数据集之间存在分布偏移。这对目标模型的泛化能力构成了显著挑战,因为网络倾向于以固定模式记忆训练图像,导致Dataset Bias[9,10]。(2) 大多数视觉基础模型[1, 2, 3, 4]是通过自监督学习目标训练的,这需要大量的数据才能有效。因此,直接采用它们的优化策略在我们的环境中可能不会产生最佳结果。为解决上述挑战,我们提出了一个简单通用的蒸馏框架,Proteus,通过模拟视觉基础模型的行为来将其丰富的知识迁移到目标网络中。 本文摘自 小白学视觉 公众号
  • [其他] 如何在ImageNet-1K上训练视觉基础模型?
    现有视觉基础模型例如CLIP[1], DINOv2[2], SynCLR[3]通常是在巨额数据量(CLIP-400M, DINOv2-142M, SynCLR-600M)下训练得到的,这不仅对训练资源有着非常大的需求,同时这些数据集也处于未公开的状态,让训练视觉基础模型非常困难。我们本次工作就是为了解决这个问题,我们仅在ImageNet-1K的1.2M图像上训练就可以在多项任务上达到跟别人所提供的预训练模型相当的性能。TL, DR:动机: 视觉基础模型因其强大的泛化能力而著称,这得益于其庞大的训练数据。然而,这些模型需要巨大的训练资源,而且训练数据通常是未公开的,例如CLIP和DINOv2。解决: 我们提出了一个非常简单且通用的解决方案,名为Proteus,可以在不访问原始训练数据的情况下,将基础模型在ImageNet-1K上蒸馏成较小的等效模型。优点: (1) 低训练成本(类似于在ImageNet-1K上进行的DeiT蒸馏);(2) 强大的性能(类似于使用大量数据训练的基础模型);(3) 优秀的泛化能力(在DINOv2、CLIP、SynCLR上验证)。 本文摘自 小白学视觉 公众号
  • [其他] 目标检测算法是如何生成正负样本的(3)
    正负样本匹配方式的实现: 1、分配目标给哪一层预测。 根据目标的尺寸将目标分配到不同的特征层上进行预测。 具体实现:引入了min_size和max_size,具体设置是0, 64, 128, 256, 512和无穷大。例如,对于输出的第一个预测层而言,其stride=8,负责最小尺度的物体,对于该层上面的任何一个点,如果有GT bbox映射到特征图上,满足0 < max(中心点到4条边的距离) < 64,那么该GT bbox就属于第1层负责,其余层也是采用类似原则。 总结来说就是第1层负责预测尺度在0~ 64范围内的GT,第2层负责预测尺度在64~128范围内的GT,以此类推。通过该分配策略就可以将不同大小的GT分配到最合适的预测层进行学习。 2、确定正负样本区域。 对于每一层feature map,设定一个以GT中心为圆心,固定半径的圆,如果像素落在该圆内,则标记为positive样本,否则为negative。 具体实现:通过center_sample_radius**(基于当前stride参数)**参数,确定在半径范围内的样本都属于正样本区域,其余区域作为负样本。默认配置center_sample_radius=1.5。例如,第1层的stride=8,那么在该输出层上,对于任何一个GT,基于GT bbox中心点为起点,在半径为个像素范围内点都属于正样本区域。 3、centerness找到目标的中心点。 为了使靠近GT中心的像素能学到更多的信息,故给予他更高的权重,而离GT中心越远的点,贡献则递减。 具体实现:使得离目标中心越近,输出值越大,反之越小。
  • [其他] 目标检测算法是如何生成正负样本的(2)
    以下文章来源于GiantPandaCV ,作者刘庆龙 二、为什么要进行正负样本采样?需要处理好正负样本不平衡问题:在ROI、RPN等过程中,整个图像中正样本区域少,大部分是负样本[^2]。提高网络收敛速度和精度:对于目标检测算法,主要需要关注的是对应着真实物体的 正样本 ,在训练时会根据其loss来调整网络参数。相比之下, 负样本对应着图像的背景,如果有大量的负样本参与训练,则会淹没正样本的损失,从而降低网络收敛的效率与检测精度。三、anchor-free和anchor-based二者的区别在于是否利用anchor提取候选框[^2]从anchor回归属于anchor-based类,代表如faster rcnn、retinanet、YOLOv2 v3、ssd等,从point回归属于anchor-free类,代表如cornernet、extremenet、centernet等,二者融合代表如fsaf、sface、ga-rpn等。四、典型算法1、MTCNN论文:Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks 1)正负样本的定义训练数据可以通过和GT的 IOU 的计算生成一系列的 bounding box。可以通过滑动窗口或者随机采样的方法获取训练数据,训练数据分为三种正样本,负样本,中间样本[^4]。 正样本:IOU > 0.65 部分样本:0.4 < IOU < 0.65 负样本: IOU < 0.3 如下图所示,为依据图片中人脸框的坐标信息生成正样本和部分样本:由于篇幅原因,下图中IOU的计算过程没有截图,可以参考[^4]的源码。 注意:代码中的 w、h 分别是GT的尺度。 此处生成正样本的脚本,除了对生成的矩形框尺度进行约束,还约束了矩形框的中心点坐标范围。笔者认为,这样做主要是为了提高生成正样本的效率:因为一张图片中正样本的数量是非常有限的,要确保生成的矩形框与GT的IOU大于一定阈值才能成为正样本。
  • [其他] 目标检测算法是如何生成正负样本的
    以下文章来源于GiantPandaCV ,作者刘庆龙一、正负样本的概念目前,许多人在看相关目标检测的论文时,常常误以为正样本就是我们手动标注的GT(ground truth),这个理解是错误的,正确的理解是这样的: 首先,正样本是想要检测的目标,比如检测人脸时,人脸是正样本,非人脸则是负样本,比如旁边的窗户、红绿灯之类的其他东西。其次,在正负样本选取时,要注意:正样本是与GT的IOU值大于阈值时的取值,负样本是小于阈值的,其他的则把它去除即可。 总之,正负样本都是针对于程序生成的框而言,非GT数据[^1]。
  • [其他] DeepSeek2月份热帖合集(2025年02月)
    DeepSeek在的兴起在论坛也引起了热烈的探讨,我们一起来看下这些帖子1.DeepSeek如何在游戏开发中实现智能NPC行为?2.DeepSeek在机器人控制和人机交互中的应用前景如何?3.DeepSeek在医疗行业如何辅助病历分析、医学文献处理和患者咨询?4. DeepSeek的技术如何在金融行业中应用于智能客服、风险评估和投资建议5.DeepSeek在数据分析领域如何处理长文本摘要和复杂信息提取6.DeepSeek的编程辅助功能如何帮助开发者进行代码生成、调试和注释解释7.DeepSeek如何在内容生成方面提升文案创作和营销内容的效率?8.Deepseek底层技术解析:构建下一代对话式AI的核心架构9.DeepSeek 为什么这么火?它与传统的chatGLM、豆包、文心一言、OpenGPT、Kimi 等AI有什么不同?10.DeepSeek 对人工智能发展的影响这些关于DeepSeek的帖子,各有不同的侧重点,有些坛友的提问直击问题的核心,版友们热心的回答也是百花齐放,通过不同的角度,对问题进行了解答,希望通过这些帖子,大家可以学习到更多关于DeepSeek的知识。也欢迎其他小伙伴到对应的帖子下发表自己的见解,让我们一同探讨,共同进步。
  • 2025年2月存储服务技术干货合集
    云硬盘类型变更注意事项cid:link_1云存储网关 CSG 相关知识梳理cid:link_2存储容灾的解决方案cid:link_3MoE混合专家系统的优势和原理cid:link_0人工智能和机器学习、神经网络的关系cid:link_4深度学习算法之Tensorflow框架cid:link_5深度学习算法之Caffe框架cid:link_6深度学习算法之MXNet框架cid:link_7深度学习算法之大名鼎鼎的PyTorchcid:link_8深度强化学习之基于模型的动态规划方法cid:link_9大模型运行热门框架之VLLM 框架cid:link_10大模型运行热门框架之Gradiocid:link_11文本挖掘的方法cid:link_12自然语言生成NLG的典型应用cid:link_13NLU 的实现方式cid:link_14依存句法分析简介cid:link_15Encoder-Decoder 的应用cid:link_16
  • Encoder-Decoder 的应用
    以下是 Encoder-Decoder 架构的核心应用领域及典型示例,涵盖自然语言处理(NLP)、语音、图像等多模态场景,并附技术实现细节和实际案例:一、模型架构基础核心结构:Encoder:将输入序列(文本/语音/图像)编码为上下文向量(Context Vector)常用技术:RNN/LSTM/GRU、CNN、TransformerDecoder:基于上下文向量逐步生成输出序列常用技术:自回归生成(Autoregressive)、注意力机制(Attention)进化路线:Seq2Seq (2014) → Attention (2015) → Transformer (2017) → Multimodal (2020+)二、自然语言处理(NLP)1. 机器翻译经典案例:Google 翻译(2016年转向 Transformer 架构)实现方式:# 使用 Hugging Face Transformers(以中译英为例) from transformers import pipeline translator = pipeline("translation_zh_to_en", model="Helsinki-NLP/opus-mt-zh-en") translator("深度学习改变了自然语言处理") # 输出:["Deep learning has changed natural language processing"] 技术关键:双向LSTM Encoder捕获上下文 → Attention机制对齐源/目标语言BLEU评分提升:传统SMT约30 → Transformer模型达40+2. 文本摘要应用场景:新闻自动摘要(如BBC新闻生成三句话简报)模型示例:抽取式(Encoder-only):BERT + 句子排序生成式(Encoder-Decoder):PEGASUS(预训练目标为Gap Sentences Generation)典型输出:原文:OpenAI发布GPT-4模型,支持多模态输入并提升推理能力...(500字) 摘要:GPT-4新增图像理解功能,逻辑推理错误率较GPT-3.5降低40%。3. 对话系统架构对比: 类型EncoderDecoder任务型对话BERT识别意图/实体规则模板填充响应开放域对话GPT-3(仅Decoder但包含上下文编码)自回归生成多样化回复企业案例:阿里小蜜:基于Encoder-Decoder处理售后咨询(准确率92%+)Replika:GPT-3生成个性化情感陪伴对话4. 文本生成创作类型:代码生成:GitHub Copilot(Codex模型)# 用户输入注释: # 计算斐波那契数列第n项 # 模型生成代码: def fib(n): a, b = 0, 1 for _ in range(n): a, b = b, a + b return a诗歌生成:李白风格七言绝句生成(采用Transformer+韵律约束损失函数)三、语音处理1. 语音识别(ASR)架构演进:传统:CNN(频谱图特征提取) + LSTM Encoder + CTC Decoder新一代:Wav2Vec 2.0(自监督预训练) → Transformer Decoder性能指标:LibriSpeech数据集:词错率(WER)从早期20%+降至2%以下(2023年技术)2. 语音合成(TTS)端到端模型:Tacotron 2(Encoder处理文本 → Decoder生成梅尔频谱)企业应用:微软Azure Neural TTS:生成类人语音(支持20+语言情感控制)有声书自动生成:输入小说文本 → 输出带角色音色区分的音频四、计算机视觉1. 图像描述生成(Image Captioning)经典模型:Show and Tell(CNN Encoder + LSTM Decoder)实现示例:# 使用预训练模型(如BLIP) from transformers import pipeline captioner = pipeline("image-to-text", model="Salesforce/blip-image-captioning-base") captioner("park.jpg") # 输出:[{"generated_text": "a group of people sitting on a bench under trees"}] 医疗应用:X光片→诊断描述(如CheXpert数据集训练)2. 图像生成扩散模型:虽然非典型Enc-Dec,但隐含结构:Encoder:噪声预测网络(UNet结构)Decoder:迭代去噪生成像素案例:DALL-E 3生成广告创意图(输入:“宇航员骑自行车,赛博朋克风格”)五、多模态融合1. 视频问答(Video QA)架构:Encoder分支:3D CNN处理视频帧 + BERT处理问题文本Decoder:融合多模态特征生成答案(如"What sport is shown?" → “basketball”)2. 文档理解LayoutLM模型:Encoder:BERT + 位置编码(处理文字+版面信息)Decoder:提取关键字段(发票→ 金额/日期/卖方)应用场景:银行票据处理效率提升50倍(摩根大通COIN系统)六、工业与科研突破1. 蛋白质结构预测(AlphaFold 2)Encoder:处理氨基酸序列 + 多序列对齐(MSA)Decoder:生成3D原子坐标(精度达实验级别95%)2. 时序预测电力负荷预测:Encoder:捕捉历史负载、天气等时序特征Decoder:滚动预测未来24小时用电量(误差 <3%)模型选择:Informer(改进Transformer处理长序列)七、工具与框架应用领域推荐工具链预训练模型示例NLPHugging Face TransformersT5、BART、PEGASUS语音ESPnet、NeMoWav2Vec 2.0、FastSpeech 2图像OpenCV + PyTorchBLIP、CLIP多模态MMEngine(OpenMMLab)Flamingo、KOSMOS-1八、挑战与前沿方向低资源优化:Adapter-tuning实现参数高效微调(如仅训练0.1%参数适配新语种)推理加速:知识蒸馏:BERT→TinyBERT(体积/12,速度/7.5倍)量化部署:FP16→INT8(NVIDIA TensorRT优化)可信生成:引用溯源:生成文本标注来源段落(如Newsela数据清洗)道德约束:InstructGPT的RLHF对齐技术Encoder-Decoder 架构已成为生成式AI的核心范式,其应用正从单一模态向跨模态智能演进。随着大模型(如GPT-4、PaLM 2)持续突破,未来将在代码生成、科学发现等复杂推理场景发挥更大价值。
  • 依存句法分析简介
    以下是关于依存句法分析的简介,涵盖其核心概念、分析方法和实际应用:一、什么是依存句法分析?依存句法分析(Dependency Parsing)是自然语言处理(NLP)中的一种句法分析方法,旨在揭示句子中词语之间的依存关系,构建以动词为中心的句法结构树。其核心思想是:句子中的每个词(除根节点外)仅依赖于一个支配它的词(称为头节点),并通过有向边表示两者之间的依存关系类型。二、依存关系的核心特点非对称性:依存关系是有方向的(如“吃→苹果”,动词支配宾语)。单一父节点:每个词只有一个头节点(根节点除外)。无短语结构:直接描述词与词的关系,而非短语组合(区别于短语结构语法)。示例:句子:“小明吃苹果”依存树:吃(ROOT) ├─ 小明(SBV,主谓关系) └─ 苹果(VOB,动宾关系)三、常见的依存关系类型以中文为例(不同标注体系略有差异):关系标签全称示例SBV主谓关系他跑 → 跑(SBV)→他VOB动宾关系吃苹果 → 吃(VOB)→苹果ATT定中关系红色的花 → 花(ATT)→红色ADV状中关系慢慢走 → 走(ADV)→慢慢COO并列关系苹果和梨 → 苹果(COO)→梨POB介宾关系在公园 → 在(POB)→公园注:英文常用标签体系包括Stanford Dependencies和Universal Dependencies(UD)。四、依存句法分析的两种范式1. 基于图的模型(Graph-Based)原理:为句中所有可能的词对评分,选择全局最优的依存树。算法:动态规划(Eisner算法)保证投射性(无交叉边)。神经网络建模词对关系(如使用BERT嵌入)。工具:MaltParser、TurboParser。2. 基于转移的模型(Transition-Based)原理:通过状态转移动作(移进、规约、左/右依存)逐步构建依存树。算法:栈-缓冲区机制:栈存储待处理词,缓冲区存放未处理词。分类器决策:用SVM/LSTM预测每一步的最佳动作。工具:spaCy、Stanford CoreNLP。五、主流方法与模型演进传统方法:基于规则和统计(如CRF)。深度学习模型:BiLSTM+MLP:捕捉上下文特征(Kiperwasser & Goldberg, 2016)。Transformer:利用自注意力机制(如BERT-based parser)。预训练模型融合:将BERT等预训练词向量注入依存解析器,显著提升准确率。六、应用场景机器翻译:捕捉源语言结构以生成目标语言句法。例:分析“She gave him a book” → 触发双宾语结构翻译。信息抽取:识别实体间关系(如“马云创立阿里巴巴” → 创始人-公司)。问答系统:理解问题中的核心谓词和依存成分。例:“谁发明了电灯?” → 抽取谓词“发明”及宾语“电灯”。语法检查:检测主谓一致错误(如“He like apples” → like应依赖He)。七、工具与评测常用工具:Stanford Parser(支持多语言)spaCy(轻量级工业级工具)LTP(哈工大中文依存分析工具)评测指标:UAS(Unlabeled Attachment Score):忽略关系标签的依存准确率。LAS(Labeled Attachment Score):包含关系标签的准确率。八、示例分析句子:“他喜欢在周末踢足球。”依存结构(简化版):喜欢(ROOT) ├─ 他(SBV,主谓) └─ 踢(VOB,动宾) ├─ 在(ADV,状中) │ └─ 周末(POB,介宾) └─ 足球(VOB,动宾)依存句法分析是NLP的基石任务之一,为语义理解、文本生成等提供结构化支撑。其发展从规则驱动到数据驱动,现已成为预训练时代的重要组成部分。
  • [交流吐槽] 【话题讨论】随着人工智能,AI的爆火以及普及。怎么保持内驱力?
    随着人工智能,AI的爆火以及普及。怎么保持内驱力?不被AI替代呢,有什么好的方法,欢迎说出你的见解
  • 自然语言生成NLG的典型应用
    自然语言生成(NLG)是人工智能的重要分支,旨在将结构化数据或逻辑信息转化为人类可读的自然语言文本。以下是NLG的典型应用场景及实例,涵盖商业、科技和日常生活领域:1. 自动化内容生产新闻写作应用:美联社(AP)使用Automated Insights生成财报新闻,每年产出数万篇报道。示例:输入企业财务数据,自动生成标题如《XX公司Q3营收增长12%,净利润超预期》。商品描述生成应用:亚马逊、淘宝利用NLG为海量商品生成个性化文案,例如:“透气网面运动鞋,适合夏季跑步,减震设计保护膝盖”。体育赛事报道应用:AI实时分析比赛数据生成战报,如《NBA季后赛:湖人队詹姆斯末节狂砍15分逆转比赛》。2. 对话系统与智能交互聊天机器人(Chatbot)应用:银行客服机器人根据用户问题生成回复(如“您的信用卡账单将于5月25日到期,应还金额为¥2,380”)。语音助手应用:Siri、Alexa解析用户指令后生成语音回复,例如:“明天北京晴转多云,气温18-25℃,建议穿薄外套”。智能写作助手应用:Grammarly、Notion AI自动补全句子或重写段落,如优化邮件开头:“尊敬的客户,感谢您选择我们的服务→您好!感谢您对我们的信任。”3. 个性化推荐与营销动态广告文案应用:Google Ads根据用户搜索历史生成广告语,例如“夏季连衣裙限时5折!点击查看最新款式”。用户行为反馈应用:Netflix通过观看记录生成推荐理由:“因为您喜欢《星际穿越》,推荐观看《火星救援》”。销售报告自动化应用:Salesforce生成定制化销售总结:“本月华东区销售额同比增长30%,Top3产品为智能手表、耳机、充电宝”。4. 数据分析与报告生成商业智能(BI)应用:Tableau、Power BI用NLG将图表转化为文字分析:“Q2用户留存率下降5%,主要因新用户增长过快导致服务延迟”。医疗报告生成应用:AI分析CT影像数据后生成诊断描述:“右肺下叶见直径8mm结节,边缘光滑,建议3个月后复查”。金融研报摘要应用:彭博社(Bloomberg)用NLG总结财报关键点:“特斯拉2023年交付量增长38%,但毛利率受价格战影响下滑”。5. 教育与创意领域题目生成应用:教育平台自动生成数学题:“已知函数f(x)=2x²-3x+5,求f(2)的值”。故事创作应用:AI写作工具Sudowrite根据关键词生成小说片段:“夜幕降临,侦探推开破旧的木门,闻到一股刺鼻的血腥味……”多语言内容生成应用:跨国企业用NLG将产品说明书同步生成20种语言版本。6. 无障碍服务图像描述生成应用:Facebook为视障用户自动生成图片描述:“照片中,两个孩子在沙滩上堆沙堡,背景是夕阳下的海浪”。手语翻译应用:AI将文本转化为手语动画,帮助听障人群获取信息。技术支撑与趋势核心模型:GPT-4、T5、PEGASUS等预训练模型大幅提升生成质量。挑战:避免生成虚假信息(如医疗建议错误)、控制文本偏见(如性别刻板印象)。未来方向:多模态生成:结合图文生成营销内容(如“根据用户穿搭照片生成商品推广文案”)。个性化适配:根据读者知识水平调整文本复杂度(如儿童版 vs 专家版科普文章)。典型工具与平台场景工具示例通用文本生成ChatGPT、Claude、Jasper.ai、DeepSeek代码生成GitHub Copilot、Amazon CodeWhisperer垂直领域生成医疗:DAX Copilot;法律:Lexion案例:荷兰ING银行使用NLG自动生成客户投资报告,将分析师耗时4小时的工作缩短至2分钟,准确率达95%。价值:NLG不仅提升效率,还可实现大规模个性化服务,成为企业降本增效的关键技术。
  • 文本挖掘的方法
    词干提取(Stemming)和词形还原(Lemmatization)是自然语言处理(NLP)中常用的文本预处理技术,用于将单词归约为基本形式,但两者的实现方式和目标略有不同。1. 词干提取(Stemming)定义:通过简单的规则或启发式方法,去除单词的前缀或后缀,得到一个词的“词干”(可能不是真正的有效单词)。特点:快速但粗糙:基于规则直接截断词缀(如复数、时态变化)。结果可能不合法:生成的词干可能不是词典中的有效单词(例如 "running" → "run",但 "flies" → "fli")。不依赖上下文:仅根据词形处理,不考虑词性。常见算法:Porter Stemmer(英语常用)Snowball Stemmer(多语言支持)例子:"running" → "run""cats" → "cat""happily" → "happili"(无效词)2. 词形还原(Lemmatization)定义:根据词典和语法规则,将单词还原为词典中的标准形式(称为“词元”或“lemma”)。特点:精确但较慢:依赖词典和词性标注(如名词、动词)。结果合法:输出的词元一定是有效单词(例如 "better" → "good")。依赖上下文:需结合词性分析(如区分名词和动词)。常见工具:WordNet Lemmatizer(英语)SpaCy、NLTK库中的模块例子:"was" → "be"(动词还原)"mice" → "mouse"(名词复数还原)"running" → "run"(需指定动词词性)3. 核心区别特征词干提取词形还原输出结果可能无效(如 "fli")有效词(如 "fly")依赖词性不需要需要(动词/名词等)处理速度快较慢(需查词典和分析)适用场景信息检索、快速粗粒度处理文本分析、需要精确结果的场景4. 应用场景词干提取:搜索引擎、文本分类等需要快速处理但对精度要求不高的任务。词形还原:机器翻译、情感分析、问答系统等需要精确语义的场景。5. 示例代码(Python) from nltk.stem import PorterStemmer, WordNetLemmatizer from nltk.corpus import wordnet # 词干提取 stemmer = PorterStemmer() print(stemmer.stem("running")) # 输出: run # 词形还原(需指定词性) lemmatizer = WordNetLemmatizer() print(lemmatizer.lemmatize("running", pos='v')) # 输出: run print(lemmatizer.lemmatize("mice", pos='n')) # 输出: mouse总结词干提取适合对速度要求高、允许一定误差的场景。词形还原适合需要语义准确性的任务,但需额外资源(如词典和词性标注)。根据具体需求选择合适的方法。
总条数:7845 到第
上滑加载中