code: def init_centers_widths(self, R):
          
  
          kmeans = KMeans(
              init='k-means++',
              n_clusters=self.K,
              n_init=10,
              random_state=100)
          kmeans.fit(R)
          centers = kmeans.cluster_centers_
          widths = self._get_max_sigma(R) * np.ones((self.K, 1))
          return centers, widths
docs: Initialize prior of centers and widths
  
          Returns
          -------
  
          centers : 2D array, with shape [K, n_dim]
              Prior of factors' centers.
  
          widths : 1D array, with shape [K, 1]
              Prior of factors' widths.