0
tensorflow의 KMeansClustering에 미리 정의 된 inital_centers를 사용하려고했습니다.미리 정의 된 inital_clusters를 사용하는 tf.contrib.learn.KMeansClustering의 ValueError
/lib/python3.5/site-packages/tensorflow/python/ops/variables.py in _init_from_args(self, initial_value, trainable, collections, validate_shape, caching_device, name, dtype, expected_shape, constraint)
356 if not initial_value_shape.is_fully_defined():
357 raise ValueError("initial_value must have a shape specified: %s" %
--> 358 self._initial_value)
359
360 # If 'initial_value' makes use of other variables, make sure we don't
ValueError: initial_value must have a shape specified: Tensor("ones:0", shape=(?,), dtype=int64)
그래서 미리 사용할 수있는 권리 방법은 무엇입니까 :
import tensorflow as tf
import numpy as np
K=5
X = np.random.random((100,1))
m1 = min(X)
m2 = max(X)
init_c = np.linspace(m1[0], m2[0], num=K).reshape(-1,1)
print(init_c)
km = tf.contrib.learn.KMeansClustering(num_clusters=K,
relative_tolerance=0.0001, initial_clusters =init_c)
def train_input_fn():
data = tf.constant(X, tf.float32)
return (data, None)
km.fit(input_fn=train_input_fn)
출력 오류가 (sklearn에서는 "초기화)이 초기화를 = KMeans (n_clusters = K"와 매우 간단합니다) tensorflow에서 Kmeans의 초기 중심?