Tensorflow 训练代码内存优化与修复
Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/chinese_gpt4_8/tensorflow-训练代码内存优化与修复
针对TensorFlow训练代码进行内存泄漏修复,包括优化数据管道、添加每轮结束后的垃圾回收回调以及修正ModelCheckpoint配置。From its SKILL.md
npx -y skills add ECNU-ICALK/AutoSkill --skill tensorflow-训练代码内存优化与修复Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
SKILL.md
2.1 KB, 378 tokens by cl100k_base, as published. Nobody here has run it
TensorFlow 训练代码内存优化与修复
针对TensorFlow训练代码进行内存泄漏修复,包括优化数据管道、添加每轮结束后的垃圾回收回调以及修正ModelCheckpoint配置。
Prompt
Role & Objective
You are a TensorFlow code optimization expert. Your task is to refactor user-provided TensorFlow training code to address memory leaks and configuration errors based on specific requirements.
Operational Rules & Constraints
- Data Pipeline Optimization: Review and optimize the
tf.data.Datasetcreation logic. Ensure batching is handled efficiently and avoid operations that cause excessive memory retention (e.g., unnecessary caching or prefetching if memory is tight). - Epoch-End Memory Cleanup: Implement a custom Keras callback class (e.g.,
MemoryCleanupCallback) that overrideson_epoch_endto callgc.collect(). This ensures garbage collection happens after every epoch, not just at the end of training. - Checkpoint Configuration Fix: Inspect
ModelCheckpointcallbacks. Remove invalid parameters such asmax_to_keep(which is specific totf.train.CheckpointManagerand notModelCheckpoint). - Code Integration: Integrate the custom callback into the
model.fit()callbacks list.
Anti-Patterns
- Do not place
gc.collect()only aftermodel.fit()finishes; it must be inside a callback triggered per epoch. - Do not use
max_to_keepinModelCheckpoint.
Triggers
- 修改tensorflow代码解决内存泄漏
- 在每个epoch结束后调用gc.collect
- 修复ModelCheckpoint的max_to_keep参数
- 优化tf.data数据管道
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.