☰
DeepPavlov 功能全景:从命名实体识别到开放域问答的端到端 NLP 模型指南
2026/10/9 7:38:25 网站建设 项目流程
  • 人工智能
  • NLP
  • 深度学习

【免费下载链接】DeepPavlov

An open source library for deep learning end-to-end dialog systems and chatbots.

项目地址:https://gitcode.com/gh_mirrors/de/DeepPavlov
点击查看免费下载

DeepPavlov 是一个面向端到端对话系统与聊天机器人的开源深度学习库,本文以仓库中的功能总览文档(docs/features/overview.rst)为主体,系统梳理其中收录的各类预训练模型、评测数据与配置入口,并结合仓库源码与真实配置文件(deeppavlov/configs/下各 JSON)展开底层原理讲解。读完本文,你将掌握 DeepPavlov 在命名实体识别、文本分类、拼写纠错、语义排序、抽取式问答、开放域问答、超参数搜索与预训练词向量等任务上的模型选型依据、评测指标、配置要点与三种开箱即用的运行方式,能够按图索骥地选择配置并跑通推理流程。

一、文档定位:一张 DeepPavlov 预训练能力地图

overview.rst是 DeepPavlov 文档中承担“功能索引”角色的总览页,它不深入讲解单一模型内部实现,而是以表格形式给出每个 NLP 任务 → 数据集 → 语言 → 预训练配置 → 评测指标 → 模型体积的一一映射,并标注每项功能的专项文档链接。它是选型与落地的第一站:先在这里找到与业务任务匹配的配置名,再到对应专项文档与deeppavlov/configs/目录中查看细节。

从文档结构看,其覆盖的任务线包括:

  • 命名实体识别(NER,BERT 序列标注)
  • 文本分类(意图识别、情感分析)
  • 自动拼写纠错(静态词典候选 + 语言模型)
  • 排序模型(释义识别)
  • TF-IDF 文档检索(问答召回层)
  • 抽取式问答(SQuAD 任务格式)
  • 开放域问答(ODQA)
  • AutoML 超参数搜索
  • 预训练词向量与语言模型(BERT / ELMo / fastText)

以下各节按此脉络逐一展开,并给出仓库内可验证的配置与源码依据。

二、命名实体识别(NER):BERT 驱动的 BIO 序列标注

DeepPavlov 中的 NER 任务采用 BERT 系模型解决,模型为输入中的每个 token 预测BIO 格式的标签(B表示实体开始,I表示实体内部,O表示非实体),技术底座是 BERT(Bidirectional Encoder Representations from Transformers,见BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding,论文收录于 arXiv 1810.04805)。其专项文档为 docs/features/models/NER.ipynb。

2.1 预训练 NER 模型一览(Test F1)

数据集语言模型配置Test F1
Persons-1000 + 额外 LOC/ORG 标注(Collection 3)Runer_rus_bert.json97.9
同上Runer_rus_convers_distilrubert_2L.json88.4 ± 0.5
同上Runer_rus_convers_distilrubert_6L.json93.3 ± 0.3
Ontonotes多语言ner_ontonotes_bert_mult.json88.9
OntonotesEnner_ontonotes_bert.json89.2
ConLL-2003Enner_conll2003_bert.json91.7

从表格可以读出 DeepPavlov 在 NER 上的策略:俄语场景覆盖从蒸馏小模型(2 层 DistilRuBERT-tiny,F1 88.4)到完整 RuBERT(F1 97.9)的梯度选择;英语/多语言场景则按数据集(OntoNotes、ConLL-2003)提供标准 BERT 配置。若追求推理速度与体积,可选择 Distil 系列;若追求精度上限,则选完整 BERT 模型。

2.2 源码级剖析:NER 配置的管线构成

以 ner_rus_bert.json 为例,其chainer.pipe依次包含:

  1. torch_transformers_ner_preprocessor:负责子词切分与编码,关键参数包括vocab_file(指向{TRANSFORMER}变量)、do_lower_case: false、max_seq_length: 512、max_subword_length: 15,输出x_tokens、x_subword_tokens、x_subword_tok_ids、startofword_markers、attention_mask、tokens_offsets。其中startofword_markers用于把子词级输出对齐回词级标签。
  2. simple_vocab(id: tag_vocab):从训练标签y构建标签词典,unk_token设为["O"],pad_with_zeros: true,词典保存到{MODEL_PATH}/tag.dict。
  3. torch_transformers_sequence_tagger:核心标注模型,实现在 deeppavlov/models/torch_bert/torch_transformers_sequence_tagger.py。n_tags通过#tag_vocab.len引用前序组件长度,pretrained_bert指向{TRANSFORMER}(此处为DeepPavlov/rubert-base-cased),并配置 AdamW 优化器(lr: 2e-05、weight_decay: 1e-06)、学习率衰减(learning_rate_drop_patience: 30、learning_rate_drop_div: 1.5)。
  4. tag_vocab 反查:将预测索引y_pred_ind映射回标签字符串y_pred。

