Owner Yann: (Experimental) Demo Google cloud application flow for covid19 data extraction from PDF's
Aziz Ketari ee51bb0c55 Adding link to medium article. | 4 years ago | |
---|---|---|
data | 4 years ago | |
notebooks | 4 years ago | |
utils | 4 years ago | |
.DS_Store | 4 years ago | |
README.md | 4 years ago | |
env_variables.sh | 4 years ago | |
extraction.py | 4 years ago | |
preprocessing.py | 4 years ago | |
requirements.txt | 4 years ago | |
retrieving.py | 4 years ago | |
storing.py | 4 years ago |
by the Italian Society of Medical and Interventional Radiology (ISMIR)
This repository contains all the code required to extract relevant information from pdf documents published by ISMIR and store raw data in a relational database and entities in a No-SQL database.
In particular, you will use Google Cloud Vision API and Translation API, before storing the information on BigQuery API. Separately, you will also use specific NER models (from Scispacy) to extract (medical) domain specific entities and store them in a NoSQL db (namely Datastore) on Google Cloud Platform.
Looking for more context behind this dataset? Check out this article.
Requirements:
Enable APIs
gcloud services enable vision.googleapis.com
gcloud services enable translate.googleapis.com
gcloud services enable datastore.googleapis.com
gcloud services enable bigquery.googleapis.com
Install package requirements:
Note:
You will also need to download a NER model for the second part of this pipeline. See Scispacy full selection of available models [here]('https://github.com/allenai/scispacy'). If you follow this installation guide, the steps will automatically download a model for you and install it.
## Extracting data
- **Step 1:** Assign the values to each variables in env_variables.sh file
cd ~/covid19 ./env_variables.sh
- **Step 2:** Download the required files to your bucket and load the required model in your local (this step will take ~10 min)
sh ~/data/download_content.sh pip install -U ./scispacy_models/en_core_sci_lg-0.2.4.tar.gz ```
python3 extraction.py
Following the extraction of text, it's time to translate it from Italian to English and curate it.
python3 preprocessing.py
Following the pre-processing, it's time to store the data in a more searchable format: a data warehouse - BigQuery - for the text, and a No-SQL database - Datastore - for the (UMLS) medical entities.
python3 storing.py
Last but not least, you can query your databases using this script.
python3 retrieving.py
To get started...
Option 1
Option 2