Deepity
Ultra-fast, SIMD-accelerated Predictive Coding
Loading...
Searching...
No Matches
SimpleConvPCNetwork.h File Reference

Convolutional counterpart to SimplePCNetwork, now device-aware (matches DirectKPPCNetwork's own port earlier tonight: DeviceType constructor parameter, backend member, cpuArena/gpuArena split). More...

#include <vector>
#include <memory>
#include <random>
#include <deepity/layers/SimpleConvPCLayer.h>
#include <deepity/utils/MemoryArena.h>
#include <deepity/utils/DeviceMemoryArena.h>
#include <deepity/backend/IComputeBackend.h>
#include <deepity/backend/DeviceType.h>

Go to the source code of this file.

Classes

class  Deep::SimpleConvPCNetwork
 Convolutional Predictive Coding Network built from SimpleConvPCLayer – precision-free, AdamW-capable, device-aware. More...

Namespaces

namespace  Deep
 This file exists to provide both Tensor.h and IComputeBackend.h with device types without introducing circular dependencies.

Detailed Description

Convolutional counterpart to SimplePCNetwork, now device-aware (matches DirectKPPCNetwork's own port earlier tonight: DeviceType constructor parameter, backend member, cpuArena/gpuArena split).

Two real bugs fixed during this port, same class found and fixed in SimplePCNetwork/DirectKPPCNetwork: ProjectForward() used std::memcpy directly (wrong once beliefs/mu are device pointers) and had no isClamped guard (would overwrite an already-clamped terminal layer's z with a stale forward-projected value); Predict()/ PredictWithProjection() used the std::vector iterator-range constructor directly on beliefs (dereferences immediately, wrong for device memory).