diff --git a/JSAT/src/jsat/linear/ScaledVector.java b/JSAT/src/jsat/linear/ScaledVector.java
index <HASH>..<HASH> 100644
--- a/JSAT/src/jsat/linear/ScaledVector.java
+++ b/JSAT/src/jsat/linear/ScaledVector.java
@@ -135,6 +135,8 @@ public class ScaledVector extends Vec
         scale *= c;
         if(scale == 0.0)
             this.zeroOut();
+        else if(Math.abs(scale) < 1e-10 || Math.abs(scale) > 1e10)
+            embedScale();
     }
 
     @Override
Added check for the scale entering numerically unstable ranges, and embedding the scale when this happens to avoid future numerical issues 

git-svn-id: <URL>