SkinTwin is a multiscale dermatological model powered by OpenCog's cognitive architecture components, implemented for Emacs. This system integrates various modules to represent skin biology, environmental factors, and clinical outcomes through a comprehensive knowledge graph and reasoning system.
- DermatoGraph (AtomSpace): Knowledge representation system storing data about skin biology, conditions, and treatments
- SensoryFocus (ECAN): Attention allocation system that prioritizes relevant information
- DermatoLogic (PLN): Probabilistic reasoning system for deriving logical inferences about skin health
- EpidermiLearn (MOSES): Pattern mining and model building for treatment efficacy prediction
- RuleDerm (URE): Rule-based reasoning system for executing logical rules
- ESN Prediction: Temporal pattern recognition for disease progression modeling
This package requires aichat which implements the core OpenCog cognitive architecture components.
;; Clone the repository
(add-to-list 'load-path "/path/to/skintwin")
;; Load the package
(require 'skintwin)
;; Enable the interactive mode (optional)
(skintwin-mode 1)
M-x skintwin-initialize
- Initialize the SkinTwin systemM-x skintwin-dashboard
- Display the main dashboardM-x skintwin-query-treatments
- Query treatments for a skin conditionM-x skintwin-analyze-patient
- Analyze a patient's skin conditionsM-x skintwin-predict-progression
- Predict disease progression with treatment
Enable the minor mode with M-x skintwin-mode
. This provides convenient keybindings:
C-c s d
- Display dashboardC-c s q
- Query treatmentsC-c s a
- Analyze patientC-c s p
- Predict progressionC-c s v
- Visualize knowledge graphC-c s h
- Display help
When working with Org files:
C-c o k
- Convert the current heading to knowledge base entriesC-c o b
- Convert the entire buffer to the knowledge baseC-c o v
- Visualize attention flowC-c o q
- Query related conceptsC-c o r
- Apply reasoning
- Initialize the system with
C-c s i
- Open the dashboard with
C-c s d
- Add a patient with
C-c s P
then pressa
- Add a condition to the patient using
c
- Analyze the patient with
C-c s a
- Query treatments for a condition with
C-c s q
- Predict disease progression with
C-c s p
The knowledge base can be extended using Org mode:
* Skin Condition
:PROPERTIES:
:STI: 0.900
:LTI: 0.700
:END:
** Rosacea
:PROPERTIES:
:STI: 0.800
:END:
Chronic inflammatory skin condition affecting the face.
has_symptom(facial_redness)
has_symptom(visible_blood_vessels)
has_symptom(papules)
has_trigger(sun_exposure)
Convert this to the knowledge base with C-c o k
.
SkinTwin provides multiple visualization options:
- Knowledge graph visualization
- Attention heatmaps
- Disease progression predictions
- Network analysis
Access these through the visualization dashboard with C-c s V
.
This project is available under the GPLv3 License.