MCPcopy Create free account

hub / github.com/Leavesfly/TinyDL-0.01 / functions

Functions1,708 in github.com/Leavesfly/TinyDL-0.01

↓ 2 callersMethodtestWordVectors
测试词向量效果 @param word2vec 训练好的Word2Vec模型
src/main/java/io/leavesfly/tinydl/example/nlp/Word2VecExample.java:232
↓ 2 callersMethodtoString
()
src/main/java/io/leavesfly/tinydl/modality/rl/Experience.java:132
↓ 2 callersMethodtoString
获取模型的详细信息 @return 模型信息字符串
src/main/java/io/leavesfly/tinydl/nnet/block/seq2seq/EncoderDecoder.java:249
↓ 2 callersMethodtokenize
将文本分词为token列表 @param text 输入文本 @return token列表
src/main/java/io/leavesfly/tinydl/modality/nlp/SimpleTokenizer.java:165
↓ 2 callersMethodtokenizeText
简化的文本tokenization
src/main/java/io/leavesfly/tinydl/example/nlp/MoEGPTExample.java:157
↓ 2 callersMethodtransposeNHWCToNCHW
维度转置:(N, H, W, C) -> (N, C, H, W)
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/PoolingLayer.java:253
↓ 2 callersMethodunChain
清理函数资源,断开计算图连接 用于RNN中切断计算图,防止梯度回传过长导致的梯度消失或爆炸问题。
src/main/java/io/leavesfly/tinydl/func/Function.java:147
↓ 2 callersMethodupdateRunningStats
更新运行时统计量
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:321
↓ 2 callersMethodvalidateForwardPreconditions
检查解码器前向传播的前置条件 在执行layerForward之前调用,检查是否满足执行条件。 @throws IllegalStateException 当前置条件不满足时抛出
src/main/java/io/leavesfly/tinydl/nnet/block/seq2seq/Decoder.java:137
↓ 2 callersMethodwriteModelSummary
写入模型摘要信息 @param writer PrintWriter对象 @param model 模型 @param indent 缩进字符串
src/main/java/io/leavesfly/tinydl/mlearning/ModelInfoExporter.java:280
↓ 1 callersMethodaddBiasToOutput
向输出添加偏置 @param output 输出数据 @param bias 偏置参数 @return 添加偏置后的输出
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/ConvLayer.java:277
↓ 1 callersMethodaddEnhancedClassifier
添加增强的分类器部分 @param inputShape 从卷积部分输出的形状
src/main/java/io/leavesfly/tinydl/modality/cv/SimpleConvNet.java:279
↓ 1 callersMethodaddGatingNoise
为门控logits添加噪声,用于负载均衡 @param logits 门控logits @return 添加噪声后的logits
src/main/java/io/leavesfly/tinydl/modality/nlp/layer/MoEGatingNetwork.java:128
↓ 1 callersMethodaddResidualBlock
添加残差块(简化版本) @param inputShape 输入形状 @param filterNum 卷积核数量 @param blockName 块名称 @return 输出形状
src/main/java/io/leavesfly/tinydl/modality/cv/SimpleConvNet.java:268
↓ 1 callersMethodaddSpecialTokens
添加特殊token到词汇表
src/main/java/io/leavesfly/tinydl/modality/nlp/SimpleTokenizer.java:95
↓ 1 callersMethodanalyzeLoadBalancing
分析负载均衡情况
src/main/java/io/leavesfly/tinydl/example/nlp/MoEGPTExample.java:309
↓ 1 callersMethodanalyzeMoEUsage
分析MoE使用情况
src/main/java/io/leavesfly/tinydl/example/nlp/MoEGPTExample.java:280
↓ 1 callersMethodapplyAggregatedGradients
将聚合后的梯度应用到主模型的参数上 @param model 主模型 @param aggregatedGradients 聚合后的梯度
src/main/java/io/leavesfly/tinydl/mlearning/parallel/ParallelTrainingUtils.java:50
↓ 1 callersMethodapplyDropout
应用Dropout正则化 简化版本:在训练时随机将一些神经元置零 @param input 输入变量 @return 应用Dropout后的变量
src/main/java/io/leavesfly/tinydl/modality/nlp/layer/MoEExpertNetwork.java:180
↓ 1 callersMethodapplyDropout
应用dropout(简化版本)
src/main/java/io/leavesfly/tinydl/nnet/layer/transformer/GPT2TokenEmbedding.java:163
↓ 1 callersMethodapplyMask
应用因果掩码(用于解码器)
src/main/java/io/leavesfly/tinydl/nnet/layer/transformer/MultiHeadAttention.java:217
↓ 1 callersMethodapplySoftmax
应用Softmax函数 @param logits 网络输出 @return 概率分布
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:171
↓ 1 callersMethodapplySoftmax
应用softmax函数 @param logits 输入logits @return softmax后的概率分布
src/main/java/io/leavesfly/tinydl/modality/nlp/layer/MoEGatingNetwork.java:142
↓ 1 callersMethodapplyTopKSparsity
应用Top-K稀疏化,只保留权重最大的K个专家 @param weights 专家权重 @return 稀疏化后的权重
src/main/java/io/leavesfly/tinydl/modality/nlp/layer/MoEGatingNetwork.java:182
↓ 1 callersMethodbackward2D
2D输入的反向传播
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:415
↓ 1 callersMethodbackward4D
4D输入的反向传播
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:343
↓ 1 callersMethodbackwardAdaptiveAveragePooling
自适应平均池化反向传播
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/PoolingLayer.java:372
↓ 1 callersMethodbackwardAdaptiveMaxPooling
自适应最大池化反向传播
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/PoolingLayer.java:346
↓ 1 callersMethodbackwardAveragePooling
平均池化反向传播
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/PoolingLayer.java:315
↓ 1 callersMethodbackwardIterative
变量的反向传播(迭代实现) 使用栈来实现迭代的反向传播,避免递归调用可能导致的栈溢出问题。 特别适用于深层网络或RNN等场景。
src/main/java/io/leavesfly/tinydl/func/Variable.java:157
↓ 1 callersMethodbackwardMaxPooling
最大池化反向传播
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/PoolingLayer.java:288
↓ 1 callersMethodbuildCifar10ConvNet
创建用于CIFAR-10数据集的深度卷积网络 输入:32x32x3,输出:10个类别 @return 构建好的卷积网络
src/main/java/io/leavesfly/tinydl/modality/cv/SimpleConvNet.java:393
↓ 1 callersMethodbuildEnhancedConvNet
构建增强的深度卷积网络架构 网络结构: - 多个卷积块(可配置数量和参数) - 每个块包含:Conv -> BatchNorm(可选) -> ReLU -> Conv -> BatchNorm(可选) -> ReLU -> MaxPool -> Dropout - 残差连接(可选) - 分类器:F
src/main/java/io/leavesfly/tinydl/modality/cv/SimpleConvNet.java:177
↓ 1 callersMethodcalculateOutputDimensions
计算输出特征图的尺寸 @param inputShape 输入形状
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/ConvLayer.java:117
↓ 1 callersMethodcanSample
检查缓冲区是否可以进行采样 @param batchSize 批次大小 @return 是否可以采样
src/main/java/io/leavesfly/tinydl/modality/rl/ReplayBuffer.java:95
↓ 1 callersMethodcenter
将窗口居中显示 @param jFrame 要居中的窗口
src/main/java/io/leavesfly/tinydl/utils/Plot.java:164
↓ 1 callersMethodcleanupTestFiles
清理测试文件
src/test/java/io/leavesfly/tinydl/test/ModelSerializationTest.java:301
↓ 1 callersMethodclearCache
清理缓存
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/Col2ImUtil.java:174
↓ 1 callersMethodclearCache
清理缓存
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/Im2ColUtil.java:153
↓ 1 callersMethodclearGrads
()
src/main/java/io/leavesfly/tinydl/nnet/Block.java:56
↓ 1 callersMethodcompareAlgorithmsOnCartPole
在CartPole环境下比较DQN和REINFORCE
src/main/java/io/leavesfly/tinydl/example/rl/RLAlgorithmComparison.java:53
↓ 1 callersMethodcompareAlgorithmsOnGridWorld
在GridWorld环境下比较算法适应性
src/main/java/io/leavesfly/tinydl/example/rl/RLAlgorithmComparison.java:103
↓ 1 callersMethodcompareOutputs
比较两个输出是否一致(简单版本) @param output1 第一个输出 @param output2 第二个输出 @return 如果两个输出一致则返回true,否则返回false
src/main/java/io/leavesfly/tinydl/example/transformer/TransformerExample.java:130
↓ 1 callersMethodcomputeAttention
计算缩放点积注意力
src/main/java/io/leavesfly/tinydl/nnet/layer/transformer/MultiHeadAttention.java:170
↓ 1 callersMethodcomputeBaselines
计算基线值 @return 基线值序列
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:298
↓ 1 callersMethodcomputeBiasGradient
计算偏置梯度 @param yGrad 输出梯度 @return 偏置梯度
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/ConvLayer.java:355
↓ 1 callersMethodcomputeCurrentQValues
计算当前Q值 @param states 状态批次 @param actions 动作批次 @return 当前Q值
src/main/java/io/leavesfly/tinydl/modality/rl/agent/DQNAgent.java:279
↓ 1 callersMethodcomputeInputGradient
计算输入梯度 @param yGrad 输出梯度 @return 输入梯度
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/ConvLayer.java:341
↓ 1 callersMethodcomputeLogProbability
计算特定动作的对数概率 @param probabilities 概率分布 @param action 选择的动作 @return 对数概率
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:213
↓ 1 callersMethodcomputeMSELoss
计算均方误差损失 @param predicted 预测值 @param target 目标值 @return MSE损失
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:346
↓ 1 callersMethodcomputeMean
计算平均值
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/PoolingLayer.java:234
↓ 1 callersMethodcomputeMean2D
计算2D输入的均值
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:278
↓ 1 callersMethodcomputeMean4D
计算4D输入的均值
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:219
↓ 1 callersMethodcomputeReturns
计算回报(蒙特卡罗) @param rewards 奖励序列 @return 回报序列
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:280
↓ 1 callersMethodcomputeTargetQValues
计算目标Q值 @param nextStates 下一状态批次 @param rewards 奖励批次 @param dones 结束标志批次 @return 目标Q值
src/main/java/io/leavesfly/tinydl/modality/rl/agent/DQNAgent.java:250
↓ 1 callersMethodcomputeVariance2D
计算2D输入的方差
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:298
↓ 1 callersMethodcomputeVariance4D
计算4D输入的方差
src/main/java/io/leavesfly/tinydl/nnet/layer/norm/BatchNorm.java:247
↓ 1 callersMethodcomputeWeightGradient
计算权重梯度 @param yGrad 输出梯度 @return 权重梯度
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/ConvLayer.java:328
↓ 1 callersMethodcomputeWeightedSum
计算专家输出的加权求和 @param expertOutputs 所有专家的输出列表 @param gatingWeights 门控权重 @param batchSize 批次大小 @param seqLen 序列长度 @return 加权求和后的最终输出
src/main/java/io/leavesfly/tinydl/modality/nlp/layer/MoELayer.java:208
↓ 1 callersMethodconcatenateHeads
合并多头结果
src/main/java/io/leavesfly/tinydl/nnet/layer/transformer/MultiHeadAttention.java:228
↓ 1 callersMethodconvertToMultiIndex
将一维线性索引转换为多维索引 @param linearIndex 一维线性索引 @param indices 多维索引数组(输出参数)
src/main/java/io/leavesfly/tinydl/ndarr/NdArray.java:873
↓ 1 callersMethodcosineSimilarity
计算余弦相似度 @param vec1 向量1 @param vec2 向量2 @return 余弦相似度
src/main/java/io/leavesfly/tinydl/modality/nlp/Word2Vec.java:442
↓ 1 callersMethodcreateBaselineNetwork
创建基线网络(价值函数) @param stateDim 状态维度 @param hiddenSizes 隐藏层尺寸 @return 基线网络模型
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:127
↓ 1 callersMethodcreateCausalMask
创建因果掩码(用于解码器自回归预测) @param seqLen 序列长度 @return 因果掩码数组,形状为(seq_len, seq_len)
src/main/java/io/leavesfly/tinydl/mlearning/loss/MaskedSoftmaxCELoss.java:166
↓ 1 callersMethodcreateChineseExample
创建中文示例数据集
src/main/java/io/leavesfly/tinydl/mlearning/dataset/simple/Word2VecDataSet.java:259
↓ 1 callersMethodcreateDQNAgent
创建DQN智能体 @param env 环境 @return DQN智能体
src/main/java/io/leavesfly/tinydl/example/rl/CartPoleDQNExample.java:58
↓ 1 callersMethodcreateMoEModel
创建MoE-GPT模型
src/main/java/io/leavesfly/tinydl/example/nlp/MoEGPTExample.java:124
↓ 1 callersMethodcreateModel
创建MLP模型 @param name 模型名称 @return 创建的MLP模型
src/main/java/io/leavesfly/tinydl/example/parallel/ParallelTrainingTest.java:65
↓ 1 callersMethodcreatePolicyNetwork
创建策略网络 @param stateDim 状态维度 @param actionDim 动作维度 @param hiddenSizes 隐藏层尺寸 @return 策略网络模型
src/main/java/io/leavesfly/tinydl/modality/rl/agent/REINFORCEAgent.java:102
↓ 1 callersMethodcreateREINFORCEAgent
创建REINFORCE智能体 @param env 环境 @param useBaseline 是否使用基线 @return REINFORCE智能体
src/main/java/io/leavesfly/tinydl/example/rl/GridWorldREINFORCEExample.java:83
↓ 1 callersMethodcreateSequenceMask
创建序列掩码 @param lengths 序列长度数组,形状为(batch_size,) @param maxLength 最大序列长度 @return 掩码数组,形状为(batch_size, max_length)
src/main/java/io/leavesfly/tinydl/mlearning/loss/MaskedSoftmaxCELoss.java:141
↓ 1 callersMethodcreateSmallModel
创建小规模MoE-GPT模型的工厂方法 适合实验和快速原型 @param name 模型名称 @param vocabSize 词汇表大小 @return MoE-GPT模型实例
src/main/java/io/leavesfly/tinydl/modality/nlp/MoEGPTModel.java:187
↓ 1 callersMethodcreateTokenizer
创建分词器并构建词汇表 @return 创建的分词器实例
src/main/java/io/leavesfly/tinydl/example/nlp/GPT2Example.java:71
↓ 1 callersMethodcreateTrainingDataset
创建训练数据集 @param tokenizer 分词器实例 @return 创建的训练数据集
src/main/java/io/leavesfly/tinydl/example/nlp/GPT2Example.java:125
↓ 1 callersMethodcreateUnitVariances
创建单位方差数组
src/main/java/io/leavesfly/tinydl/modality/rl/environment/MultiArmedBanditEnvironment.java:89
↓ 1 callersMethodcrossEntropyError
计算交叉熵误差 计算预测值与真实标签之间的交叉熵误差。 @param predict 预测值 @param labelY 真实标签 @return 交叉熵误差值
src/main/java/io/leavesfly/tinydl/func/loss/SigmoidCE.java:89
↓ 1 callersMethoddecayEpsilon
衰减探索率 @param decayRate 衰减率 @param minEpsilon 最小探索率
src/main/java/io/leavesfly/tinydl/modality/rl/policy/EpsilonGreedyPolicy.java:190
↓ 1 callersMethoddecodeOnly
仅解码(需要预先设置编码器输出) @param decoderInput 解码器输入 @param encoderOutput 编码器输出 @return 解码器输出
src/main/java/io/leavesfly/tinydl/nnet/block/transformer/Transformer.java:154
↓ 1 callersMethoddeepCopyModel
创建模型的深拷贝,用于多线程训练 每个线程需要独立的模型实例来避免参数冲突 @param originalModel 原始模型 @return 深拷贝的模型实例 @throws RuntimeException 如果拷贝失败
src/main/java/io/leavesfly/tinydl/mlearning/parallel/ParallelTrainingUtils.java:24
↓ 1 callersMethoddemonstrateEncoderDecoderUsage
演示使用EncoderDecoder组合的方式
src/main/java/io/leavesfly/tinydl/example/seq2seq/Seq2SeqExample.java:49
↓ 1 callersMethoddemonstrateIndividualUsage
演示分别使用编码器和解码器的方式
src/main/java/io/leavesfly/tinydl/example/seq2seq/Seq2SeqExample.java:122
↓ 1 callersMethoddemonstrateLearnedPolicy
演示学习到的策略 @param agent 智能体 @param env 环境
src/main/java/io/leavesfly/tinydl/example/rl/GridWorldREINFORCEExample.java:236
↓ 1 callersMethoddepthwiseConvolution
深度卷积实现(简化版本)
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/DepthwiseSeparableConvLayer.java:122
↓ 1 callersMethoddisplayAverageResults
显示平均结果
src/main/java/io/leavesfly/tinydl/example/rl/MultiArmedBanditExample.java:223
↓ 1 callersMethoddoPrepare
执行数据集准备操作 子类需要实现具体的数据准备逻辑
src/main/java/io/leavesfly/tinydl/mlearning/dataset/DataSet.java:57
↓ 1 callersMethoddrawImage
(float[] pixelValues, String fileName)
src/main/java/io/leavesfly/tinydl/mlearning/dataset/simple/MnistDataSet.java:134
↓ 1 callersMethodencodeOnly
仅编码(不需要解码器输入) @param encoderInput 编码器输入 @return 编码器输出
src/main/java/io/leavesfly/tinydl/nnet/block/transformer/Transformer.java:143
↓ 1 callersMethodestimateTraditionalModelParams
估算传统模型的参数量(用于对比)
src/main/java/io/leavesfly/tinydl/example/nlp/MoEGPTExample.java:452
↓ 1 callersMethodfindMaxQValue
找到Q值向量中的最大值 @param qValues Q值向量 @return 最大Q值
src/main/java/io/leavesfly/tinydl/modality/rl/agent/DQNAgent.java:300
↓ 1 callersMethodfindTopKExperts
找到权重最大的K个专家 @param weights 权重数组 @param tokenIdx token索引 @param k 要选择的专家数量 @return top-K专家的索引列表
src/main/java/io/leavesfly/tinydl/modality/nlp/layer/MoEGatingNetwork.java:216
↓ 1 callersMethodforward
(NdArray... inputs)
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/DepthwiseSeparableConvLayer.java:106
↓ 1 callersMethodforward
(NdArray... inputs)
src/main/java/io/leavesfly/tinydl/nnet/layer/cnn/ConvLayer.java:187
↓ 1 callersMethodforward
函数的前向传播计算 子类必须实现此方法来定义具体的前向传播计算逻辑。 该方法接收NdArray数组作为输入,返回计算结果的NdArray。 @param inputs 输入的NdArray数组 @return 前向传播计算结果的NdArray
src/main/java/io/leavesfly/tinydl/func/Function.java:83
↓ 1 callersMethodforward
前向传播计算取反 执行NdArray的取反运算:-inputs[0] @param inputs 输入的NdArray数组,长度为1 @return 取反运算结果的NdArray
src/main/java/io/leavesfly/tinydl/func/base/Neg.java:24
↓ 1 callersMethodforward
前向传播计算减法 执行两个NdArray的减法运算:inputs[0] - inputs[1] @param inputs 输入的NdArray数组,长度为2 @return 减法运算结果的NdArray
src/main/java/io/leavesfly/tinydl/func/base/Sub.java:24
↓ 1 callersMethodforward
前向传播计算乘法 执行两个NdArray的乘法运算:inputs[0] inputs[1] @param inputs 输入的NdArray数组,长度为2 @return 乘法运算结果的NdArray
src/main/java/io/leavesfly/tinydl/func/base/Mul.java:25
↓ 1 callersMethodforward
前向传播计算索引获取 根据指定的行列索引从输入数组中获取子数组。 @param inputs 输入的NdArray数组,长度为1 @return 索引获取后的NdArray
src/main/java/io/leavesfly/tinydl/func/matrix/GetItem.java:37
↓ 1 callersMethodforward
前向传播计算累加和到指定形状 将输入数组累加和到指定形状。 @param inputs 输入的NdArray数组,长度为1 @return 累加和到指定形状后的NdArray
src/main/java/io/leavesfly/tinydl/func/matrix/SumTo.java:37
↓ 1 callersMethodforward
前向传播计算广播 将输入数组广播到指定形状。 @param inputs 输入的NdArray数组,长度为1 @return 广播后的NdArray
src/main/java/io/leavesfly/tinydl/func/matrix/BroadcastTo.java:37
↓ 1 callersMethodforward
前向传播计算Softmax交叉熵损失 计算公式:Loss = -Σ(yi log(σ(xi))) 其中σ(x)为Softmax函数,y为真实标签 @param inputs 输入的NdArray数组,包含预测值和真实标签 @return Softmax交叉熵损失值
src/main/java/io/leavesfly/tinydl/func/loss/SoftmaxCE.java:26
← previousnext →401–500 of 1,708, ranked by callers