Skip to content

arvidl/AI-og-helse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

260 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏥 AI og Helse

Åpen variant av et avansert kurs i kunstig intelligens for medisinere og personell i helse- og omsorgssektoren.

Åpne kursnettsiden

Tip

Start på kursnettsiden for en ryddig inngang til ukeoversikt, ressurser og videre lenker til notebooks: Åpne kursnettsiden

Note

Forelesningsversjonen ligger også ute som Google Slides: Åpne presentasjonen eller gå via kursnettsiden med QR-kode.

📚 Kursstruktur

  • Del 1 (Uke 1-6): AI-fundamentet - fra AI 1.0 til AI 2.0
  • Del 2 (Uke 7-8): Praktiske anvendelser i medisin, helse og omsorg

🎯 Læringsutbytte

Kunnskaper

  • Forstå forskjellen mellom klassisk maskinlæring (AI 1.0), dyplæring og generativ AI (AI 2.0)
  • Kjenne til praktiske anvendelser av AI i helse- og omsorgstjenesten
  • Forstå grunnleggende prinsipper for AI-støttet analyse, optimering og beslutning
  • Ha innsikt i etiske og regulatoriske aspekter ved AI i helse og medisin

Ferdigheter

  • Bruke generative AI-verktøy (ChatGPT, Claude, Gemini, ...) for faglige oppgaver i medisin og helse
  • Vurdere egnethet av AI-løsninger for konkrete problemstillinger
  • Identifisere muligheter for AI-støtte i egen arbeidshverdag
  • Kritisk evaluere AI-systemer og deres begrensninger (og muligheter)

Hvordan kurset kan brukes

