Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 5 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.3%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: almeidava93
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 6.61 MB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

International Classification of Primary Care (ICPC-2) and search engines: an exploration of three algorithms for information retrieval to aid medical coding

DOI

This repository contains the data and code for the study "International Classification of Primary Care (ICPC-2) and search engines: an exploration of three algorithms for information retrieval to aid medical coding" published at the Journal of Medical Artificial Intelligence. The full article is available here.

How to use this repository

In order to reproduce the results of this study, you will need clone this repository and a have few resources available: - Approximatelly 11.0 GB of free disk space - A local vector database with all the data - API keys to have access to private embedding models, including OpenAI, Cohere and Gemini

Since the setup of the vector database can take several hours and may have some cost due to API services, a compressed file vector_database.zip with the vector database is available for download in this link. All you need to do is download the file and extract its contents at the root directory of this repository.

How to get your own API keys

First, you will need to have an account in each one of the organizations and get an API key for each one. Below are the relevant links for this step. - OpenAI - Gemini - Cohere

After that, fill up the .env file with your API keys, as the example below: OPENAI_API_KEY=<------------------YOUR-OPENAI-API-KEY-HERE---------------------> COHERE_API_KEY=<------------------YOUR-COHERE-API-KEY-HERE---------------------> GEMINI_API_KEY=<------------------YOUR-GEMINI-API-KEY-HERE--------------------->

Reproducing the study results

All of the study results are available in the 'results' folder. If you want to generate these files yourself, all you need to do is: 1. setup a virtual environment with Python 3.11 or greater and install the requirements from 'requirements.txt'. 2. run the following to generate the results from each tested algorithm. This command will build the vector database if it is not available at the root directory. If that is the case, it may take several hours to complete. After that, it retrieves the results for each query in the query history and save them in the queries_results.csv file in the results folder. python retrieve.py 3. run the following to compute the information retrieval metrics and graphs. The results are saved in the results folder. python eval.py 4. run the following to compute the statistical analysis. python stats.py

Data files

In the data folder, there are six files. - thesaurus.xls: the original ICPC-2 Brazilian Portuguese thesaurus used to construct the corpus of the search engines evaluated in our study. - extended_thesaurus.csv: the corpus used to develop the search engines. - icpc-2_partial.csv: the ICPC-2 with codes and corresponding titles in Brazilian Portuguse. - query_history.csv: unique expressions queried in the search engine during the study period. - query_value_counts.csv: unique expressions with their value counts. This was used to weight the computed metrics with the query frequency. - eval_dataset.csv: contains the selected queries, each reviewer annotation and the selected codes after discussion and consensus between reviewers in the relevant_results column.

How to cite this repository

@software{Anjos_de_Almeida_Source_code_for_2024, author = {de Almeida, Vinicius Anjos}, license = {MIT}, month = dec, title = {{Source code for the paper 'International Classification of Primary Care (ICPC-2) and search engines: an exploration of three algorithms for information retrieval to aid medical coding'}}, url = {https://github.com/almeidava93/icpc_ir_paper}, doi = {https://doi.org/10.5281/zenodo.15151092}, year = {2024} }

Owner

  • Login: almeidava93
  • Kind: user

GitHub Events

Total
  • Release event: 1
  • Watch event: 1
  • Member event: 1
  • Push event: 8
  • Create event: 3
Last Year
  • Release event: 1
  • Watch event: 1
  • Member event: 1
  • Push event: 8
  • Create event: 3

Dependencies

requirements.txt pypi