Giter Club home page Giter Club logo

facial_attribute_segmentation's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

facial_attribute_segmentation's Issues

Problem with validation

Hi,

I am trying to use your code for face part parsing on the helen dataset, the training process was fine, but during validation, the output are all black images, I suspect the weight becomes zero for validation, any suggestion on how to solve this problem?

Below is the modified code snippet for training and validation.

for epoch in range(args.start_epoch, args.epochs):
#train(train_loader, model, criterion, optimizer,epoch)
#result = validate(val_loader, model, criterion, epoch)

            # training
            training_top1 = AverageMeter()
            training_losses = AverageMeter()
            training_batch_time = AverageMeter()
            model.train()
            end = time.time()
            for i, (name, input_img, target) in enumerate(train_loader):
                    target = target.cuda(async=True)
                    input_img = input_img.float().cuda()
                    input_var = torch.autograd.Variable(input_img)
                    target_var = torch.autograd.Variable(target)
                    output = model(input_var)
                    #output = output.permute(0,2,3,1)
                    #output = torch.max(output,dim=3)[0]
                    loss = criterion(output, target_var)

                    prec1 = accuracy(output.data, target, topk=(1,))[0]
                    training_losses.update(loss.item(), input_img.size(0))
                    training_top1.update(prec1.item(), input_img.size(0))
                    optimizer.zero_grad()
                    loss.backward()
                    optimizer.step()

                    training_batch_time.update(time.time() - end)
                    end = time.time()

                    print('Epoch: [{0}][{1}/{2}]\t'
                            'Time {training_batch_time.val:.3f} ({training_batch_time.avg:.3f})\t'
                            'Loss {training_losses.val:.4f} ({training_losses.avg:.4f})\t'
                            'Prec@1 {training_top1.val:.3f} ({training_top1.avg:.3f})'.format(
                                    epoch, i, len(train_loader), training_batch_time=training_batch_time,
                                    training_losses=training_losses, training_top1=training_top1))
            # evaluation

            eval_top1 = AverageMeter()
            eval_losses = AverageMeter()
            model.eval()
            with torch.no_grad():
                    for i, (name, input_img, target) in enumerate(val_loader):
                            target = target.cuda(async=True)
                            input_img = input_img.float().cuda()
                           input_var = torch.autograd.Variable(input_img)
                            target_var = torch.autograd.Variable(target)
                            output = model(input_var)
                            loss = criterion(output, target_var)
                            prec1 = accuracy(output.data, target, topk=(1,))[0]
                            eval_losses.update(loss.item(), input_img.size(0))
                            eval_top1.update(prec1.item(), input_img.size(0))

Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.