幻灯片 1 - Australian National University

Download Report

Transcript 幻灯片 1 - Australian National University

Data Linkage Graphical User Interface for
Febrl
Author: Changyang Li
Student ID:u4168439
Supervisor: Peter Christen
Faculty of Engineering and Information Technology
Date: June 14, 2007
Agenda






Introduction of Febrl
Background
Overview of GUI
Technology required
Demonstration
Timetable
An outline of Febrl
 Freely Extensible Biomedical Record Linkage
Release 0.3
 The software has been developed by ANU Data
Mining Group
 The software designed to provide three main
functions to analysis data sets provided
Three Functions
1. Data Cleaning and Standardization
 The aim is to transform the information stored in the
original data into a well defined and consistent form
2. Deduplication
 Removing the duplicate records
3. Record Linkage
 Comparing records and deciding whether they are a
match or a non-match, or leaving the decision to the
user
Patient
Belconnen
Record A
Woden
?
Record B
Record Linkage
Function
Overview of main steps for original Febrl
 The first one deals with data cleaning and
standardization
 The second aims to perform actual linkage or
deduplication
 The user needs to specify various settings in order to
be able to perform a cleaning/ standardization/or a
linkage/deduplication
Overview of GUI
Why is GUI so important?
 The original Febrl can only be operated by the user
who knows the command of the Python programming
language
 It is hard and complicated to modify the initial data
for the user
 The user needs to be familiar with the rules of
parameters and the structure of original Febrl
 Parameter:
• m_prob
• Maximum value = 0.99
 If typing the value is bigger than the max
• m_prob = 1
• Traceback (most recent call last):
• OverflowError: math range error
Functions of Graphical User Interface
 The main multi-panel visualizing parameters used in
Febrl for users
 Inside GUI, rules of setting distinctive parameters have been set in.
 The sequence of setting parameters matches native processes of
origin Febrl
 The GUI provides flexible ways for user to enter or modify the
parameters for the date set
 The output result can be visualized to be displayed in
the sub-panel
 The background processing is relatively transparent
for user
The structure of classes for GUI
 The hierarchy of class diagram generally follows the
relationship between wx.Frame and wx.Panel
How to implement background
processing through GUI
 All parameters setting are recorded at real time
 After initialization, the similar Python modular code
will be generated to be executed
 The Python code has the same function as the
original Febrl one
• Such as project-deduplicate.py
The diagram of connecting GUI to Febrl
Setting parameters in the
GUI
All of set paramters transferred to
class of ProjectData.py
Process
of
function
CreateCode in class
ProjectData.py
of
of
The code used to
replace one in the
original Febrl
The executable Python code
The output result will be
generated to show in the
GUI
Output results
Transferred to the
project of original
Febrl and executed.
Display of output results
 The structure of tree is used to exhibit the input and
output.
 Users can choose any output showed in the tree of
the left panel
 There are two sub-panels in right panel which display
two different results of output
Technology needed
 Python: Python is an object-oriented and scripting
programming language
 wxPython : wxPython is a GUI toolkit for the Python
programming language. It allows programmers to
create programs with a functional graphical user
interface.
 Eclipse SDK plus Pydev : it is popular combination
tools to develop various python projects including
python GUI project.
 MVC: Model-View-Controller
Demonstration
Timetable
 Week 1~2 Familiar with the Febrl and preparing
technology knowledge
 Week3~4 Initial presentation and Initial requirement
report
 Week 5~6 Draft graphical user interface programming
accomplished
 Week 7~8 Background process programming
 Week 9 ~10 Debugging and updating
 Week 11~13 Finishing the final report
Any Question ?
Thank you
Acknowledgement
 My supervisor
Mr. Peter Christen
 My academic supervisor
Dr. Peter Strazdins
 My team member:
Xiong Li