CONATION: English Command Input/Output System for Computers



Similar documents
A secure face tracking system

Speech: A Challenge to Digital Signal Processing Technology for Human-to-Computer Interaction

Voice-Recognition Software An Introduction

Prof. Dr. M. H. Assal

Hardware Implementation of Probabilistic State Machine for Word Recognition

Manual Business Connect

EFFICIENT DATA PRE-PROCESSING FOR DATA MINING

Dragon speech recognition Nuance Dragon NaturallySpeaking 13 comparison by product. Feature matrix. Professional Premium Home.

13 Managing Devices. Your computer is an assembly of many components from different manufacturers. LESSON OBJECTIVES

Manual Software SPECTRO3-MONITORING V5.0

ARTIFICIAL INTELLIGENCE (CSCU9YE) LECTURE 6: MACHINE LEARNING 2: UNSUPERVISED LEARNING (CLUSTERING)

SSRG International Journal of Computer Science and Engineering (SSRG-IJCSE) volume 2 issue 3 March 2015 Personal Assistant for User Task Automation

DRAGON NATURALLYSPEAKING 12 FEATURE MATRIX COMPARISON BY PRODUCT EDITION

Voice Driven Animation System

Practical Data Science with Azure Machine Learning, SQL Data Mining, and R

Azure Machine Learning, SQL Data Mining and R

LIVE SPEECH ANALYTICS. ProduCt information

Transcription FAQ. Can Dragon be used to transcribe meetings or interviews?

Standard Languages for Developing Multimodal Applications

ANDROID NOTE MANAGER APPLICATION FOR PEOPLE WITH VISUAL IMPAIRMENT

Automated Model Based Testing for an Web Applications

The Keyboard One of the first peripherals to be used with a computer and is still the primary input device for text and numbers.

Operating Systems. and Windows

Unified Communications

Speech Recognition Software Review

An Overview of Knowledge Discovery Database and Data mining Techniques

Ericsson T18s Voice Dialing Simulator

A Robust Method for Solving Transcendental Equations

RESEARCH ON SPOKEN LANGUAGE PROCESSING Progress Report No. 29 (2008) Indiana University

A New Approach For Estimating Software Effort Using RBFN Network

NETS for Teachers: Achievement Rubric

Robustness of a Spoken Dialogue Interface for a Personal Assistant

Everybody has the right to

Machine Learning using MapReduce

Call Recorder Oygo Manual. Version

A FUZZY BASED APPROACH TO TEXT MINING AND DOCUMENT CLUSTERING

An Arabic Text-To-Speech System Based on Artificial Neural Networks

Chapter 3. Basic Application Software. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved.

HANDS-FREE PC CONTROL CONTROLLING OF MOUSE CURSOR USING EYE MOVEMENT

IBM Tivoli Provisioning Manager V 7.1

Gamma Distribution Fitting

Guide to the Dragon Bar

Professor, D.Sc. (Tech.) Eugene Kovshov MSTU «STANKIN», Moscow, Russia

Microsoft Report Builder 3.0 with SQL 2008R2, SQL 2012 Express and SQL 2012 Course 55005A; 2 Days, Instructor-led

Tutorial for proteome data analysis using the Perseus software platform

ProfessionalPLUS Station Software Suite

Comparison of K-means and Backpropagation Data Mining Algorithms

Comparative Analysis of EM Clustering Algorithm and Density Based Clustering Algorithm Using WEKA tool.

Chapter 9 Input/Output Devices

Journal of Industrial Engineering Research. Adaptive sequence of Key Pose Detection for Human Action Recognition

DESIGN OF DIGITAL SIGNATURE VERIFICATION ALGORITHM USING RELATIVE SLOPE METHOD

OPNET Network Simulator

Project Instruction Booklet. CNC Milling Machine Project

Introduction to MS WINDOWS XP

Blind Deconvolution of Barcodes via Dictionary Analysis and Wiener Filter of Barcode Subsections

Mouse Control using a Web Camera based on Colour Detection

Develop Software that Speaks and Listens

ASR Resource Websites

Citrix MetaFrame Presentation Server 3.0 and Microsoft Windows Server 2003 Value Add Feature Guide

Social Media Mining. Data Mining Essentials

Using Avaya Flare Experience for Windows

