- Clinic sense is an AI powered app made as part of aws health ai hackathon
- Adverse drug events (ADEs) are harmful and unintended consequences of medication use, and a leading cause of unplanned hospital admissions and deaths
- Their detection, documentation and reporting are fundamental to pharmacovigilance activities, the science of assessing and monitoring the risk/benefit profiles of medications throughout their lifecycle
- In clinical practice, fewer than 5% of ADEs are reported, even in jurisdictions where reporting is mandatory
- Without robust ADE reporting mechanisms supporting the detection of safety signals, rare ADEs may remain undetected for years, exposing the public to unanticipated risks
- For example, high profile drug withdrawals such as that of the anti inflammatory rofecoxib (Vioxx™) occurred only after millions of patients had been exposed, highlighting the need for earlier, more comprehensive data
- The FDA guidelines require health care providers and manufacturers to submit voluntary reports of adverse drug events (ADE) associated with products within 7 days of complaint
- Refer section "mandatory safety reporting" - https://www.fda.gov/drugs/investigational-new-drug-ind-application/ind-application-reporting-safety-reports
- However, most of the complaints go unreported as they originate from channels like social media(twitter), eletronic records, and complaints sent to pharmaceutical manufacturers.
- Additionally, this process becomes highly time consuming as it requires trained professionals to go through the large volumes of data to identify adverse drug events and fill up the long forms provided by the FDA as part of the reporting process.
- AI assisted ADE detection and reporting system which will allow healthcare professionals/manufacturers/healthcare bodies to make better use of their time without being tooo much involved in process of identifaction and reporting of ADE
- Timely reporting of ADE
- Better drug monitoring and research
- Timely withdrawl/research of drugs that contribute to life threatning events
- Abbreviations are considered an essential part of the clinical narrative.
- They are used not only to save time and space but also to hide serious or incurable illnesses.
- Every abbreviation can be used in different senses adding to more confusion.
- Simple Example She had an AB (here AB means Abortion) She is AB +ve (here AB refers to blood group)
- Misreckoning interpretation of the clinical abbreviations could affect different aspects concerning patients themselves or other services like clinical support systems
- There is no consensus in the scientific community to create new abbreviations, making it difficult to understand them
- Pubmed abstract https://pubmed.ncbi.nlm.nih.gov/21459778/ concluded The majority of healthcare professionals have a very poor knowledge of commonly used abbreviations. Use of unambiguous and approved list of abbreviations is suggested in order to ensure good communication in patient care.
- The situation is even worse when including people that dont belong to the medical profession need to understand these abbreviations
- Improved patient care
- Better communication and understanding amongst healthcare professionals wrt abbreviations
- Patients actually understand the meaning of the sense in which the abbreviation is used leading to better patient-doctor relationship
- Indirectly improving accuracy of other AI entity recognition solutions by disambiguating the abbreviations and providing proper meaning of the abbreviation
- AWS medical Comprehend - to identify entities
- AWS Sagemaker - for training custom algorithms using personal docker container
- AWS lambda - to host app
- AWS ecr - for storing container
- AWS cloudwatch events - to keep lambda warm so user dont experience cold starts(free tier doesnt have provisioned concurrency)
- AWS cloudwatch logs - for loggs
- AWS s3 - for storing models and files
- AWS sam cli - for serverless app deployment
- AWS api gateway - as a trigger to lambda
- Docker - for running app in a container
- Transformers - Bioclinicalbert from huggingface Transformers(Bioclinical as it is relevant to domain)
- Pypdf2 - for filling pdf on the go
- t5base - for augmenting the training set
- streamlit cloud - for frontend deployment
-
PLEASE USE FIREFOX TO TEST THE APP AS THERE IS A PROBLEM WITH PDF RENDERING WITH CHROME AT STREAMLIT CLOUD'S END ( https://discuss.streamlit.io/t/rendering-pdf-on-ui/13505/12 - refer RECENT COMMENTS, https://discuss.streamlit.io/t/pdf-display-blocked-by-chrome/22763 )
-
https://ud2195-aws-health-ai-streamlit-fronendappmain-3tl9wz.streamlitapp.com/
-
PLEASE USE FIREFOX TO TEST THE APP AS THERE IS A PROBLEM WITH PDF RENDERING WITH CHROME AT STREAMLIT CLOUD'S END ( https://discuss.streamlit.io/t/rendering-pdf-on-ui/13505/12 - refer RECENT COMMENTS, https://discuss.streamlit.io/t/pdf-display-blocked-by-chrome/22763 )
-
if you want to setup streamlit UI on local then
cd aws-health-ai/streamlit_fronend/ pip3 install -r requirements.txt streamlit run main.py -
If you want to test backend using any API client you can call
https://au8vnarn4m.execute-api.us-west-2.amazonaws.com/dev/predict-
with one of the payloads mentioned in pharmacovigilance/sample_payloads/ - to test feature 1
-
with one of the payloads mentioned in clinical_kw_disambiguation/sample_payloads/ - to test feature 2
-
want to test more ?
-
Create your own payload to test feature 2 by
- taking any example of keyword, sentence from clinical_kw_disambiguation/datasets/test_clinical_kw_disambiguation.csv THE GOLD LABEL IS ALSO MENTIONED IN TEST SET SO YOU CAN VERIFY IF PREDICTION IS RIGHT OR WRONG
- Just FYI clinical_kw_disambiguation/assets/1_to_n_senses.text talks about how many senses are present for 1 abbreviation
- keep "module": "clinical_disambiguation"
-
Create your own payload to test feature 1 by
- taking any example of sentence from any of train, test, val files present in pharmacovigilance/datasets/
- use medical transcript of anypatient from mtsamples.csv https://www.kaggle.com/datasets/tboyle10/medicaltranscriptions
- keep "module": "adverse_event_clf"
-
-
- Finding what features to build by going through n number of blogs, research paper and websites of major healthcare bodies
- Imbalanced dataset for first feature (ADE identification and reporting)
- GPU instances werent available as part of aws free tier, had to raise a customer ticket for the same
- AWS lambda doesnt provide > 3 gb ram as part of free tier, stil we managed to host 3 bert models in our app in a single big fat lambda
- Finding a way to keep lambda warm, provisioned concurrency isnt there for free tier lambda
- Only positive samples were available for Clinical word disambiguation, negative samples had to be generated
- PDF rendering on streamlit cloud only works properly on firefox(tested with chrome, firefox, chromium)
- Perfect the solution
- Release it as a proper product
- Uday Khanna - https://www.linkedin.com/in/uday-khanna-325507157/
- Shashank Rao - https://www.linkedin.com/in/shashankprao/
- Pranjal Mishra - https://www.linkedin.com/in/fastboot/
