Healthcare Natural Language API

Healthcare Natural Language API adalah bagian dari Cloud Healthcare API yang menggunakan model bahasa alami untuk mengekstrak informasi layanan kesehatan dari teks medis.

Panduan konseptual ini menjelaskan dasar-dasar penggunaan Healthcare Natural Language API, termasuk:

  • Jenis permintaan yang dapat Anda buat ke Healthcare Natural Language API
  • Cara membuat permintaan ke Healthcare Natural Language API
  • Cara menangani respons dari Healthcare Natural Language API

Ringkasan

Healthcare Natural Language API mengekstrak informasi layanan kesehatan dari teks medis. Informasi perawatan kesehatan ini dapat mencakup:

  • Konsep medis, seperti obat, prosedur, dan kondisi medis
  • Fitur fungsional, seperti hubungan temporal, subjek, dan penilaian kepastian
  • Hubungan, seperti efek samping dan dosis obat

Memilih antara Healthcare Natural Language API dan AutoML Entity Extraction for Healthcare

Healthcare Natural Language API menawarkan model natural language terlatih untuk mengekstrak konsep dan hubungan medis dari teks medis. Healthcare Natural Language API memetakan teks ke dalam kumpulan kategori pengetahuan medis yang telah ditentukan sebelumnya.

AutoML Entity Extraction for Healthcare memungkinkan Anda membuat model ekstraksi entity kustom yang dilatih menggunakan teks medis beranotasi Anda sendiri dan menggunakan kategori Anda sendiri. Untuk informasi selengkapnya, lihat dokumentasi AutoML Entity Extraction for Healthcare.

Lokasi yang tersedia

Healthcare Natural Language API tersedia di lokasi berikut:

Nama lokasi Deskripsi lokasi
asia-south1 Mumbai, India
australia-southeast1 Sydney, Australia
europe-west2 London, Inggris
europe-west4 Belanda
northamerica-northeast1 Montréal, Kanada
us-central1 Iowa, Amerika Serikat

Fitur Healthcare Natural Language API

Healthcare Natural Language API memeriksa teks medis untuk menemukan konsep dan hubungan medis. Anda melakukan analisis entity menggunakan metode analyzeEntities.

Permintaan analisis entity

Healthcare Natural Language API adalah REST API dan terdiri dari permintaan dan respons JSON. Bagian berikut menunjukkan cara mengekstrak berbagai insight medis dari teks medis tertentu:

Permintaan analisis entitas berisi kolom berikut:

Kolom respons analisis entity

Analisis entity menampilkan kumpulan sebutan pengetahuan medis, konsep medis, dan hubungan antara sebutan pengetahuan medis yang terdeteksi, termasuk hal berikut:

  • entityMentions: kemunculan entity pengetahuan medis dalam teks medis sumber. Setiap sebutan entitas memiliki kolom berikut:

    • mentionId: ID unik untuk sebutan entity dalam respons.
    • type: kategori pengetahuan medis dari sebutan entitas.
    • text: terdiri dari kolom textContent, dan menjelaskan kutipan teks medis yang berisi sebutan entity, dan offset, lokasi sebutan entity dalam teks medis sumber.
    • temporalAssessment: menentukan hubungan entitas tertaut dengan sebutan entitas, salah satu dari CURRENT, CLINICAL_HISTORY, FAMILY_HISTORY, UPCOMING, atau OTHER.
    • certaintyAssessment: negasi atau kualifikasi konsep medis, salah satu dari LIKELY, SOMEWHAT_LIKELY, UNCERTAIN, SOMEWHAT_UNLIKELY, UNLIKELY, atau CONDITIONAL.
    • subject: menentukan subjek yang terkait dengan konsep medis, salah satu dari PATIENT, FAMILY_MEMBER, atau OTHER.
    • linkedEntities: daftar konsep medis yang mungkin terkait dengan sebutan entitas ini. Entitas tertaut menentukan entityId, yang menautkan konsep medis ke entitas di entities.
  • entities: menjelaskan konsep medis dari kolom entity tertaut. Setiap entitas dijelaskan menggunakan kolom berikut:

    • entityId: ID unik dari kolom linkedEntities.
    • preferredTerm: istilah yang lebih disukai untuk konsep medis.
    • vocabularyCodes: representasi konsep medis dalam kosakata medis yang didukung.
  • relationships: menentukan hubungan terarah antara sebutan entitas. Dalam contoh, subjek hubungan adalah "Insulin regimen human" dan objek hubungan adalah "5 units".

  • confidence: indikasi keyakinan model dalam hubungan sebagai angka antara 0 dan 1.

