【问题标题】:online training with sklearn.neural_network.BernoulliRBM?使用 sklearn.neural_network.BernoulliRBM 进行在线培训?
【发布时间】:2013-10-29 17:48:23
【问题描述】:

我想知道我们是否可以使用 fit() 方法 sklearn.neural_network.BernoulliRBM 来进行在线培训。

我知道 RBM 将小批量作为输入,但是我没有加载所有训练数据:

我想知道是否可以这样做:

//X_train,Y_train 具有 25000 行和 50000 列的大 ndarray,不一定是稀疏的:它们还没有加载。一次只能访问一个 minibatch(我定义的 minibatch 是一个 100 行 50000 列的矩阵))

batchSize=100
nIterations=25000/100
idx1=0
idx2=batchSize
for i in range(nIterations):

    rbm = BernoulliRBM(batch_size=100,random_state=0, verbose=True)
    rbm.fit(X_train[idx1:idx2], learning_rate=0.1, n_components=2, n_iter=10,
    random_state=None, verbose=False)
    idx1=idx1+batchSize
    idx2=idx2+batchSize

//所有训练完成后:

idx1=0
idx2=batchSize
for i in range(nIterations):

rbm.transform(X_train[idx1:idx2])
idx1=idx1+batchSize
idx2=idx2+batchSize

我对数据科学和编程的一般知识并不是很好。我已经坚持了几个星期,想知道我是否可以解决它。

【问题讨论】:

    标签: python bigdata scikit-learn


    【解决方案1】:

    BernoulliRBM 类还没有用于增量学习的公共 API。有一个开放的issue here

    【讨论】:

      猜你喜欢
      • 2017-03-28
      • 1970-01-01
      • 2023-01-28
      • 1970-01-01
      • 1970-01-01
      • 2022-08-23
      • 1970-01-01
      • 2018-05-10
      • 2015-09-11
      相关资源
      最近更新 更多