def fit(self, X, y=None, input_type='<STR_LIT:data>'):
X = self._validate_input(X, input_type)<EOL>self.fit_geometry(X, input_type)<EOL>random_state = check_random_state(self.random_state)<EOL>(self.embedding_, self.error_) = ltsa(self.geom_,<EOL>n_components=self.n_components,<EOL>eigen_solver=self.eigen_solver,<EOL>random_state=random_state,<EOL>solver_kwds = self.solver_kwds)<EOL>return self<EOL>
Fit the model from data in X.

        Parameters
        ----------
        input_type : string, one of: 'data', 'distance'.
            The values of input data X. (default = 'data')
        X : array-like, shape (n_samples, n_features)
            Training vector, where n_samples in the number of samples
            and n_features is the number of features.

        If self.input_type is 'distance', or 'affinity':

        X : array-like, shape (n_samples, n_samples),
            Interpret X as precomputed distance or adjacency graph
            computed from samples.

        Returns
        -------
        self : object
            Returns the instance itself.