1) Interactive machine learning (IML) allows users to train, classify, view, and correct classifications of images in an interactive fashion, unlike classical machine learning which is slow and not interactive.
2) IML enables feature selection to be done by the machine learning algorithm during training rather than requiring users to pre-select features.
3) The Crayons tool was created to implement IML using a simple painting metaphor, allowing users to quickly create image classifiers in minutes rather than weeks by focusing on classification rather than image processing details.
Introduction to the User Interface domain for business applications, a pattern based approach to model the UI and code generation techniques to make it possible.
Session for Code Generation 2011
This document discusses human factors and ergonomics in software, hardware, and workplace design. It covers types of software interfaces like command-based, menu-based, and icon-based interfaces. It also discusses principles of user interface design, screen layout, and performance support systems. For hardware, it examines monitor, keyboard and mouse design. It analyzes workplace design including office layout models, workstation design, and behavioral concerns like territoriality and socialization. The goal is to apply knowledge of human physical and cognitive abilities to optimize people's interaction with technology and their work environment.
Multi-Paradigm Modeling of HMI ApplicationsTom Mens
This presentation about the use of multi-paradigm modeling for human-machine interaction was given at the Universiteit Antwerpen as part of a research seminar of the Belgian PAI research project MoVES (Modeling, Verification and Evolution of Software).
It presents an overview of the planned research in the context of the PhD of Romuald Deshayes, under supervision by Tom Mens at the Software Engineering Lab of the University of Mons, Belgium.
Personalised Product Design Using Virtual Interactive Techniques ijcga
Use of Virtual Interactive Techniques for personalized product design is described in this paper. Usually products are designed and built by considering general usage patterns and Prototyping is used to mimic the static or working behaviour of an actual product before manufacturing the product. The user does not
have any control on the design of the product. Personalized design postpones design to a later stage. It allows for personalized selection of individual components by the user. This is implemented by displaying the individual components over a physical model constructed using Cardboard or Thermocol in the actual size and shape of the original product. The components of the equipment or product such as
screen, buttons etc. are then projected using a projector connected to the computer into the physical model. Users can interact with the prototype like the original working equipment and they can select, shape, position the individual components displayed on the interaction panel using simple hand gestures. Computer Vision techniques as well as sound processing techniques are used to detect and recognize the user gestures captured using a web camera and microphone.
"APE: Learning User's Habits to Automate Repetitive Tasks"butest
The document describes an adaptive programming environment called APE that aims to apply machine learning techniques to automatically perform repetitive tasks on a user's behalf. APE learns a user's habits by observing their actions and uses this knowledge to suggest performing repetitive tasks when appropriate. It contains three software agents: an Observer that monitors user actions, an Apprentice that learns habits from these actions, and an Assistant that suggests tasks based on the learned habits. Existing machine learning algorithms are not well-suited for this task, so the document also describes a new algorithm called IDHYS that is designed specifically for learning user habits from small datasets quickly and with low error rates. Experimental results show IDHYS outperforms the state-of-
The document is a glossary of terms related to video game design produced by a student at Salford City College. It contains definitions of over 30 terms organized into categories like "Video Games/Video Game Testing", "Game Engines", and "Concept". For each term, the student provided a short definition from an online source along with their own description of how the term relates to their video game production practice.
Drona - A Mobile Authoring Tool from Deltecs InfoTechAkash Shah
Drona is a complete 360 degrees learning & training solution.
Drona enables,
1. Organization authorities to author mobile learning or desktop learning application on their infrastructure using Drona – Authoring
2. Distribute the applications on web or Bluecasting(for mobile apps)
3. Employees to appear for a test/assessments on their Mobile phones or desktops/PCs(within or outside the organization premises)
4. Organization authorities to track and analyze performances on Drona - Backend.
If this interests you, do get in touch at akash{dot}shah{at}deltecs{dot}com for demo or more info.
The document discusses various aspects of computer programming and program development, including:
- Different types of programming languages such as machine language, assembly language, procedural languages like C and COBOL, and object-oriented languages like Java.
- The program development life cycle, which involves analyzing requirements, designing a solution, validating the design, implementing the design, testing the solution, and documenting the solution.
- Web development tools and languages like HTML, XML, JavaScript, and Web authoring software.
- Multimedia authoring programs that allow combining various media types.
Introduction to the User Interface domain for business applications, a pattern based approach to model the UI and code generation techniques to make it possible.
Session for Code Generation 2011
This document discusses human factors and ergonomics in software, hardware, and workplace design. It covers types of software interfaces like command-based, menu-based, and icon-based interfaces. It also discusses principles of user interface design, screen layout, and performance support systems. For hardware, it examines monitor, keyboard and mouse design. It analyzes workplace design including office layout models, workstation design, and behavioral concerns like territoriality and socialization. The goal is to apply knowledge of human physical and cognitive abilities to optimize people's interaction with technology and their work environment.
Multi-Paradigm Modeling of HMI ApplicationsTom Mens
This presentation about the use of multi-paradigm modeling for human-machine interaction was given at the Universiteit Antwerpen as part of a research seminar of the Belgian PAI research project MoVES (Modeling, Verification and Evolution of Software).
It presents an overview of the planned research in the context of the PhD of Romuald Deshayes, under supervision by Tom Mens at the Software Engineering Lab of the University of Mons, Belgium.
Personalised Product Design Using Virtual Interactive Techniques ijcga
Use of Virtual Interactive Techniques for personalized product design is described in this paper. Usually products are designed and built by considering general usage patterns and Prototyping is used to mimic the static or working behaviour of an actual product before manufacturing the product. The user does not
have any control on the design of the product. Personalized design postpones design to a later stage. It allows for personalized selection of individual components by the user. This is implemented by displaying the individual components over a physical model constructed using Cardboard or Thermocol in the actual size and shape of the original product. The components of the equipment or product such as
screen, buttons etc. are then projected using a projector connected to the computer into the physical model. Users can interact with the prototype like the original working equipment and they can select, shape, position the individual components displayed on the interaction panel using simple hand gestures. Computer Vision techniques as well as sound processing techniques are used to detect and recognize the user gestures captured using a web camera and microphone.
"APE: Learning User's Habits to Automate Repetitive Tasks"butest
The document describes an adaptive programming environment called APE that aims to apply machine learning techniques to automatically perform repetitive tasks on a user's behalf. APE learns a user's habits by observing their actions and uses this knowledge to suggest performing repetitive tasks when appropriate. It contains three software agents: an Observer that monitors user actions, an Apprentice that learns habits from these actions, and an Assistant that suggests tasks based on the learned habits. Existing machine learning algorithms are not well-suited for this task, so the document also describes a new algorithm called IDHYS that is designed specifically for learning user habits from small datasets quickly and with low error rates. Experimental results show IDHYS outperforms the state-of-
The document is a glossary of terms related to video game design produced by a student at Salford City College. It contains definitions of over 30 terms organized into categories like "Video Games/Video Game Testing", "Game Engines", and "Concept". For each term, the student provided a short definition from an online source along with their own description of how the term relates to their video game production practice.
Drona - A Mobile Authoring Tool from Deltecs InfoTechAkash Shah
Drona is a complete 360 degrees learning & training solution.
Drona enables,
1. Organization authorities to author mobile learning or desktop learning application on their infrastructure using Drona – Authoring
2. Distribute the applications on web or Bluecasting(for mobile apps)
3. Employees to appear for a test/assessments on their Mobile phones or desktops/PCs(within or outside the organization premises)
4. Organization authorities to track and analyze performances on Drona - Backend.
If this interests you, do get in touch at akash{dot}shah{at}deltecs{dot}com for demo or more info.
The document discusses various aspects of computer programming and program development, including:
- Different types of programming languages such as machine language, assembly language, procedural languages like C and COBOL, and object-oriented languages like Java.
- The program development life cycle, which involves analyzing requirements, designing a solution, validating the design, implementing the design, testing the solution, and documenting the solution.
- Web development tools and languages like HTML, XML, JavaScript, and Web authoring software.
- Multimedia authoring programs that allow combining various media types.
The document discusses career opportunities and preparation in the computer industry. It describes various computer-related careers grouped in areas like IT departments, computer equipment, software, services/repair, sales, training, and consulting. It also discusses computer-related education in trade schools and colleges, ways to stay current like certification and professional organizations, and provides examples of specific IT certifications. The goal is to provide an overview of pursuing a career in the computer industry.
Imran Sarwar Bajwa, M. Abbas Choudhary [2006], "Automatic Web Layout Generation using Natural Language Processing Techniques", in 2nd International Conference From Scientific Computing to Computational Engineering, (IC-SCCE 2006) Athens, Greece, pp:334-340
The document discusses human-computer interaction (HCI). It provides an overview of HCI as a discipline concerned with designing interactive computing systems for human use. It also mentions the Association for Computing Machinery's Special Interest Group on Computer-Human Interaction. The document then lists some HCI resources and introduces the main focus of HCI as user interface design. It discusses who typically builds interfaces and why studying user interfaces is important.
The document discusses advanced systems engineering and improving defense program execution. It covers topics like the breadth and depth of systems engineering, the value of systems engineering in meeting cost and schedule targets and ensuring program success. It also discusses challenges like complexity from system integration and the need for requirements management, collaboration, and automation to address issues that have led to past system failures.
This document describes a tool developed to measure continuous complexity in software. The tool measures complexity along three dimensions: number of steps, number of context shifts, and working memory load. It provides faster feedback to developers during the development process. While focused on continuous complexity, it also allows developers to document cases of discontinuous complexity, where usability is severely hindered. The goal is to provide a practical way for developers to quantify and reduce complexity throughout the development cycle.
The document discusses various input devices for computers including keyboards, mice, touchscreens, cameras, scanners, and devices for disabled users. It defines input and differentiates between programs, commands, and user responses. It describes common input devices like keyboards, mice, touchpads, microphones for voice input, and controllers for games. It also covers assistive technologies to enable people with disabilities to use computers.
The document describes various computer output devices and their characteristics. It discusses display devices like LCD monitors, plasma displays, and projectors. It covers different printer types such as inkjet printers, photo printers, and multifunction devices. Other output devices mentioned include speakers, headphones, data projectors, interactive whiteboards, and accessories for disabled users. The document provides details on each type of output device's purpose, features, and uses.
This document describes a project called VISION that aims to develop engineering solutions to help the visually impaired. It includes the following key points:
1. The project was developed by a team of students and a professor, with the goal of providing both tools to directly help those with visual impairments in their daily lives as well as resources to help them learn and educate themselves.
2. The team created a suite of applications called VISION that includes an e-learning system using speech recognition to provide educational materials, as well as other indigenous tools such as a Braille keyboard attachment.
3. The system is designed to be low-cost and user-friendly while addressing a wide range of needs for the visually impaired
Applications of the serious game initiative 11 feb-2013amgerson
This document discusses using virtual simulations for construction equipment operator training. It begins with an overview of video games and serious games, noting their increasing use among Generation X and Y. It then provides examples of pedagogical simulations for construction, mining, and health applications. These simulations allow operators to learn safely in a controlled virtual environment and be monitored by instructors. Costs for excavator and loader simulations from John Deere range from $5,000 to $16,000 depending on software and control options. The document concludes that pedagogical simulations are effective training tools for construction industries.
The document provides an overview of objectives for Chapter 3 of Discovering Computers 2012, which includes summarizing different types of application software such as business, graphics, multimedia, personal, and communications software. It also discusses how application software works with operating systems and utility programs, as well as learning tools available for application software including online help, web-based help, and web-based training.
Help through demonstration and automation for interactive computing systems: ...IJECEIAES
Usability is very important however, it is still difficult to develop interactive computing systems that meet all user’s specificities. Help systems should be a way of bridging this gap. This paper presents a general survey on recent works (building upon previous surveys) related to improving applications’ help through demonstration and automation and, identifies which technologies are acting as enablers. The main contributions are, identifying: i) which are the recent existing solutions; ii) which aspects must be investigated further; and iii) which are the main difficulties that are preventing a faster progress.
The document discusses different machine learning algorithms for instance-based learning. It describes k-nearest neighbor classification which classifies new instances based on the labels of the k closest training examples. It also covers locally weighted regression which approximates the target function based on nearby training data. Radial basis function networks are discussed as another approach using localized kernel functions to provide a global approximation of the target function. Case-based reasoning is presented as using rich symbolic representations of instances and reasoning over retrieved similar past cases to solve new problems.
This document contains a review of pelvis and perineum structures and functions including:
1. A multiple choice question regarding structures at risk of injury during adrenal gland removal.
2. The layer enclosing the adrenal gland when not removed with the kidney during nephrectomy.
3. Expected effects on a boy who develops without FSH release due to anterior pituitary injury.
4. The enzyme deficiency suspected in a newborn with ambiguous genitalia and enlarged adrenals.
5. The typical days of ovulation within a 28-30 day menstrual cycle.
The document discusses assessments of student learning outcomes for the Computer Science department at the University of Maryland. Small committees were formed to evaluate courses and projects based on criteria outlined in the learning outcomes.
For learning outcome #1, a committee reviewed student code from introductory programming courses to assess coding skills. Most students demonstrated proficiency in basic programming concepts.
For learning outcome #2, a committee evaluated students' ability to prove mathematical concepts by examining answers to an exam question. 75% of students received a rating of excellent or very good.
For learning outcome #3, a committee reviewed a programming project from CMSC 412 and found two of three projects examined demonstrated clear, well-documented code with good debugging
Carnivores: Inspection under Philosophy of ActionYoav Francis
A dialectic review of the act of eating animals in the context of Philosophy of Action, takne into account views by Davidson, Holton and Stocker
[This paper is in Hebrew]
The document discusses data mining and knowledge discovery in databases. It defines data mining as the nontrivial extraction of implicit and potentially useful information from large amounts of data. With huge increases in data collection and storage, data mining aims to analyze data and discover patterns that can provide insights and knowledge about businesses and the real world. The data mining process involves selecting, preprocessing, transforming, and analyzing data to extract hidden patterns and relationships, which are then interpreted and evaluated.
New Programme Details Set up for OSS Supporting Notesbutest
The document provides guidance for completing a form to set up a new programme of study in the Oxford Student System (OSS). It includes details about programme information such as title, type, length, responsible organisational unit, start date, entry points, attendance type, and more. It also provides guidance on timelines for setting up undergraduate programmes to ensure they are available for the upcoming admissions cycle.
This document summarizes a request for proposal from the Missouri Office of Administration for janitorial services in various state-owned buildings in St. Louis. It provides information on submitting proposals, including revising the return date to April 14, 2010. It outlines amendments made to sections of the RFP related to the contract period, specifications, and pricing. A pre-proposal conference was scheduled for March 30, 2010 to discuss the RFP and allow for questions.
The document discusses career opportunities and preparation in the computer industry. It describes various computer-related careers grouped in areas like IT departments, computer equipment, software, services/repair, sales, training, and consulting. It also discusses computer-related education in trade schools and colleges, ways to stay current like certification and professional organizations, and provides examples of specific IT certifications. The goal is to provide an overview of pursuing a career in the computer industry.
Imran Sarwar Bajwa, M. Abbas Choudhary [2006], "Automatic Web Layout Generation using Natural Language Processing Techniques", in 2nd International Conference From Scientific Computing to Computational Engineering, (IC-SCCE 2006) Athens, Greece, pp:334-340
The document discusses human-computer interaction (HCI). It provides an overview of HCI as a discipline concerned with designing interactive computing systems for human use. It also mentions the Association for Computing Machinery's Special Interest Group on Computer-Human Interaction. The document then lists some HCI resources and introduces the main focus of HCI as user interface design. It discusses who typically builds interfaces and why studying user interfaces is important.
The document discusses advanced systems engineering and improving defense program execution. It covers topics like the breadth and depth of systems engineering, the value of systems engineering in meeting cost and schedule targets and ensuring program success. It also discusses challenges like complexity from system integration and the need for requirements management, collaboration, and automation to address issues that have led to past system failures.
This document describes a tool developed to measure continuous complexity in software. The tool measures complexity along three dimensions: number of steps, number of context shifts, and working memory load. It provides faster feedback to developers during the development process. While focused on continuous complexity, it also allows developers to document cases of discontinuous complexity, where usability is severely hindered. The goal is to provide a practical way for developers to quantify and reduce complexity throughout the development cycle.
The document discusses various input devices for computers including keyboards, mice, touchscreens, cameras, scanners, and devices for disabled users. It defines input and differentiates between programs, commands, and user responses. It describes common input devices like keyboards, mice, touchpads, microphones for voice input, and controllers for games. It also covers assistive technologies to enable people with disabilities to use computers.
The document describes various computer output devices and their characteristics. It discusses display devices like LCD monitors, plasma displays, and projectors. It covers different printer types such as inkjet printers, photo printers, and multifunction devices. Other output devices mentioned include speakers, headphones, data projectors, interactive whiteboards, and accessories for disabled users. The document provides details on each type of output device's purpose, features, and uses.
This document describes a project called VISION that aims to develop engineering solutions to help the visually impaired. It includes the following key points:
1. The project was developed by a team of students and a professor, with the goal of providing both tools to directly help those with visual impairments in their daily lives as well as resources to help them learn and educate themselves.
2. The team created a suite of applications called VISION that includes an e-learning system using speech recognition to provide educational materials, as well as other indigenous tools such as a Braille keyboard attachment.
3. The system is designed to be low-cost and user-friendly while addressing a wide range of needs for the visually impaired
Applications of the serious game initiative 11 feb-2013amgerson
This document discusses using virtual simulations for construction equipment operator training. It begins with an overview of video games and serious games, noting their increasing use among Generation X and Y. It then provides examples of pedagogical simulations for construction, mining, and health applications. These simulations allow operators to learn safely in a controlled virtual environment and be monitored by instructors. Costs for excavator and loader simulations from John Deere range from $5,000 to $16,000 depending on software and control options. The document concludes that pedagogical simulations are effective training tools for construction industries.
The document provides an overview of objectives for Chapter 3 of Discovering Computers 2012, which includes summarizing different types of application software such as business, graphics, multimedia, personal, and communications software. It also discusses how application software works with operating systems and utility programs, as well as learning tools available for application software including online help, web-based help, and web-based training.
Help through demonstration and automation for interactive computing systems: ...IJECEIAES
Usability is very important however, it is still difficult to develop interactive computing systems that meet all user’s specificities. Help systems should be a way of bridging this gap. This paper presents a general survey on recent works (building upon previous surveys) related to improving applications’ help through demonstration and automation and, identifies which technologies are acting as enablers. The main contributions are, identifying: i) which are the recent existing solutions; ii) which aspects must be investigated further; and iii) which are the main difficulties that are preventing a faster progress.
The document discusses different machine learning algorithms for instance-based learning. It describes k-nearest neighbor classification which classifies new instances based on the labels of the k closest training examples. It also covers locally weighted regression which approximates the target function based on nearby training data. Radial basis function networks are discussed as another approach using localized kernel functions to provide a global approximation of the target function. Case-based reasoning is presented as using rich symbolic representations of instances and reasoning over retrieved similar past cases to solve new problems.
This document contains a review of pelvis and perineum structures and functions including:
1. A multiple choice question regarding structures at risk of injury during adrenal gland removal.
2. The layer enclosing the adrenal gland when not removed with the kidney during nephrectomy.
3. Expected effects on a boy who develops without FSH release due to anterior pituitary injury.
4. The enzyme deficiency suspected in a newborn with ambiguous genitalia and enlarged adrenals.
5. The typical days of ovulation within a 28-30 day menstrual cycle.
The document discusses assessments of student learning outcomes for the Computer Science department at the University of Maryland. Small committees were formed to evaluate courses and projects based on criteria outlined in the learning outcomes.
For learning outcome #1, a committee reviewed student code from introductory programming courses to assess coding skills. Most students demonstrated proficiency in basic programming concepts.
For learning outcome #2, a committee evaluated students' ability to prove mathematical concepts by examining answers to an exam question. 75% of students received a rating of excellent or very good.
For learning outcome #3, a committee reviewed a programming project from CMSC 412 and found two of three projects examined demonstrated clear, well-documented code with good debugging
Carnivores: Inspection under Philosophy of ActionYoav Francis
A dialectic review of the act of eating animals in the context of Philosophy of Action, takne into account views by Davidson, Holton and Stocker
[This paper is in Hebrew]
The document discusses data mining and knowledge discovery in databases. It defines data mining as the nontrivial extraction of implicit and potentially useful information from large amounts of data. With huge increases in data collection and storage, data mining aims to analyze data and discover patterns that can provide insights and knowledge about businesses and the real world. The data mining process involves selecting, preprocessing, transforming, and analyzing data to extract hidden patterns and relationships, which are then interpreted and evaluated.
New Programme Details Set up for OSS Supporting Notesbutest
The document provides guidance for completing a form to set up a new programme of study in the Oxford Student System (OSS). It includes details about programme information such as title, type, length, responsible organisational unit, start date, entry points, attendance type, and more. It also provides guidance on timelines for setting up undergraduate programmes to ensure they are available for the upcoming admissions cycle.
This document summarizes a request for proposal from the Missouri Office of Administration for janitorial services in various state-owned buildings in St. Louis. It provides information on submitting proposals, including revising the return date to April 14, 2010. It outlines amendments made to sections of the RFP related to the contract period, specifications, and pricing. A pre-proposal conference was scheduled for March 30, 2010 to discuss the RFP and allow for questions.
The document discusses computational thinking and its applications across many disciplines. It defines computational thinking as the process of abstraction in computing, including defining relationships between layers of abstraction. The document provides examples of computational thinking in fields like biology, physics, chemistry, mathematics, engineering, and more. It also discusses the importance of computational thinking in education and daily life.
An army cadet injured his foot on a barbed wire during a military drill, resulting in pain in his foot, leg, and thigh. A week later, he developed enlarged lymph nodes in his groin.
A chukidar was brought to the emergency department after sustaining a bullet injury to his left femoral sheath. The damaged femoral artery was ligated. His postoperative recovery was smooth.
A football player twisted his leg while kicking, fully extending his knee. He was unable to flex his extended knee after falling to the ground.
The AgentMatcher system matches learners and learning objects (LOs) using a tree-structured representation of metadata. It extracts metadata from LOs using LOMGen and stores it in a database. Learners can enter query parameters as a weighted tree, which is compared to LO metadata trees to find similar LOs. Top matches above a similarity threshold are returned to the learner. LOMGen semi-automatically generates metadata using keywords and allows an administrator to refine selections. This enhances precision over simple keyword searches.
This document outlines a machine learning project to recognize handwritten characters using Bayesian linear regression. The goal is to develop models that can map image features to class membership values. Students are instructed to:
1. Define target outputs for training data using k-nearest neighbors.
2. Build Bayesian regression models to map inputs to the target outputs and estimate hyperparameters.
3. Evaluate models on a test set both qualitatively by examining outputs and quantitatively by comparing character/non-character histograms.
4. Write a 5-10 page report summarizing methodology, results, observations and relating findings back to concepts from the textbook.
Xuezhen Tian has a B.A. in Business and Japanese from the University of Oregon expected in March 2017. She spent a year studying abroad at Waseda University in Japan where she improved her Japanese skills. She has work experience as an intern at SUNING Electric Company selling laptops and currently works at UO Carson Dinning. Her volunteer experience includes orienting new students at the University of Oregon and teaching Chinese to children at Eugene Chinese Church.
This document discusses extracting protein interactions from biomedical literature. It notes that while databases contain some known interactions, much information remains in unstructured text across millions of published articles. The document presents an example Medline abstract describing interactions between cyclin A, cyclin D1, CDK subunits, and the Rb protein. It aims to develop automated methods to locate and structure such interaction information at scale from literature.
Slide presentate durante la tavola rotonda sul progetto "A memoria d'uomo" all'interno del Festival Europeo del cinema di Lecce (2010).
Intervento di Giovanni D'Aloia, Kinovan Project
Engelman.2011.exploring interaction modes for image retrievalmrgazer
This document discusses exploring different interaction modes for image retrieval. It describes developing a framework that allows multimodal interaction using techniques like eye tracking, voice recognition, and multi-touch. An experiment was conducted to compare the usability of different interaction methods for query by example image retrieval. Nine participants used four methods - anchor, gaze, mouse, and touch - to select regions in images. Metrics like accuracy, precision and time were measured. Preliminary results showed touch interaction had the most consistent performance and shortest completion times.
Automated Java Code Generation (ICDIM 2006)IT Industry
Rule based Production Systems for Automatic Code Generation in Java
This document describes a system that can automatically generate UML diagrams and code from natural language requirements. It analyzes text written in English to extract objects, classes, attributes and methods. It then generates UML class, activity, sequence and use case diagrams based on the analysis. Finally, it produces code in languages like Java, C# and VB.NET corresponding to the diagrams. The system aims to save time and costs by automating modeling and a significant portion of coding based on input requirements. It provides a more efficient alternative to traditional manual modeling and coding approaches.
Visual Programming and Program Visualization – Towards an Ideal Visual Softwa...IDES Editor
There has been a great interest recently in systems
that use graphics to aid in the programming, debugging, and
understanding of computer systems. The ‘’Visual
Programming’’ and ‘’Program Visualization’’ are exciting
areas of active computer science research that show promise
for improving the programming process, for this they have
been applied to these systems. This article attempts to provide
more meaning to these terms by giving precise definitions,
and then surveys a number of systems that can be classified as
providing Visual Programming or Program Visualization.
These systems are organized by classifying them into two
different taxonomies. The paper also gives a brief description
of our approach that concentrated on both Visual Programming
and Program Visualization for an Ideal Visual Software
Engineering System. We consider it as a new promising trend
in software engineering.
The document discusses interaction design and the design process for interactive systems. It covers:
1. Interaction design focuses on how interactive products communicate with users to make them more useful, usable, and desirable. The design process involves identifying user needs, developing designs, building prototypes, and evaluating designs through iterations.
2. Software engineering principles like software development lifecycles can be applied to interactive system design. The waterfall model involves requirements analysis, design, implementation, testing, and maintenance phases. Iterative design uses prototypes to get user feedback and improve the design.
3. Usability engineering and iterative design are two key concepts in the design process. Usability engineering specifies usability criteria for evaluation. Iterative
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...IRJET Journal
This document describes a proposed system to automate student attendance management using convolutional neural networks and face recognition. The system would take attendance automatically by detecting faces in the classroom and comparing them to a database of student faces. This would make the attendance process more efficient than current manual methods like calling roll numbers or paper sign-ins. The system would use a CNN algorithm and face detection/recognition techniques like PCA to detect and identify student faces during lectures and automatically update attendance records.
Gesture Recognition System using Computer VisionIRJET Journal
This document presents a gesture recognition system using computer vision and convolutional neural networks. It discusses developing classifiers to recognize hand gestures and facial expressions. A dataset of 87,000 images is used to train models to classify 26 letters of the American Sign Language alphabet, as well as additional classes for space, delete and nothing. The models are trained using transfer learning with MobileNet, achieving validation accuracies of over 90% for hand gesture classification and implementing a system that recognizes and translates gestures in real-time. It concludes the paper developed robust models for American Sign Language translation and facial expression recognition using CNNs.
This document discusses interaction design and the design process. It covers:
1. Interaction design focuses on how interactive products communicate with users to make them more useful, usable, and desirable. The design process involves identifying user needs, developing designs, building prototypes, and evaluating designs through iterations.
2. Software engineering principles like software development lifecycles can be applied to interactive system design. The document discusses lifecycle models like waterfall, spiral, and RAD. It also covers the basic activities in a typical lifecycle.
3. Usability engineering and iterative design are two key concepts in interaction design. Usability engineering specifies usability criteria for evaluation. Iterative design incorporates user feedback through prototyping and
This document describes a proposed sign language interpreter system that uses machine learning and computer vision techniques. It aims to enable deaf and mute users to communicate through computers and the internet by recognizing static hand gestures from camera input and translating them to text. The proposed system extracts features from captured images of signs and uses a support vector machine model to classify the gestures by comparing to a dataset of labeled images. If implemented, this system could help overcome communication barriers for deaf users in an increasingly digital world.
This document proposes a multi-view object tracking system using deep learning to track objects from multiple camera views. It uses the YOLO v3 algorithm to map segmented object groups between camera views to share knowledge. A two-pass regression framework is also presented for multi-view object tracking. Key steps include preprocessing images, extracting features, detecting and tracking objects between views using blob matching, and counting objects over time by maintaining tracks. The approach aims to improve object counting accuracy by exploiting information from multiple camera views.
Paper Alejandro Medrano - Use of hierarchical model-view-controller architect...WTHS
This document discusses using a hierarchical model-view-controller (HMVC) architecture for user interfaces in ambient assisted living (AAL) environments. It proposes separating the user interface meta model from the presentation logic and user interaction modalities. This allows applications to define modality-neutral interfaces that can be rendered across different modalities like graphical user interfaces, voice interfaces, etc. It describes defining a common meta model for user interface elements and using UI renderers to translate this model to specific modalities. The HMVC approach keeps applications independent of interaction details and allows multiple applications to share interfaces.
The document discusses a new release of talent acquisition software from MrTed that aims to provide a truly personalized user experience. It does this by combining cloud computing, independent graphical user interfaces, modular applications, and an in-depth understanding of recruitment needs. Key features include allowing users to customize their workspace and navigation menus, access portable task-specific apps, and connect the system to other tools through plug-and-play integration. The goal is to make enterprise talent software more user-oriented and configurable compared to previous rigid systems.
The document discusses a new release of talent acquisition software from MrTed that aims to provide a truly personalized user experience. It does this by combining the advantages of cloud computing, independent graphical user interfaces, modular applications, and experience in recruitment. Specifically, the new release allows users to customize their workspace, access portable task-specific apps, and configure their experience based on their individual roles and needs. This personalized approach is intended to address limitations of prior enterprise talent software that lacked configurability and user-friendliness.
The document discusses principles for creating user-centric interface design. It argues that software teams often focus only on functionality without considering user experience. A good design considers the user and how the interface portrays the functionality. The document outlines several principles for interface design, including observing how everyday objects are used, understanding user needs and constraints, keeping designs simple, speaking in the user's language, and being tolerant of errors. It emphasizes that good design evolves from understanding the user and intended usage.
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSIRJET Journal
The document discusses face counting using OpenCV and Python by analyzing unusual events in crowds. It proposes using the Haar cascade algorithm for face detection and counting. Feature extraction is performed using gray-level co-occurrence matrix (GLCM) to extract texture and edge features. Discriminant analysis is then used to differentiate between samples accurately. The system aims to correctly detect and count faces in images using Python tools like OpenCV for digital image processing tasks and feature extraction algorithms like GLCM and discrete wavelet transform (DWT). It is intended to have good recognition accuracy compared to previous methods.
SIGN LANGUAGE INTERFACE SYSTEM FOR HEARING IMPAIRED PEOPLEIRJET Journal
The document describes a proposed sign language interface system for hearing impaired people. The system aims to use machine learning algorithms like convolutional neural networks to classify hand gestures captured by a webcam into corresponding letters or words. The system would preprocess the images, extract features, then use a trained CNN model to predict the sign and output it as text and speech for better understanding by users. The goal is to help bridge communication between deaf/mute and normal people without requiring specialized gloves or sensors.
The document discusses the goals and justification for the Randori design. It aims to separate concerns by having HTML/CSS handle UI, JavaScript for browser interaction, and a higher-level language for business logic. This allows less expensive resources to focus on UI while retaining features for business logic developers. The ultimate goal is to have appropriate connections between these parts to allow seamless yet separate development by role. Primary concerns include extensibility, dynamic code loading, dependency resolution, large team collaboration, and deployability across platforms and containers.
U-Net architecture is an encoder-decoder convolutional neural network designed for biomedical image segmentation. It can perform accurate segmentation with small training datasets by leveraging features at multiple image scales. The paper presents the U-Net architecture and demonstrates its high performance on medical image segmentation tasks compared to other models, despite using less training data. Mask R-CNN is also discussed as an architecture that can perform fast object detection and instance segmentation. It outperforms other models on the COCO dataset through its unified framework for object detection and segmentation.
This document discusses two systems that use gestural interfaces for 3D navigation of maps using the Wiimote and Kinect controllers. The systems, called Wing and King, allow natural 3D navigation without using traditional point-and-click interfaces. An empirical user study evaluated how the degree of body involvement with each controller affected the user experience. Results showed that gestural interfaces can immerse users in a dynamic 3D experience and move interaction beyond the novice level quickly by exploiting physical movement.
Este documento analiza el modelo de negocio de YouTube. Explica que YouTube y otros sitios de video online representan un nuevo modelo de negocio para contenidos audiovisuales debido al cambio en los hábitos de consumo causado por las nuevas tecnologías. Describe cómo YouTube aprovecha la participación de los usuarios para mejorar continuamente y atraer una audiencia diferente a la de los medios tradicionales.
The defense was successful in portraying Michael Jackson favorably to the jury in several ways:
1) They dressed Jackson in ornate costumes that conveyed images of purity, innocence, and humility.
2) Jackson was shown entering the courtroom as if on a red carpet, emphasizing his celebrity status.
3) Jackson appeared vulnerable, childlike, and in declining health during the trial, eliciting sympathy from jurors.
4) Defense attorney Tom Mesereau effectively presented a coherent narrative of Jackson as a victim and portrayed Neverland as a place of refuge, undermining the prosecution's arguments.
Michael Jackson was born in 1958 in Gary, Indiana and rose to fame in the 1960s as the lead singer of The Jackson 5, topping music charts in the 1970s. As a solo artist in the 1980s, his album Thriller broke music records. In the 1990s and 2000s, Jackson faced several legal issues related to child abuse allegations while continuing to release music. He married Lisa Marie Presley and Debbie Rowe and had two children before his death in 2009.
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...butest
This document appears to be a list of popular books from various authors. It includes over 150 book titles across many genres such as fiction, non-fiction, memoirs, and novels. The books cover a wide range of topics from politics to cooking to autobiographies.
The prosecution lost the Michael Jackson trial due to several key mistakes and weaknesses in their case:
1) The lead prosecutor, Thomas Sneddon, was too personally invested in the case against Jackson, having pursued him for over a decade without success.
2) Sneddon's opening statement was disorganized and weak, failing to effectively outline the prosecution's case.
3) The accuser's mother was not credible and damaged the prosecution's case through her erratic testimony, history of lies and con artist behavior.
4) Many prosecution witnesses were not credible due to prior lawsuits against Jackson, debts owed to him, or having been fired by him. Several witnesses even took the Fifth Amendment.
Here are three examples of public relations from around the world:
1. The UK government's "Be Clear on Cancer" campaign which aims to raise awareness of cancer symptoms and encourage early diagnosis.
2. Samsung's global brand marketing and sponsorship activities which aim to increase brand awareness and favorability of Samsung products worldwide.
3. The Brazilian government's efforts to improve its international image and relations with other countries through strategic communication and diplomacy.
The three most important functions of public relations are:
1. Media relations because the media is how most organizations reach their key audiences. Strong media relationships are crucial.
2. Writing, because written communication is at the core of public relations and how most information is
Michael Jackson Please Wait... provides biographical information about Michael Jackson including his birthdate, birthplace, parents, height, interests, idols, favorite foods, films, and more. It discusses his background, career highlights including influential albums like Thriller, and films he appeared in such as The Wiz and Moonwalker. The document contains photos and details about Jackson's life and illustrious music career.
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazzbutest
The document discusses the process of manufacturing celebrity and its negative byproducts. It argues that celebrities are rarely the best in their individual pursuits like singing, dancing, etc. but become famous due to being products of a system controlled by wealthy elites. This system stifles opportunities for worthy artists and creates feudalism. The document also asserts that manufactured celebrities should not be viewed as role models due to behaviors like drug abuse and narcissism that result from the celebrity-making process.
Michael Jackson was a child star who rose to fame with the Jackson 5 in the late 1960s and early 1970s. As a solo artist in the 1970s and 1980s, he had immense commercial success with albums like Off the Wall, Thriller, and Bad, which featured hit singles and groundbreaking music videos. However, his career and public image were plagued by controversies related to allegations of child sexual abuse in the 1990s and 2000s. He continued recording and performing but faced ongoing media scrutiny into his private life until his death in 2009.
Social Networks: Twitter Facebook SL - Slide 1butest
The document discusses using social networking tools like Twitter and Facebook in K-12 education. Twitter allows students and teachers to share short updates and can be used to give parents a window into classroom activities. Facebook allows targeted advertising that could be used to promote educational activities. Both tools could help facilitate communication between schools and communities if used properly while managing privacy and security concerns.
Facebook has over 300 million active users who log on daily, and allows brands to create public profile pages to interact with users. Pages are for brands and organizations only, while groups can be made by any user about any topic. Pages do not show admin names and have no limits on fans, while groups display admin names and are limited to 5,000 members. Content on pages should aim to provoke action from subscribers and establish a regular posting schedule using a conversational tone.
Executive Summary Hare Chevrolet is a General Motors dealership ...butest
Hare Chevrolet is a car dealership located in Noblesville, Indiana that has successfully used social media platforms like Twitter, Facebook, and YouTube to create a positive brand image. They invest significant time interacting directly with customers online to foster a sense of community rather than overtly advertising. As a result, Hare Chevrolet has built a large, engaged audience on social media and serves as a model for how brands can use online presences strategically.
Welcome to the Dougherty County Public Library's Facebook and ...butest
This document provides instructions for signing up for Facebook and Twitter accounts. It outlines the sign up process for both platforms, including filling out forms with name, email, password and other details. It describes how the platforms will then search for friends and suggest people to connect with. It also explains how to search for and follow the Dougherty County Public Library page on both Facebook and Twitter once signed up. The document concludes by thanking participants and providing a contact for any additional questions.
Paragon Software announces the release of Paragon NTFS for Mac OS X 8.0, which provides full read and write access to NTFS partitions on Macs. It is the fastest NTFS driver on the market, achieving speeds comparable to native Mac file systems. Paragon NTFS for Mac 8.0 fully supports the latest Mac OS X Snow Leopard operating system in 64-bit mode and allows easy transfer of files between Windows and Mac partitions without additional hardware or software.
This document provides compatibility information for Olympus digital products used with Macintosh OS X. It lists various digital cameras, photo printers, voice recorders, and accessories along with their connection type and any notes on compatibility. Some products require booting into OS 9.1 for software compatibility or do not support devices that need a serial port. Drivers and software are available for download from Olympus and other websites for many products to enable use with OS X.
To use printers managed by the university's Information Technology Services (ITS), students and faculty must install the ITS Remote Printing software on their Mac OS X computer. This allows them to add network printers, log in with their ITS account credentials, and print documents while being charged per page to funds in their pre-paid ITS account. The document provides step-by-step instructions for installing the software, adding a network printer, and printing to that printer from any internet connection on or off campus. It also explains the pay-in-advance printing payment system and how to check printing charges.
The document provides an overview of the Mac OS X user interface for beginners, including descriptions of the desktop, login screen, desktop elements like the dock and hard disk, and how to perform common tasks like opening files and folders. It also addresses frequently asked questions for Windows users switching to Mac OS X, such as where documents are stored, how to save or find documents, and what the equivalent of the C: drive is in Mac OS X. The document concludes with sections on file management tasks like creating and deleting folders, organizing files within applications, using Spotlight search, and an overview of the Dashboard feature.
This document provides a checklist for securing Mac OS X version 10.5, focusing on hardening the operating system, securing user accounts and administrator accounts, enabling file encryption and permissions, implementing intrusion detection, and maintaining password security. It describes the Unix infrastructure and security framework that Mac OS X is built on, leveraging open source software and following the Common Data Security Architecture model. The checklist can be used to audit a system or harden it against security threats.
This document summarizes a course on web design that was piloted in the summer of 2003. The course was a 3 credit course that met 4 times a week for lectures and labs. It covered topics such as XHTML, CSS, JavaScript, Photoshop, and building a basic website. 18 students from various majors enrolled. Student and instructor evaluations found the course to be very successful overall, though some improvements were suggested like ensuring proper software and pairing programming/non-programming students. The document also discusses implications of incorporating web design material into existing computer science curriculums.
1. Interactive Machine Learning
Jerry Alan Fails, Dan R. Olsen, Jr.
Computer Science Department
Brigham Young University
Provo, Utah 84602
{failsj, olsen}@cs.byu.edu
ABSTRACT Implementation of such a tool, however, poses many
Perceptual user interfaces (PUIs) are an important part of problems. First and foremost is the problem of rapidly
ubiquitous computing. Creating such interfaces is difficult creating a satisfactory classifier. The simple solution is to
because of the image and signal processing knowledge using behind-the-scenes machine learning and image
required for creating classifiers. We propose an interactive processing.
machine-learning (IML) model that allows users to train, Machine learning allows automatic creation of classifiers,
classify/view and correct the classifications. The concept and however, the classical models are generally slow to train, and
implementation details of IML are discussed and contrasted not interactive. The classical machine-learning (CML) model
with classical machine learning models. Evaluations of two is summarized in Figure 1. Prior to the training of the
algorithms are also presented. We also briefly describe classifier, features need to be selected. Training is then
Image Processing with Crayons (Crayons), which is a tool for performed “off-line” so that classification can be done
creating new camera-based interfaces using a simple painting quickly and efficiently. In this model classification is
metaphor. The Crayons tool embodies our notions of optimized at the expense of longer training time. Generally,
interactive machine learning. the classifier will run quickly so it can be done real-time. The
Categories: H.5.2, D.2.2 assumption is that training will be performed only once and
General Terms: Design, Experimentation need not be interactive. Many machine-learning algorithms
are very sensitive to feature selection and suffer greatly if
Keywords: Machine learning, perceptive user interfaces,
there are very many features.
interaction, image processing, classification
INTRODUCTION Interactive Use
Perceptual user interfaces (PUIs) are establishing the need for
machine learning in interactive settings. PUIs like
VideoPlace [8], Light Widgets [3], and Light Table [15,16] Feature Train Classify
all use cameras as their perceptive medium. Other systems Selection
use sensors other than cameras such as depth scanners and
infrared sensors [13,14,15]. All of these PUIs require
machine learning and computer vision techniques to create
Figure 1 – Classical machine learning model
some sort of a classifier. This classification component of the
UI often demands great effort and expense. Because most With CML, it is infeasible to create an interactive tool to
developers have little knowledge on how to implement create classifiers. CML requires the user to choose the
recognition in their UIs this becomes problematic. Even features and wait an extended amount of time for the
those who do have this knowledge would benefit if the algorithm to train. The selection of features is very
classifier building expense were lessened. We suggest the problematic for most interface designers. If one is designing
way to decrease this expense is through the use of a visual an interactive technique involving laser spot tracking, most
image classifier generator, which would allow developers to designers understand that the spot is generally red. They are
add intelligence to interfaces without forcing additional not prepared to deal with how to sort out this spot from red
programming. Similar to how Visual Basic allows simple clothing, camera noise or a variety of other problems. There
and fast development, this tool would allow for fast are well-known image processing features for handling these
integration of recognition or perception into a UI. problems, but very few interface designers would know how
to carefully select them in a way that the machine learning
algorithms could handle.
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies The current approach requires too much technical knowledge
are not made or distributed for profit or commercial advantage and on the part of the interface designer. What we would like to
that copies bear this notice and the full citation on the first page. To do is replace the classical machine-learning model with the
copy otherwise, or republish, to post on servers or to redistribute to
interactive model shown in Figure 2. This interactive training
lists, requires prior specific permission and/or a fee.
IUI’03, January 12–15, 2003, Miami, Florida, USA. allows the classifier to be coached along until the desired
Copyright 2003 ACM 1-58113-586-6/03/0001…$5.00. results are met. In this model the designer is correcting and
39
2. teaching the classifier and the classifier must perform the machine learning. It is also intended to accelerate the efforts
appropriate feature selection. of more knowledgeable programmers.
Interactive Use There are two primary goals for the Crayons tool: 1) to allow
the user to create an image/pixel classifier quickly, and 2) to
allow the user to focus on the classification problem rather
than image processing or algorithms. Crayons is successful if
Feature Train Classify
it takes minutes rather than weeks or months to create an
Selection
effective classifier. For simplicity sake, we will refer to this
as the UI principle of fast and focused. This principle refers
to enabling the designer to quickly accomplish his/her task
Manual Feedback To while remaining focused solely on that task.
Correction Designer Figure 3 shows the Crayons design process. Images are input
into the Crayons system, which can then export the generated
classifier. It is assumed the user has already taken digital
Figure 2 – Interactive machine learning (IML) model pictures and saved them as files to import into the system, or
that a camera is set up on the machine running Crayons, so it
The pre-selection of features can be eliminated and can capture images from it. Exporting the classifier is equally
transferred to the learning part of the IML if the learning trivial, since our implementation is written in Java. The
algorithm used performs feature selection. This means that a classifier object is simply serialized and output to a file using
large repository of features are initially calculated and fed to the standard Java mechanisms.
the learning algorithm so it can learn the best features for the
classification problem at hand. The idea is to feed a very
large number of features into the classifier training and let the
classifier do the filtering rather than the human. The human
designer then is focused on rapidly creating training data that
will correct the errors of the classifier. Figure 3 – Classifier Design Process
In classical machine learning, algorithms are evaluated on An overview of the internal architecture of Crayons is shown
their inductive power. That is, how well the algorithm will in Figure 4. Crayons receives images upon which the user
perform on new data based on the extrapolations made on the does some manual classification, a classifier is created, then
training data. Good inductive power requires careful analysis feedback is displayed. The user can then refine the classifier
and a great deal of computing time. This time is frequently by adding more manual classification or, if the classifier is
exponential in the number of features to be considered. We satisfactory, the user can export the classifier. The internal
believe that using the IML model a simple visual tool can be loop shown in Figure 4 directly correlates to the
designed to build classifiers quickly. We hypothesize that aforementioned train, feedback, correct cycle of the IML (see
when using the IML, having a very fast training algorithm is Figure 2). To accomplish the fast and focused UI principle,
more important than strong induction. In place of careful this loop must be easy and quick to cycle through. To be
analysis of many feature combinations we provide much interactive the training part of the loop must take less than
more human input to correct errors as they appear. This five seconds and generally much faster. The cycle can be
allows the interactive cycle to be iterated quickly so it can be broken down into two components: the UI and the Classifier.
done more frequently. The UI component needs to be simple so the user can remain
focused on the classification problem at hand. The classifier
The remainder of the paper is as follows. The next section creation needs to be fast and efficient so the user gets
briefly discusses the visual tool we created using the IML feedback as quickly as possible, so they are not distracted
model, called Image Processing with Crayons (Crayons). from the classification problem.
This is done to show one application of the IML model’s
power and versatility. Following the explanation of Crayons,
we explore the details of the IML model by examining its
distinction from CML, the problems it must overcome, and its
implementation details. Finally we present some results from
some tests between two of the implemented machine learning
algorithms. From these results we base some preliminary
conclusions of IML as it relates to Crayons.
IMAGE PROCESSING WITH CRAYONS
Crayons is a system we created that uses IML to create image
classifiers. Crayons is intended to aid UI designers who do Figure 4 – The classification design loop
not have detailed knowledge of image processing and
40
3. Although the IML and the machine-learning component of generating effective classifiers so the interactive design loop
Crayons are the primary discussion of this paper it is notable can be utilized.
to mention that Crayons has profited from work done by
MACHINE LEARNING
Viola and Jones [19] and Jaimes and Chang [5,6,7]. Also a
For the IML model to function, the classifier must be
brief example of how Crayons can be used is illustrative. The
generated quickly and be able to generalize well. As such we
sequence of images in Figure 5 shows the process of creating
will first discuss the distinctions between IML and CML,
a classifier using Crayons.
followed by the problems IML must overcome because of its
interactive setting, and lastly its implementation details
including specific algorithms.
CML vs. IML
Classical machine learning generally has the following
assumptions.
• There are relatively few carefully chosen features,
• There is limited training data,
• The classifier must amplify that limited training data
into excellent performance on new training data,
• Time to train the classifier is relatively unimportant as
long as it does not take too many days.
None of these assumptions hold in our interactive situation.
Our UI designers have no idea what features will be
appropriate. In fact, we are trying to insulate them from
knowing such things. In our current Crayons prototype there
are more than 150 features per pixel. To reach the breadth of
application that we desire for Crayons we project over 1,000
features will be necessary. The additional features will handle
texture, shape and motion over time. For any given problem
somewhere between three and fifteen of those features will
actually be used, but the classifier algorithm must
automatically make this selection. The classifier we choose
must therefore be able to accommodate such a large number
of features, and/or select only the best features.
In Crayons, when a designer begins to paint classes on an
Figure 5 – Crayons interaction process image a very large number of training examples is quickly
generated. With 77K pixels per image and 20 images one
Figure 5 illustrates how the user initially paints very little can rapidly generate over a million training examples. In
data, views the feedback provided by the resulting classifier, practice, the number stays in the 100K examples range
corrects by painting additional class pixels and then iterates because designers only paint pixels that they need to correct
through the cycle. As seen in the first image pair in Figure 5, rather than all pixels in the image. What this means,
only a little data can generate a classifier that roughly learns however, is that designers can generate a huge amount of
skin and background. The classifier, however, over- training data very quickly. CML generally focuses on the
generalizes in favor of background; therefore, in the second ability of a classifier to predict correct behavior on new data.
image pair you can see skin has been painted where the In IML, however, if the classifier’s predictions for new data
classifier previously did poorly at classifying skin. The are wrong, the designer can rapidly make those corrections.
resulting classifier shown on the right of the second image By rapid feedback and correction the classifier is quickly (in
pair shows the new classifier classifying most of the skin on a matter of minutes) focused onto the desired behavior. The
the hand, but also classifying some of the background as skin. goal of the classifier is not to predict the designer’s intent into
The classifier is corrected again, and the resulting classifier is new situations but rapidly reflect intent as expressed in
shown as the third image pair in the sequence. Thus, in only concrete examples.
a few iterations, a skin classifier is created.
Because additional training examples can be added so
The simplicity of the example above shows the power that readily, IML’s bias differs greatly from that of CML.
Crayons has due to the effectiveness of the IML model. The Because it extrapolates a little data to create a classifier that
key issue in the creation of such a tool lies in quickly will be frequently used in the future, CML is very concerned
about overfit. Overfit is where the trained classifier adheres
41
4. too closely to the training data rather than deducing general The nearest-neighbor algorithm [1] is easy to train but not
principles. Cross-validation and other measures are generally very effective. Besides not being able to discriminate
taken to minimize overfit. These measures add substantially amongst features, nearest-neighbor has serious problems in
to the training time for CML algorithms. IML’s bias is to high dimensional feature spaces of the kind needed in IML
include the human in the loop by facilitating rapid correction and Crayons. Nearest-neighbor generally has a classification
of mistakes. Overfit can easily occur, but it is also readily time that is linear in the number of training examples which
perceived by the designer and instantly corrected by the also makes it unacceptably slow.
addition of new training data in exactly the areas that are most There are yet other algorithms such as boosting that do well
problematic. This is shown clearly in Figure 5 where a with feature selection, which is a desirable characteristic.
designer rapidly provides new data in the edges of the hand While boosting has shown itself to be very effective on tasks
where the generalization failed. such as face tracing [18], its lengthy training time is
Our interactive classification loop requires that the classifier prohibitive for interactive use in Crayons.
training be very fast. To be effective, the classifier must be There are many more machine-learning algorithms, however,
generated from the training examples in under five seconds. this discussion is sufficient to preface to our decision of the
If the classifier takes minutes or hours, the process of ‘train- use of decision trees. All the algorithms discussed above
feedback-correct’ is no longer interactive, and much less suffer from the curse of dimensionality. When many features
effective as a design tool. Training on 100,000 examples are used (100s to 1000s), their creation and execution times
with 150 features each in less than five seconds is a serious dramatically increase. In addition, the number of training
challenge for most CML algorithms. examples required to adequately cover such high dimensional
Lastly, for this tool to be viable the final classifier will need feature spaces would far exceed what designers can produce.
to be able to classify 320 x 240 images in less than a fourth of With just one decision per feature the size of the example set
a second. If the resulting classifier is much slower than this it must approach 2100, which is completely unacceptable. We
becomes impossible to use it to track interactive behavior in a need a classifier that rapidly discards features and focuses on
meaningful way. the 1-10 features that characterize a particular problem.
IML Implementation Decision trees [10] have many appealing properties that
Throughout our discussion thus far, many requirements for coincide with the requirements of IML. First and foremost is
the machine-learning algorithm in IML have been made. The that the DT algorithm is fundamentally a process of feature
machine-learning algorithm must: selection. The algorithm operates by examining each feature
and selecting a decision point for dividing the range of that
• learn/train very quickly,
feature. It then computes the “impurity” of the result of
• accommodate 100s to 1000s of features, dividing the training examples at that decision point. One can
• perform feature selection, think of impurity as measuring the amount of confusion in a
given set. A set of examples that all belong to one class
• allow for tens to hundreds of thousands of training would be pure (zero impurity). There are a variety of
examples. possible impurity measures [2]. The feature whose partition
These requirements put firm bounds on what kind of a yields the least impurity is the one chosen, the set is divided
learning algorithm can be used in IML. They invoke the and the algorithm applied recursively to the divided subsets.
fundamental question of which machine-learning algorithm Features that do not provide discrimination between classes
fits all of these criteria. We discuss several options and the are quickly discarded. The simplicity of DTs also provides
reason why they are not viable before we settle on our many implementation advantages in terms of speed and space
algorithm of choice: decision trees (DT). of the resulting classifier.
Neural Networks [12] are a powerful and often used Quinlan’s original DT algorithm [10] worked only on
machine-learning algorithm. They can provably approximate features that were discrete (a small number of choices). Our
any function in two layers. Their strength lies in their image features do not have that property. Most of our
abilities to intelligently integrate a variety of features. Neural features are continuous real values. Many extensions of the
networks also produce relatively small and efficient original DT algorithm, ID3, have been made to allow use of
classifiers, however, there are not feasible in IML. The real–valued data [4,11]. All of these algorithms either
number of features used in systems like Crayons along with discretize the data or by selecting a threshold T for a given
the number of hidden nodes required to produce the kinds of feature F divide the training examples into two sets where
classifications that are necessary completely overpowers this F<T and F>=T. The trick is for each feature to select a value
algorithm. Even more debilitating is the training time for T that gives the lowest impurity (best classification
neural networks. The time this algorithm takes to converge is improvement). The selection of T from a large number of
far to long for interactive use. For 150 features this can take features and a large number of training examples is very slow
hours or days. to do correctly.
42
5. We have implemented two algorithms, which employ The use of sub-sampling in CWSS produced very slight
different division techniques. These two algorithms also differences in classification accuracy as compared to CW, but
represent the two approaches of longer training time with reduced training time by a factor of at least two (for training
better generalization vs. shorter training time with poorer sets with N ≥ 5,000). This factor however will continue to
generalization. The first strategy slightly reduces interactivity grow as N increases. (For N = 40,000 CWSS is
and relies more on learning performance. The second relies approximately 5 times faster than CW; 8 for N = 80,000.)
on speed and interactivity. The two strategies are Center The CW and CWSS algorithms spend considerable
Weighted (CW) and Mean Split (MS). computing resources in trying to choose a threshold value for
Our first DT attempt was to order all of the training examples each feature. The Mean Split (MS) algorithm spends very
for each feature and step through all of the examples little time on such decisions and relies on large amounts of
calculating the impurity as if the division was between each training data to correct decisions at lower levels of the tree.
of the examples. This yielded a minimum impurity split, The MS algorithm uses T=mean(F) as the threshold for
however, this generally provided a best split close to the dividing each feature F and compares the impurities of the
beginning or end of the list of examples, still leaving a large divisions of all features. This is very efficient and produces
number of examples in one of the divisions. Divisions of this relatively shallow decision trees by generally dividing the
nature yield deeper and more unbalanced trees, which training set in half at each decision point. Mean split,
correlate to slower classification times. To improve this however, does not ensure that the division will necessarily
algorithm, we developed Center Weighted (CW), which does divide the examples at points that are meaningful to correct
the same as above, except that it more heavily weights central classification. Successive splits at lower levels of the tree
splits (more equal divisions). By insuring that the split will eventually correctly classify the training data, but may
threshold is generally in the middle of the feature range, the not generalize as well.
resulting tree tends to be more balanced and the sizes of the The resulting MS decision trees are not as good as those
training sets to be examined at each level of the tree drops produced by more careful means such as CW or CWSS.
exponentially. However, we hypothesized, that the speedup in classification
CW DTs do, however, suffer from an initial sort of all would improve interactivity and thus reduce the time for
training examples for each feature, resulting in a O(f * N log designers to train a classifier. We believe designers make up
N) cost up front, where f is the number of features and N the for the lower quality of the decision tree with the ability to
number of training examples. Since in IML, we assume that correct more rapidly. The key is in optimizing designer
both f and N are large, this can be extremely costly. judgment rather than classifier predictions. MSSS is a sub-
Because of the extreme initial cost of sorting all N training sampled version of MS in the same manner as CWSS. In
examples f times, we have extended Center Weighted with MSSS, since we just evaluate the impurity at the mean, and
CWSS. The ‘SS’ stand for sub-sampled. Since the iteration since the mean is a simple statistical value, the resulting
through training examples is purely to find a good split, we divisions are generally identical to those of straight MS.
can sample the examples to find a statistically sound split. As a parenthetical note, another important bottleneck that is
For example, say N is 100,000, if we sample 1,000 of the common to all of the classifiers is the necessity to calculate
original N, sort those and calculate the best split then our all features initially to create the classifier. We made the
initial sort is 100 times faster. It is obvious that a better assumption in IML that all features are pre-calculated and
threshold could be computed using all of the training data, but that the learning part will find the distinguishing features.
this is mitigated by the fact that those data items will still be Although, this can be optimized so it is faster, all algorithms
considered in lower levels of the tree. When a split decision will suffer from this bottleneck.
is made, all of the training examples are split, not just the sub- There are many differences between the performances of
sample. The sub-sampling means that each node’s split each of the algorithms. The most important is that the CW
decision is never greater than O(f*1000*5), but that algorithms train slower than the MS algorithms, but tend to
eventually all training data will be considered. create better classifiers. Other differences are of note though.
Quinlan used a sampling technique called “windowing”. For example, the sub sampled versions, CWSS and MSSS,
Windowing initially used a small sample of training examples generally allowed the classifiers to be generated faster. More
and increased the number of training examples used to create specifically, CWSS was usually twice as fast as CW, as was
the DT, until all of the original examples were classified MSSS compared to MS.
correctly [11]. Our technique, although similar, differs in that Because of the gains in speed and lack of loss of
the number of samples is fixed. At each node in the DT a classification power, only CWSS and MSSS will be used for
new sample of fixed size is drawn, allowing misclassified comparisons. The critical comparison is to see which
examples in a higher level of the DT to be considered at a algorithm allows the user to create a satisfactory classifier the
lower level. fastest. User tests comparing these algorithms are outlined
and presented in the next section.
43
6. EVALUATIONS MSSS CWSS
User tests were conducted to evaluate the differences between
CWSS and MSSS. When creating a new perceptual interface Problem Time Iterations Time Iterations
it is not classification time that is the real issue. The Skin 10:26 11.4 03:51 3.6
important issue is designer time. As stated before,
Paper Cards 04:02 5.0 02:37 2.6
classification creation time for CWSS is longer than MSSS,
but the center-weighted algorithms tend to generalize better Robot Car 01:48 1.2 01:37 1.2
than the mean split algorithms. The CWSS generally takes 1- Laser 01:29 1.0 01:16 1.0
10 seconds to train on training sets of 10,000-60,000
examples, while MSSS is approximately twice as fast on the Table 2 – MSSS followed by CWSS
same training sets. These differences are important; as our The laser tracker is a relatively simple classifier because of
hypothesis was that faster classifier creation times can the uniqueness of bright red spots [9]. The robot car was
overcome poorer inductive strength and thus reduce overall contrasted with a uniform colored carpet and was similarly
designer time. straightforward. Identifying colored paper cards against a
To test the difference between CWSS and MSSS we used cluttered background was more difficult because of the
three key measurements: wall clock time to create the diversity of the background. The skin tracker is the hardest
classifier, number of classify/correct iterations, and structure because of the diversity of skin color, camera over-saturation
of the resulting tree (depth and number of nodes). The latter problems and cluttered background [20].
of these three corresponds to the amount of time the classifier As can be seen in tables 1 and 2, MSSS takes substantially
takes to classify an image in actual usage. more designer effort on the hard problems than CWSS. All
In order to test the amount of time a designer takes to create a subjects specifically stated that CWSS was “faster” than
good classifier, we need a standard to define “good MSSS especially in the Skin case. (Some did not notice a
classifier”. A “gold standard” was created for four different difference between the two algorithms while working on the
classification problems: skin-detection, paper card tracking, other problems.) We did not test any of the slower
robot car tracking and laser tracking. These gold standards algorithms such as neural nets or nearest-neighbor.
were created by carefully classifying pixels until, in human Interactively these are so poor that the results are self-evident.
judgment, the best possible classification was being We also did not test the full CW algorithm. Its classification
performed on the test images for each problem. The resulting times tend into minutes and clearly could not compete with
classifier was then saved as a standard. the times shown in tables 1 and 2. It is clear from our
evaluations that a classification algorithm must get under the
Ten total test subjects were used and divided into two groups. 10-20 second barrier in producing a new classification, but
The first five did each task using the CWSS followed by the that once under that barrier, the designer’s time begins to
MSSS and the remaining five MSSS followed by CWSS. dominate. Once the designer’s time begins to dominate the
The users were given each of the problems in turn and asked total time, then the classifier with better generalization wins.
to build a classifier. Each time the subject requested a
classifier to be built that classifier’s performance was We also mentioned the importance of the tree structure as it
measured against the performance of the standard classifier relates to the classification time of an image. Table 3 shows
for that task. When the subject’s classifier agreed with the the average tree structures (tree depth and number of nodes)
standard on more than 97.5% of the pixels, the test was as well as the average classification time (ACT) in
declared complete. milliseconds over the set of test images.
Table 1, shows the average times and iterations for the first
group, Table 2, the second group. CWSS MSSS
Problem Depth Nodes ACT Depth Nodes ACT
CWSS MSSS Skin 16.20 577 243 25.60 12530 375
Problem Time Iterations Time Iterations Paper
15.10 1661 201 16.20 2389 329
Skin 03:06 4.4 10:35 12.6 Cards
Paper Cards 02:29 4.2 02:23 5.0 Car 13.60 1689 235 15.70 2859 317
Robot Car 00:50 1.6 01:00 1.6 Laser 13.00 4860 110 8.20 513 171
Laser 00:46 1.2 00:52 1.4 Table 3 – Tree structures and average classify time (ACT)
Table 1 – CWSS followed by MSSS As seen in Table 3, depth, number of nodes and ACT, were
all lower in CWSS than in MSSS. This was predicted as
CWSS provides better divisions between the training
examples.
44
7. While testing we observed that those who used the MSSS Databases, 4th Asian Conference on Computer Vision
which is fast but less accurate, first, ended up using more (ACCV 2000), Taipei, Taiwan, January 8-11, 2000.
training data, even when they used the CWSS, which usually 8. Krueger, M. W., Gionfriddo. T., and Hinrichsen, K.,
generalizes better and needs less data. Those who used the “VIDEOPLACE -- an artificial reality”. Human Factors
CWSS first, were pleased with the interactivity of CWSS and in Computing Systems, CHI '85 Conference Proceedings,
became very frustrated when they used MSSS, even though it ACM Press, 1985, 35-40.
could cycle faster through the interactive loop. In actuality,
9. Olsen, D.R., Nielsen, T. “Laser Pointer Interaction.”
because of the poor generalization of the mean split
Proceedings of CHI ’01 (Seattle WA, March 2001).
algorithm, even though the classifier generation time for
MSSS was quicker than CWSS, the users felt it necessary to 10. Quinlan, J. R. “Induction of Decision Trees.” Machine
paint more using the MSSS, so the overall time increased Learning, 1(1); 81-106, (1986).
using MSSS. 11. Quinlan, J. R. “C4.5: Programs for machine learning.”
Morgan Kaufmann, San Mateo, CA, 1993.
CONCLUSION
When using machine learning in an interactive design setting, 12. Rumelhart, D., Widrow, B., and Lehr, M. “The Basic
feature selection must be automatic rather than manual and Ideas in Neural Networks.” Communications of the ACM,
classifier training-time must be relatively fast. Decision Trees 37(3), (1994), pp 87-92.
using a sub-sampling technique to improve training times are 13. Schmidt, A. “Implicit Human Computer Interaction
very effective for both of these purposes. Once interactive Through Context.” Personal Technologies, Vol 4(2),
speeds are achieved, however, the quality of the classifier’s June 2000.
generalization becomes important. Using tools like Crayons, 14. Starner, T., Auxier, J. and Ashbrook, D. “The Gesture
demonstrates that machine learning can form an appropriate Pendant: A Self-illuminating, Wearable, Infrared
basis for the design tools needed to create new perceptual Computer Vision System for Home Automation Control
user interfaces. and Medical Monitoring.” International Symposium on
REFERENCES Wearable Computing (Atlanta GA, October 2000).
1. Cover, T., and Hart, P. “Nearest Neighbor Pattern 15. Triggs, B. “Model-based Sonar Localisation for Mobile
Classification.” IEEE Transactions on Information Robots.” Intelligent Robotic Systems ’93, Zakopane,
Theory, 13, (1967) 21-27. Poland, 1993.
2. Duda, R. O., Hart, P. E., and Stork, D. G., Pattern 16. Underkoffler, J. and Ishii H. “Illuminating Light: An
Classification. (2001). Optical Design Tool with a Luminous-Tangible
3. Fails, J.A., Olsen, D.R. “LightWidgets: Interacting in Interface.” Proceedings of CHI ’98 (Los Angeles CA,
Everyday Spaces.” Proceedings of IUI ’02 (San April 1998).
Francisco CA, January 2002). 17. Underkoffler, J., Ullmer, B. and Ishii, H. “Emancipated
4. Fayyad, U.M. and Irani, K. B. “On the Handling of Pixels: Real-World Graphics in the Luminous Room.”
Continuous-valued Attributes in Decision Tree Proceedings of SIGGRAPH ’99 (Los Angeles CA, 1999),
Generation.” Machine Learning, 8, 87-102,(1992). ACM Press, 385-392.
5. Jaimes, A. and Chang, S.-F. “A Conceptual Framework 18. Vailaya, A., Zhong, Y., and Jain, A. K. “A hierarchical
for Indexing Visual Information at Multiple Levels.” system for efficient image retrieval.” In Proc. Int. Conf.
IS&T/SPIE Internet Imaging 2000, (San Jose CA, on Patt. Recog. (August 1996).
January 2000). 19. Viola, P. and Jones, M. “Robust real-time object
6. Jaimes, A. and Chang, S.-F. “Automatic Selection of detection.” Technical Report 2001/01, Compaq CRL,
Visual Features and Classifier.” Storage and Retrieval February 2001.
for Image and Video Databases VIII, IS&T/SPIE (San 20. Yang, M.H. and Ahuja, N. “Gaussian Mixture Model for
Jose CA, January 2000). Human Skin Color and Its Application in Image and
7. Jaimes, A. and Chang, S.-F. “Integrating Multiple Video Databases.” Proceedings of SPIE ’99 (San Jose
Classifiers in Visual Object Detectors Learned from User CA, Jan 1999), 458-466.
Input.” Invited paper, session on Image and Video
45