Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Developing Mobile Applications using Web-Based Data

Developing Mobile Applications using Web-Based Data

Presentation of my undergraduate engineering thesis at the Australia China Council Workshop on Developing Mobile Health Applications Using Web Data in Beijing, China.

Harrison Sweeney

June 29, 2013
Tweet

More Decks by Harrison Sweeney

Other Decks in Programming

Transcript

  1. Developing Mobile Applications with Web-Based Data An Application of Information

    Extraction A presentation by Harrison Sweeney University of Western Australia
  2. • Develop a semantic database of simplified medical information •

    Develop proof of concept mobile application for symptom queries • Use modular and flexible methods for re-use with alternative sources of data What is the aim?
  3. • Scarcity of medical information for general consumption • Difficult

    to find reliable medical information online • Educational tool contributing to greater community care • Improve general health literacy Why is this needed?
  4. What does the system look like? Initial Data Graph Construction

    Visualisation Mobile App Pre-Processing Graph DB
  5. What does the system look like? MySQL DB Graph Construction

    Visualisation Mobile App Pre-Processing Graph DB
  6. What form is the initial data in? Property Data Type

    ID integer Symptom string General Description text Causes csv Related Symptoms csv Symptom Structure
  7. What does the system look like? MySQL DB Graph Construction

    Visualisation Mobile App Pre-Processing Graph DB
  8. How is the data processed? for  each  primary  symptom: for

     each  related  symptom: for  each  symptom: if  symptom  ==  related  symptom: add  relation  to  the  table Simplified Pseudocode • Extraction of symptom relation information • Combination of NLP and fuzzy string matching
  9. What does the system look like? MySQL DB Graph Construction

    Visualisation Mobile App Pre-Processing Graph DB
  10. How is the graph database constructed? Neo4j Graph DB MySQL

    Tables Related Symptoms Primary Symptoms Python Script
  11. What does the system look like? MySQL DB Graph Construction

    Visualisation Mobile App Pre-Processing Graph DB
  12. What does the graph database look like? related to Abdominal

    Cancer Abdominal Pain Cancer type of Pain type of
  13.  How do you query the graph database? Neo4j Graph

    DB Cypher Query  Objective C Python  Java  REST API
  14. How do you query the graph database? Example Cypher Query

    START  n=node(*)   MATCH  n-­‐[r]-­‐m   WHERE  n.type  ='symptom' WITH  n,  count(m)  as  degree RETURN  n,  degree,  n.name   ORDER  BY  degree
  15. What does the system look like? MySQL DB Graph Construction

    Visualisation Mobile App Pre-Processing Graph DB
  16. How does the mobile application work?   Graph DB

    Mobile Application Cypher Query JSON Response
  17. • Taxonomy of ‘symptoms’ • Signs • Symptoms • Conditions

    • Conflict resolution with ‘conditions’ table • Hierarchical symptom relationships and relationship pruning What problems are there?
  18. Symptom Taxonomy an objective indication of some medical fact or

    characteristic that may be detected by a physician during a physical examination or by a clinical scientist by means of an in vivo examination of a patient the subjective experiences, such as fatigue, that patients might report to their examining physician an illness or abnormality in the body that interferes with a person's usual activities or feeling of wellbeing Sign Symptom Condition (Disease)
  19. Differentiating symptoms and conditions related to Abdominal Cancer Pain 1

    nodes 32 nodes 861 nodes 31 nodes related to Condition Symptom
  20. • Addition of further data sources • Extraction of information

    from Wikipedia • Addition of body part relations What is the future work?