集智专栏
资源加载中,请稍后...
集智专栏

边看边练的简明机器学习教程 Part II

往期内容:

Part I: 边看边练的简明机器学习教程 Part I


4. Serverless Predictions at Scale


4.1 数据集


4.2 导入模块与数据

上一节的Iris数据集来自Scikit-Learn,这次用TensorFlow读取外部数据文件。

  • TensorFlow读取csv文件的函数是base.load_csv_with_header()
  • 请阅读代码,根据提示完成以下数据导入过程
程序说明
鸢尾花数据集
预处理代码
!cp /mnt/vol0/tensorflow/iris/* ~/work
示例代码
import tensorflow as tf import numpy as np print(tf.__version__) from tensorflow.contrib.learn.python.learn.datasets import base # 数据文件 IRIS_TRAINING = 'iris_training.csv' IRIS_TEST = 'iris_test.csv' # 载入数据集 training_set = base.load_csv_with_header(filename=________, features_dtype=np.float32, target_dtype=np.int) test_set = base.load_csv_with_header(filename=________, features_dtype=np.float32, target_dtype=np.int) print(training_set.data) print(training_set.target)
正确答案
training_set = base.load_csv_with_header(filename=IRIS_TRAINING, ... test_set = base.load_csv_with_header(filename=IRIS_TEST
程序验证过程
training_set.data.shape == (120, 4) and test_set.data.shape == (30, 4)
提示信息
注意training与test的对应关系。


4.3 模型搭建

程序说明
模型搭建
示例代码
# 所有特征皆为实数 feature_name = "flower_features" feature_columns =[tf.feature_column.numeric_column(feature_name, shape=[4])] classifier = tf.estimator.LinearClassifier( feature_columns=feature_columns, n_classes=3, model_dir="/tmp/iris_model") # 输入函数 def input_fn(dataset): def _fn(): features = {feature_name: tf.constant(dataset.data)} label = tf.constant(dataset.target) return features, label return _fn print(input_fn(training_set)()) # raw data -> input function -> feature columns -> model
程序验证过程
True


4.4 训练-预测

  • 设置训练步数,使分类准确度accuracy_score大于0.95
程序说明
Train/Evaluate
示例代码
# 训练模型 classifier.train(input_fn=input_fn(training_set), steps=____) print('fit done') # 评估准确度 accuracy_score = classifier.evaluate(input_fn=input_fn(test_set), steps=100)["accuracy"] print('\nAccuracy:{0:f}'.format(accuracy_score)) # 输出模型 feature_spec = {'flower_features': tf.FixedLenFeature(shape=[4], dtype=np.float32)} serving_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(feature_spec) classifier.export_savedmodel(export_dir_base='/tmp/iris_model' + '/export', serving_input_receiver_fn=serving_fn)
正确答案
程序验证过程
accuracy_score > 0.95
提示信息




5. Visualizing Your Model Using TensorBoard


因TensorBoard需要启动网络服务并新建浏览器窗口查看,所以暂时未集成至Amalthea,请在本地部署。

您也许喜欢这些文章

45个问题测出你的深度学习基本功

发表至趣味项目
迟至2009年,深度学习还是一片有待拓荒的处女地,只有极少数人发现其中蕴藏的巨大潜力。而如今,深度学习已经广泛用于解决那些,曾经被认为不可能的任务。 语音识别,图像识别;数据集里找模式,照片当中寻分类;文能生成字符串,武可自动开汽车。所以有必要熟悉一些深度学习的基础概念。我们在社区中测试了深度学习的基础概念,共有1070人参与。

玩儿懂深度学习Part 1:传统机器学习的回顾

发表至系列教程
这是《玩儿懂深度学习》系列文章的第一篇。本系列文章主要介绍如何使用GPU服务器进行深度学习运算,前面主要介绍原理部分,后期则以实践为主。

ARKit有多厉害?自动玩数独只是第一步!

发表至趣味项目
苹果这次带来的新东西可不只是大家买不着的新手机而已。新鲜出炉的ARKit和机器学习框架Core ML已经可以在一些应用程序中发挥出令人惊艳的效果。这次我们就讲到了一个使用AR技术和人工智能来自动完成数独谜题的小应用,一起来看看吧!

文章评论(2)

新用户501 发表于 1月前回复
回复新用户724:4.2 NotFoundError: iris_training.csv
i got the same error:"4.2 NotFoundError: iris_training.csv"
新用户724 发表于 2月前回复
4.2 NotFoundError: iris_training.csv