<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">OJAB</journal-id><journal-title-group><journal-title>Open Journal of Applied Biosensor</journal-title></journal-title-group><issn pub-type="epub">2168-5401</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/ojab.2014.34004</article-id><article-id pub-id-type="publisher-id">OJAB-54038</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Biomedical&amp;Life Sciences</subject><subject> Chemistry&amp;Materials Science</subject></subj-group></article-categories><title-group><article-title>
 
 
  An Efficient and Robust Fall Detection System Using Wireless Gait Analysis Sensor with Artificial Neural Network (ANN) and Support Vector Machine (SVM) Algorithms
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>hargava</surname><given-names>Teja Nukala</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref><xref ref-type="corresp" rid="cor1"><sup>*</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Naohiro</surname><given-names>Shibuya</given-names></name><xref ref-type="aff" rid="aff2"><sup>2</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Amanda</surname><given-names>Rodriguez</given-names></name><xref ref-type="aff" rid="aff3"><sup>3</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Jerry</surname><given-names>Tsay</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Jerry</surname><given-names>Lopez</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Tam</surname><given-names>Nguyen</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Steven</surname><given-names>Zupancic</given-names></name><xref ref-type="aff" rid="aff3"><sup>3</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Donald</surname><given-names>Yu-Chun Lie</given-names></name><xref ref-type="aff" rid="aff3"><sup>3</sup></xref></contrib></contrib-group><aff id="aff3"><addr-line>Texas Tech University Health Sciences Center (TTUHSC), Lubbock, USA</addr-line></aff><aff id="aff2"><addr-line>(On Leave) The Department Electrical &amp;amp; Electronic Engineering, Tokushima University, Tokushima, Japan</addr-line></aff><aff id="aff1"><addr-line>Texas Tech University (TTU), Lubbock, USA</addr-line></aff><author-notes><corresp id="cor1">* E-mail:<email>bhargava.nukala@ttu.edu(HTN)</email>;</corresp></author-notes><pub-date pub-type="epub"><day>15</day><month>02</month><year>2015</year></pub-date><volume>03</volume><issue>04</issue><fpage>29</fpage><lpage>39</lpage><history><date date-type="received"><day>28</day>	<month>September</month>	<year>2014</year></date><date date-type="rev-recd"><day>26</day>	<month>October</month>	<year>2014</year>	</date><date date-type="accepted"><day>5</day>	<month>November</month>	<year>2014</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  In this work, a total of 322 tests were taken on young volunteers by performing 10 different falls, 6 different Activities of Daily Living (ADL) and 7 Dynamic Gait Index (DGI) tests using a custom-designed Wireless Gait Analysis Sensor (WGAS). In order to perform automatic fall detection, we used Back Propagation Artificial Neural Network (BP-ANN) and Support Vector Machine (SVM) based on the 6 features extracted from the raw data. The WGAS, which includes a tri-axial accelerometer, 2 gyroscopes, and a MSP430 microcontroller, is worn by the subjects at either T4 (at back) or as a belt-clip in front of the waist during the various tests. The raw data is wirelessly transmitted from the WGAS to a near-by PC for real-time fall classification. The BP ANN is optimized by varying the training, testing and validation data sets and training the network with different learning schemes. SVM is optimized by using three different kernels and selecting the kernel for best classification rate. The overall accuracy of BP ANN is obtained as 98.20% with LM and RPROP training from the T4 data, while from the data taken at the belt, we achieved 98.70% with LM and SCG learning. The overall accuracy using SVM was 98.80% and 98.71% with RBF kernel from the T4 and belt position data, respectively.
 
