包含: - hair_service_sd: 主服务(换发型/换发色/生发,端口8801) - photo_service: LoRA调度+训练(端口32678) - hair_grow_service: 调试测试页(端口8888,含4个测试页) - 批量训练脚本(batch_train_hairstyles.py) - 发际线mask自动识别(hairline_mask.py,4种方案) - 手绘mask换发型(hair_swap_manual.py) - 文档:README.md + LARGE_FILES.md + docs/ 大文件(模型权重200G、训练数据123G)已排除,见 LARGE_FILES.md OSS/COS密钥已脱敏为环境变量,原文件备份在本地
33 lines
974 B
Python
33 lines
974 B
Python
#!/usr/bin/env python3
|
|
# Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
|
|
|
|
import torch.nn as nn
|
|
|
|
|
|
def c2_xavier_fill(module: nn.Module):
|
|
"""
|
|
Initialize `module.weight` using the "XavierFill" implemented in Caffe2.
|
|
Also initializes `module.bias` to 0.
|
|
|
|
Args:
|
|
module (torch.nn.Module): module to initialize.
|
|
"""
|
|
# Caffe2 implementation of XavierFill in fact
|
|
# corresponds to kaiming_uniform_ in PyTorch
|
|
nn.init.kaiming_uniform_(module.weight, a=1)
|
|
if module.bias is not None:
|
|
nn.init.constant_(module.bias, 0)
|
|
|
|
|
|
def c2_msra_fill(module: nn.Module):
|
|
"""
|
|
Initialize `module.weight` using the "MSRAFill" implemented in Caffe2.
|
|
Also initializes `module.bias` to 0.
|
|
|
|
Args:
|
|
module (torch.nn.Module): module to initialize.
|
|
"""
|
|
nn.init.kaiming_normal_(module.weight, mode="fan_out", nonlinearity="relu")
|
|
if module.bias is not None:
|
|
nn.init.constant_(module.bias, 0)
|