A Software Tool for. Automatically Veried Operations on. Intervals and Probability Distributions. Daniel Berleant and Hang Cheng

Biometrics in Physical Access Control Issues, Status and Trends White Paper

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Tibetan For Windows - Software Development and Future Speculations. Marvin Moser, Tibetan for Windows & Lucent Technologies, USA

Barcode Based Automated Parking Management System

Data, Measurements, Features

SIMATIC. WinCC V7.0. Getting started. Getting started. Welcome 2. Icons 3. Creating a project 4. Configure communication 5

How To Use Neural Networks In Data Mining

DigitalPersona Pro Enterprise

AUTOMATIC PHONEME SEGMENTATION WITH RELAXED TEXTUAL CONSTRAINTS

Virtual Instrument and Object Oriented Programming Modules to Enhance Computer Networking Course

The Application of Visual Basic Computer Programming Language to Simulate Numerical Iterations

The preliminary design of a wearable computer for supporting Construction Progress Monitoring

Masters in Information Technology

MEng, BSc Applied Computer Science

! E6893 Big Data Analytics Lecture 5:! Big Data Analytics Algorithms -- II

Grand Valley State University Disability Support Services Guide to Assistive Technology

10.1 FUNCTIONS OF INPUT AND OUTPUT DEVICES

Credit Card Fraud Detection Using Self Organised Map

LiveTalk Call Center solution

Basic Computer Skills Module 2. Software Concepts