Selain kolom yang tercantum, respons juga dapat berisi kolom additionalInfo, yang menyatakan deskripsi tambahan tentang jenis sebutan entitas. Lihat Informasi tambahan.

Bahasa yang didukung

Healthcare Natural Language API hanya mendukung ekstraksi informasi layanan kesehatan dari teks bahasa Inggris.

Kosakata medis yang didukung

Healthcare Natural Language API mendukung kosakata medis berikut:

  • Model Dasar Anatomi
  • Gene Ontology
  • HUGO Gene Nomenclature Committee
  • Ontologi Fenotipe Manusia
  • Sistem Kode Prosedur ICD-10
  • ICD-10-CM
  • ICD-9-CM
  • LOINC
  • MeSH
  • Topik Kesehatan MedlinePlus
  • Nama Metatesaurus
  • Taksonomi NCBI
  • Tesaurus NCI
  • National Drug File
  • Online Mendelian Inheritance in Man
  • RXNORM
  • SNOMED CT (hanya tersedia untuk pengguna AS)

Kategori pengetahuan medis yang didukung

Healthcare Natural Language API menetapkan kategori pengetahuan medis ke kolom entityMentions.type. Daftar kategori pengetahuan medis yang didukung adalah sebagai berikut. Jenis sebutan entitas yang termasuk dalam grup onkologi, determinan sosial kesehatan (SDOH), dan informasi kesehatan terlindungi (PHI) hanya tersedia di Pratinjau:

Grup Kategori pengetahuan medis Deskripsi
Umum ANATOMICAL_STRUCTURE Bagian tubuh manusia yang kompleks, seperti sel, organ, dan sistem.
BODY_FUNCTION Fungsi yang dilakukan oleh tubuh manusia.
BF_RESULT Hasil dari fungsi isi.
BODY_MEASUREMENT Pengukuran normal tubuh manusia, seperti tanda vital, yang diperoleh tanpa tes atau prosedur rumit menggunakan instrumen dasar, seperti termometer atau stetoskop.
BM_RESULT Hasil pengukuran tubuh.
BM_UNIT Satuan untuk pengukuran tubuh.
BM_VALUE Nilai pengukuran tubuh.
LABORATORY_DATA Hasil pengujian sampel tubuh.
LAB_RESULT Deskripsi kualitatif data laboratorium, seperti "meningkat", "turun", "positif", atau "negatif".
LAB_VALUE Nilai instance data laboratorium.
LAB_UNIT Satuan pengukuran untuk nilai laboratorium.
MEDICAL_DEVICE Instrumen fisik atau virtual.
MEDICINE Obat atau sediaan lainnya untuk pengobatan atau pencegahan penyakit.
MED_DOSE Dosis obat.
MED_DURATION Periode pemberian obat.
MED_FORM Karakteristik fisik obat tertentu.
MED_FREQUENCY Frekuensi obat diminum.
MED_ROUTE Lokasi di dalam tubuh tempat obat diberikan.
MED_STATUS Status pengobatan yang ada, seperti "lanjutkan", "mulai", "mulai ulang", "berhenti", "beralih", "tingkatkan", dan "kurangi".
MED_STRENGTH Jumlah bahan aktif dalam dosis obat.
MED_UNIT Satuan pengukuran untuk bahan aktif dalam obat.
MED_TOTALDOSE Jumlah obat yang harus diminum sekaligus.
PROBLEM Kondisi medis, termasuk temuan dan penyakit.
PROCEDURE Prosedur diagnosis atau perawatan.
PROCEDURE_RESULT Hasil dari prosedur.
PROC_METHOD Metode yang digunakan untuk melakukan prosedur.
SEVERITY Tingkat keparahan kondisi medis.
SUBSTANCE_ABUSE Deskripsi penyalahgunaan zat psikoaktif.
Onkologi (Pratinjau) CLINICAL_STATUS Status kasus kanker seperti "aktif", "berulang", "kambuh", dan "selesai".
DATE Anotasi tanggal, seperti tanggal diagnosis, tanggal prosedur, atau tanggal pengobatan radiasi. Fungsi ini mengekstrak semua elemen tanggal dan mungkin tidak menyertakan tahun.
DIMENSIONS Pengukuran tumor, massa, atau pertumbuhan abnormal.
GENE_STUDIED Gen yang dipelajari yang secara langsung atau tidak langsung menyebabkan pembentukan tumor, seperti BRCA1, p53, dan ALK.
HISTOLOGICAL_GRADE Sistem klasifikasi untuk menilai tampilan sel kanker.
LAB_SPECIMEN Materi biologis yang dikumpulkan dari tubuh untuk pengujian atau pengambilan sampel.
RADIATION_DOSAGE Jumlah radiasi yang diberikan kepada pasien.
ONSET Anotasi tanggal untuk mewakili tanggal saat pasien pertama kali mengamati masalah terkait kanker.
VARIATION_CODE Kode yang diberikan ke varian genomik tertentu yang terdeteksi dalam sistem coding utama seperti ClinVar dan HGVS.
Social determinants of health (SDoH) (Pratinjau) AGE ID usia. Hal ini mencakup frasa yang menjelaskan usia, seperti "tampak lebih muda dari usia yang dinyatakan", "usia paruh baya", "78 tahun", atau "remaja".

