* split up select.md * array-join.md basic refactoring * distinct.md basic refactoring * format.md basic refactoring * from.md basic refactoring * group-by.md basic refactoring * having.md basic refactoring * additional index.md refactoring * into-outfile.md basic refactoring * join.md basic refactoring * limit.md basic refactoring * limit-by.md basic refactoring * order-by.md basic refactoring * prewhere.md basic refactoring * adjust operators/index.md links * adjust sample.md links * adjust more links * adjust operatots links * fix some links * adjust aggregate function article titles * basic refactor of remaining select clauses * absolute paths in make_links.sh * run make_links.sh * remove old select.md locations * translate docs/es * translate docs/fr * translate docs/fa * remove old operators.md location * change operators.md links * adjust links in docs/es * adjust links in docs/es * minor texts adjustments * wip * update machine translations to use new links * fix changelog * es build fixes * get rid of some select.md links * temporary adjust ru links * temporary adjust more ru links * improve curly brace handling * adjust ru as well * fa build fix * ru link fixes * zh link fixes * temporary disable part of anchor checks
8.7 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | 72537a2d52 |
41 | استفاده از مدل های ادم کودن و احمق |
استفاده از مدل ادم کودن و احمق در فاحشه خانه
مانتو یک کتابخانه تقویت شیب رایگان و منبع باز توسعه یافته در یاندکس برای یادگیری ماشین.
با استفاده از این دستورالعمل یاد خواهید گرفت که با اجرای مدل استنتاج از میدان از مدل های پیش روت شده در خانه استفاده کنید.
برای اعمال یک مدل ادم کودن و احمق در خانه کلیک کنید:
- ایجاد یک جدول.
- درج داده به جدول.
- ادغام کاتبوست به کلیک (مرحله اختیاری).
- اجرای مدل استنتاج از گذاشتن.
برای کسب اطلاعات بیشتر در مورد اموزش مدل های کاتبوست مراجعه کنید اموزش و مدل سازی.
پیش نیازها
اگر شما لازم نیست که کارگر بارانداز هنوز, نصب کنید.
!!! note "یادداشت" کارگر بارانداز یک پلت فرم نرم افزار است که اجازه می دهد تا به شما برای ایجاد ظروف که منزوی CatBoost و ClickHouse نصب و راه اندازی از بقیه سیستم.
قبل از استفاده از مدل ادم کودن و احمق:
1. بکش تصویر کارگر بارانداز از رجیستری:
$ docker pull yandex/tutorial-catboost-clickhouse
این Docker تصویر شامل همه چیز شما نیاز به اجرای CatBoost و ClickHouse: کد در زمان اجرا کتابخانه های محیط متغیر و فایل های پیکربندی.
2. اطمینان حاصل کنید که تصویر کارگر بارانداز شده است با موفقیت کشیده:
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
yandex/tutorial-catboost-clickhouse latest 622e4d17945b 22 hours ago 1.37GB
3. شروع یک ظرف کارگر بارانداز بر اساس این تصویر:
$ docker run -it -p 8888:8888 yandex/tutorial-catboost-clickhouse
1. ایجاد یک جدول
برای ایجاد یک میز کلیک برای نمونه تمرین:
1. شروع مشتری کنسول کلیک در حالت تعاملی:
$ clickhouse client
!!! note "یادداشت" سرور کلیک در حال حاضر در داخل ظرف کارگر بارانداز در حال اجرا.
2. ایجاد جدول با استفاده از دستور:
:) CREATE TABLE amazon_train
(
date Date MATERIALIZED today(),
ACTION UInt8,
RESOURCE UInt32,
MGR_ID UInt32,
ROLE_ROLLUP_1 UInt32,
ROLE_ROLLUP_2 UInt32,
ROLE_DEPTNAME UInt32,
ROLE_TITLE UInt32,
ROLE_FAMILY_DESC UInt32,
ROLE_FAMILY UInt32,
ROLE_CODE UInt32
)
ENGINE = MergeTree ORDER BY date
3. خروج از مشتری کنسول کلیک کنید:
:) exit
2. درج داده به جدول
برای وارد کردن داده ها:
1. دستور زیر را اجرا کنید:
$ clickhouse client --host 127.0.0.1 --query 'INSERT INTO amazon_train FORMAT CSVWithNames' < ~/amazon/train.csv
2. شروع مشتری کنسول کلیک در حالت تعاملی:
$ clickhouse client
3. اطمینان حاصل کنید که داده ها ارسال شده است:
:) SELECT count() FROM amazon_train
SELECT count()
FROM amazon_train
+-count()-+
| 65538 |
+-------+
3. ادغام کاتبوست به کلیک
!!! note "یادداشت" گام اختیاری. این Docker تصویر شامل همه چیز شما نیاز به اجرای CatBoost و ClickHouse.
برای ادغام کاتبوست به کلیک:
1. ساخت کتابخانه ارزیابی.
سریعترین راه برای ارزیابی مدل ادم کودن و احمق کامپایل است libcatboostmodel.<so|dll|dylib>
کتابخونه. برای کسب اطلاعات بیشتر در مورد چگونگی ساخت کتابخانه, دیدن مستندات غلطیاب.
2. ایجاد یک دایرکتوری جدید در هر کجا و با هر نام, مثلا, data
و کتابخونه درستشون رو توش بذار. تصویر کارگر بارانداز در حال حاضر شامل کتابخانه data/libcatboostmodel.so
.
3. ایجاد یک دایرکتوری جدید برای مدل پیکربندی در هر کجا و با هر نام, مثلا, models
.
4. برای مثال یک فایل پیکربندی مدل با هر نام ایجاد کنید, models/amazon_model.xml
.
5. توصیف پیکربندی مدل:
<models>
<model>
<!-- Model type. Now catboost only. -->
<type>catboost</type>
<!-- Model name. -->
<name>amazon</name>
<!-- Path to trained model. -->
<path>/home/catboost/tutorial/catboost_model.bin</path>
<!-- Update interval. -->
<lifetime>0</lifetime>
</model>
</models>
6. اضافه کردن مسیر به CatBoost و مدل پیکربندی به پیکربندی ClickHouse:
<!-- File etc/clickhouse-server/config.d/models_config.xml. -->
<catboost_dynamic_library_path>/home/catboost/data/libcatboostmodel.so</catboost_dynamic_library_path>
<models_config>/home/catboost/models/*_model.xml</models_config>
4. اجرای مدل استنتاج از گذاشتن
برای مدل تست اجرای مشتری کلیک $ clickhouse client
.
بیایید اطمینان حاصل کنیم که مدل کار می کند:
:) SELECT
modelEvaluate('amazon',
RESOURCE,
MGR_ID,
ROLE_ROLLUP_1,
ROLE_ROLLUP_2,
ROLE_DEPTNAME,
ROLE_TITLE,
ROLE_FAMILY_DESC,
ROLE_FAMILY,
ROLE_CODE) > 0 AS prediction,
ACTION AS target
FROM amazon_train
LIMIT 10
!!! note "یادداشت" تابع مدلووات را برمی گرداند تاپل با پیش بینی های خام در هر کلاس برای مدل های چند طبقه.
بیایید احتمال را پیش بینی کنیم:
:) SELECT
modelEvaluate('amazon',
RESOURCE,
MGR_ID,
ROLE_ROLLUP_1,
ROLE_ROLLUP_2,
ROLE_DEPTNAME,
ROLE_TITLE,
ROLE_FAMILY_DESC,
ROLE_FAMILY,
ROLE_CODE) AS prediction,
1. / (1 + exp(-prediction)) AS probability,
ACTION AS target
FROM amazon_train
LIMIT 10
!!! note "یادداشت" اطلاعات بیشتر در مورد خروج() تابع.
بیایید محاسبه لگ در نمونه:
:) SELECT -avg(tg * log(prob) + (1 - tg) * log(1 - prob)) AS logloss
FROM
(
SELECT
modelEvaluate('amazon',
RESOURCE,
MGR_ID,
ROLE_ROLLUP_1,
ROLE_ROLLUP_2,
ROLE_DEPTNAME,
ROLE_TITLE,
ROLE_FAMILY_DESC,
ROLE_FAMILY,
ROLE_CODE) AS prediction,
1. / (1. + exp(-prediction)) AS prob,
ACTION AS tg
FROM amazon_train
)
!!! note "یادداشت" اطلاعات بیشتر در مورد میانگین() و ثبت() توابع.