专栏首页腾讯智能钛AI开发者【2020腾讯广告算法大赛】TI-ONE 平台 SDK 操作案例
原创

【2020腾讯广告算法大赛】TI-ONE 平台 SDK 操作案例

2020腾讯广告算法大赛报名链接:https://algo.qq.com/index.html?rfisource=TICP0416

智能钛机器学习平台(TI-ONE)产品入口:https://cloud.tencent.com/product/tione

背景

  • 在这篇文章中,我们向您介绍智能钛机器学习平台(TI-ONE)SDK 的使用流程。本文所有内容和数据路径均为示例,仅演示流程,并非比赛官方数据。
  • 如果您对智能钛机器学习平台(TI-ONE)的基本情况还缺乏了解,您可以阅读 什么是智能钛机器学习平台
  • 在开始之前,请确保您已经完成了册与开通智能钛服务

数据说明

引入依赖

from __future__ import absolute_import, print_function
from ti import session
import sys
from ti.tensorflow import TensorFlow

初始化参数

# 初始化session
ti_session = session.Session()
# 训练数据存放的路径.格式为cos://作为前缀拼接bucket名称再拼接训练数据存放的路径
inputs = 'cos://tesla-ap-shanghai-1256322946/cephfs/tesla_common/deeplearning/dataset/contest/demo'
# 指定训练集、测试集和训练结果路径
hyperparameters = {'train_path': '/opt/ml/input/data/training/iris_training.csv',
                   'test_path': '/opt/ml/input/data/training/iris_test.csv',
                   'result_dir': '/opt/ml/output'}
# 授权给TI的服务角色
role = "TIONE_QCSRole"

构建训练任务

# 创建一个Tensorflow Estimator
tf_estimator = TensorFlow(role=role,
                          train_instance_count=1,
                          train_instance_type='TI.3XLARGE24.12core24g',
                          py_version='py3',
                          script_mode=True,
                          hyperparameters=hyperparameters,
                          framework_version='1.14.0',
                          entry_point='main.py',
                          source_dir='code')

提交任务,开始训练

# 提交Tensorflow训练任务
tf_estimator.fit(inputs)
Training job request : {
  "TrainingJobName": "tensorflow-2020-04-15-03-26-49-992",
  "AlgorithmSpecification": {
    "TrainingInputMode": "File",
    "TrainingImageName": "ccr.ccs.tencentyun.com/ti_public/tensorflow:1.14.0-py3"
  },
  "InputDataConfig": [
    {
      "DataSource": {
        "CosDataSource": {
          "DataDistributionType": "FullyReplicated",
          "DataType": "COSPrefix",
          "Bucket": "tesla-ap-shanghai-1256322946",
          "KeyPrefix": "cephfs/tesla_common/deeplearning/dataset/contest/demo"
        }
      },
      "ChannelName": "training"
    }
  ],
  "OutputDataConfig": {
    "CosOutputBucket": "ti-ap-shanghai-100010875047-1259675134",
    "CosOutputKeyPrefix": ""
  },
  "ResourceConfig": {
    "InstanceCount": 1,
    "InstanceType": "TI.3XLARGE24.12core24g",
    "VolumeSizeInGB": 0
  },
  "RoleName": "TIONE_QCSRole",
  "StoppingCondition": {
    "MaxRuntimeInSeconds": 86400
  },
  "HyperParameters": "{\"train_path\": \"\\\"/opt/ml/input/data/training/iris_training.csv\\\"\", \"test_path\": \"\\\"/opt/ml/input/data/training/iris_test.csv\\\"\", \"result_dir\": \"\\\"/opt/ml/output\\\"\", \"ti_submit_directory\": \"\\\"cos://ti-ap-shanghai-100010875047-1259675134/tensorflow-2020-04-15-03-26-49-992/source/source.tar.gz\\\"\", \"ti_program\": \"\\\"main.py\\\"\", \"ti_container_log_level\": \"20\", \"ti_job_name\": \"\\\"tensorflow-2020-04-15-03-26-49-992\\\"\", \"ti_region\": \"\\\"ap-shanghai\\\"\"}"
}

