簡體   English   中英

如何在 spacy 中定義 ner_model

[英]How to define ner_model in spacy

def all_ents(v):
        return [(ent.text, ent.label_) for ent in ner_model(v).ents]

df1['Entities'] = df1['text'].apply(lambda v: all_ents(v))

df1.head()

執行此操作時顯示 ner_model not defined 我可以知道如何在 spacy 中定義 ner model

有些東西告訴我你沒有正確加載你的 spaCy model。 不知道df1長什么樣子,我決定用我自己的一個 go,如下:

import spacy
import pandas as pd


# Building my own `df1`, it should look similar to yours
texts = [
    "Net income was $9.4 million compared to the prior year of $2.7 million.",
    "Revenue exceeded twelve billion dollars, with a loss of $1b.",
    "I don't have any entity in me"
]
df1 = pd.DataFrame(texts, columns =['text'])

# Loading spaCy model
model_to_use = "en_core_web_lg"  # Or use the path to your own model
ner_model = spacy.load(model_to_use)

# Your code works now
def all_ents(v):
        return [(ent.text, ent.label_) for ent in ner_model(v).ents]

df1['Entities'] = df1['text'].apply(lambda v: all_ents(v))

注意

根據我自己的經驗,如果df1相當大(即,它包含數千個句子),您可能希望將df1["text"]轉換為列表或生成器,然后應用這些提示 如果您不是這種情況,或者如果您對速度優化代碼不感興趣,那么在您當前的實施之前不要注意此注釋和 go。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM