TensorFlow 的簡化接口:Scikit Flow

cncde 9年前發布 | 46K 次閱讀 機器學習 Scikit Flow

Scikit Flow 是 TensorFlow 的簡化接口,模仿 Scikit 學習,讓用戶可以在預測分析和數據挖掘中使用。

為什么使用 TensorFlow?

  • TensorFlow 提供構建各種不同類型機器學習應用的核心

  • 會繼續在分布式方向和常規管道機器中進行創新

為什么使用 Scikit Flow?

  • 可以平滑的從單向機器學習 Scikit Learn 過渡到更開放的,可以構建不同類型的 ML 模型。用戶可以通過 fit/predict 和切換到 TensorFlow APIs。

  • 提供一系列的參考模型,方便與現有的代碼集成。

Linear Classifier

import skflow
from sklearn import datasets, metrics
iris = datasets.load_iris()
classifier = skflow.TensorFlowLinearClassifier(n_classes=3)
classifier.fit(iris.data, iris.target)
score = metrics.accuracy_score(classifier.predict(iris.data), iris.target)
print("Accuracy: %f" % score)

Linear Regressor

import skflow
from sklearn import datasets, metrics, preprocessing

boston = datasets.load_boston()
X = preprocessing.StandardScaler().fit_transform(boston.data)
regressor = skflow.TensorFlowLinearRegressor()
regressor.fit(X, boston.target)
score = metrics.mean_squared_error(regressor.predict(X), boston.target)
print ("MSE: %f" % score)

Deep Neural Network

import skflow
from sklearn import datasets, metrics

iris = datasets.load_iris()
classifier = skflow.TensorFlowDNNClassifier(hidden_units=[10, 20, 10], n_classes=3)
classifier.fit(iris.data, iris.target)
score = metrics.accuracy_score(classifier.predict(iris.data), iris.target)
print("Accuracy: %f" % score)

Custom model

import skflow
from sklearn import datasets, metrics

iris = datasets.load_iris()

def my_model(X, y):
    """This is DNN with 10, 20, 10 hidden layers, and dropout of 0.5 probability."""
    layers = skflow.ops.dnn(X, [10, 20, 10], keep_prob=0.5)
    return skflow.models.logistic_regression(layers, y)

classifier = skflow.TensorFlowEstimator(model_fn=my_model, n_classes=3)
classifier.fit(iris.data, iris.target)
score = metrics.accuracy_score(classifier.predict(iris.data), iris.target)
print("Accuracy: %f" % score)

未來計劃

  • 更好的處理類別變量

  • 文本分類

  • 圖像 (CNNs)

  • 更多 & 更深

項目主頁:http://www.baiduhome.net/lib/view/home/1449016972186

 本文由用戶 cncde 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!