Training job response : {
  "TrainingJobName": "tensorflow-2020-04-15-03-26-49-992",
  "RequestId": "06bb534b-f874-4ba6-9610-1d41f5044417"
}

查看输出模型

如果训练任务完成有模型输出,那么TI会将模型上传到cos上。

你可以通过output_path='cos://'指定模型存储的cos路径。如果没指定,TI会按以下格式创建存储通

ti-region-uin-appid,最终模型会放在 #{bucket}/#{job_name}/output/目录下。

查看训练日志

TI训练过程中会把日志上传到腾讯云日志服务中,使用腾讯云日志服务需要先开通。

TI会针对训练任务创建TiOne日志集和TrainingJob日志主题,通过日志检索功能可以搜索对应训练任务的日志。

目前TI会默认创建一个日志集(TI)和日志主题(TrainingJob)

TI内置了任务名称(job)关键词,可以通过以下条件过滤指定任务的日志

job: #{job_name}

更多日志检索语法请参考https://cloud.tencent.com/document/product/614/16981

查看提交历史和监控

您可以在TI产品控制台上的【任务列表】-【SDK任务】中查看您提交的SDK任务历史,点击【任务名称】列中的任务名可以看到任务的详细信息,在列表的右侧【监控】可以查看任务运行的资源监控图表

至此,我们完成了使用智能钛机器学习平台的 TI SDK 训练模型的流程。在使用过程中,如果您想了解更多的操作详情,请参考TI-ONE 官方文档

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【产品动态】智能钛 TI-ONE 重庆地域服务将于3月31日正式下线

            您好!为了给您提供更好的服务,腾讯云智能钛机器学习平台 TI-ONE 上海地域服务和广州地域服务已正式上线。由于运营策略调整,如之前通知:智能钛...

    腾讯智能钛AI开发者
  • 智能钛机器学习平台 TI-ONE【有奖反馈】活动来袭

    亲爱的腾讯云智能钛机器学习平台 TI-ONE 的用户朋友们,在使用平台的过程中,都遇到过哪些问题呢?是否希望平台增加某些功能?对平台有怎样的建议呢?

    腾讯智能钛AI开发者
  • 【产品动态】智能钛TI-ONE正式上线广州地域服务

    为了给大家提供更好的服务,智能钛TI-ONE已于今天,正式上线广州地域服务,限时向大家免费开放。新上线的广州地域服务都有哪些优势呢?接下来就让我带大家一起看看吧...

    腾讯智能钛AI开发者
  • 滴滴美国研究院落户硅谷,Charlie Miller加盟负责智驾安全

    滴滴出行今日正式宣布在美国加州硅谷山景城(Mountain View)成立滴滴美国研究院,重点发展大数据安全和智能驾驶两大核心领域。 据了解,美国研究院目前包括...

    量子位
  • SpringDataJPA之Repository接口

      Repository 接口是 Spring Data JPA 中为我我们提供的所有接口中的顶层接口,而且是个标志接口,Repository 提供了两种查询方...

    用户4919348
  • 被逼出海,滴滴:我太难了

    7 月 28 日,长城战略咨询发布了《2019 年中国独角兽企业研究报告》,滴滴出行以 580 亿的估值排名第三。

    深度学习与Python
  • 优雅的解决Retrofit RxAndroid关联生命周期问题

    Retrofit结合RxAndroid应该是史上最好用的网络请求框架了,在项目中只需要一段代码就可以完成网络请求以及回调处理,来看看google官方示例:

    蜻蜓队长
  • 打车更难了!滴滴正式停止北京三环内非京牌车辆派单

    镁客网
  • 加密数字货币乌托邦:上半年加密数字货币报告

    本报告为AUTONOMOUS NEXT继去年发布的《代币狂热》(《Token Mania》)之后的又一部关于数字货币的全面报告,报告关键要点:

    点滴科技资讯
  • Akka(14): 持久化模式:PersistentActor

        Akka程序的特点之一就是高弹性或者强韧性(resilient)的,因为Actor具有自我修复的能力。当Actor模式的程序出现中断情况如:系统崩溃、人...

    用户1150956

扫码关注云+社区

领取腾讯云代金券