protected void init() {		
		Arrays.fill(m_diag, 0);
		
		double lambda = 1.0/Math.sqrt(m_lambda);
		for(int i=0; i<m_beta.length; i++)
			m_beta[i] = Normal.staticNextDouble(0, lambda);
		
		if (m_signs!=null) {//enforce sign over the initial setting of feature weights
			for(int i=0; i<m_beta.length; i++) {
				if (m_signs[i]*m_beta[i]<0)
					m_beta[i] = -m_beta[i];
			}
		}
	}