I modelli di estrazione Watson Natural Language Processing Entity estraggono le entità dal testo di input.
Per i dettagli, sui tipi di estrazione disponibili, fare riferimento a queste sezioni:
- Estrazione basata sul machine - learning per entità generali
- Estrazione basata su regola per entità generali
- Estrazione basata su regola per entità PII
Estrazione basata sull'apprendimento automatico per entità generali
I modelli di estrazione basati sull'apprendimento automatico vengono addestrati sui dati etichettati per i più complessi tipi di entità come persona, organizzazione e ubicazione.
Funzioni
I modelli di entità estraggono le entità dal testo di input. Sono riconosciuti i seguenti tipi di entità:
- Data
- Durata
- Funzione
- Funzione geografica
- Qualifica
- Ubicazione
- Misura
- Money
- Ordinale
- Organizzazione
- Persona
- Ora
Funzioni | Esempi |
---|---|
Estrae le entità dal testo di input. | IBM's CEO Arvind Krishna is based in the US -> IBM\Organization , CEO\JobTitle , Arvind Krishna\Person , US\Location |
I blocchi e i flussi di lavoro disponibili differiscono, a seconda del runtime utilizzato.
Nomi flusso di lavoro
entity-mentions_transformer-workflow_multilingual_slate.153m.distilled
: questo flusso di lavoro può essere utilizzato su CPU e GPU.entity-mentions_transformer-workflow_multilingual_slate.153m.distilled-cpu
: questo workflow è ottimizzato per i runtime basati sulla CPU.
Lingue supportate
L'estrazione entità è disponibile per le seguenti lingue.
ar, cs, da, de, en, es, fi, fr, he, hi, it, ja, ko, nb, nl, nn, pt, ro, ru, sk, sv, tr, zh - cn
Per un elenco dei codici delle lingue e delle lingue corrispondenti, vedere Codici delle lingue
Esempio di codice
import watson_nlp
# Load the workflow model
entities_workflow = watson_nlp.load('entity-mentions_transformer-workflow_multilingual_slate.153m.distilled')
# Run the entity extraction workflow on the input text
entities = entities_workflow.run('IBM\'s CEO Arvind Krishna is based in the US', language_code="en")
print(entities.get_mention_pairs())
Output dell'esempio di codice
[('IBM', 'Organization'), ('CEO', 'JobTitle'), ('Arvind Krishna', 'Person'), ('US', 'Location')]
Estrazione basata su regole per entità generali
Il modello basato su regole entity-mentions_rbr_xx_stock
identifica le entità sintatticamente regolari.
Nome blocco entity-mentions_rbr_xx_stock
Funzioni
L'estrazione basata su regole gestisce i tipi di entità sintatticamente regolari. Il blocco di entità estrae le entità dal testo di input. Sono riconosciuti i seguenti tipi di entità:
- PhoneNumber
- EmailAddress
- Numero
- Percentuale
- Indirizzo IP
- HashTag
- TwitterHandle
- URLDate
Funzioni | Esempi |
---|---|
Estrae i tipi di entità sintatticamente regolari dal testo di input. | My email is [email protected] -> [email protected]\EmailAddress |
Lingue supportate
L'estrazione entità è disponibile per le seguenti lingue. Per un elenco dei codici lingua e della lingua corrispondente, consultare Codici lingua.
ar, cs, da, de, en, es, fi, fr, he, hi, it, ja, ko, nb, nl, nn, pt, ro, ru, sk, sv, tr, zh - cn, zh - tw
Dipendenze da altri blocchi
Nessuna
Esempio di codice
import watson_nlp
# Load a rule-based Entity Mention model for English
rbr_entity_model = watson_nlp.load('entity-mentions_rbr_en_stock')
# Run the entity model on the input text
rbr_entity_mentions = rbr_entity_model.run('My email is [email protected]')
print(rbr_entity_mentions)
Output dell'esempio di codice
{
"mentions": [
{
"span": {
"begin": 12,
"end": 27,
"text": "[email protected]"
},
"type": "EmailAddress",
"producer_id": {
"name": "RBR mentions",
"version": "0.0.1"
},
"confidence": 0.8,
"mention_type": "MENTT_UNSET",
"mention_class": "MENTC_UNSET",
"role": ""
}
],
"producer_id": {
"name": "RBR mentions",
"version": "0.0.1"
}
}
Estrazione basata su regole per le entità PII
Il modello basato sulla regola entity-mentions_rbr_multi_pii
gestisce la maggior parte dei tipi identificando i formati comuni delle entità PII ed eseguendo il checksum o le convalide possibili in base a ogni tipo di entità. Ad esempio, i candidati del numero di carta di credito vengono convalidati utilizzando l'algoritmo Luhn.
Nome blocco entity-mentions_rbr_multi_pii
Funzioni
Il blocco di entit ... entity-mentions_rbr_multi_pii
riconosce i seguenti tipi di entit ...:
Nome tipo di entità | Descrizione | Lingue supportate |
---|---|---|
BankAccountNumber.CreditCardNumber .Amex | Numero di carta di credito per i tipi di carta AMEX (15 cifre). Controllato attraverso l'algoritmo Luhn. | All |
BankAccountNumber.CreditCardNumber .Maestro | Numero di carta di credito per i tipi di carta Master (16 cifre). Controllato attraverso l'algoritmo Luhn. | All |
BankAccountNumber.CreditCardNumber .Altro | Numero di carta di credito per la categoria residua di altri tipi. Controllato attraverso l'algoritmo Luhn. | All |
BankAccountNumber.CreditCardNumber .Visa | Numero di carta di credito per i tipi di carta VISA (da 16 a 19 cifre). Controllato attraverso l'algoritmo Luhn. | All |
EmailAddress | Indirizzi email, ad esempio: [email protected] | ar, cs, da, de, en, es, fi, fr, he, hi, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sv, tr, zh - cn |
Indirizzo IP | IPv4 e IPv6 , ad esempio 10.142.250.123 |
ar, cs, da, de, en, es, fi, fr, he, hi, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sv, tr, zh - cn |
PhoneNumber |
Qualsiasi numero di telefono specifico, ad esempio 0511-123-456 | ar, cs, da, de, en, es, fi, fr, he, hi, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sv, tr, zh - cn |
Alcuni nomi di tipi di entità PII sono specifici del paese. Il _
nei seguenti tipi di entità è un segnaposto per un codice paese.
BankAccountNumber.BBAN._
: questi sono numeri di conti bancari nazionali più variabili e l'estrazione è per lo più specifica della lingua senza un algoritmo di checksum generale.BankAccountNumber.IBAN._
: gli IBAN altamente standardizzati sono supportati in modo indipendente dalla lingua e con un algoritmo di checksum.NationalNumber.NationalID._
: questi ID nazionali non dispongono di un algoritmo checksum (pubblicato) e vengono estratti su una base specifica della lingua.NationalNumber.Passport._
: i checksum sono implementati solo per i paesi in cui esiste un algoritmo di checksum. Si tratta di una lingua specificatamente estratta con ulteriori limitazioni di contesto.NationalNumber.TaxID._
: questi ID non dispongono di un algoritmo checksum (pubblicato) e vengono estratti su una base specifica della lingua.
I tipi di entità disponibili per quali lingue e quale codice paese utilizzare sono elencati nella seguente tabella.
Paese | Nome tipo di entità | Descrizione | Lingue supportate |
---|---|---|---|
Austria | BankAccountNumber.BBAN.AT |
Numero di conto bancario di base | de |
BankAccountNumber.IBAN.AT |
Numero conto bancario internazionale | tutti | |
NationalNumber.Passport.AT |
Numero di passaporto | de | |
NationalNumber.TaxID.AT |
Numero di identificazione fiscale | de | |
Belgio | BankAccountNumber.BBAN.BE |
Numero di conto bancario di base | fr, nl |
BankAccountNumber.IBAN.BE |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.BE |
Numero di identificazione nazionale | fr, nl | |
NationalNumber.Passport.BE |
Numero di passaporto | fr, nl | |
Bulgaria | BankAccountNumber.BBAN.BG |
Numero di conto bancario di base | bg |
BankAccountNumber.IBAN.BG |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.BG |
Numero di identificazione nazionale | bg | |
in Canada | NationalNumber.SocialInsuranceNumber.CA |
Numero dell'assicurazione sociale. L'algoritmo di checksum è implementato. | en, fr |
Croazia | BankAccountNumber.BBAN.HR |
Numero di conto bancario di base | h |
BankAccountNumber.IBAN.HR |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.HR |
Numero di identificazione nazionale | h | |
NationalNumber.TaxID.HR |
Numero di identificazione fiscale | h | |
Cipro | BankAccountNumber.BBAN.CY |
Numero di conto bancario di base | el |
BankAccountNumber.IBAN.CY |
Numero conto bancario internazionale | tutti | |
NationalNumber.TaxID.CY |
Numero di identificazione fiscale | el | |
Cechia | BankAccountNumber.BBAN.CZ |
Numero di conto bancario di base | cs |
BankAccountNumber.IBAN.CZ |
Numero conto bancario internazionale | cs | |
NationalNumber.NationalID.CZ |
Numero di identificazione nazionale | cs | |
NationalNumber.TaxID.CZ |
Numero di identificazione fiscale | cs | |
Danimarca | BankAccountNumber.BBAN.DK |
Numero di conto bancario di base | da |
BankAccountNumber.IBAN.DK |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.DK |
Numero di identificazione nazionale | da | |
Estonia | BankAccountNumber.BBAN.EE |
Numero di conto bancario di base | et |
BankAccountNumber.IBAN.EE |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.EE |
Numero di identificazione nazionale | et | |
Finlandia | BankAccountNumber.BBAN.FI |
Numero di conto bancario di base | fi |
BankAccountNumber.IBAN.FI |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.FI |
Numero di identificazione nazionale | fi | |
NationalNumber.Passport.FI |
Numero di passaporto | fi | |
Francia | BankAccountNumber.BBAN.FR |
Numero di conto bancario di base | fr |
BankAccountNumber.IBAN.FR |
Numero conto bancario internazionale | tutti | |
NationalNumber.Passport.FR |
Numero di passaporto | fr | |
NationalNumber.SocialInsuranceNumber.FR |
Numero dell'assicurazione sociale. L'algoritmo di checksum è implementato. | fr | |
Germania | BankAccountNumber.BBAN.DE |
Numero banca di base aAccount | de |
BankAccountNumber.IBAN.DE |
Numero conto bancario internazionale | tutti | |
NationalNumber.Passport.DE |
Numero di passaporto | de | |
NationalNumber.SocialInsuranceNumber.DE |
Numero dell'assicurazione sociale. L'algoritmo di checksum è implementato. | de | |
Grecia | BankAccountNumber.BBAN.GR |
Numero di conto bancario di base | el |
BankAccountNumber.IBAN.GR |
Numero conto bancario internazionale | tutti | |
NationalNumber.Passport.GR |
Numero di passaporto | el | |
NationalNumber.TaxID.GR |
Numero di identificazione fiscale | el | |
NationalNumber.NationalID.GR |
Numero ID nazionale | el | |
Ungheria | BankAccountNumber.BBAN.HU |
Numero di conto bancario di base | hu |
BankAccountNumber.IBAN.HU |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.HU |
Numero di identificazione nazionale | hu | |
NationalNumber.TaxID.HU |
Numero di identificazione fiscale | hu | |
Islanda | BankAccountNumber.BBAN.IS |
Numero di conto bancario di base | è |
BankAccountNumber.IBAN.IS |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.IS |
Numero di identificazione nazionale | è | |
Irlanda | BankAccountNumber.BBAN.IE |
Numero di conto bancario di base | it |
BankAccountNumber.IBAN.IE |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.IE |
Numero di identificazione nazionale | it | |
NationalNumber.Passport.IE |
Numero di passaporto | it | |
NationalNumber.TaxID.IE |
Numero di identificazione fiscale | it | |
Italia | BankAccountNumber.BBAN.IT |
Numero di conto bancario di base | esso |
BankAccountNumber.IBAN.IT |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.IT |
Numero di identificazione nazionale | esso | |
NationalNumber.Passport.IT |
Numero di passaporto | esso | |
Lettonia | BankAccountNumber.BBAN.LV |
Numero di conto bancario di base | lv |
BankAccountNumber.IBAN.LV |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.LV |
Numero di identificazione nazionale | lv | |
Liechtenstein | BankAccountNumber.BBAN.LI |
Numero di conto bancario di base | de |
BankAccountNumber.IBAN.LI |
Numero conto bancario internazionale | tutti | |
Lituania | BankAccountNumber.BBAN.LT |
Numero di conto bancario di base | lt |
BankAccountNumber.IBAN.LT |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.LT |
Numero di identificazione nazionale | lt | |
Lussemburgo | BankAccountNumber.BBAN.LU |
Numero di conto bancario di base | de, fr |
BankAccountNumber.IBAN.LU |
Numero conto bancario internazionale | tutti | |
NationalNumber.TaxID.LU |
Numero di identificazione fiscale | de, fr | |
Malta | BankAccountNumber.BBAN.MT |
Numero di conto bancario di base | mt |
BankAccountNumber.IBAN.MT |
Numero conto bancario internazionale | tutti | |
Paesi Bassi | BankAccountNumber.BBAN.NL |
Numero di conto bancario di base | nl |
BankAccountNumber.IBAN.NL |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.NL |
Numero di identificazione nazionale | nl | |
NationalNumber.Passport.NL |
Numero di passaporto | nl | |
Norvegia | BankAccountNumber.BBAN.NO |
Numero di conto bancario di base | no |
BankAccountNumber.IBAN.NO |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.NO |
Numero di identificazione nazionale | no | |
NationalNumber.NationalID.NO.Old |
Numero di identificazione nazionale precedente | no | |
NationalNumber.Passport.NO |
Numero di passaporto | no | |
Polonia | BankAccountNumber.BBAN.PL |
Numero di conto bancario di base | pl |
BankAccountNumber.IBAN.PL |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.PL |
Numero di identificazione nazionale | pl | |
NationalNumber.Passport.PL |
Numero di passaporto | pl | |
NationalNumber.TaxID.PL |
Numero di identificazione fiscale | pl | |
Portogallo | BankAccountNumber.IBAN.PT |
Numero conto bancario internazionale | tutti |
BankAccountNumber.BBAN.PT |
Numero di conto bancario di base | pt | |
NationalNumber.NationalID.PT |
Numero di identificazione nazionale | pt | |
NationalNumber.NationalID.PT.Old |
Numero di identificazione nazionale, formato obsoleto | pt | |
NationalNumber.TaxID.PT |
Numero di identificazione fiscale | pt | |
Romania | BankAccountNumber.BBAN.RO |
Numero di conto bancario di base | ro |
BankAccountNumber.IBAN.RO |
Numero conto bancario internazionale | tutti | |
NationalNumber.NationalID.RO |
Numero di identificazione nazionale | ro | |
NationalNumber.TaxID.RO |
Numero di identificazione fiscale | ro | |
Slovacchia | BankAccountNumber.IBAN.SK |
Numero conto bancario internazionale | tutti |
BankAccountNumber.BBAN.SK |
Numero di conto bancario di base | sk | |
NationalNumber.TaxID.SK |
Numero di identificazione fiscale | sk | |
NationalNumber.NationalID.SK |
Numero di identificazione nazionale | sk | |
Slovenia | BankAccountNumber.IBAN.SI |
Numero conto bancario internazionale | tutti |
Spagna | BankAccountNumber.IBAN.ES |
Numero conto bancario internazionale | tutti |
BankAccountNumber.BBAN.ES |
Numero di conto bancario di base | es | |
NationalNumber.NationalID.ES |
Numero di identificazione nazionale | es | |
NationalNumber.Passport.ES |
Numero di passaporto | es | |
NationalNumber.TaxID.ES |
Numero di identificazione fiscale | es | |
Svezia | BankAccountNumber.IBAN.SE |
Numero conto bancario internazionale | tutti |
BankAccountNumber.BBAN.SE |
Numero di conto bancario di base | it | |
NationalNumber.NationalID.SE |
Numero di identificazione nazionale | it | |
NationalNumber.Passport.SE |
Numero di passaporto | it | |
Svizzera | BankAccountNumber.IBAN.CH |
Numero conto bancario internazionale | tutti |
BankAccountNumber.BBAN.CH |
Numero di conto bancario di base | de, fr, it | |
NationalNumber.NationalID.CH |
Numero di identificazione nazionale | de, fr, it | |
NationalNumber.Passport.CH |
Numero di passaporto | de, fr, it | |
NationalNumber.NationalID.CH.Old |
Numero di identificazione nazionale, formato obsoleto | de, fr, it | |
Regno Unito di Gran Bretagna e Irlanda del Nord | BankAccountNumber.IBAN.GB |
Numero conto bancario internazionale | tutti |
NationalNumber.SocialSecurityNumber.GB.NHS |
Numero del servizio sanitario nazionale | tutti | |
NationalNumber.SocialSecurityNumber.GB.NINO |
Numero di previdenza sociale nazionale | tutti | |
NationalNumber.NationalID.GB.Old |
Numero ID nazionale, formato obsoleto | tutti | |
NationalNumber.Passport.GB |
Numero passaporto. L'algoritmo di checksum non è implementato e quindi viene con ulteriori restrizioni di contesto. | tutti | |
Stati Uniti | NationalNumber.SocialSecurityNumber.US |
Numero di previdenza sociale. L'algoritmo di checksum non è implementato e quindi viene con ulteriori restrizioni di contesto. | it |
NationalNumber.Passport.US |
Numero passaporto. L'algoritmo di checksum non è implementato e quindi viene con ulteriori restrizioni di contesto. | it |
Dipendenze da altri blocchi
Nessuna
Esempio di codice
import watson_nlp
# Load the RBR PII model. Note that this is a multilingual model supporting multiple languages.
rbr_entity_model = watson_nlp.load('entity-mentions_rbr_multi_pii')
# Run the RBR model. Note that language code of the input text is passed as a parameter to the run method.
rbr_entity_mentions = rbr_entity_model.run('Please find my credit card number here: 378282246310005. Thanks for the payment.', language_code='en')
print(rbr_entity_mentions)
Output dell'esempio di codice
{
"mentions": [
{
"span": {
"begin": 40,
"end": 55,
"text": "378282246310005"
},
"type": "BankAccountNumber.CreditCardNumber.Amex",
"producer_id": {
"name": "RBR mentions",
"version": "0.0.1"
},
"confidence": 0.8,
"mention_type": "MENTT_UNSET",
"mention_class": "MENTC_UNSET",
"role": ""
}
],
"producer_id": {
"name": "RBR mentions",
"version": "0.0.1"
}
}
Argomento principale: Watson Natural Language Processing task catalog