训练配置使用torch_trainer(deeppavlov/core/trainers/torch_trainer.py),epochs: 30、batch_size: 10,评测指标为ner_f1与ner_token_f1,评估目标覆盖 valid 与 test 两个集合。这套“预处理器 → 词表 → 模型 → 反查”的链式结构(Chainer,deeppavlov/core/common/chainer.py)是 DeepPavlov 几乎所有模型配置的统一骨架。

三、文本分类:意图识别与情感分析的多架构方案

DeepPavlov 提供词级文本分类模型,用于意图识别(intents)、情感分析(sentiment)等任务,内置Shallow-and-wide CNN、Deep CNN、BiLSTM、BiLSTM with self-attention等多种架构,并支持多标签分类(multilabel)。同时提供一批可直接下载的预训练分类模型。专项文档见 docs/features/models/classification.ipynb。

3.1 预训练分类模型(验证集/测试集指标)

任务数据集语言模型配置指标ValidTest体积
辱骂检测Insults(Kaggle)Eninsults_kaggle_bert.jsonROC-AUC0.93270.86021.1 Gb
情感分析SSTEnsentiment_sst_conv_bert.jsonAccuracy0.62930.66261.1 Gb
情感分析Twitter mokoronRusentiment_twitter.jsonAccuracy0.99180.99235.8 Gb
情感分析RuSentimentRurusentiment_bert.jsonF1-weighted0.67870.70051.3 Gb
情感分析RuSentimentRurusentiment_convers_bert.jsonF1-weighted0.7390.77241.5 Gb
情感分析RuSentimentRurusentiment_convers_distilrubert_2L.jsonF1-weighted0.703 ± 0.00310.7348 ± 0.0028690 Mb
情感分析RuSentimentRurusentiment_convers_distilrubert_6L.jsonF1-weighted0.7376 ± 0.00450.7645 ± 0.0351.0 Gb

从指标看,俄语情感分析上Conversational RuBERT(对话语料训练的 RuBERT)明显优于通用 RuBERT(F1-weighted 0.7724 vs 0.7005),蒸馏的 DistilRuBERT 系列则以更小体积(690 Mb / 1.0 Gb)逼近完整模型精度,适合对资源敏感的生产场景。

3.2 意图识别基准:与主流 NLU 平台的对比

由于 DSTC-2 数据无人发布意图识别结果,DeepPavlov 使用SNIPS数据集进行对比评测(评测方式与数据集作者报告保持一致,参数与词向量在 Reddit 语料上训练调优)。下表为各意图类别的 F1 对比,DeepPavlov 的 Shallow-and-wide CNN 在全部 7 个意图上均取得最佳成绩:

模型AddToPlaylistBookRestaurantGetWheatherPlayMusicRateBookSearchCreativeWorkSearchScreeningEvent
api.ai0.99310.99490.99350.98110.99920.96590.9801
ibm.watson0.99310.99500.99500.98220.99960.96430.9750
microsoft.luis0.99430.99350.99250.98150.99880.96200.9749
wit.ai0.98770.99130.99210.97660.99770.94580.9673
snips.ai0.98730.99210.99390.97290.99850.94550.9613
recast.ai0.98940.99430.99100.96600.99810.94240.9539
amazon.lex0.99300.98620.98250.97090.99810.94270.9581
Shallow-and-wide CNN0.99560.99730.99680.98710.99980.97520.9854

3.3 配置示例:insults_kaggle_bert 的完整管线

insults_kaggle_bert.json 是“BERT 分类”管线的标准样例,pipe依次为:

  1. torch_transformers_preprocessor(deeppavlov/models/preprocessors/torch_transformers_preprocessor.py):vocab_file: "{TRANSFORMER}"、do_lower_case: true、max_seq_length: 64,输出bert_features。
  2. simple_vocab(classes_vocab):构建类别词典,保存到{MODEL_PATH}/classes.dict。
  3. one_hotter:将类别索引转 one-hot,depth: #classes_vocab.len、single_vector: true。
  4. torch_transformers_classifier(deeppavlov/models/torch_bert/torch_transformers_classifier.py):在 Transformer 编码器池化输出上加一个类别数大小的稠密层,return_probas: true,AdamW 优化器(lr: 1e-05)。
  5. proba2labels:max_proba: true取概率最大者为预测类别,再经 classes_vocab 反查为标签。

