Mars Learn

Mars learn 提供了 scikit-learn 接口,但利用了 Mars tensor 和 DataFrame 来处理大数据和并行执行。

让我们拿 mars.learn.neighbors.NearestNeighbors 作为例子。

>>> import mars.tensor as mt
>>> from mars.learn.neighbors import NearestNeighbors
>>> data = mt.random.rand(100, 3)
>>> nn = NearestNeighbors(n_neighbors=3)
>>> nn.fit(data)
NearestNeighbors(algorithm='auto', leaf_size=30, metric='minkowski',
                 metric_params=None, n_neighbors=3, p=2, radius=1.0)
>>> neighbors = nn.kneighbors(df)
>>> neighbors
(array([[0.0560703 , 0.1836808 , 0.19055679],
        [0.07100642, 0.08550266, 0.10617568],
        [0.13348483, 0.16597596, 0.20287617]]),
 array([[91, 10, 29],
        [68, 77, 29],
        [63, 82, 21]]))

记住,fitpredict 等函数会触发立即执行。如上面的例子里的 fitkneighbors

参考 learn API 获取更多实现的 learn 接口。

Mars learn 能和 XGBoost、LightGBM、TensorFlow 以及 PyTorch 集成。