</p></abstract><kwd-group><kwd>Artificial Neural Network (ANN)</kwd><kwd> Back Propagation</kwd><kwd> Fall Detection</kwd><kwd> Fall Prevention</kwd><kwd> Gait Analysis Sensor</kwd><kwd> Support Vector Machine (SVM)</kwd><kwd> Wireless Sensor</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>It is estimated that one third of the senior citizens in the United States (i.e., around 12 million people) fall each year, which often results in serious injuries [<xref ref-type="bibr" rid="scirp.54038-ref1">1</xref>] . Falls in elderly persons living alone can be especially dangerous. Therefore, it is important to introduce a highly accurate and easy-to-wear fall detection device that can wirelessly detect and record real-time falls for the aging population. We have performed investigation using our custom sensor without the wireless feature and achieved 100% accuracy in identifying all 60 falls vs. the Activities of Daily Living (ADL) with no false positives on young volunteers using threshold based algorithms [<xref ref-type="bibr" rid="scirp.54038-ref2">2</xref>] . For this current work, the sensor is wireless and allows for real-time untethered testing for not only fall detections, but also for gait analysis [<xref ref-type="bibr" rid="scirp.54038-ref2">2</xref>] [<xref ref-type="bibr" rid="scirp.54038-ref3">3</xref>] . This paper reports our new Wireless Gait Analysis Sensor (WGAS) used specifically for real-time automatic fall detection with an efficient Back Propagation Artificial Neural Network (BP ANN) algorithm with different training schemes and Support Vector Machine (SVM) with different kernel functions. This WGAS is placed and tested at two different positions on the body: at the T4 position and at the Belt position using a belt clip as shown in <xref ref-type="fig" rid="fig1">Figure 1</xref>.</p><p>For the learning of BP ANN and SVM, the following 6 features (<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x5.png" xlink:type="simple"/></inline-formula>: Range of angular velocity;<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x6.png" xlink:type="simple"/></inline-formula>: Range of acceleration) as shown in Equations (1) and (2) were extracted from the raw data taken from WGAS. They are used to perform real-time fall detection as supplied as inputs to these classifiers.</p><disp-formula id="scirp.54038-formula58"><label>(1)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x7.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.54038-formula59"><label>(2)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x8.png"  xlink:type="simple"/></disp-formula></sec><sec id="s2"><title>2. Wireless Gait Analysis Sensor</title><p>The custom-designed WGAS consists of a 3-axis linear accelerometer, a single axis gyroscope, and a dual axis gyroscope to measure 3-D human body translations and rotations during a gait pattern with the help of the Micro- Electrical and Mechanical System (MEMS) sensors integrated on a PCB. This WGAS system is supported by a Texas Instruments (TI) MSP430 microcontroller, and a wireless 2.4 GHz USB transceiver using the SimpliciTI™ protocol with a range of ~12 meters (40 ft). An overall simplified system block diagram for the WGAS fall detection system is shown in <xref ref-type="fig" rid="fig2">Figure 2</xref>. The 2 AAA batteries used in our earlier wired sensor [<xref ref-type="bibr" rid="scirp.54038-ref2">2</xref>] were replaced by</p><fig-group id="fig1"><label><xref ref-type="fig" rid="fig1">Figure 1</xref></label><caption><title> Sensor orientation and location at the belt position on a belt clip (left) and at T4 (right).</title></caption><fig id ="fig1_1"><label></label><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x9.png"/></fig><fig id ="fig1_2"><label></label><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x10.png"/></fig><fig id ="fig1_3"><label></label><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href=""/></fig></fig-group><fig id="fig2"  position="float"><label><xref ref-type="fig" rid="fig2">Figure 2</xref></label><caption><title> A simplified block diagram of the WGAS fall detection system</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x12.png"/></fig><p>a single rechargeable Li-ion coin battery, providing a battery lifetime of ~40 hours continuous operation time with each recharge. The PCB, coin battery and the microcontroller are placed in a specially designed 3D printed box <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x13.png" xlink:type="simple"/></inline-formula> with a total weight of 42 grams. The design of the box was done with a 3D modeling software Rhinoceros (Rhino) and printed using a 3D printer with Acrylonitrile Butadiene Styrene (ABS) plastic. The box has a sliding lid and shown in <xref ref-type="fig" rid="fig3">Figure 3</xref>.</p><p>The accelerometer data is sampled at 160 Hz and digitized to 8 bits, with its output scaled to &#177;6 g at <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x14.png" xlink:type="simple"/></inline-formula> <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x15.png" xlink:type="simple"/></inline-formula> for each axis. The gyroscope data is also sampled at 160 Hz and digitized to 8 bits, with its output scaled to 300˚ per sec. (dps) at <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x16.png" xlink:type="simple"/></inline-formula> (Note the typical <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x17.png" xlink:type="simple"/></inline-formula> (sensitivity) value is 3.752 mV/dps for the accelerometer and 3.33 mV/dps for the gyroscopes). The sensor orientation and positions on the body are shown in <xref ref-type="fig" rid="fig1">Figure 1</xref>. The sensor is carefully secured to the subjects during testing to avoid artifacts. The microcontroller and the transceiver unit enables the real-time transmission of the 6-dimen- sional gait data wirelessly to the nearby PC, where a LABVIEW™ program is used for designing the Graphical User Interface (GUI) (<xref ref-type="fig" rid="fig4">Figure 4</xref>).</p>Testing Protocol<p>First falls [<xref ref-type="bibr" rid="scirp.54038-ref4">4</xref>] were performed on a cushion mattress bed by two young volunteers wearing the WGAS at T4 and on the belt (see <xref ref-type="table" rid="table1">Table 1</xref> with 10 types of falls). The total number of falls was 101 (51 at T4 and 50 at belt). For the ADL tests [<xref ref-type="bibr" rid="scirp.54038-ref4">4</xref>] , same volunteers performed every ADL recorded in <xref ref-type="table" rid="table2">Table 2</xref> (note this includes picking up an object test #7), and the aggregate number of ADLs was 69 (34 at T4 and 35 at belt). For the DGI tests [<xref ref-type="bibr" rid="scirp.54038-ref5">5</xref>] , the same volunteers performed every DGI test in <xref ref-type="table" rid="table3">Table 3</xref>, with 152 tests taken in total (82 at T4 and 70 at belt).</p></sec><sec id="s3"><title>3. BP ANN Algorithm</title><p>For training the feed-forward ANN classifier, back propagation was applied according to Duda et al. [<xref ref-type="bibr" rid="scirp.54038-ref6">6</xref>] and a 3- layer system was picked as the standard BP ANN [<xref ref-type="bibr" rid="scirp.54038-ref7">7</xref>] . The input layer of the network has six neurons which correspond to the six input feature values. There is one hidden layer holding 10 hidden neurons, which number was optimized by adjusting the size of hidden neurons (from one to 15) as shown in <xref ref-type="fig" rid="fig5">Figure 5</xref>, where two output neurons corresponding to the two target classes the network needs to differentiate (i.e., the features of all falls are considered as Class 1, and all DGI and ADL are as Class 2). The essential idea of the back propagation learning algorithm [<xref ref-type="bibr" rid="scirp.54038-ref8">8</xref>] is the repeated application of the chain rule to calculate the impact of each weight in the network by taking an arbitrary error function E in to account as shown in Equation (3):</p><disp-formula id="scirp.54038-formula60"><label>(3)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x18.png"  xlink:type="simple"/></disp-formula><p>where w<sub>ij</sub> is the weight from neuron j to neuron i, s<sub>i</sub> is the output, and net<sub>i</sub> is the weighted sum of the inputs of the neuron i. After calculating the derivative of each weight, the error function is minimized by following a simple gradient decent rule in Equation (4):</p><disp-formula id="scirp.54038-formula61"><label>(4)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x19.png"  xlink:type="simple"/></disp-formula><fig id="fig3"  position="float"><label><xref ref-type="fig" rid="fig3">Figure 3</xref></label><caption><title> Physical structure of our custom-designed WGAS</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x20.png"/></fig><fig id="fig4"  position="float"><label><xref ref-type="fig" rid="fig4">Figure 4</xref></label><caption><title> GUI designed in LABVIEW<sup>TM</sup> for our real-time fall detection system using the WGAS, indicating a fall occurred after 8.765 sec</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x21.png"/></fig><fig id="fig5"  position="float"><label><xref ref-type="fig" rid="fig5">Figure 5</xref></label><caption><title> The 3-layer BP ANN topology used in this work</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x22.png"/></fig><table-wrap id="table1" ><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> Intentional falls performed in this work</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Test No.</th><th align="center" valign="middle" >Description</th></tr></thead><tr><td align="center" valign="middle" >1.</td><td align="center" valign="middle" >Fall back with legs straight</td></tr><tr><td align="center" valign="middle" >2.</td><td align="center" valign="middle" >Fall forward with legs straight</td></tr><tr><td align="center" valign="middle" >3.</td><td align="center" valign="middle" >Fall back with knees bent</td></tr><tr><td align="center" valign="middle" >4.</td><td align="center" valign="middle" >Fall forward with knees bent</td></tr><tr><td align="center" valign="middle" >5.</td><td align="center" valign="middle" >Fall left with knees bent</td></tr><tr><td align="center" valign="middle" >6.</td><td align="center" valign="middle" >Fall right with knees bent</td></tr><tr><td align="center" valign="middle" >7.</td><td align="center" valign="middle" >Fall left with legs straight</td></tr><tr><td align="center" valign="middle" >8.</td><td align="center" valign="middle" >Fall right with legs straight</td></tr><tr><td align="center" valign="middle" >9.</td><td align="center" valign="middle" >Fall while sitting on a chair</td></tr><tr><td align="center" valign="middle" >10.</td><td align="center" valign="middle" >Trip over a small object</td></tr></tbody></table></table-wrap><table-wrap id="table2" ><label><xref ref-type="table" rid="table2">Table 2</xref></label><caption><title> Activities of Daily Living (ADL) movements performed</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Test No.</th><th align="center" valign="middle" >Description</th></tr></thead><tr><td align="center" valign="middle" >1.</td><td align="center" valign="middle" >Sitting down and standing up from an armchair</td></tr><tr><td align="center" valign="middle" >2.</td><td align="center" valign="middle" >Sitting down and standing up from a low stool</td></tr><tr><td align="center" valign="middle" >3.</td><td align="center" valign="middle" >Sitting down and standing up from a bed</td></tr><tr><td align="center" valign="middle" >4.</td><td align="center" valign="middle" >Lying down and standing up from a bed</td></tr><tr><td align="center" valign="middle" >5.</td><td align="center" valign="middle" >Walking 10 m</td></tr><tr><td align="center" valign="middle" >6.</td><td align="center" valign="middle" >Stretching while standing</td></tr><tr><td align="center" valign="middle" >7.</td><td align="center" valign="middle" >Picking up an object from the floor</td></tr></tbody></table></table-wrap><table-wrap id="table3" ><label><xref ref-type="table" rid="table3">Table 3</xref></label><caption><title> Dynamic Gait Index (DGI) tests performed</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Test No.</th><th align="center" valign="middle" >Description</th></tr></thead><tr><td align="center" valign="middle" >1.</td><td align="center" valign="middle" >Gait level surface-walk with the normal speed up to 20' mark</td></tr><tr><td align="center" valign="middle" >2.</td><td align="center" valign="middle" >Change in Gait speed-walk with normal pace up to 5', walk fast for next 5', walk slowly for next 5' and walk normal for last 5'</td></tr><tr><td align="center" valign="middle" >3.</td><td align="center" valign="middle" >Gait with horizontal head turns-walk normal with horizontal head turns up to 20' mark</td></tr><tr><td align="center" valign="middle" >4.</td><td align="center" valign="middle" >Gait with vertical head turns-walk normal with vertical head turns up to 20' mark</td></tr><tr><td align="center" valign="middle" >5.</td><td align="center" valign="middle" >Gait and pivot turn-walk normal but at the end turn around like a pivot turn</td></tr><tr><td align="center" valign="middle" >6.</td><td align="center" valign="middle" >Step over obstacle-walk normal and when you come across obstacle step over not around</td></tr><tr><td align="center" valign="middle" >7.</td><td align="center" valign="middle" >Step around obstacles-walk normal and when 1st obstacle comes across, walk around right side and when 2nd obstacle comes across walk around left</td></tr></tbody></table></table-wrap><p>Clearly, the decision of the learning rate e, which scales the derivative, has a critical impact on the time required until convergence is arrived. If the learning rate is set too small, numerous steps are expected to achieve an acceptable solution. On the contrary, a large learning rate will possibly lead to oscillation, preventing the error to fall below a certain value. The training of the BP ANN is done by using three different learning algorithms dis- cussed below.</p><sec id="s3_1"><title>3.1. BP ANN with Scaled Conjugate Gradient (SCG) Learning</title><p>The basic back propagation algorithm alters the weights of the network following the steepest descent direction (negative direction of the slope). In this direction the performance function decreases most rapidly along the negative direction of slope. However, convergence may not be achieved even though the decrease is more rapid. Therefore, conjugate gradient methods are used which can generally produce faster convergence than gradient descent techniques by performing a search in all the gradient directions to determine the step size obtained by the learning factor. The training of the ANN classifier used in this work is done by the scaled conjugate gradient (SCG) back propagation method developed by Moller [<xref ref-type="bibr" rid="scirp.54038-ref9">9</xref>] . This SCG algorithm performs the search and chooses the step size by using the information from the second order error function from the neural network. The SCG training is optimized by the parameter sigma σ (which determines the change in weight for the second derivative approximation) and lamda λ (which regulates the indefiniteness of the Hessian). The values of σ and λ were taken as <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x23.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x23.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x24.png" xlink:type="simple"/></inline-formula>, respectively.</p></sec><sec id="s3_2"><title>3.2. BP ANN with Levenberg-Marquardt (LM) Learning</title><p>The second training method for BP ANN is done by the Levenberg-Marquardt algorithm [<xref ref-type="bibr" rid="scirp.54038-ref10">10</xref>] , which is used to speed up the training of second order approximations without having to calculate the Hessian matrix. If the performance function has the sum of squares (typical in training feed-forward networks) then the Hessian matrix can be approximated as:</p><disp-formula id="scirp.54038-formula62"><label>(5)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x25.png"  xlink:type="simple"/></disp-formula><p>And the gradient can be calculated as</p><disp-formula id="scirp.54038-formula63"><label>(6)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x26.png"  xlink:type="simple"/></disp-formula><p>where J is the Jacobian matrix, which has the first derivatives of the network errors with respect to the weights and biases, and e is a vector that contains the network errors.</p><p>To make sure the H is always invertible, the LM algorithm introduces another approximation to the Hessian matrix using.</p><disp-formula id="scirp.54038-formula64"><label>(7)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x27.png"  xlink:type="simple"/></disp-formula><p>where &#181; is called combination coefficient and is always positive and I is the identity matrix. The LM algorithm does the training according the scalar parameter &#181;. If the value of &#181; is zero, this algorithm reduces to the Hessian matrix approximation; and if the value of &#181; is large, this becomes a gradient descent algorithm with small step size. The LM training is optimized by the parameter &#181; (i.e., the combination coefficient). As &#181; can either be small or large, its value is initialized to 0.001 and the maximum value is set to<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x28.png" xlink:type="simple"/></inline-formula><sub>, </sub>with a decrease factor of 0.1 and an increase factor of 10.</p></sec><sec id="s3_3"><title>3.3. BP ANN with Resilient Propagation (RPROP)</title><p>In training the feed-forward ANN we generally use sigmoid transfer functions in the hidden layer that are characterized by the principle that its slope must reach zero as the input gets large. This can cause problems because if the gradient gets too small, there is a chance that we can only apply small changes in the weights and biases of the network, even though they are far from their global optimal values. Therefore, the reason for using the resilient back propagation (RPROP) is to eliminate these undesired effects [<xref ref-type="bibr" rid="scirp.54038-ref11">11</xref>] . Only the sign of the derivative can determine the weighting update; the magnitude of the derivative has no effect on updating the weights. The RPROP training is optimized by choosing <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x29.png" xlink:type="simple"/></inline-formula> (Initial weight change) to 0.07, the weight change increment to 1.2, and the weight change decrement equals to 0.5.</p></sec></sec><sec id="s4"><title>4. Support Vector Machine (SVM)</title><p>Support Vector Machine (SVM) is a method for patterns recognition/classification on two categories with supervised learning. SVM-light, one of the implementation of SVM proposed by Thorsten Joachims [<xref ref-type="bibr" rid="scirp.54038-ref12">12</xref>] [<xref ref-type="bibr" rid="scirp.54038-ref13">13</xref>] , is applied to classification of experimental data into falls, DGI and ADL.</p><sec id="s4_1"><title>4.1. Linear SVM Classification</title><p>The optimization algorithm for linear classification was proposed by Vapnik [<xref ref-type="bibr" rid="scirp.54038-ref14">14</xref>] . This algorithm finds the maxi- mum-margin hyper-plane from given training data set D as described in Equation (8):</p><disp-formula id="scirp.54038-formula65"><label>(8)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x30.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x31.png" xlink:type="simple"/></inline-formula> is either 1 or 1 and n is the number of training data. Each <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x32.png" xlink:type="simple"/></inline-formula> is a p-dimensional vector having the fea- ture quantity<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x32.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x33.png" xlink:type="simple"/></inline-formula>. Any hyper-plane can be written as:</p><disp-formula id="scirp.54038-formula66"><label>(9)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x34.png"  xlink:type="simple"/></disp-formula><p>where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x35.png" xlink:type="simple"/></inline-formula> is the vector to the hyper-plane. If the training data are linearly separable, the hyper-plane can be described as:</p><disp-formula id="scirp.54038-formula67"><label>(10)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x36.png"  xlink:type="simple"/></disp-formula><p>The distance between these two hyper-plane is<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x37.png" xlink:type="simple"/></inline-formula>, so the purpose is to minimize<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x37.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x38.png" xlink:type="simple"/></inline-formula>. Therefore, the algorithm can be rewritten as:</p><disp-formula id="scirp.54038-formula68"><label>(11)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x39.png"  xlink:type="simple"/></disp-formula><p>We can also reformulate the equation without changing the solution as following:</p><disp-formula id="scirp.54038-formula69"><label>(12)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x40.png"  xlink:type="simple"/></disp-formula><p>In Linear SVM, a hyper-plane or a set of hyper-planes can be used as the separate lines in classification. The higher the margin of separation for the classes that can be created, the better the classification result that can generally be achieved for the Linear SVM [<xref ref-type="bibr" rid="scirp.54038-ref15">15</xref>] .</p></sec><sec id="s4_2"><title>4.2. Nonlinear SVM Classification</title><p>B. E. Boser et al. proposed the nonlinear SVM classifiers by using the kernel trick [<xref ref-type="bibr" rid="scirp.54038-ref16">16</xref>] . The kernel functions used in this study are as followed:</p><disp-formula id="scirp.54038-formula70"><label>(13)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x41.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.54038-formula71"><label>(14)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x42.png"  xlink:type="simple"/></disp-formula><p>The accuracy of SVM depends on the kernel, cost factor parameter C [<xref ref-type="bibr" rid="scirp.54038-ref17">17</xref>] and the parameter <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/1-2490030x43.png" xlink:type="simple"/></inline-formula> for the RBF kernel. We checked each combination of parameter choices in this work, and looked up for the best accuracy.</p></sec><sec id="s4_3"><title>4.3. Overall Data Analysis Flow-Chart</title><p>After getting the raw data from the WGAS, feature extraction is performed by extracting 6 features as shown in Equations (1)-(2) and the training algorithms are implemented to obtain the fall detection. <xref ref-type="fig" rid="fig6">Figure 6</xref> shows the complete data analysis flow chart of the WGAS system.</p></sec></sec><sec id="s5"><title>5. Classification Results</title><sec id="s5_1"><title>5.1. Classification Results Using the BP ANN Algorithm</title><p>Fall detection using BP ANN is done on WGAS data taken at both T4 and at belt positions with three training schemes. The data was obtained using a 1.7 GHz PC with 4 GB of RAM, Windows 8 OS, and the MATLAB R2013b for the BP ANN classifier model. For the trained BP ANN classifier model, the number of training, validation and testing data sets were divided into 70-15-15 and 50-25-25 in percentages, respectively for all the three training schemes. The classification results of SCG, LM and RPROP training schemes are shown in the <xref ref-type="table" rid="table4">Table 4</xref> and <xref ref-type="table" rid="table5">Table 5</xref>. From <xref ref-type="table" rid="table4">Table 4</xref> for the data at T4, LM and RPROP obtained the best overall Correct Detection Rate (CDR) of 98.2% for the training-validation-testing (50% - 25% - 25%) data sets. And at the belt position from <xref ref-type="table" rid="table5">Table 5</xref>, LM yielded an overall CDR of 98.70% for the training-validation-testing (70% - 15% - 15%) data sets, and SCG yielded an overall CDR of 98.70% for the training-validation-testing (50% - 25% - 25%) data sets.</p><fig id="fig6"  position="float"><label><xref ref-type="fig" rid="fig6">Figure 6</xref></label><caption><title> The data analysis flow-chart of the WGAS fall detection system</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/1-2490030x44.png"/></fig><table-wrap id="table4" ><label><xref ref-type="table" rid="table4">Table 4</xref></label><caption><title> BP ANN classification results from the T4 data</title></caption><table><tbody><thead><tr><th align="center" valign="middle"  rowspan="2"  >Parameters</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (70% - 15% - 15%)</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (50% - 25% - 25%)</th></tr></thead><tr><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >RPROP</td><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >RPROP</td></tr><tr><td align="center" valign="middle" >Number of Neurons (Input)</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td></tr><tr><td align="center" valign="middle" >Number of Neurons (Hidden)</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td></tr><tr><td align="center" valign="middle" >Number of Neurons (Output)</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td></tr><tr><td align="center" valign="middle" >Learning Coefficient</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td></tr><tr><td align="center" valign="middle" >% of Error</td><td align="center" valign="middle" >3.60%</td><td align="center" valign="middle" >5.40%</td><td align="center" valign="middle" >3.60%</td><td align="center" valign="middle" >3.00%</td><td align="center" valign="middle" >1.80%</td><td align="center" valign="middle" >1.80%</td></tr><tr><td align="center" valign="middle" >Number of Epochs</td><td align="center" valign="middle" >13</td><td align="center" valign="middle" >8</td><td align="center" valign="middle" >9</td><td align="center" valign="middle" >13</td><td align="center" valign="middle" >12</td><td align="center" valign="middle" >60</td></tr><tr><td align="center" valign="middle" >Training<sup>*</sup></td><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >NRP</td><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >NRP</td></tr><tr><td align="center" valign="middle" >Gradient</td><td align="center" valign="middle" >0.022</td><td align="center" valign="middle" >0.003</td><td align="center" valign="middle" >0.424</td><td align="center" valign="middle" >0.029</td><td align="center" valign="middle" >0.0008</td><td align="center" valign="middle" >6.9e−6</td></tr><tr><td align="center" valign="middle" >Training Optimization Time (s)</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td></tr><tr><td align="center" valign="middle" >Number of Training Dataset (Fall-Non Fall)</td><td align="center" valign="middle" >117 (35 - 82)</td><td align="center" valign="middle" >117 (35 - 82)</td><td align="center" valign="middle" >117 (35 - 82)</td><td align="center" valign="middle" >83 (23 - 60)</td><td align="center" valign="middle" >83 (23 - 60)</td><td align="center" valign="middle" >83 (23 - 60)</td></tr><tr><td align="center" valign="middle" >Number of Validation Dataset (Fall-Non Fall)</td><td align="center" valign="middle" >25 (7 - 18)</td><td align="center" valign="middle" >25 (7 - 18)</td><td align="center" valign="middle" >25 (7 - 18)</td><td align="center" valign="middle" >42 (16 - 26)</td><td align="center" valign="middle" >42 (16 - 26)</td><td align="center" valign="middle" >42 (16 - 26)</td></tr><tr><td align="center" valign="middle" >Number of Test Dataset (Fall-Non Fall)</td><td align="center" valign="middle" >25 (9 - 16)</td><td align="center" valign="middle" >25 (9 - 16)</td><td align="center" valign="middle" >25 (9 - 16)</td><td align="center" valign="middle" >42 (12 - 30)</td><td align="center" valign="middle" >42 (12 - 30)</td><td align="center" valign="middle" >42 (12 - 30)</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Training)</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >4</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >0</td></tr><tr><td align="center" valign="middle" >Training Dataset CDR</td><td align="center" valign="middle" >98.30%</td><td align="center" valign="middle" >95.70%</td><td align="center" valign="middle" >96.60%</td><td align="center" valign="middle" >97.60%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >100.00%</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Validation)</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >0</td></tr><tr><td align="center" valign="middle" >Validation Dataset CDR</td><td align="center" valign="middle" >96.00%</td><td align="center" valign="middle" >96.00%</td><td align="center" valign="middle" >96.00%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >100.00%</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Test)</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >3</td></tr><tr><td align="center" valign="middle" >Test Dataset CDR</td><td align="center" valign="middle" >88.00%</td><td align="center" valign="middle" >88.00%</td><td align="center" valign="middle" >96.00%</td><td align="center" valign="middle" >92.90%</td><td align="center" valign="middle" >92.90%</td><td align="center" valign="middle" >92.90%</td></tr><tr><td align="center" valign="middle" >Overall CDR</td><td align="center" valign="middle" >96.40%</td><td align="center" valign="middle" >94.60%</td><td align="center" valign="middle" >96.40%</td><td align="center" valign="middle" >97.00%</td><td align="center" valign="middle" >98.20%</td><td align="center" valign="middle" >98.20%</td></tr><tr><td align="center" valign="middle" >Specificity</td><td align="center" valign="middle" >98.3%</td><td align="center" valign="middle" >97.4%</td><td align="center" valign="middle" >98.3%</td><td align="center" valign="middle" >97.4%</td><td align="center" valign="middle" >97.4%</td><td align="center" valign="middle" >97.4%</td></tr><tr><td align="center" valign="middle" >Sensitivity</td><td align="center" valign="middle" >92.2%</td><td align="center" valign="middle" >88.2%</td><td align="center" valign="middle" >92.2%</td><td align="center" valign="middle" >96.1%</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >100.0%</td></tr></tbody></table></table-wrap><p><sup>*</sup>SCG: scaled conjugate gradient; LM: levenberg-marquardt; RP: resilient propagation.</p><table-wrap id="table5" ><label><xref ref-type="table" rid="table5">Table 5</xref></label><caption><title> BP ANN classification results from the belt position data</title></caption><table><tbody><thead><tr><th align="center" valign="middle"  rowspan="2"  >Parameters</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (70% - 15% - 15%)</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (50% - 25% - 25%)</th></tr></thead><tr><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >RPROP</td><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >RPROP</td></tr><tr><td align="center" valign="middle" >Number of Neurons (Input)</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >6</td></tr><tr><td align="center" valign="middle" >Number of Neurons (Hidden)</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td><td align="center" valign="middle" >10</td></tr><tr><td align="center" valign="middle" >Number of Neurons (Output)</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td></tr><tr><td align="center" valign="middle" >Learning Coefficient</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td><td align="center" valign="middle" >0.75</td></tr><tr><td align="center" valign="middle" >% of Error</td><td align="center" valign="middle" >1.90%</td><td align="center" valign="middle" >1.30%</td><td align="center" valign="middle" >3.20%</td><td align="center" valign="middle" >1.30%</td><td align="center" valign="middle" >8.40%</td><td align="center" valign="middle" >2.60%</td></tr><tr><td align="center" valign="middle" >Number of Epochs</td><td align="center" valign="middle" >14</td><td align="center" valign="middle" >11</td><td align="center" valign="middle" >12</td><td align="center" valign="middle" >17</td><td align="center" valign="middle" >8</td><td align="center" valign="middle" >14</td></tr><tr><td align="center" valign="middle" >Training<sup>*</sup></td><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >RP</td><td align="center" valign="middle" >SCG</td><td align="center" valign="middle" >LM</td><td align="center" valign="middle" >NRP</td></tr><tr><td align="center" valign="middle" >Gradient</td><td align="center" valign="middle" >0.0064</td><td align="center" valign="middle" >0.0022</td><td align="center" valign="middle" >0.043</td><td align="center" valign="middle" >0.007</td><td align="center" valign="middle" >0.0037</td><td align="center" valign="middle" >0.0416</td></tr><tr><td align="center" valign="middle" >Training Optimization Time (s)</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td></tr><tr><td align="center" valign="middle" >Number of Training Dataset (Fall-Non Fall)</td><td align="center" valign="middle" >109 (36 - 73)</td><td align="center" valign="middle" >109 (36 - 73)</td><td align="center" valign="middle" >109 (36 - 73)</td><td align="center" valign="middle" >77 (28 - 49)</td><td align="center" valign="middle" >77 (28 - 49)</td><td align="center" valign="middle" >77 (28 - 49)</td></tr><tr><td align="center" valign="middle" >Number of Validation Dataset (Fall-Non Fall)</td><td align="center" valign="middle" >23 (7 - 16)</td><td align="center" valign="middle" >23 (7 - 16)</td><td align="center" valign="middle" >23 (7 - 16)</td><td align="center" valign="middle" >39 (12 - 27)</td><td align="center" valign="middle" >39 (12 - 27)</td><td align="center" valign="middle" >39 (12 - 27)</td></tr><tr><td align="center" valign="middle" >Number of Test Dataset (Fall-Non Fall)</td><td align="center" valign="middle" >23 (7 - 16)</td><td align="center" valign="middle" >23 (7 - 16)</td><td align="center" valign="middle" >23 (7 - 16)</td><td align="center" valign="middle" >39 (10 - 29)</td><td align="center" valign="middle" >39 (10 - 29)</td><td align="center" valign="middle" >39 (10 - 29)</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Training)</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >7</td><td align="center" valign="middle" >0</td></tr><tr><td align="center" valign="middle" >Training Dataset CDR</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >98.20%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >90.90%</td><td align="center" valign="middle" >100.00%</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Validation)</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >2</td></tr><tr><td align="center" valign="middle" >Validation Dataset CDR</td><td align="center" valign="middle" >87.00%</td><td align="center" valign="middle" >91.30%</td><td align="center" valign="middle" >91.30%</td><td align="center" valign="middle" >94.90%</td><td align="center" valign="middle" >94.90%</td><td align="center" valign="middle" >94.90%</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Test)</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >4</td><td align="center" valign="middle" >2</td></tr><tr><td align="center" valign="middle" >Test Dataset CDR</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >95.70%</td><td align="center" valign="middle" >100.00%</td><td align="center" valign="middle" >89.70%</td><td align="center" valign="middle" >94.90%</td></tr><tr><td align="center" valign="middle" >Overall CDR</td><td align="center" valign="middle" >98.10%</td><td align="center" valign="middle" >98.70%</td><td align="center" valign="middle" >96.80%</td><td align="center" valign="middle" >98.70%</td><td align="center" valign="middle" >91.60%</td><td align="center" valign="middle" >97.40%</td></tr><tr><td align="center" valign="middle" >Specificity</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >98.1%</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >87.6%</td><td align="center" valign="middle" >98.1%</td></tr><tr><td align="center" valign="middle" >Sensitivity</td><td align="center" valign="middle" >94.0%</td><td align="center" valign="middle" >96.0%</td><td align="center" valign="middle" >94.0%</td><td align="center" valign="middle" >96.0%</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >96.0%</td></tr></tbody></table></table-wrap><p><sup>*</sup>SCG: scaled conjugate gradient; LM: levenberg-marquardt; RP: resilient propagation.</p><p>The performance indicators such as specificity and sensitivity were also calculated by using Equations (14)- (15) and shown in <xref ref-type="table" rid="table4">Table 4</xref> and <xref ref-type="table" rid="table5">Table 5</xref>.</p><disp-formula id="scirp.54038-formula72"><label>(15)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x45.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.54038-formula73"><label>(16)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/1-2490030x46.png"  xlink:type="simple"/></disp-formula><p>where TN (true negatives) are the ADLs and DGIs correctly classified, FP (false positives) are the ADLs and DGIs that were not correctly classified by the BP ANN/SVM; TP (true positives) are the falls correctly classified and FN (false negatives) are the falls that were not detected by the BP ANN/SVM.</p></sec><sec id="s5_2"><title>5.2. Classification Results Using the SVM Algorithm</title><p>Fall detection using SVM is done on WGAS data taken at both T4 and at the belt position with three kernels. The data was obtained using a 1.7 GHz PC with 2 GB of RAM, Ubuntu 9.04 OS for running the SVM-light v6.01. For the trained SVM classifier, the number of training, validation and testing data sets were divided into 70-15-15, 50-25-25 in percentage, respectively for all the three kernels. The SVM classification results and the final parameters are shown in <xref ref-type="table" rid="table6">Table 6</xref> and <xref ref-type="table" rid="table7">Table 7</xref>. Correct Detection Rate (CDR) of 98.8% have been achieved by taking data at the T4 for training-validation-testing (70% - 15% - 15%) data sets using the RBF kernel from</p><table-wrap id="table6" ><label><xref ref-type="table" rid="table6">Table 6</xref></label><caption><title> SVM classification results from the T4 data</title></caption><table><tbody><thead><tr><th align="center" valign="middle"  rowspan="2"  >Parameters</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (70% - 15% - 15%)</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (50% - 25% - 25%)</th></tr></thead><tr><td align="center" valign="middle" >Linear</td><td align="center" valign="middle" >Polynomial</td><td align="center" valign="middle" >RBF</td><td align="center" valign="middle" >Linear</td><td align="center" valign="middle" >Polynomial</td><td align="center" valign="middle" >RBF</td></tr><tr><td align="center" valign="middle" >C</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >1</td></tr><tr><td align="center" valign="middle" >g</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >3</td></tr><tr><td align="center" valign="middle" >Training Optimization Time (s)</td><td align="center" valign="middle" >0.01</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.01</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td></tr><tr><td align="center" valign="middle" >Number of Training Dataset</td><td align="center" valign="middle" >115</td><td align="center" valign="middle" >115</td><td align="center" valign="middle" >115</td><td align="center" valign="middle" >81</td><td align="center" valign="middle" >81</td><td align="center" valign="middle" >81</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Training)</td><td align="center" valign="middle" >4</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >1</td><td align="center" valign="middle" >1</td></tr><tr><td align="center" valign="middle" >Number of Test Dataset</td><td align="center" valign="middle" >52</td><td align="center" valign="middle" >52</td><td align="center" valign="middle" >52</td><td align="center" valign="middle" >86</td><td align="center" valign="middle" >86</td><td align="center" valign="middle" >86</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Test)</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >4</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >2</td></tr><tr><td align="center" valign="middle" >Training Dataset CDR</td><td align="center" valign="middle" >96.52%</td><td align="center" valign="middle" >99.13%</td><td align="center" valign="middle" >99.13%</td><td align="center" valign="middle" >93.83%</td><td align="center" valign="middle" >98.77%</td><td align="center" valign="middle" >98.77%</td></tr><tr><td align="center" valign="middle" >Test Dataset CDR</td><td align="center" valign="middle" >90.38%</td><td align="center" valign="middle" >92.31%</td><td align="center" valign="middle" >98.08%</td><td align="center" valign="middle" >94.19%</td><td align="center" valign="middle" >94.19%</td><td align="center" valign="middle" >97.67%</td></tr><tr><td align="center" valign="middle" >Overall CDR</td><td align="center" valign="middle" >94.61%</td><td align="center" valign="middle" >97.01%</td><td align="center" valign="middle" >98.80%</td><td align="center" valign="middle" >94.01%</td><td align="center" valign="middle" >96.40%</td><td align="center" valign="middle" >98.20%</td></tr><tr><td align="center" valign="middle" >Specificity</td><td align="center" valign="middle" >98.3%</td><td align="center" valign="middle" >99.1%</td><td align="center" valign="middle" >99.1%</td><td align="center" valign="middle" >98.3%</td><td align="center" valign="middle" >98.3%</td><td align="center" valign="middle" >100.0%</td></tr><tr><td align="center" valign="middle" >Sensitivity</td><td align="center" valign="middle" >86.3%</td><td align="center" valign="middle" >92.2%</td><td align="center" valign="middle" >94.1%</td><td align="center" valign="middle" >84.3%</td><td align="center" valign="middle" >92.2%</td><td align="center" valign="middle" >94.1%</td></tr></tbody></table></table-wrap><p><sup>*</sup>RBF: radial basis function.</p><table-wrap id="table7" ><label><xref ref-type="table" rid="table7">Table 7</xref></label><caption><title> SVM classification results from the belt position data</title></caption><table><tbody><thead><tr><th align="center" valign="middle"  rowspan="2"  >Parameters</th><th align="center" valign="middle"  colspan="3"  >Training-Validation-Testing (70% - 15% - 15%)</th><th align="center" valign="middle"  colspan="4"  >Training-Validation-Testing (50% - 25% - 25%)</th></tr></thead><tr><td align="center" valign="middle" >Linear</td><td align="center" valign="middle" >Polynomial</td><td align="center" valign="middle"  colspan="2"  >RBF</td><td align="center" valign="middle" >Linear</td><td align="center" valign="middle" >Polynomial</td><td align="center" valign="middle" >RBF</td></tr><tr><td align="center" valign="middle" >C</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >6</td><td align="center" valign="middle"  colspan="2"  >2</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >6</td><td align="center" valign="middle" >3</td></tr><tr><td align="center" valign="middle" >g</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >-</td><td align="center" valign="middle"  colspan="2"  >3</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >-</td><td align="center" valign="middle" >3</td></tr><tr><td align="center" valign="middle" >Training Optimization Time (s)</td><td align="center" valign="middle" >0.01</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle"  colspan="2"  >0.00</td><td align="center" valign="middle" >0.02</td><td align="center" valign="middle" >0.00</td><td align="center" valign="middle" >0.00</td></tr><tr><td align="center" valign="middle" >Number of Training Dataset</td><td align="center" valign="middle" >107</td><td align="center" valign="middle" >107</td><td align="center" valign="middle"  colspan="2"  >107</td><td align="center" valign="middle" >76</td><td align="center" valign="middle" >76</td><td align="center" valign="middle" >76</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Training)</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >2</td><td align="center" valign="middle"  colspan="2"  >1</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >1</td></tr><tr><td align="center" valign="middle" >Number of Test Dataset</td><td align="center" valign="middle" >48</td><td align="center" valign="middle" >48</td><td align="center" valign="middle"  colspan="2"  >48</td><td align="center" valign="middle" >79</td><td align="center" valign="middle" >79</td><td align="center" valign="middle" >79</td></tr><tr><td align="center" valign="middle" >Number of Misclassification (Test)</td><td align="center" valign="middle" >2</td><td align="center" valign="middle" >1</td><td align="center" valign="middle"  colspan="2"  >1</td><td align="center" valign="middle" >5</td><td align="center" valign="middle" >3</td><td align="center" valign="middle" >3</td></tr><tr><td align="center" valign="middle" >Training Dataset CDR</td><td align="center" valign="middle" >95.32%</td><td align="center" valign="middle" >98.13%</td><td align="center" valign="middle"  colspan="2"  >99.07%</td><td align="center" valign="middle" >96.05%</td><td align="center" valign="middle" >97.37%</td><td align="center" valign="middle" >98.68%</td></tr><tr><td align="center" valign="middle" >Test Dataset CDR</td><td align="center" valign="middle" >95.83%</td><td align="center" valign="middle" >97.92%</td><td align="center" valign="middle"  colspan="2"  >97.92%</td><td align="center" valign="middle" >93.67%</td><td align="center" valign="middle" >96.20%</td><td align="center" valign="middle" >96.20%</td></tr><tr><td align="center" valign="middle" >Overall CDR</td><td align="center" valign="middle" >95.48%</td><td align="center" valign="middle" >98.06%</td><td align="center" valign="middle"  colspan="2"  >98.71%</td><td align="center" valign="middle" >94.84%</td><td align="center" valign="middle" >96.77%</td><td align="center" valign="middle" >97.42%</td></tr><tr><td align="center" valign="middle" >Specificity</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >97.1%</td><td align="center" valign="middle"  colspan="2"  >99.0%</td><td align="center" valign="middle" >99.0%</td><td align="center" valign="middle" >95.2%</td><td align="center" valign="middle" >97.1%</td></tr><tr><td align="center" valign="middle" >Sensitivity</td><td align="center" valign="middle" >86.0%</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle"  colspan="2"  >98.0%</td><td align="center" valign="middle" >86.0%</td><td align="center" valign="middle" >100.0%</td><td align="center" valign="middle" >98.0%</td></tr><tr><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td></tr></tbody></table></table-wrap><p><sup>*</sup>RBF: radial basis function.</p><p><xref ref-type="table" rid="table6">Table 6</xref>. From <xref ref-type="table" rid="table7">Table 7</xref>, we achieved 98.71% CDR at the belt position for training-validation-testing (70% - 15% - 15%) data sets by the RBF kernel.</p></sec></sec><sec id="s6"><title>6. Conclusions</title><p>Our custom Wireless Gait Analysis Sensor (WGAS) was applied for real-time automatic fall detection with a simple but very fast BP ANN using 6 input features trained by the Back Propagation Artificial Neural Network (BP ANN), and also with a Support Vector Machine (SVM) classifier. From Tables 4-7, LM and RPROP train- ed BP ANN has the highest specificity of 97.4%, and the highest sensitivity of 100% at the T4 position. SCG trained BP ANN achieves the highest specificity of 100%, and LM trained BP ANN has the highest sensitivity of 100% at the Belt position. Similarly, the RBF kernel SVM reaches the highest specificity of 100%, and the highest sensitivity of 94.1% at the T4 position. The Linear kernel SVM has the highest specificity of 100%, and the Polynomial kernel SVM has the highest sensitivity of 100%. Overall, the SVM shows a slightly lower sensitivity than the BP ANN. This is likely because the SVM uses an RBF kernel as the activation function, whereas the BP ANN uses a tan sigmoid (Tanh) function that has better recognition accuracy.</p><p>The preliminary data that was collected on the group of young volunteers reported here suggests that our real- time fall detection system performs competitively regardless if the WGAS is placed at the T4 or waist-level Belt position. The application of the WGAS is not only useful for the fall detection, but also for the gait analysis. However, to make our fall detection work to be clinically relevant, a bit more data should be collected during clinical trials at TTUHSC in order to carefully evaluate the performance of the classifiers and their classification accuracies using the WGAS on patients. Our WGAS has passed the TTUHSC IRB (Internal Review Board), and is going through clinical trials on patients with balance disorders. The initial results look rather promising for gaits differentiation.</p></sec></body><back><ref-list><title>References</title><ref id="scirp.54038-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Centers for Disease Control and Prevention (2015) Falls among Older Adults: An Overview. 
http://www.cdc.gov/homeandrecreationalsafety/falls/adultfalls.html</mixed-citation></ref><ref id="scirp.54038-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Jacob, J., Nguyen, T., Zupancic, S. and Lie, D.Y.C. (2011) A Fall Detection Study on the Sensor Placement Locations and the Development of a Threshold-Based Algorithm Using Both Accelerometer and Gyroscope. Proceedings of IEEE International Conference on Fuzzy Logics, Taipei, 27-30 June 2011, 666-671.</mixed-citation></ref><ref id="scirp.54038-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Nukala, B.T., Rodriguez, A.I., Tsay, J., Hall, T., Nguyen, T.Q., Zupancic, S. and Lie, D.Y.C. (2014) Evaluating Optimal Placement of Real-Time Wireless Gait Analysis Sensor with Dynamic Gait Index (DGI). Actas IEEE Conference on Information Systems and Techno (CISTI), Barcelona, 18-21 June 2014, 160-161.</mixed-citation></ref><ref id="scirp.54038-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Narasimhan, R. (2012) Skin-Contact Sensor for Automatic Fall Detection. Proceedings of IEEE International Engineering in Medicine and Biology Society (EMBS) Conference, San Diego, 28 August-1 September 2012, 4038-4041.</mixed-citation></ref><ref id="scirp.54038-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Perel, K.L., Nelson, A., Goldman, R.L., Luther, S.L., Prieto-Lewis, N. and Rubenstein, L.Z. (2001) Fall Risk Assessment Measures: An Analytic Review. Journals of Gerontology Series A—Biological Sciences &amp; Medical Sciences, 56, M761-M766. http://dx.doi.org/10.1093/gerona/56.12.M761</mixed-citation></ref><ref id="scirp.54038-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Duda, R.O., Hart, P.E. and Stork, D.G. (2001) Pattern Classification. 2nd Edition, Wiley-Interscience, New York.</mixed-citation></ref><ref id="scirp.54038-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Dreiseitl, S. and Ohno-Machado, L. (2002) Logistic Regression and Artificial Neural Network Classification Models: A Methodology Review. Journal of Biomedical Informatics, 35, 352-359. 
http://dx.doi.org/10.1016/S1532-0464(03)00034-0</mixed-citation></ref><ref id="scirp.54038-ref8"><label>8</label><mixed-citation publication-type="book" xlink:type="simple">Rumelhart, D.E., Hinton, G.E. and Williams, R.J. (1985) Learning Internal Representations by Error Propagation. In: Rumelhart, D.E. and McClelland, J.L., The PDP Group, Eds., Parallel Distributed Processing: Explorations in the Microstructure of Cognition, Volume 1, Foundations, MIT Press, Cambridge, 318-362.</mixed-citation></ref><ref id="scirp.54038-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple">Moller, M.F. (1993) A Scaled Conjugate Gradient Algorithm for Fast Supervised Learning. Neural Networks, 6, 525-533. http://dx.doi.org/10.1016/S0893-6080(05)80056-5</mixed-citation></ref><ref id="scirp.54038-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple">Marquardt, D. (1963) An Algorithm for Least-Squares Estimation of Nonlinear Parameters. SIAM Journal on Applied Mathematics, 11, 431-441. http://dx.doi.org/10.1137/0111030</mixed-citation></ref><ref id="scirp.54038-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple">Riedmiller, M. and Braun, H. (1993) A Direct Adaptive Method for Faster Backpropagation Learning: The RPROP Algorithm. IEEE International Conference on Neural Networks, 1, 586-591.  
http://dx.doi.org/10.1109/ICNN.1993.298623</mixed-citation></ref><ref id="scirp.54038-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple">Joachims, T. (2008) SVMLight Support Vector Machine. http://svmlight.joachims.org/</mixed-citation></ref><ref id="scirp.54038-ref13"><label>13</label><mixed-citation publication-type="book" xlink:type="simple">Joachims, T. (1999) Making Large-Scale Support Vector Machine Learning Practical. In: Scholkopf, B., Burges, C.J.C. and Smola, A.J., Eds., Advances in Kernel Methods—Support Vector Learning, MIT Press, Cambridge, 169-184.</mixed-citation></ref><ref id="scirp.54038-ref14"><label>14</label><mixed-citation publication-type="other" xlink:type="simple">Cortes, C. and Vapnik, V. (1995) Support-Vector Networks. Machine Learning, 20, 273-297.  
http://dx.doi.org/10.1007/BF00994018</mixed-citation></ref><ref id="scirp.54038-ref15"><label>15</label><mixed-citation publication-type="journal" xlink:type="simple"><name name-style="western"><surname>Burges</surname><given-names> C.J.C. </given-names></name>,<etal>et al</etal>. (<year>1998</year>)<article-title>A Tutorial on Support Vector Machines for Pattern Recognition</article-title><source> Data Mining and Knowledge Discovery</source><volume> 2</volume>,<fpage> 121</fpage>-<lpage>167</lpage>.<pub-id pub-id-type="doi"></pub-id></mixed-citation></ref><ref id="scirp.54038-ref16"><label>16</label><mixed-citation publication-type="other" xlink:type="simple">Boser, B.E., Guyon, I.M. and Vapnik, V.N. (1992) A Training Algorithm for Optimal Margin Classifiers. Proceedings of the 5th Annual Workshop on Computational Learning Theory (COLT’92), Pittsburgh, 27-29 July 1992, 144-152.</mixed-citation></ref><ref id="scirp.54038-ref17"><label>17</label><mixed-citation publication-type="other" xlink:type="simple">Morik, K., Brockhausen, P. and Joachims, T. (1999) Combining Statistical Learning with a Knowledge-Based Approach—A Case Study in Intensive Care Monitoring. Proceedings of the 16th International Conference on Machine Learning, Bled, 27-30 June 1999, 268-277.</mixed-citation></ref></ref-list></back></article>