训练侧采用torch_trainer,指标为roc_auc、accuracy、f1_macro,评估覆盖 train/valid/test。值得注意的是metadata.download中同时声明了数据集(insults_data.tar.gz)与预训练模型(insults_kaggle_torch_bert_v5.tar.gz)的下载入口,-d参数即可自动拉取。

四、自动拼写纠错:静态词典候选 + ARPA 语言模型

DeepPavlov 的拼写纠错采用“静态词典候选搜索 + ARPA 语言模型重排”的管线:先在词典中检索编辑距离候选,再用 n-gram 语言模型打分选出最合理的替换,相关实现位于 deeppavlov/models/spelling_correction/。俄语配置为 levenshtein_corrector_ru.json(Damerau-Levenshtein 距离 1),英语对应 Brill-Moore 方法(见 deeppavlov/models/spelling_correction/brillmoore/)。专项文档见 docs/features/models/spelling_correction.ipynb。

磁盘占用提示:俄语语言模型约需4.4 GB磁盘空间,英语约需7 GB。部署前需预留相应存储。

4.1 SpellRuEval 评测:俄语自动纠错方法对比

以下对比基于 SpellRuEval(Dialog-21)俄语自动拼写纠错竞赛测试集,指标包括 Precision、Recall、F-measure 与处理速度(句/秒):

纠错方法PrecisionRecallF-measure速度 (句/s)
Yandex.Speller83.0959.8669.595.0
Damerau Levenshtein 1 + lm(levenshtein_corrector_ru.json)53.2653.7453.5029.3
Hunspell + lm41.0348.8944.612.1
JamSpell44.5735.6939.64136.2
Hunspell30.3034.0232.0620.3

对比可见:DeepPavlov 的 Levenshtein+LM 方案在召回率(53.74)与 F-measure(53.50)上领先传统 Hunspell/JamSpell 基线,速度达 29.3 句/秒,优于多数方法(仅低于 JamSpell 的 136.2 句/秒),在“纠错质量”与“吞吐”间取得了较均衡的位置。

五、排序模型:释义识别(Paraphrase Identification)

DeepPavlov 提供检索式对话所需的句子对排序/释义识别模型,判断两个句子是否为同一语义(是否为释义关系)。预训练模型基于paraphraser.ru数据集:

数据集模型配置Val (acc)Test (acc)Val (F1)Test (F1)体积
paraphraser.ruparaphraser_rubert.json89.884.292.287.41325M
paraphraser.ruparaphraser_convers_distilrubert_2L.json76.1 ± 0.264.5 ± 0.581.8 ± 0.273.9 ± 0.8618M
paraphraser.ruparaphraser_convers_distilrubert_6L.json86.5 ± 0.578.9 ± 0.489.6 ± 0.383.2 ± 0.5930M

多轮对话回复选择(multi-turn response selection)的深度模型还有配套论文参考:Sequential Match Network(SMN,Wu et al., ACL 2017)、Deep Attention Matching Network(DAM,Zhou et al., ACL 2018)、Multi-Representation Fusion Network(MRFN,Tao et al., WSDM 2019)、Interactive Matching Network(Gu et al., 2019),相关英文配置见 ranking_ubuntu_v2_torch_bert_uncased.json,专项文档见 docs/features/models/neural_ranking.ipynb。

六、TF-IDF 文档检索:开放域问答的召回层

TF-IDF Ranker 解决给定查询(query)的文档检索任务,技术参考了 DrQA(Reading Wikipedia to Answer Open-Domain Questions)。该模型是开放域问答管线的召回阶段:先用 TF-IDF 从 Wikipedia 全量 dump 中筛出候选文档,再交由抽取式问答模型精排作答。

数据集模型配置Wiki dumpRecall@5体积
SQuAD-v1.1en_ranker_tfidf_wiki.jsonenwiki (2018-02-11)75.633 GB

实现位于 deeppavlov/models/doc_retrieval/tfidf_ranker.py 与 deeppavlov/models/vectorizers/hashing_tfidf_vectorizer.py,配套的 popularity ranker(流行度加权)配置见 en_ranker_pop_wiki.json。专项文档见 docs/features/models/tfidf_ranking.ipynb。

