Update apply-catboost-model.md

This commit is contained in:
Steve-金勇 2020-12-13 00:38:19 +08:00 committed by GitHub
parent ef8592e2d6
commit d1e42a7e5f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7,27 +7,27 @@ toc_title: "\u5E94\u7528CatBoost\u6A21\u578B"
# 在ClickHouse中应用Catboost模型 {#applying-catboost-model-in-clickhouse}
[CatBoost](https://catboost.ai) 是一个用于机器学习的免费开源梯度提升开发库 [Yandex](https://yandex.com/company/)
[CatBoost](https://catboost.ai) 是一个由[Yandex](https://yandex.com/company/)开发的开源免费机器学习库
通过这篇指导,您将学会如何将预先从SQL推理出的运行模型作为训练好的模型应用到ClickHouse中去。
通过这篇指导,您将学会如何用SQL建模使用ClickHouse预先训练好的模型来推断数据。
在ClickHouse中应用CatBoost模型:
在ClickHouse中应用CatBoost模型的一般过程:
1. [创建表](#create-table).
1. [创建数据表](#create-table).
2. [将数据插入到表中](#insert-data-to-table).
3. [将CatBoost集成到ClickHouse中](#integrate-catboost-into-clickhouse) (可选步骤)。
4. [从SQL运行模型推](#run-model-inference).
3. [将CatBoost集成到ClickHouse中](#integrate-catboost-into-clickhouse) (可跳过)。
4. [从SQL运行模型推](#run-model-inference).
有关训练CatBoost模型的详细信息请参阅 [训练和使用模型](https://catboost.ai/docs/features/training.html#training).
有关训练CatBoost模型的详细信息请参阅 [训练和模型应用](https://catboost.ai/docs/features/training.html#training).
## 先决条件 {#prerequisites}
请先安装 [Docker](https://docs.docker.com/install/)。
请先安装 [Docker](https://docs.docker.com/install/)。
!!! note "注"
[Docker](https://www.docker.com) 是一个软件平台,允许您创建容器将CatBoost和ClickHouse安装与系统的其余部分隔离
[Docker](https://www.docker.com) 是一个软件平台,用户可以用来创建独立于其余系统、集成CatBoost和ClickHouse的容器
在应用CatBoost模型之前:
@ -37,7 +37,7 @@ toc_title: "\u5E94\u7528CatBoost\u6A21\u578B"
$ docker pull yandex/tutorial-catboost-clickhouse
```
此Docker映像包含运行CatBoost和ClickHouse所需的所有内容代码、运行、库、环境变量和配置文件。
此Docker映像包含运行CatBoost和ClickHouse所需的所有内容代码、运行环境、库、环境变量和配置文件。
**2.** 确保已成功拉取Docker映像:
@ -53,7 +53,7 @@ yandex/tutorial-catboost-clickhouse latest 622e4d17945b 22
$ docker run -it -p 8888:8888 yandex/tutorial-catboost-clickhouse
```
## 1. 创建表 {#create-table}
## 1. 创建数据表 {#create-table}
为训练样本创建ClickHouse表:
@ -124,19 +124,21 @@ FROM amazon_train
## 3. 将CatBoost集成到ClickHouse中 {#integrate-catboost-into-clickhouse}
!!! note "注"
**可选步骤。** Docker映像包含运行CatBoost和ClickHouse所需的所有内容。
**可跳过。** Docker映像包含运行CatBoost和ClickHouse所需的所有内容。
CatBoost集成到ClickHouse步骤:
**1.** 构建测试库文件
**1.** 构建评估库
测试CatBoost模型的最快方法是编译 `libcatboostmodel.<so|dll|dylib>` 库文件. 有关如何构建库文件的详细信息,请参阅 [CatBoost文件](https://catboost.ai/docs/concepts/c-plus-plus-api_dynamic-c-pluplus-wrapper.html).
评估CatBoost模型的最快方法是编译 `libcatboostmodel.<so|dll|dylib>` 库文件.
**2.** 任意创建一个新目录, 如 `data` 并将创建的库文件放入其中。 Docker映像已经包含了库 `data/libcatboostmodel.so`.
有关如何构建库文件的详细信息,请参阅 [CatBoost文件](https://catboost.ai/docs/concepts/c-plus-plus-api_dynamic-c-pluplus-wrapper.html).
**3.** 任意创建一个新目录来放配置模型, 如 `models`.
**2.** 创建一个新目录(位置与名称可随意指定), 如 `data` 并将创建的库文件放入其中。 Docker映像已经包含了库 `data/libcatboostmodel.so`.
**4.** 任意创建一个模型配置文件,如 `models/amazon_model.xml`.
**3.** 创建一个新目录来放配置模型, 如 `models`.
**4.** 创建一个模型配置文件,如 `models/amazon_model.xml`.
**5.** 描述模型配置:
@ -163,7 +165,7 @@ CatBoost集成到ClickHouse步骤:
<models_config>/home/catboost/models/*_model.xml</models_config>
```
## 4. 运行从SQL推的模型 {#run-model-inference}
## 4. 运行从SQL推的模型 {#run-model-inference}
测试模型是否正常运行ClickHouse客户端 `$ clickhouse client`.
@ -189,7 +191,7 @@ LIMIT 10
!!! note "注"
函数 [modelEvaluate](../sql-reference/functions/other-functions.md#function-modelevaluate) 返回带有多类模型的每类原始预测的元组。
让我们预测一下:
执行预测:
``` sql
:) SELECT