"... på svømmekurs bør man oppholde seg mye i bassenget ..."

  • Det anbefales å "gå i bassenget" (= eksperimentere med notebooks)
  • For noen i målgruppen kan et realistisk læringsutbytte oppnås ved kun å lese, inspisere og kontemplere tekst, kode, figurer og referanser direkte i GitHub-repositoriet (https://github.com/arvidl/AI-og-helse), altså "holde seg på land ...", kombinert med bruk av en AI-sparringspartner

📂 Repo-struktur

AI-og-helse/
├── uke01-introduksjon/          # Introduksjon til AI
├── uke02-klassisk-ml/           # Klassisk maskinlæring
├── uke03-dyplæring/             # Dyplæring og nevrale nettverk
├── uke04-generativ-ai/          # Generativ AI, foundation models og multimodalitet
├── uke05-agentisk-ai/           # Agentisk AI i helse og omsorg
├── uke06-klinisk-praksis/       # Klinisk praksis, beslutningsstøtte og validering
├── uke07-velferdsteknologi/     # Sensorer, beslutningsstøtte og trygg teknologi
├── uke08-etikk-implementering/  # Etikk, bias/fairness, GDPR, MDR og trustworthy AI
├── ressurser/                   # Ordliste, verktøy og artikler
├── utils/                       # Hjelpefunksjoner
├── intro_openai_anthropic.ipynb # API-introduksjon og nøkkelhåndtering
├── environment.yml              # Standard lokalt miljø
├── environment_cuda.yml         # NVIDIA/CUDA-variant for Linux/Windows
└── requirements.txt             # Pip-avhengigheter

📚 Notebok-oversikt med Colab-badges

Uke 1: Introduksjon til AI

Notebok Beskrivelse Colab
00-velkommen.ipynb Velkommen og kursoversikt Open In Colab
01-test-meg.ipynb Test av miljø og pakker Open In Colab
02-hva-er-ai.ipynb Hva er kunstig intelligens? Open In Colab
03-ai-historie-helse.ipynb AI-historie i helsevesenet Open In Colab
04-ai-ml-dl-forskjeller.ipynb AI, ML og dyplæring Open In Colab
05-regelbaserte-systemer.ipynb Regelbaserte systemer Open In Colab
99-oppsett-miljø.ipynb Miljøoppsett guide Open In Colab

Uke 2: Klassisk maskinlæring

Notebok Beskrivelse Colab
01-klassisk-ml-101.ipynb Grunnleggende maskinlæring Open In Colab
02-fra-symptom-til-diagnose.ipynb Fra symptom til diagnose Open In Colab

Uke 3: Dyplæring og nevrale nettverk

Notebok Beskrivelse Colab
01a_nn_intro.ipynb Nevrale nettverk i menneske og maskin
- grunnleggende teori
Open In Colab
01b_læring_i_nn.ipynb Læring i nevrale nettverk
- i menneske og i maskin
Open In Colab
01c_UCI_heart_disease_klassifikasjon.ipynb Hjertesykdom-klassifikasjon
(bruk av åpne data fra UCI)
Open In Colab
01d_EKG_arytmi_klassifikasjon.ipynb Hjertearytmi-klassifikasjon med CNN
(bruk av åpne EKG data fra PhysioNet)
Open In Colab
02a_cnn_bildeklassifikasjon.ipynb CNN bildeklassifikasjon (5 blomsterarter) - intro
(bruk av åpne data fra Kaggle)
Open In Colab
02b_cnn_trening.ipynb CNN trening Open In Colab
02c_cnn_testing.ipynb CNN testing Open In Colab
02d_cnn_konklusjon.ipynb CNN konklusjon Open In Colab
03_medisinsk_bildeklassifikasjon_MR.ipynb Medisinsk MR-bildeklassifikasjon - demens
(bruk av åpne data fra OASIS)
Open In Colab
04a_ansiktsutrykk_klassifikasjon.ipynb Emosjonelle ansiktsutrykk - del 1 (bygging)
(bruk av åpne data fra FER2013)
Open In Colab
04b_ansiktsutrykk_klassifikasjon.ipynb Emosjonelle ansiktsutrykk - del 2 (trening) Open In Colab
04c_ansiktsutrykk_klassifikasjon.ipynb Emosjonelle ansiktsutrykk - del 3 (evaluering) Open In Colab

Uke 4 og 5: Moderne AI i praksis

Uke 4 gir en innføring i generativ AI, foundation models og multimodalitet. Uke 5 bygger videre på dette og viser hvordan slike modeller kan inngå i agentiske systemer med verktøybruk, arbeidsflyt og helsefaglige anvendelser.

Uke 4: Generativ AI, foundation models og multimodalitet

Notebok Beskrivelse Colab
01_transformer_arkitektur.ipynb Transformer-arkitektur Open In Colab
02_llm_grunnleggende.ipynb LLM grunnleggende Open In Colab
03_prompt_engineering.ipynb Prompt engineering Open In Colab
04_chatgpt_claude_api.ipynb ChatGPT og Claude API Open In Colab
10_bilde_tekst_clip_zero_shot_blomster.ipynb CLIP zero-shot på blomster (bilde + tekst) Open In Colab

Uke 5: Agentisk AI

Notebok Beskrivelse Colab
01_chatbot_workflow_agent.ipynb Chatbot, workflow og agent: begreper og enkle eksempler Open In Colab
02_agentisk_ai_i_helse.ipynb Agentisk AI i helse: verktøybruk, RAG, minne, case og sikkerhet Open In Colab
03_crewai_fordypning_rehabilitering.ipynb Frivillig fordypning: CrewAI i rehabilitering med syntetisk case og tverrfaglige roller Open In Colab
04_agentisk_ai_perspektiver.ipynb Perspektiver: agentisk AI i framtidig praksis, forskning, tjenesteutvikling og sensitive data Open In Colab

Uke 6: Klinisk praksis

Notebok Beskrivelse Colab
01_risikomodell_logistisk_regresjon_kalibrering_shap.ipynb Syntetisk risikomodell: logistisk regresjon, kalibrering, SHAP Open In Colab
02_klinisk_beslutningsstøtte_terskler_og_avveininger.ipynb Hvordan risikoskår blir til klinisk beslutningsstøtte Open In Colab
03_validering_generalisering_og_subgrupper.ipynb Generalisering, distribusjonsskifte og subgruppeanalyse Open In Colab
04_fra_modell_til_klinisk_arbeidsflyt.ipynb Hva som kreves før en modell kan brukes i klinisk arbeidsflyt Open In Colab

Uke 7: Velferdsteknologi

Notebok Beskrivelse Colab
01_robotnavigasjon_i_rutenett_med_astar.ipynb A* rutefinning i 2D-grid (robotnavigasjon) Open In Colab
02_sensorer_aktivitet_og_hendelsesforståelse.ipynb Hvordan sensorer kan brukes til å tolke aktivitet og avvik Open In Colab
03_beslutningsstøtte_i_hjem_og_omsorg.ipynb Varsling, prioritering og støtte i hjem og omsorg Open In Colab
04_sikkerhet_etikk_og_menneske_maskin_samspill.ipynb Sikkerhet, etikk og menneske-maskin-samspill i velferdsteknologi Open In Colab

Uke 8: Etikk og implementering

Notebok Beskrivelse Colab
01_gdpr_personvern.ipynb GDPR og personvern Open In Colab
02_bias_rettferdighet.ipynb Bias og rettferdighet Open In Colab
03_ce_mdr_regulering.ipynb CE/MDR regulering Open In Colab
04_ai_etikk_i_medisinen.ipynb Kliniske dilemmaer, etiske prinsipper og ansvarlig bruk av AI Open In Colab
05_trustworthy_ai_i_helse.ipynb Robusthet, usikkerhet, validering og monitorering i medisinsk AI Open In Colab

Andre notebooks

Notebok Beskrivelse Colab
intro_openai_anthropic.ipynb OpenAI og Anthropic introduksjon Open In Colab

💻 Teknologi

  • Python 3.12+
  • Jupyter Notebooks for interaktiv læring
  • Google Colab for skybasert notebook-kjøring og eksperimentering
  • AI-verktøy: OpenAI (gpt-), Anthropic (claude-), Scikit-learn, PyTorch, ...

🛠️ Teknisk støtte

  • GitHub Issues: Rapporter problemer
  • Diskusjoner: kollegaer, medstudenter, AI-sparringspartner(e)

📖 Læringsressurser

👥 Målgruppe

  • Helsepersonell (leger, sykepleiere, radiografer, terapeuter, psykologer)
  • Ansatte i omsorgstjenesten (deler av kurset)
  • Ledere i helse og omsorg (deler av kurset)
  • IT- og digitaliseringsansvarlige (deler av kurset)
  • Kvalitets- og utviklingsrådgivere (deler av kurset)

📅 Praktisk informasjon

  • Varighet: 8 uker
  • Arbeidsomfang: 10-12 timer per uke
  • Læringsspråk (i Jupyter-notebooks): Norsk (+ engelske fagtermer, for eksempel "notebooks")

📄 Lisens

Repoet er lisensiert under MIT-lisensen. Copyright (c) 2025 Arvid Lundervold.

🙏 Bidragsytere

🛠️ Hvordan kurset er laget og hvilke ressurser som er brukt

  • Domenekunnskap, et godt nettverk av fagfeller (nær og fjern) og entusiasme for feltet
  • Bruk av AI-kodeeditoren Cursor Ultra
  • Utviklet på en MacBook Pro M4 Max
  • Diverse lisenser og tjenester (GitHub, OpenAI, Anthropic, Perplexity, Google)
  • Omtrent 40 timeverk for basisdelen

🚀 Kom i gang

Bruk Google Colab (enkleste alternativ)

Gå til repoets README på GitHub og finn aktuell uke, fra uke01- til uke08-.

For eksempel: uke01-introduksjon

  1. For hver notebook, trykk på Open In Colab
  2. Notebooken vises da i din nettleser
  3. Aksepter at den ikke er autorisert av Google ("Run anyway")
  4. Lær deg bruk av Python og Jupyter Notebooks i Google Colab (FAQ)

For lokal utvikling - Anaconda (anbefalt for Mac/Linux/PC)

# Klon repository
git clone https://github.com/arvidl/AI-og-helse.git
cd AI-og-helse

# Opprett conda-miljø fra `environment.yml`
conda env create -f environment.yml

# Aktiver miljøet
conda activate ai-helse

# Installer Jupyter kernel
python -m ipykernel install --user --name ai-helse --display-name "Python 3.12 (AI-Helse)"

# Verifiser installasjon
python check_setup.py

CrewAI er nå inkludert i standardmiljøet for det frivillige fordypningssporet i uke 05, blant annet notebooken uke05-agentisk-ai/03_crewai_fordypning_rehabilitering.ipynb.

Alternativ: Bruk pip/venv (hvis du ikke har Anaconda)

# Sørg for at du har Python 3.12 installert
python3.12 --version

# Opprett virtuelt miljø med Python 3.12
python3.12 -m venv venv

# Aktiver miljø
source venv/bin/activate  # Mac/Linux
# venv\Scripts\activate   # Windows

# Installer avhengigheter
pip install --upgrade pip
pip install -r requirements.txt

# Verifiser installasjon
python check_setup.py

For Cursor-brukere

  1. Åpne prosjektet i Cursor
  2. Cursor vil automatisk oppdage conda-miljøet
  3. Velg "Python 3.12 (ai-helse)" som interpreter
  4. Alternativt: Cmd/Ctrl+Shift+P → "Python: Select Interpreter" → ai-helse

API-nøkler for lokal kjøring

NB

Hver kursdeltaker må selv skaffe, lagre og bruke sine egne API-nøkler.

Her er en enkel måte å gjøre det på:


1. Skaff egne API-nøkler

Hver deltaker må selv registrere seg:

Begge krever at man legger inn kort/betalingsinfo (med gratis startkreditter for nye brukere).


2. Hvordan lagre nøklene trygt

Du kan velge én av to enkle metoder:

a) .env-fil (anbefalt)

  1. Lag en fil i samme mappe som notebooken med navnet .env

  2. Legg inn:

    OPENAI_API_KEY=sk-xxxx
    ANTHROPIC_API_KEY=sk-ant-xxxx
    
  3. Installer python-dotenv (én gang):

    pip install python-dotenv
  4. I notebooken:

    from dotenv import load_dotenv
    load_dotenv()
    
    import os
    openai_key = os.getenv("OPENAI_API_KEY")
    anthropic_key = os.getenv("ANTHROPIC_API_KEY")