七、抽取式问答(SQuAD):预测答案起止位置

DeepPavlov 的抽取式问答在给定上下文(context)中寻找问题答案,采用SQuAD 任务格式,核心思路是预测答案在上下文中的起始与结束位置。提供 BERT 系与 R-Net 两套模型,BERT 方案见 BERT 论文(arXiv 1810.04805),俄语 RuBERT 方案见《Adaptation of Deep Bidirectional Multilingual Transformers for Russian Language》(arXiv 1905.07213)。专项文档见 docs/features/models/SQuAD.ipynb。

7.1 预训练问答模型(dev 集指标)

数据集模型配置语言EM (dev)F-1 (dev)体积
SQuAD-v1.1squad_bert.jsonen81.4988.861.2 Gb
SQuAD-v2.0qa_squad2_bert.jsonen75.7180.721.2 Gb
SDSJ Task Bsquad_ru_bert.jsonru66.2184.711.7 Mb
SDSJ Task Bqa_multisberquad_bert.json(文档中对应 tfidf 负样本训练的 RuBERT)ru66.2484.711.6 Gb
SDSJ Task Bsquad_ru_convers_distilrubert_2L.jsonru44.2 ± 0.4665.1 ± 0.36867 Mb
SDSJ Task Bsquad_ru_convers_distilrubert_6L.jsonru61.23 ± 0.4280.36 ± 0.281.18 Gb

当答案不一定存在于上下文中时(如 SQuAD-v2.0),使用 qa_squad2_bert.json:该模型在上下文无答案时输出空字符串,从而支持“不可回答问题”的判别。

7.2 配置剖析:squad_bert.json 的五段管线

以 squad_bert.json 为例:

  1. torch_squad_transformers_preprocessor:将question_raw+context_raw编码为bert_features、subtokens、split_context,max_seq_length: 384、do_lower_case: "{LOWERCASE}"。
  2. squad_bert_mapping:建立子词与字符区间的双向映射(subtok2chars、char2subtoks),用于把子词级答案定位回字符级。
  3. squad_bert_ans_preprocessor:将答案标注转为ans_start/ans_end。
  4. torch_transformers_squad(deeppavlov/models/torch_bert/torch_transformers_squad.py):通过两个线性变换分别预测每个子词是答案起点/终点的概率,pretrained_bert: "{TRANSFORMER}"(此处bert-base-cased),AdamW 优化器lr: 2e-05。
  5. squad_bert_ans_postprocessor:根据预测的起止索引切出答案文本。

训练指标同时挂载squad_v1_f1/squad_v1_em与squad_v2_f1/squad_v2_em,即一套配置可同时以 v1/v2 两套口径评测。

八、开放域问答(ODQA):基于 Wikipedia 知识的自由提问

ODQA(Open Domain Question Answering)接收关于世界的自由形式问题,基于其内置的 Wikipedia 知识输出答案,是“文档检索(TF-IDF Ranker)+ 抽取式问答(SQuAD)”的端到端组合。专项文档见 docs/features/models/ODQA.ipynb。

数据集模型配置Wiki dumpF1体积
SQuAD-v1.1en_odqa_infer_wiki.jsonenwiki (2018-02-11)46.249.7 Gb
SDSJ Task Bru_odqa_infer_wiki.jsonruwiki (2018-04-01)37.834.3 Gb

实际部署时需注意:模型体积仅为 9.7/4.3 Gb,但配套 Wiki dump 与 TF-IDF 索引的下载与构建开销远大于此,评测的 F1 也受召回层(Recall@5)上限约束,这是开放域问答的固有特性。

九、AutoML:交叉验证驱动的超参数搜索

DeepPavlov 内置基于交叉验证的超参数优化能力(详见 docs/features/hypersearch.rst),只需在配置文件中做少量改动即可启动搜索,无需编写额外训练脚本。

9.1 运行命令与参数

python -m deeppavlov.paramsearch path_to_json_config.json --folds 5

命令行参数说明:

参数含义
config_path(位置参数)指定模型所在 JSON 配置文件的路径
--folds交叉验证折数;若希望使用留一法(leave-one-out),传--folds loo;若不做交叉验证,直接省略该参数
--search_type可选,默认值为grid(网格搜索)

注意:交叉验证的折(folds)会自动从 train 与 valid 数据集的并集中划分生成,无需手动拆分数据。