Catatan: HIPAA mengklasifikasikan usia seseorang sebagai PHI hanya jika usianya di atas 90 tahun. Untuk informasi selengkapnya, lihat Ringkasan Aturan Privasi HIPAA.

FAMILY Frasa yang menjelaskan struktur keluarga atau kerabat pasien, seperti "menikah dengan dua anak", "saudara laki-laki", "istri", "orang tua yang mendukung", atau "bercerai".
LIVING_SITUATION Frasa yang menjelaskan situasi tempat tinggal pasien, seperti "dengan teman sekamar", "memiliki perawat homecare 24/7", atau "baru saja pindah".
SOCIAL_IDENTITY Frasa yang menjelaskan identitas sosial pasien atau keluarga, termasuk ras, etnis, orientasi seksual, agama, kewarganegaraan, bahasa yang digunakan atau tidak digunakan, atau negara asal.
PHYSICAL_APPEARANCE Frasa yang menjelaskan ciri fisik pasien atau keluarga yang paling terlihat atau jelas, seperti "bekas luka di pipi kanan", "sindrom Down", "obesitas", atau "kaki kiri diamputasi".
OCCUPATION Frasa yang menjelaskan pekerjaan dan status pekerjaan pasien atau keluarga, seperti "ibu pensiunan", "bekerja sebagai tukang las selama 20 tahun", atau "kehilangan pekerjaan tahun lalu".
Informasi kesehatan terlindungi (PHI) (Pratinjau) PERSON_NAME ID nama generik untuk seseorang. Menyertakan gelar, seperti "Dr.", "Ny.", atau "Dr."
ORGANIZATION_NAME ID untuk organisasi medis yang mengumpulkan PHI, seperti klinik, panti wreda, atau rumah sakit.
GENERIC_ID ID generik yang mengidentifikasi rekam medis, pasien, dokter, rumah sakit, seperti SSN pasien, atau nomor penyedia.
LOCATION Lokasi geografis yang mungkin berisi nama dan nomor untuk bangunan, jalan, kota, negara bagian, atau kode pos.
PHONE_NUMBER Nomor untuk menunjukkan nomor telepon, nomor faks, atau nomor pager.
EMAIL_ADDRESS ID alamat email.
URL Alamat situs.
ZIPCODE ID kode pos.

Kategori fitur fungsional yang didukung

Healthcare Natural Language API dapat menyimpulkan fitur fungsional, atau atribut, dari sebutan entitas dari konteks. Misalnya, dalam pernyataan "Ibu Kusuma menderita diabetes", kondisi "diabetes" memiliki fitur fungsional subject FAMILY_MEMBER.

Hubungan temporal

Hubungan temporal, yang ditampilkan di kolom temporalAssessment, menjelaskan bagaimana sebutan entitas ini terkait dengan subjek secara temporal.

Healthcare Natural Language API mendukung hubungan temporal berikut:

  • CURRENT
  • CLINICAL_HISTORY
  • FAMILY_HISTORY
  • UPCOMING
  • OTHER

Subjek

Subjek, yang ditampilkan di kolom subject, menjelaskan individu yang terkait dengan sebutan entitas.

Healthcare Natural Language API mendukung subjek berikut:

  • PATIENT
  • FAMILY_MEMBER
  • OTHER

Penilaian kepastian

Penilaian kepastian, yang ditampilkan di kolom certaintyAssessment, menjelaskan keyakinan pencatat asli. Misalnya, jika catatan asli berisi "Pasien mengalami sakit tenggorokan", penilaian kepastian akan menampilkan nilai LIKELY untuk menunjukkan keyakinan pencatat bahwa kemungkinan pasien mengalami sakit tenggorokan. Jika catatan asli berisi "Pasien tidak memiliki sakit tenggorokan", penilaian kepastian akan menampilkan nilai UNLIKELY untuk menunjukkan keyakinan pencatat bahwa kemungkinan pasien tidak mengalami sakit tenggorokan.