b) Direkte miljøvariabler (mer "avansert")

  • I terminal (før du starter Jupyter):

    export OPENAI_API_KEY="sk-xxxx"
    export ANTHROPIC_API_KEY="sk-ant-xxxx"
  • Notebooken bruker os.getenv() som i eksempelet over.


3. Bruke nøklene i kode

OpenAI (GPT-modeller):

from openai import OpenAI
import os

client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Hei fra OpenAI!"}]
)
print(response.choices[0].message.content)

Anthropic (Claude-modeller):

from anthropic import Anthropic
import os

client = Anthropic(api_key=os.getenv("ANTHROPIC_API_KEY"))

response = client.messages.create(
    model="claude-3-haiku-20240307",
    max_tokens=100,
    messages=[{"role": "user", "content": "Hei fra Claude!"}]
)
print(response.content[0].text)

NB

  • Husk, ikke dele noen egne nøkler i kursmaterialet – hver deltaker har ansvar for sine.

  • Der det kan være aktuelt, har vi lagt inn et sjekksteg i notebooken som gir en feilmelding hvis nøkkel mangler:

    if not openai_key or not anthropic_key:
        raise ValueError("Mangler API-nøkkel. Sett den i .env-filen først!")

API-nøkler for kjøring i skyen

Dette gjelder kun for Google Colab.

For nærmere beskrivelse, se notebooken intro_openai_anthropic.ipynb.


Oppsummering

  • Deltakere skaffer egne nøkler fra OpenAI og Anthropic.
  • Nøklene lagres lokalt i .env eller som miljøvariabler dersom du kjører lokalt.
  • Dersom du kjører i Google Colab, må du konsultere intro_openai_anthropic.ipynb.
  • Aktuelle Notebooks er ferdig satt opp til å hente nøkler og bruke dem.

Lykke til med kurset! 🎓

About

Åpent kurs i (avansert) kunstig intelligens for medisinere og personell i helse- og omsorgssektoren

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages