去哪找人做网站,西部数码空间的网站访问统计,html在线编辑,军队信息化建设网站假设您是报纸行业的编辑#xff0c;每天都会收到数千个故事。您将如何找到与体育#xff0c;政治等特定领域相关的故事#xff1f;您会讲完所有这些故事吗#xff1f;无权利#xff1f;一个可以帮助您划分为不同类别的系统怎么样#xff1f;该系统还可以执行复杂的任务每天都会收到数千个故事。您将如何找到与体育政治等特定领域相关的故事您会讲完所有这些故事吗无权利一个可以帮助您划分为不同类别的系统怎么样该系统还可以执行复杂的任务例如按城市划分故事识别故事中涉及的人员姓名组织等。在这篇文章中我将向您介绍一个名为命名实体识别(NER)的东西。NER的任务是在文本中查找单词的类型。简介在自然语言处理(NLP)中实体识别是常见问题之一。该实体称为感兴趣的文本部分。在NLP中NER是一种从大型语料库中提取相关信息并将这些实体分类为预定义类别(如位置组织名称等)的方法。这是一个简单的示例可以解决与特定于领域的问题相关的复杂实体识别。2.先决条件这篇文章假定您熟悉机器学习和神经网络的基本概念在Python和Keras中运行的LSTM网络条件随机场(CRF)3.了解数据我已经使用了kaggle的数据集。该数据集是从GMB(格罗宁根意思银行)语料库中提取的该语料库经过标记注释和构建专门用于训练分类器以预测命名的实体(例如名称位置等)。所有实体均使用BIO方案进行标记其中每个实体标签以B或I字母开头。B-表示实体的开始和I-内部。不需要的单词用0 –标签标记。下表显示了有关单词标签的详细信息。读取CSV文件并显示前10行。如您所见句子表示句子编号每个句子包含使用标签栏中的BIO方案标记的单词。这个特定的数据集包含47959个句子和35178个唯一单词。对于预处理步骤您可以参考我的Github存储库。让我们显示第一个句子。4.使用条件随机字段(CRF)的NERCRF用于预测使用上下文信息添加信息的序列模型将使用这些信息进行正确的预测。以下是CRF的公式其中y是输出变量X是输入序列。输出序列被建模为特征函数的归一化乘积。4.1 CRF的功能准备以下是NER在nltk中使用的默认功能。还可以修改它以进行自定义并可以提高模型的准确性。加入我们的每周时事通讯以接收最新文章和访谈一个我事件更新免费通行证和优惠码加入AI Time Journal计划的机会4.2用scikit-learn训练模型现在我们可以使用sklearn-crfsuite提供的条件随机字段实现来训练模型。初始化模型实例并使用fit方法拟合训练数据。4.3评估模型性能我们将使用精度召回率和f1得分指标来评估模型的性能因为对于该数据集而言精度不是一个好的指标因为每个类中的数据点数量均不相等。结果看起来不错。5.带有双向LSTM – CRF的NER在本节中我们将双向LSTM模型与CRF模型结合在一起。这种方法称为Bi LSTM-CRF模型这是命名实体识别的最新方法。LSTM(长期短期记忆)是一种特殊类型的递归神经网络用于处理数据序列。5.1定义模型参数如果您知道这些参数的含义那么您可以进行尝试并获得良好的结果。5.2模型架构现在我们可以定义递归神经网络架构并为LSTM网络提供训练数据。我已经使用了keras callback()函数。5.3可视化模型性能在这里我们将绘制训练和验证集的损失与历时之间的图。分类报告。您可以从上一节中看到该模型优于性能。6.评估让我们尝试从测试数据语句中识别出模型在训练过程中看不到的实体以了解模型的性能如何。每次执行时以下代码都会从测试数据中随机选择句子并为其预测标签。现在我们可以轻松地将模型的预测与实际预测进行比较。要点我们必须了解这里训练的模型只能识别位置人等常见实体。可以建立一个复杂的模型来预测化学实体药物等但是要完成这样的任务制备和标记该数据集将具有挑战性。7.结论和未来工作这是解决此问题的首选方法可以通过以下方法进行修改以改进解决方案更改模型超参数例如时期数嵌入尺寸批处理大小退出率激活等。使用更大的数据集。在这里我们仅使用了47959个句子这些句子很少为实体识别问题建立良好的模型。使用预训练的词嵌入。对LSTM使用字符级嵌入。BERT模型的微调。通过添加在测试时出现的未知标记来改进词汇表方法是替换我们训练模型时使用的所有不常见词。为简便起见我们还没有这样做。