public ActionResult CheckData()
        {
            Models.ProcessedDataModels processedData = new Models.ProcessedDataModels();

            string path         = TempData["FilePath"] as string;
            int    trainPercent = ((Models.InputDataModels)TempData["form"]).trainPercent;

            Loader loader    = new Loader(path, trainPercent, ((Models.InputDataModels)TempData["form"]).normData);
            Data   trainData = loader.GenerateTrainSet();
            Data   testData  = loader.GenerateTestSet();

            Topology top = new Topology();

            top.SetInputs(trainData.GetNumFeatures());
            int numClasses = trainData.GetNumClasses();

            testData.GetNumClasses();
            //if(numClasses < 2)
            //{
            //    throw new InvalidDataException();
            //} else if (numClasses == 2)
            //{
            top.SetOutputs(1);
            //} else
            //{
            //    top.SetOutputs(numClasses);
            //}

            int end = ((Models.InputDataModels)TempData["form"]).numHidden;

            ViewBag.NumItems = end;
            for (int i = 0; i < end; ++i)
            {
                ViewData["Item " + i] = TempData["Item " + i];
                top.AddHidden(Convert.ToInt32(TempData["Item " + i]));
            }

            ViewBag.gamma          = ((Models.InputDataModels)TempData["form"]).gamma;
            processedData.gamma    = ((Models.InputDataModels)TempData["form"]).gamma;
            ViewBag.epsilon        = ((Models.InputDataModels)TempData["form"]).epsilon;
            processedData.epsilon  = ((Models.InputDataModels)TempData["form"]).epsilon;
            ViewBag.momentum       = ((Models.InputDataModels)TempData["form"]).momentum;
            processedData.momentum = ((Models.InputDataModels)TempData["form"]).momentum;
            ViewBag.trPerc         = ((Models.InputDataModels)TempData["form"]).trainPercent;
            ViewBag.tsPerc         = 100 - (int)((Models.InputDataModels)TempData["form"]).trainPercent;
            ViewBag.NumIter        = ((Models.InputDataModels)TempData["form"]).numIter;
            processedData.maxIter  = ((Models.InputDataModels)TempData["form"]).numIter;

            ViewBag.numTrain = trainData.GetNumData();
            ViewBag.numTest  = testData.GetNumData();

            Network net = new Network(top, true);

            net.SetTrain(trainData);
            net.SetTest(testData);
            processedData.NeuralNet = net;

            TempData["data"] = processedData;

            return(View());
        }