9RLFH$FWLYDWHG,QIRUPDWLRQ(QWU\7HFKQLFDO$VSHFWV

Tips and Tricks SAGE ACCPAC INTELLIGENCE

Speech Recognition of a Voice-Access Automotive Telematics. System using VoiceXML

Open-Source, Cross-Platform Java Tools Working Together on a Dialogue System

Dragon Solutions Enterprise Profile Management

THE BUSINESS VALUE OF AN ERP SYSTEM

Reviewed by Ok s a n a Afitska, University of Bristol

Process Modelling from Insurance Event Log

Development of a Service Robot System for a Remote Child Monitoring Platform

Measurement Information Model

Data Mining. SPSS Clementine Clementine Overview. Spring 2010 Instructor: Dr. Masoud Yaghini. Clementine

SEARCH ENGINE WITH PARALLEL PROCESSING AND INCREMENTAL K-MEANS FOR FAST SEARCH AND RETRIEVAL

Robot Task-Level Programming Language and Simulation

Transcription:

CONATION: English Command Input/Output System for Computers Kamlesh Sharma* and Dr. T. V. Prasad** * Research Scholar, ** Professor & Head Dept. of Comp. Sc. & Engg., Lingaya s University, Faridabad, India Email: kamlesh0581@gmail.com, tvprasad2002@yahoo.com Abstract In this information technology age, a convenient and user friendly interface is required to operate the computer system on very fast rate. In human being, speech being a natural mode of communication has potential to being a fast and convenient mode of interaction with computer. Speech recognition will play an important role in taking technology to them. It is the need of this era to access the information with in seconds. This paper describes the design and development of speaker independent and English command interpreted system for computer. HMM model is used to represent the phoneme like speech commands. Experiments have been done on real world data and system has been trained in normal condition for real world subject. Keywords: Speech Recognition, Forward Variable, Occurrence Probability, HMM. 1. INTRODUCTION The primarily human computer interaction is done by keyboard and mouse as pointing device work as input and monitor and printer work as output. Keyboard, although a popular medium is not very convenient as it requires a certain amount of skill for effective usage. A mouse on the other hand requires a good hand-eye coordination. It is also cumbersome for entering nontrivial amount of text data and hence requires use of an additional media such as keyboard. Physically challenged people find computers difficult to use. Partially blind people find reading from a monitor difficult. With the integration of computers and telecommunications, the mode of information access becomes an important issue. The designs of the prevalent human machine interfaces are more suitable for easier interpretation of information by computers than by human beings. The concept of machine being able to interact with people in a mode that is natural as well as convenient for human beings is very appealing. Issuing spoken commands to a machine to get useful work done and to get the response is a no long dream now. This has motivated research in speech recognition as well as speech synthesis. Considerable progress has been made and a few commercial speech products of varying capabilities are available for use in quite a few languages. English command Input/Output system for computer is a fascinating field spanning several areas of computer science and mathematics. Reliable speech recognition is a hard problem, requiring a combination of many techniques, however modern methods have been able to achieve an impressive degree of accuracy. This project attempts to examine those techniques, and to apply them to build a simple system. These are exciting technologies that change the way to interact with computer. To talk the computer using a set of predefine commands and instruction and computer will respond in the same way. For example to say: file open, and the computer will open a new file: select the file. or Edit find and the computer will do all this work according to the word spoken to the system. The intent in developing this project is to ability to command and control the computer through voice. Speech recognition is a technology that allows the computer to identify and understand words spoken by a person using a microphone. [4][5] The ultimate goal of this paper is to outline a system that can recognize all words that are spoken by any person and perform corresponding command. Computer software that understands the speech and conversation with the computer. This conversation would include person and computer, speaking as commands or in response to events, input or other feedback. Speaking is easier and more intuitive than selecting buttons and menu item, human speech has evolved over many thousand of year to become an efficient method of sharing information and giving instruction. The dynamic nature of the world only emphasized this need strongly.[1] The system recognizes voice of any individual, records it, and matches with the respective command available and performs the action required. Database connected by commands to execute the function, wish

to operate. Speech recognition systems have been around for over twenty years, but the early systems were very expensive and required powerful computers to run. The technology behind speech output has also change. Early system used discrete speech, i.e. the user had to speak one word at a time, with short pause between the words. 2. RELATED WORK Dragon Dictate is the only discrete speech system still available commercially. Over the past few years most systems have used continuous speech, allowing the user to speak in a more natural way. The main continuous speech systems currently available for the PC are Dragon Naturally Speaking and IBM Via Voice. Microsoft has included their own speech recognition system within recent versions of Windows. There is now a version of IBM Via Voice for recent Apple MAC Computer. The aim of speaker recognition is to recognize the speaker while speech recognition is related to the detection of speech. Speech recognition has been a goal of research for more than four decades. [6][7] 3. COMMANDS RECOGNITION USING HMM We need to recognise a word using the existing models of words that we have. Sound recorder need to record the sound when it detects the presence of a word. This recorded sound is then passed through feature vector extractor model. The output of the above module is a list of features taken every 10 msec. These features are then passed to the recognition module for recognition. The feature vectors generated by the feature vector generator module act as the list of observation for the recognition module. Probability of generation of the observation given a model, P(O λ), is calculated for each of the model using find probability function. The word corresponding to the HMM, that gives the probability that is highest and is above the threshold, is considered to be spoken. Forward Variable Forward variable was used to find the probability of list of occurrence given a HMM. For a model with N states, P(O/ λ ) probability of observation, in terms of forward variable α, given the model is define as N P(O/ λ ) = α T (i) i=1 where α (t+1) is recursive defined as N α (t+1) = [ α T (i)a ij ]b j (O t+1 ) where α 1 is π i b i (O 1 ) i=1 Occurrence Probability For the forward variable to work we need to find b i (O t ). This is probability of a given occurrence for a particular state. This value can be calculated by Multivariate normal distribution formula. Probability of observation X occurring in state i is given as: (1/(2π) D/2 V i )exp(-(1/2)*(o t -µ i ) T V -1 (O t - µ i )) where D is dimension of the vector, µ i is matrix representing the mean vector, V i is the covariance matrix, V i is the determinant of matrix V i, V -1 is the inverse of matrix V i. Mean vector µ i is obtained by: µ i = (1/N)* O t O t єi Covariance Matrix Vi can be obtained by: Vi = (1/N)* (O t - µ i ) T * (O t - µ i ) O t єi Variance is calculated by finding the distance vector between an observation and the mean. Transpose of the distance vector is taken and it is multiplied with the distance vector. This operation gives a N x N where N is the dimension of the system. [2] 4. TRAINED THE SYSTEM To train the system we required three parameters: No of states the HMM model should have N. The size of the feature vector D. One or more filenames each containing a training set. For generating an initial HMM we take the N equally placed observations (feature vector) from the first training set. Each one is used to train a separate state. After training the states have a mean vector which is of size D. And a variance matrix of size D X D containing all zeros. Then for each of the remaining observations, we find the Euclidean distances between it and the mean vector of the states. We assign an observation to the closest state for training. The state assigned to consecutive observations are tracked to find the transitional probabilities. Segmental K-means algorithm tries to modify the initial model so as to maximise P(O, I/ λ ), where O are the training sets used for training and I is a state sequence in the given HMM. The maximised (optimal)

path for a training set is denoted by I*. Those observations that were assigned to a different state then the one in which they should be present according the optimal path are then moved to the state. This improves P(O,I*/ λ ). The model is evaluated again so with this changed assignments of observations. The above process iteratively till there are no more reassignment needed. The calculation of mean, variance, and transitional probabilities are done as shown before.[8] Viterbi algorithm is useful identifying the best path that a signal can take in a HMM. Find the best path is a search problem. Viterbi uses dynamic programming to reduce the search space. For the first observation sequence the out probability of a state being the start state. This done by taking a product of initial probability and the observation probability for the state. For every other observation all the states try to find a predecessor such that the probability of the predecessor multiplied by the transition probability from the predecessor to itself is maximised. 5. IMPLEMENTATION OF COMMAND INPUT/OUTPUT SYSTEM The implementation of the command Input / Output system is done by CHMM. Continuous HMM library, which supports vector as observations, has been implemented in the project. The library uses probability distribution functions that are mention in section 3. The system has a model for each word that the system can recognize. The list of words can be considered as language model. While recognizing the system need to know where to locate the model for each word and what word the model corresponds to. This information is stored in a flat file called models in a directory called HMMs. The difference in case of HMM is that the symbol does not uniquely identify a state. The new state is determined by the symbol and the transition probabilities from the current state to a candidate state. The system is trained before a word is recognize as mention in section 4. When a sound is given to the system to recognise, it compares each model with the word and finds out the model that most closely matches with it. The word corresponding to that HMM model is given as the output. [1][2][3] Training the system for a new word requires the sound files for that word. Feature for the sound file can be extracted using the extract feature command. Train command can be used to train the system. The command needs information such as the number of states that the model should have the size of the feature vector, and the file to be used for training. First argument to the command should be a number indicating the number of states. Second argument is the size of the vector. After this one or more file containing the training data. The output of the Train command is the trained HMM in XML format which should be written to a file and put in the hmms directory. An entry needs to be made in the models file present in the same directory. For recognition sound is recorded using the Raw Recorder program. Then extract the feature to get an mfcc file. Recognise command takes one or more filenames as argument. It tries to recognise the word for each file. We propose to implement this system using the.net API technology. The use of APIs limit the user s prerequisite of DOT NET knowledge required to develop a working project in DOT NET. Start/St op User Train User Speech recognition systems Add favorite Configure Accuracy limit change Change user profile Change status Add favorite program Figure 1 Structural Chart 6. EXPERIMENTAL RESULTS Agent Training To train the system we used 20 users. Each user trained the system. Training of the system was done in a calm and peaceful environment so that recognition accuracy may be more. When user trained the system, a separate profile is created for each user.

Recognition Recognition was tried on two kinds of sounds Known user: The user whose voice we used for training. Unknown user: The user whose voice we not used for training. The Result of experiment as shown in table: Table 1: Recognition Result Type of user No of Correct Incorrect sound recognition Recognition Known User 20 18 2 Unknown user 10 6 0 Table 2 shows the command recognition probability and the graphical representation shows in graph 2 on the last page. Table 2 : Command Recognition Probability Number of Experiments Commands Number of Testing Recognition Probability Activate 20 100% Deactivate 20 100% Welcome 20 100% Word 20 100% Excel 20 100% Save 20 90% Close 20 100% Notepad 20 100% Menu 20 98% Exit 20 100% Escape 20 100% Left 20 100% Right 20 100% Up 20 100% Down 20 100% EnterTheNumricState 20 90% ExitTheNumricState 20 90% EnterAlphabeticState 20 90% ExitTheAlphabeticState 20 90% Plus 20 100% Multiply 20 98% Divide 20 95% Minus 20 100% Star 20 100% Shut down 20 100% PenDriveFormat 20 95% Scanning 20 98% Ok 20 100% Enter 20 100% Run 20 100% The system is experimented for 10 number of user. The corresponding recognition percentage result which shown by a graph. This experiment tried to find out how many users is recognition correctly. The outcomes have been exhibited in Table 3 and Graph 3. R e c o g n itio n P e rc e n ta g e 120 100 80 60 40 20 0 Table 3 : Experimental Results User Recognition Percentage A 85 B 80 C 90 D 95 E 75 F 50 G 65 H 77 I 83 J 98 A B C D E F G H I J User Graph 3. Experimental Results for 10 users 7. ACCURACY OF EXPERIMENTS 1 Accuracy of the experiments depends on the training time if the training time of the system has been increased then accuracy automatically increased. Time is directly proportional to accuracy if training time increase then accuracy increased. 2 Accuracy of the system is increased when we trained the system in very peaceful environment and provide the same environment at the time of system used. 3 Accuracy of the system increases when good quality input hardware like microphone is used 4 A graphical representation shows how time plays an important role in accuracy. A table containing number of users and time that user used to train the system is given in Table 4 and Graph 4.

Table 4: Time to accuracy relation User Time to Trained the system (In Hours) Accuracy in percentage Kamlesh 2 70 Lalit 1 45 Kamal 3 95 Neetu 1.30 65 Kanak 2.30 85 Kamlesh Lalit Kamal Neetu Kanak system must be improved to facilitate implementation in real life applications involving telephone and computer systems. Second, the system must be able to reject irrelevant speech that does not contain valid words or commands. Third, the recognition process must be developed so that commands can be set in continuous speech. And finally, the voice systems must be able to become viable on low-cost processors. Thus, this will enable the technology to be applied in almost any product. As with many contemporary technologies, such as the Internet, online payment systems and mobile phone functionality., development is at least partially driven by the trio of often perceived evils that are games, gambling and girls (pornography). Though these applications are outside the educational sphere, it is important to remember that many ICT REFERENCES Graph 2: Time to accuracy relation 8. CONCLUSIONS AND FUTURE WORK This paper presents a scheme proposed to control computer systems through voice of different users. The key factor in designing such system is the target audience. For example, physically handicapped people should be able to wear a headset and have their hands and eyes free in order to operate the system. Today, while considering this question, and uses where these technologies will be needed and desire, which would warrant R&D expenditures. There are a number of scenarios where speech recognition is either being delivered, developed for, researched or seriously discussed like computer and video games, precision surgery, domestic applications, wearable computers etc. There are several challenges the system needs to deal with in the future. First, the overall robustness of the [1] Samudravijaya K, Hindi Speech Recognition, School of Technology, Tata Institute of Fundamental Research, 2004. [2] Speech recognition for Hindi language, C-DAC India, available at http://www.cdacmumbai.in/design/corporate_site/override/pdfdoc/speech_recognition_for_hindi.pdf [3] A Novel Approach of Speaker Verification, School of Technology, Tata Institute of Fundamental Research, 2004. [4] Kamlesh Sharma, Dr. T. V. Prasad, Swar: The Voice Operated PC, Proc. of National Conference on Soft Computing & Artificial Intelligence, 15-16 January 2008. [5] Kamlesh Sharma, Dr. T. V. Prasad, Voice Operated Computer Application, Proc. of 2 nd National Conference on Emerging Trend in Computer Science & Information Technology, 18 April 2008. [6] Research & Development Centre C-DAC: Speech Research, Text to Speech, 2001-2010, http://www.kolkatacdac.in/html/txttospeeh/tts.htm [7] SHRUTI: Vernacular Speech Interface, Media Lab Asia Research Laboratory, http://www.mla.iitkgp.ernet.in/projects.html. [8] Samudravijaya K, Ahuja R, Bondale N, Jose T, Krishnan S, Poddar P, Rao P V S, Raveendran R, A feature-based hierarchical speech recognition system for Hindi. S adhan a 23: 313 340, 1998.

102% 20 user 100% RecognitionProbability 98% 96% 94% 92% 90% 88% 86% 84% Activate Deactivate Welcome Word Excel Save Close Notepad Menu Exit Escape Left Right Up Down EnterTheNumricState ExitTheNumricState EnterAlphabeticState ExitTheAlphabeticState Plus Multiply Divide Minus Star Shut down PenDriveFormat Scanning Ok Enter Run Commands Graph 2 Commands recognition probability for 20 users