MCPcopy Create free account
hub / github.com/catboost/catboost / TestSerialization

Function TestSerialization

catboost/libs/data/ut/data_provider_ut.cpp:314–426  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

312
313 template <class TTObjectsDataProvider>
314 void TestSerialization() {
315 TProcessedDataProviderTemplate<TTObjectsDataProvider> trainingDataProvider;
316
317 CreateQuantizedObjectsDataProviderTestData(
318 false,
319 &trainingDataProvider.MetaInfo,
320 &trainingDataProvider.ObjectsGrouping,
321 &trainingDataProvider.ObjectsData
322 );
323
324 TSharedWeights<float> weights = Share(
325 TWeights<float>({1.0f, 2.0f, 1.0f, 1.2f, 2.1f, 0.0f})
326 );
327
328 auto targets = MakeTarget({{0.0f, 0.2f, 0.1f, 0.3f, 0.12f, 0.0f}});
329
330 // 3 classes
331 auto multiClassTargets = MakeTarget({{1.f, 0.0f, 1.0f, 2.0f, 2.0f, 0.0f}});
332
333 TVector<TSharedVector<float>> baselines = {
334 ShareVector<float>({0.1f, 0.2f, 0.4f, 1.0f, 2.1f, 3.3f}),
335 ShareVector<float>({0.0f, 0.11f, 0.04f, 0.12f, 0.6f, 0.82f}),
336 ShareVector<float>({0.22f, 0.71f, 0.0f, 0.05f, 0.0f, 0.0f}),
337 };
338
339
340 TVector<TQueryInfo> groupInfo(3);
341
342 groupInfo[0].Begin = 0;
343 groupInfo[0].End = 2;
344 groupInfo[0].Weight = 2.0f;
345 groupInfo[0].SubgroupId = {0, 12};
346
347 groupInfo[1].Begin = 2;
348 groupInfo[1].End = 3;
349 groupInfo[1].Weight = 1.0f;
350 groupInfo[1].SubgroupId = {18};
351
352 groupInfo[2].Begin = 3;
353 groupInfo[2].End = 6;
354 groupInfo[2].Weight = 3.0f;
355 groupInfo[2].SubgroupId = {21, 0, 2};
356 groupInfo[2].Competitors = {
357 { TCompetitor(2, 1.0f) },
358 { TCompetitor(0, 1.0f), TCompetitor(2, 3.0f) },
359 {}
360 };
361
362 TSharedVector<TQueryInfo> sharedGroupInfo = ShareVector(std::move(groupInfo));
363
364
365 // BinClass
366 {
367 TProcessedTargetData processedTargetData;
368 processedTargetData.TargetsClassCount.emplace("", 2);
369 processedTargetData.Targets.emplace("", targets);
370 processedTargetData.Weights.emplace("", weights);
371 processedTargetData.Baselines.emplace("", TVector<TSharedVector<float>>(1, baselines[0]));

Callers

nothing calls this directly

Calls 8

ShareFunction · 0.85
TCompetitorClass · 0.85
ShareVectorFunction · 0.85
TestSerializationCaseFunction · 0.85
MakeTargetFunction · 0.70
moveFunction · 0.50
emplaceMethod · 0.45

Tested by

no test coverage detected