使用100个训练样本来训练自定义的命名实体识别(NER)模型是否足够?

我已经训练了一个用于识别人名的NER模型。我生成了包含人名的随机句子,共生成了大约70个句子,并按照spacy的格式进行了标注。

我使用空白的’en’模型和’en_core_web_sm’模型进行了自定义NER的训练,但在测试任何字符串时,只能在极少数例子中检测到实体。

这些样本数量是否不足?

我的数据看起来像这样 -:[("'Hi, I am looking for a house on rent for a year. Best Regards, Rajesh',\r",  {'entities': [(56, 63, 'name')]}), ("'Hello everyone, I am Gunjan Arora',\r", {'entities': [(22, 34, 'name')]}), ("'Greetings!, I am 34 years old. I want a car for my wife Bella Roy',\r",  {'entities': [(60, 69, 'name')]}), ("'Heyo, I lived with my family comprises 4 people and myself Randy Lao',\r",  {'entities': [(60, 69, 'name')]}), ("'I am Geetanjali. ',\r", {'entities': [(6, 16, 'name')]})]我已经生成了大约70个这样的例子。训练过程中的损失值 -: - 1.Losses {'ner': 6.307317615201415}  - 2.Losses {'ner': 11.182436657139132} - 3.Losses {'ner': 6.014345924849759} - 4.Losses {'ner': 6.442589285506237} - 5.Losses {'ner': 5.328383899880891} - 6.Losses {'ner': 1.706726450400089} - 7.Losses {'ner': 3.9960324752880005} - 8.Losses {'ner': 5.415169572852782}这些损失值是我使用空白'en'模型时的结果

请给出建议。

我希望能够检测到名字,因为预训练模型在大多数情况下也无法检测到名字。


回答:

为了获得更好的结果,你需要生成更多的例子,70个例子不足以训练你的模型,尽管它可能适用于不太复杂的问题。我建议你将生成的例子数量增加到三倍,以获得更好的效果

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注