Scikit Flow 是 TensorFlow 的簡化接口,模仿 Scikit 學習,讓用戶能夠在預測分析和數據挖掘中使用。git
源代碼在:https://github.com/google/skflow
github
爲何使用 TensorFlow?shell
TensorFlow 提供構建各類不一樣類型機器學習應用的核心。機器學習
會繼續在分佈式方向和常規管道機器中進行創新。分佈式
爲何使用 Scikit Flow?學習
能夠平滑的從單向機器學習 Scikit Learn 過渡到更開放的,能夠構建不一樣類型的 ML 模型。用戶能夠經過 fit/predict 和切換到 TensorFlow APIs。
google
提供一系列的參考模型,方便與現有的代碼集成。spa
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)
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)
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)
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)
更好的處理類別變量。
.net
文本分類。
code
圖像 (CNNs)。
更多 & 更深。