ScikitFlow是TensorFlow的简化接口,模仿Scikit学习,让用户可以在预测分析和数据挖掘中使用。
为什么使用TensorFlow?
TensorFlow提供构建各种不同类型机器学习应用的核心
会继续在分布式方向和常规管道机器中进行创新
为什么使用ScikitFlow?
可以平滑的从单向机器学习ScikitLearn过渡到更开放的,可以构建不同类型的ML模型。用户可以通过fit/predict和切换到TensorFlowAPIs。
提供一系列的参考模型,方便与现有的代码集成。
LinearClassifierimport skflowfrom sklearn import datasets, metricsiris = 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)LinearRegressorimport skflowfrom sklearn import datasets, metrics, preprocessingboston = 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)DeepNeuralNetworkimport skflowfrom sklearn import datasets, metricsiris = 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)Custommodelimport skflowfrom sklearn import datasets, metricsiris = 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)
更多&更深
评论