Description
This pipeline can be used to deidentify PHI information from medical texts in German language. The PHI information will be masked and obfuscated in the resulting text.
The pipeline can mask and obfuscate: LOCATION
, DATE
, NAME
, ID
, AGE
, PROFESSION
, CONTACT
, ORGANIZATION
, DOCTOR
, CITY
, COUNTRY
, STREET
, PATIENT
, PHONE
, HOSPITAL
, STATE
, DLN
, SSN
, ZIP
, ACCOUNT
, LICENSE
, PLATE
, VIN
, MEDICALRECORD
, EMAIL
, URL
entities.
How to use
from sparknlp.pretrained import PretrainedPipeline
deid_pipeline = PretrainedPipeline("clinical_deidentification_docwise_large_wip", "de", "clinical/models")
text = """Sehr geehrter Herr Schmidt, bezüglich Ihrer Anfrage vom 15.03.2024 für Ihre Krankenakte 341123 möchte ich bestätigen, dass Ihre Sozialversicherungsnummer 13110587M565 und Ihre Versichertennummer T0110053F5D korrekt in unserem System hinterlegt sind. Ihr Fahrzeug mit dem Kennzeichen M-AB 1234 ist bereits registriert. Falls Sie Fragen haben, erreichen Sie uns unter +49 89 12345678 oder schreiben Sie an support@beispiel.de. Unsere Details finden Sie auch unter https://www.beispiel-behoerde.de. Für Ihre Bankgeschäfte nutzen Sie weiterhin das Konto DE89 3704 0044 0532 0130 00."""
deid_result = deid_pipeline.fullAnnotate(text)
print(''.join([i.result for i in deid_result[0]['document']]))
print(''.join([i.result for i in deid_result[0]['masked']]))
print(''.join([i.result for i in deid_result[0]['obfuscated']]))
import com.johnsnowlabs.nlp.pretrained.PretrainedPipeline
val deid_pipeline = PretrainedPipeline("clinical_deidentification_docwise_large_wip", "de", "clinical/models")
val text = """Sehr geehrter Herr Schmidt, bezüglich Ihrer Anfrage vom 15.03.2024 für Ihre Krankenakte 341123 möchte ich bestätigen, dass Ihre Sozialversicherungsnummer 13110587M565 und Ihre Versichertennummer T0110053F5D korrekt in unserem System hinterlegt sind. Ihr Fahrzeug mit dem Kennzeichen M-AB 1234 ist bereits registriert. Falls Sie Fragen haben, erreichen Sie uns unter +49 89 12345678 oder schreiben Sie an support@beispiel.de. Unsere Details finden Sie auch unter https://www.beispiel-behoerde.de. Für Ihre Bankgeschäfte nutzen Sie weiterhin das Konto DE89 3704 0044 0532 0130 00."""
val deid_result = deid_pipeline.fullAnnotate(text)
println(deid_result(0)("document").map(_("result").toString).mkString(""))
println(deid_result(0)("masked").map(_("result").toString).mkString(""))
println(deid_result(0)("obfuscated").map(_("result").toString).mkString(""))
Results
Sehr geehrter Herr Schmidt, bezüglich Ihrer Anfrage vom 15.03.2024 für Ihre Krankenakte 341123 möchte ich bestätigen, dass Ihre Sozialversicherungsnummer 13110587M565 und Ihre Versichertennummer T0110053F5D korrekt in unserem System hinterlegt sind. Ihr Fahrzeug mit dem Kennzeichen M-AB 1234 ist bereits registriert. Falls Sie Fragen haben, erreichen Sie uns unter +49 89 12345678 oder schreiben Sie an support@beispiel.de. Unsere Details finden Sie auch unter https://www.beispiel-behoerde.de. Für Ihre Bankgeschäfte nutzen Sie weiterhin das Konto DE89 3704 0044 0532 0130 00.
-------------MASKED------------
Sehr geehrter Herr <NAME>, bezüglich Ihrer Anfrage vom <DATE> für Ihre Krankenakte <MEDICALRECORD> möchte ich bestätigen, dass Ihre Sozialversicherungsnummer <SSN> und Ihre Versichertennummer <ID> korrekt in unserem System hinterlegt sind. Ihr Fahrzeug mit dem Kennzeichen <PLATE> ist bereits registriert. Falls Sie Fragen haben, erreichen Sie uns unter <PHONE> oder schreiben Sie an <EMAIL>. Unsere Details finden Sie auch unter <URL>. Für Ihre Bankgeschäfte nutzen Sie weiterhin das Konto <ACCOUNT>.
-------------OBFUSCATED-----------
SSehr geehrter Herr Berta, bezüglich Ihrer Anfrage vom 22.03.2024 für Ihre Krankenakte 816698 möchte ich bestätigen, dass Ihre Sozialversicherungsnummer 91990385M363und Ihre Versichertennummer B6556697P9R korrekt in unserem System hinterlegt sind. Ihr Fahrzeug mit dem Kennzeichen N-RO 4769 ist bereits registriert. Falls Sie Fragen haben, erreichen Sie uns unter +70 10 25476981 oder schreiben Sie an Flaminia@google.com. Unsere Details finden Sie auch unter http://www.duran-brown.com/. Für Ihre Bankgeschäfte nutzen Sie weiterhin das Konto XY21 5948 4488 4756 4354 44.
Model Information
Model Name: | clinical_deidentification_docwise_large_wip |
Type: | pipeline |
Compatibility: | Healthcare NLP 5.5.1+ |
License: | Licensed |
Edition: | Official |
Language: | de |
Size: | 2.9 GB |
Included Models
- DocumentAssembler
- InternalDocumentSplitter
- TokenizerModel
- WordEmbeddingsModel
- PretrainedZeroShotNER
- NerConverterInternalModel
- MedicalNerModel
- NerConverterInternalModel
- MedicalNerModel
- NerConverterInternalModel
- RegexMatcherInternalModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- RegexMatcherInternalModel
- RegexMatcherInternalModel
- TextMatcherInternalModel
- TextMatcherInternalModel
- TextMatcherInternalModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- RegexMatcherModel
- RegexMatcherModel
- RegexMatcherModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ContextualParserModel
- ChunkMergeModel
- ChunkMergeModel
- ChunkMergeModel
- ChunkMergeModel
- ChunkMergeModel
- ChunkFilterer
- LightDeIdentification
- LightDeIdentification