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

Function OutputEvalResultToFile

catboost/libs/eval_result/eval_result.cpp:403–448  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

401 }
402
403 void OutputEvalResultToFile(
404 const TEvalColumnsInfo& evalColumnsInfo,
405 NPar::ILocalExecutor* executor,
406 const TVector<TVector<TString>>& outputColumns, // [modelIdx]
407 const TDataProvider& pool,
408 IOutputStream* outputStream,
409 TIntrusivePtr<IPoolColumnsPrinter> poolColumnsPrinter,
410 std::pair<int, int> testFileWhichOf,
411 bool writeHeader,
412 ui64 docIdOffset,
413 TMaybe<std::pair<size_t, size_t>> evalParameters, // evalPeriod, iterationsLimit
414 double binClassLogitThreshold) {
415
416 bool needPoolColumnsPrinter;
417 TVector<THolder<IColumnPrinter>> columnPrinter = InitializeColumnWriter(
418 evalColumnsInfo,
419 executor,
420 outputColumns,
421 pool,
422 poolColumnsPrinter,
423 testFileWhichOf,
424 docIdOffset,
425 &needPoolColumnsPrinter,
426 evalParameters,
427 binClassLogitThreshold
428 );
429
430 if (writeHeader) {
431 TString delimiter = "";
432 for (auto& printer : columnPrinter) {
433 *outputStream << delimiter;
434 printer->OutputHeader(outputStream);
435 delimiter = printer->GetAfterColumnDelimiter();
436 }
437 *outputStream << Endl;
438 }
439 for (ui32 docId = 0; docId < pool.ObjectsGrouping->GetObjectCount(); ++docId) {
440 TString delimiter = "";
441 for (auto& printer : columnPrinter) {
442 *outputStream << delimiter;
443 printer->OutputValue(outputStream, docId);
444 delimiter = printer->GetAfterColumnDelimiter();
445 }
446 *outputStream << Endl;
447 }
448 }
449
450 void OutputEvalResultToFile(
451 const TEvalResult& evalResult,

Callers 3

CalcModelSingleHostMethod · 0.85
TrainModelFunction · 0.85

Calls 7

InitializeColumnWriterFunction · 0.85
OutputHeaderMethod · 0.45
GetObjectCountMethod · 0.45
OutputValueMethod · 0.45
InitedMethod · 0.45
ReleaseMethod · 0.45

Tested by

no test coverage detected