Penilaian kepastian dapat berupa salah satu nilai berikut:

  • LIKELY
  • SOMEWHAT_LIKELY
  • UNCERTAIN
  • SOMEWHAT_UNLIKELY
  • UNLIKELY
  • CONDITIONAL

Informasi tambahan

Kolom additionalInfo memberikan detail tambahan tentang sebutan entitas. Misalnya, kolom additionalInfo untuk sebutan entitas DATE mungkin berisi detail tentang jenis tanggal, yang dikategorikan sebagai salah satu dari berikut:

  • ADMISSION_DATE
  • CONSULTATION_DATE
  • DISCHARGE_DATE
  • SERVICE_DATE
  • VISIT_DATE
  • DIAGNOSIS_DATE
  • MED_STARTED_DATE
  • MED_ENDED_DATE
  • NOTE_DATE
  • PROCEDURE_DATE
  • RADIATION_STARTED_DATE
  • RADIATION_ENDED_DATE
  • STAGE_DATE

Hubungan yang didukung antara sebutan entity

Healthcare Natural Language API dapat menyimpulkan hubungan antara sebutan entity berdasarkan teks medis di sekitarnya. Dalam respons, subjek hubungan diidentifikasi oleh subjectId dan objek hubungan diidentifikasi oleh objectId.

Healthcare Natural Language API mendukung hubungan berikut antara sebutan entitas:

Subjek Objek
ANATOMICAL_STRUCTURE MEDICAL_DEVICE
BODY_FUNCTION BF_RESULT
BODY_MEASUREMENT BM_RESULT
BODY_MEASUREMENT BM_UNIT
BODY_MEASUREMENT BM_VALUE
LABORATORY_DATA LAB_RESULT
LABORATORY_DATA LAB_UNIT
LABORATORY_DATA LAB_VALUE
MEDICINE MED_DOSE
MEDICINE MED_DURATION
MEDICINE MED_FORM
MEDICINE MED_FREQUENCY
MEDICINE MED_ROUTE
MEDICINE MED_STATUS
MEDICINE MED_STRENGTH
MEDICINE MED_TOTALDOSE
MEDICINE MED_UNIT
PROBLEM ANATOMICAL_STRUCTURE
PROBLEM MEDICINE
PROBLEM PROCEDURE
PROBLEM SEVERITY
PROCEDURE ANATOMICAL_STRUCTURE
PROCEDURE PROC_METHOD
PROCEDURE PROCEDURE_RESULT
SUBSTANCE_ABUSE SEVERITY

Output Healthcare Natural Language API sebagai paket FHIR

Saat Anda meminta metode analyzeEntities dengan kolom alternativeOutputFormat ditetapkan ke FHIR_BUNDLE, respons akan menyertakan objek JSON berikut:

  • Penyebutan entity, entity, dan hubungan
  • Paket FHIR R4 yang direpresentasikan sebagai string, yang mencakup semua entitas, sebutan entitas, dan hubungan dalam format JSON

Untuk membuat paket FHIR R4, Healthcare Natural Language API memetakan sebutan entitas, entitas, dan hubungan ke resource FHIR dan elemennya. Tabel berikut mencantumkan beberapa pemetaan ini.

Sebutan entity Healthcare Natural Language API Kategori Pengetahuan Medis Resource dan elemen FHIR R4
PROBLEM Condition
PROBLEM Condition.category
PROBLEM Condition.status
PROBLEM ANATOMICAL_STRUCTURE Condition.bodySite
PROBLEM ANATOMICAL_STRUCTURE Condition.evidence
PROBLEM SEVERITY Condition.severity
PROCEDURE Procedure
PROCEDURE Procedure.status
PROCEDURE Procedure.code
PROCEDURE ANATOMICAL_STRUCTURE Procedure.bodySite
PROCEDURE MEDICAL_DEVICE Procedure.usedCode
PROCEDURE PROBLEM Procedure.reasonReference
MEDICINE MedicationStatement
MEDICINE MedicationStatement.status
MEDICINE MedicationStatement.medication
MEDICINE PROBLEM MedicationStatement.reasonReference
MEDICINE MED_DOSE MedicationStatement.dosage.doseAndRate.doseQuantity
MEDICINE MED_FREQUENCY MedicationStatement.dosage.text
MEDICINE MED_ROUTE MedicationStatement.dosage.route
MEDICINE MED_STRENGTH MedicationStatement.dosage.doseAndRate.doseQuantity
MEDICINE MED_UNIT MedicationStatement.dosage.doseAndRate.doseQuantity

Untuk mengekstrak entitas dari teks sebagai paket FHIR R4, lihat Mengekstrak output sebagai paket FHIR R4.