9.2 配置中的搜索标记:search_choice

在配置文件中,需要搜索的参数以带_range等特殊后缀的键声明。例如要优化逻辑回归模型的正则化系数c,只需把参数值改写成候选列表:

{ "class_name": "faq_logreg_model", "in": "q_vect", "fit_on": ["q_vect", "y"], "c": {"search_choice": [1, 10, 100, 1000]}, "out": ["answer", "score"] }

search_choice的通用形式为{"search_choice": [value_0, ..., value_n]},表示网格搜索将遍历这些候选值。真实的 FAQ 逻辑回归配置见 fasttext_logreg.json(其中sklearn_component的C、penalty等参数可直接改造为搜索目标)。

9.3 源码级原理:搜索如何工作

从 deeppavlov/paramsearch.py 看,执行流程为:

  1. 解析--folds(loo、数字或省略三种分支),读取并解析配置(parse_config)。
  2. 从train.metrics[0]中提取目标指标(若指标为 dict 则取其name),作为择优依据。
  3. 调用ParamsSearch.find_model_path递归扫描配置中所有含search_choice的键(deeppavlov/core/common/params_search.py),得到参数路径列表与候选值,再用itertools.product生成网格组合。
  4. 对每组组合,将候选值写回配置,执行calc_cv_score(deeppavlov/core/common/cross_validation.py)——内部使用sklearn.model_selection.KFold划分折,并把模型的save_path临时重定向到cv_tmp子目录,避免各折训练互相覆盖,折结束后清理临时目录。
  5. 取平均得分最高的一组参数,通过np.argmax选出最优组合并写回原配置。

除search_choice外,ParamsSearch还支持search_range(区间采样,可配合scale: "log"对数刻度与discrete: true离散化)与search_bool(布尔随机采样)两种标记,默认前缀为search,这为随机/进化式搜索预留了扩展空间。

9.4 结果输出

搜索完成后会生成新 JSON 配置,保存在原配置文件同目录下,文件名带_cvbest.json后缀;同时日志输出最优参数与保存位置,例如:

INFO in '__main__'['paramsearch'] at line 169: Best model params: {'C': 10000, 'penalty': 'l1', 'accuracy': 0.81466} INFO in '__main__'['paramsearch'] at line 184: Best model saved in json-file: path_to_model_config_cvbest.json

拿到_cvbest.json后,直接将其作为新配置传入训练/推理命令即可复现最优参数。

十、预训练词向量与语言模型资源

DeepPavlov 发布多套预训练资源(详见 docs/features/pretrained_vectors.rst),覆盖 BERT 系 Transformer、ELMo 与 fastText 三类,均以 Apache 2.0 许可证分发。

10.1 BERT 系模型

已发布的预训练 BERT 模型包括:

  • RuBERT:面向俄语,vocab 120K、参数 180M、约 632 MB,基于俄语 Wikipedia 与新闻数据训练,初始化自多语言 BERT;
  • Slavic BERT:面向保加利亚语、捷克语、波兰语、俄语四语种,参数同 RuBERT;
  • Conversational BERT:面向非正式英语(Twitter、Reddit、DailyDialogues、OpenSubtitles 等语料);
  • Conversational RuBERT:面向非正式俄语(OpenSubtitles、Dirty、Pikabu、Taiga 社交媒体段);
  • Conversational DistilRuBERT / DistilRuBERT-tiny:分别 6 层与 2 层 Transformer 的蒸馏模型,以 Conversational RuBERT 为教师,蒸馏损失由 MLM 损失、师生 logits 的 KL 散度、平均隐藏状态的余弦嵌入损失与注意力图 MSE 损失线性组合构成;
  • Sentence Multilingual BERT / Sentence RuBERT:句级编码器,分别覆盖 101 种语言与俄语,句子表示采用 token 嵌入的均值池化(同 Sentence-BERT 方式),分别在 MultiNLI/XNLI 与 SNLI(俄译)/XNLI 俄语上微调。

上述模型的 PyTorch 版本可配合 HuggingFace Transformers 库使用,详细说明见 docs/features/models/bert.rst;作为嵌入器的用法(token / subtoken / 句级向量)可参考 bert_embedder.json 与 bert_sentence_embedder.json。

10.2 ELMo 俄语模型

ELMo 可经 TensorFlow Hub 以 Python 代码调用(用法示意,注意其中 URL 为官方文档公布的模型下载源,不在本文展开):

