FLImaging 6.5.16.1
BackendBCEWithLogistLoss.h
1#pragma once
2
3#if _MSC_VER >= 1900 && defined(_M_X64)
4
5#include "BackendBase.h"
6
7namespace FLImaging
8{
9 namespace AI
10 {
11 template <typename T>
12 class FL_EXPORT CTensor;
13
14 template <typename T>
15 class FL_EXPORT CBackendBCEWithLogistLoss : public CBackendBase<T>
16 {
17 public:
18 CBackendBCEWithLogistLoss();
19 CBackendBCEWithLogistLoss(const CBackendBCEWithLogistLoss<T>& bl);
20 virtual ~CBackendBCEWithLogistLoss();
21
22 virtual const CResult BCEWithLogistLoss(const CTensor<T>* pTsrX, const CTensor<T>* pTsrTarget, CTensor<T>* pTsrResult, const CTensor<T>* pTsrWeightOrNull = nullptr, EReductionType eReductionType = EReductionType_Mean, const CTensor<T>* pTsrPosWeightOrNull = nullptr);
23 virtual const CResult BCEWithLogistLoss_Backward(const CTensor<T>* pTsrX, const CTensor<T>* pTsrTarget, const CTensor<T>* pTsrDy, CTensor<T>* pTsrDx, const CTensor<T>* pTsrWeightOrNull = nullptr, EReductionType eReductionType = EReductionType_Mean, const CTensor<T>* pTsrPosWeightOrNull = nullptr);
24
25 DeclareGetClassType();
26 SupportToDuplicateObjectWithoutCreateNewObject(CBackendBCEWithLogistLoss<T>, *this);
27 };
28 }
29}
30
31#endif