soft learning