import tensorflow as tf import tensorflow_hub as hub elmo = hub.Module(".../elmo_ru-news_wmt11-16_1.5M_steps.tar.gz", trainable=True) sess = tf.Session() sess.run(tf.global_variables_initializer()) embeddings = elmo(["это предложение", "word"], signature="default", as_dict=True)["elmo"] sess.run(embeddings)

也支持已分词输入:

tokens_input = [["мама", "мыла", "раму"], ["рама", "", ""]] tokens_length = [3, 1] embeddings = elmo(inputs={"tokens": tokens_input, "sequence_len": tokens_length}, signature="tokens", as_dict=True)["elmo"] sess.run(embeddings)

三个俄语 ELMo 模型的语料与困惑度如下:

描述语料规模Perplexity
ELMo @ 俄语 Wikipedia行数 1M,token 386M,约 5 GB43.692
ELMo @ 俄语 WMT News行数 63M,token 946M,约 12 GB49.876
ELMo @ 俄语 Twitter行数 104M,token 810M,约 8.5 GB94.145

10.3 fastText 俄语词向量

DeepPavlov 发布基于俄语 Wikipedia 与 Lenta.ru 联合语料训练的 300 维 fastText skip-gram 词向量(训练配置遵循 Bojanowski et al., 2016),并提供按预处理方式区分的多套版本:

  • Wiki+Lenta域:含 lemmatize(pymorphy2 词形还原)、lowercasing、nltk wordpunct tokenize、nltk word tokenize、去除停用词等 5 种预处理变体;
  • Twitter域:nltk word tokenize 预处理,面向俄语对话/非正式语言。

fastText 训练超参([...]为默认值):lr [0.1]、lrUpdateRate [100]、dim 300、ws [5]、epoch [5]、neg [5]、loss [softmax]、pretrainedVectors []、saveOutput [0]。向量提供二进制(bin)与文本(vec)两种格式。这些向量可作为fasttext组件直接加载(参见 fasttext_logreg.json 中load_path指向{DOWNLOADS_PATH}/embeddings/fasttext/{LANGUAGE}.bin的用法)。

十一、开箱即用:interact / riseapi / predict 三种运行方式

文档末尾给出了三种把预训练模型投入使用的 CLI 方式(均以insults_kaggle_bert为例,-d表示首次运行时自动下载数据与模型):

1. 控制台交互模式

python -m deeppavlov interact insults_kaggle_bert -d

逐条输入文本,立即得到分类结果,适合快速体验与调试。

2. REST API 服务模式

python -m deeppavlov riseapi insults_kaggle_bert -d

以 HTTP 服务形式暴露模型接口,供外部系统集成调用,服务配置可参考 deeppavlov/utils/settings/server_config.json 与 deeppavlov/utils/server/server.py。

3. 批处理预测模式

python -m deeppavlov predict insults_kaggle_bert -d --batch-size 15 < /data/in.txt > /data/out.txt

从标准输入逐行读取文本,按--batch-size 15批量预测并输出到标准输出,适合离线大规模数据处理(如对日志/评论文件批量打标)。命令入口实现见 deeppavlov/core/commands/(interact、riseapi、predict对应 infer.py 等模块)。

结语:从选型到落地的完整路径

overview.rst的价值在于把 DeepPavlov 的“任务 → 配置 → 指标”映射一次讲清:NER 与问答任务优先 BERT 系模型并可按精度/体积权衡选择 Distil 变体;俄语情感与释义任务上对话语料训练的模型优势明显;文档检索层决定了开放域问答的召回上限;而paramsearch只需在配置里加一个search_choice即可完成交叉验证式调参。沿着本文的表格与配置链接,你可以继续深入 docs/features/models/ 下的专项 Notebook(NER、classification、SQuAD、ODQA、neural_ranking、tfidf_ranking、spelling_correction 等),或直接阅读 deeppavlov/configs/ 中对应 JSON 的完整管线,把选好的配置投入训练与推理。

  • 人工智能
  • NLP
  • 深度学习

【免费下载链接】DeepPavlov

An open source library for deep learning end-to-end dialog systems and chatbots.

项目地址:https://gitcode.com/gh_mirrors/de/DeepPavlov
点击查看免费下载

相关推荐

上一篇:网上下棋还要手动摆棋?Vin象棋自动走棋三分钟接入AI分析
下一篇:帕鲁存档 .sav 全是乱码?palworld-save-tools 实战:5 步把存档转成 JSON 再改回去

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询