private async Task <DialogTurnResult> FinishDialogAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken) { stepContext.Values["OceanProximity"] = stepContext.Result; var stepValues = stepContext.Values; var housingData = new HousingData { Longitude = float.Parse(stepValues["Longitude"].ToString()), Latitude = float.Parse(stepValues["Latitude"].ToString()), HousingMedianAge = float.Parse(stepValues["MedianAge"].ToString()), TotalRooms = float.Parse(stepValues["TotalRooms"].ToString()), TotalBedrooms = float.Parse(stepValues["TotalBedrooms"].ToString()), Population = float.Parse(stepValues["Population"].ToString()), Households = float.Parse(stepValues["Households"].ToString()), MedianIncome = float.Parse(stepValues["MedianIncome"].ToString()), OceanProximity = ((FoundChoice)stepValues["OceanProximity"]).Value }; var prediction = _predictionEnginePool.Predict(housingData); await stepContext.Context.SendActivityAsync($"House value prediction is {prediction.PredictedHouseValue.ToString("C")}"); return(await stepContext.EndDialogAsync(stepContext.Values, cancellationToken : cancellationToken)); }
/// <summary> /// This method recieves an HousingDataDto model that we expect to delete based off of the primary key /// </summary> /// <param name="oldData"></param> /// <returns>Task<bool></returns> public async Task <bool> DeleteHousingData(HousingDataDto oldData) { HousingData housingDataVnM = new HousingData(); //validate the incoming DTO first before converting into DAO //STILL NEED TO VALIDATE return(await graceService.DeleteHousingDataAsync(housingDataVnM.MapToDao(oldData))); }
/// <summary> /// This method calls the soap service and awaits on the get /// </summary> /// <returns> List<HousingDataDto> </returns> public async Task <List <HousingDataDto> > HousingDataGetAll() { HousingData housingDataVnM = new HousingData(); var daoDatas = await graceService.GetHousingDataAsync(); var dtoDatas = housingDataVnM.getDtoList(daoDatas); //STILL NEED TO VALIDATE return(dtoDatas); }
public bool Validate(HousingData housing) { if (val.PrimaryKeyValidate(housing.AssociateID) && val.ForeignKeyValidate(housing.StatusID) && val.ForeignKeyValidate(housing.RoomID)) { return(true); } return(false); }
static void Main(string[] args) { Helper.PrintLine("使用的单独的数据准备和模型管道"); MLContext mlContext = new MLContext(); Helper.PrintLine("准备训练数据集..."); HousingData[] housingData = new HousingData[] { new HousingData { Size = 600f, HistoricalPrices = new float[] { 100000f, 125000f, 122000f }, CurrentPrice = 170000f }, new HousingData { Size = 1000f, HistoricalPrices = new float[] { 200000f, 250000f, 230000f }, CurrentPrice = 225000f }, new HousingData { Size = 1000f, HistoricalPrices = new float[] { 126000f, 130000f, 200000f }, CurrentPrice = 195000f } }; IDataView data = mlContext.Data.LoadFromEnumerable(housingData); Helper.PrintLine("准备数据处理管道..."); IEstimator <ITransformer> dataPrepEstimator = mlContext.Transforms.Concatenate("Features", new string[] { "Size", "HistoricalPrices" }) .Append(mlContext.Transforms.NormalizeMinMax("Features")); Helper.PrintLine("训练数据处理管道..."); ITransformer dataPrepTransformer = dataPrepEstimator.Fit(data); Helper.PrintLine("准备神经网络模型..."); var sdcaEstimator = mlContext.Regression.Trainers.Sdca(); Helper.PrintLine("训练神经网络模型..."); IDataView transformedData = dataPrepTransformer.Transform(data); RegressionPredictionTransformer <LinearRegressionModelParameters> trainedModel = sdcaEstimator.Fit(transformedData); Helper.PrintLine("训练神经网络完成"); Helper.PrintLine("保存数据处理管道和神经网络模型..."); mlContext.Model.Save(dataPrepTransformer, data.Schema, DataPipelinePath); mlContext.Model.Save(trainedModel, transformedData.Schema, ModelPath); Helper.Exit(0); }
public ActionResult Score(HousingData data) { var result = _session.Run(new List <NamedOnnxValue> { NamedOnnxValue.CreateFromTensor("float_input", data.AsTensor()) }); Tensor <float> score = result.First().AsTensor <float>(); var prediction = new Prediction { PredictedValue = score.First() * 100000 }; result.Dispose(); return(Ok(prediction)); }
/// <summary> /// this method inserts a new housingData by calling on the soap service. /// The "graceService.insert" returns a bool value so we just return /// that since it depends on its pass or fail /// </summary> /// <param name="newData"></param> /// <returns>Task<bool></returns> public async Task <bool> AddHousingData(HousingDataDto newData) { try { HousingData housingDataVnM = new HousingData(); //validate the incoming DTO first before converting into DAO //STILL NEED TO VALIDATE return(await graceService.InsertHousingDataAsync(housingDataVnM.MapToDao(newData))); } catch (Exception) { return(false); } }
public async Task <double> GetEstimate([FromBody] Property house) { apiKey = ""; var housingData = new HousingData(); housingData.age_of_property = Convert.ToInt32((DateTime.Now - new DateTime(house.YearConstructed, 1, 1)).TotalDays / 30); housingData.bathroom_count = house.Bathrooms; housingData.bedroom_count = house.Bedrooms; housingData.built_up_area = Convert.ToInt32(house.BuiltUpArea); housingData.pincode = house.Pincode == null ? "500027" : house.Pincode; housingData.date_of_pricing = DateTime.UtcNow; housingData.floor_count = house.FloorCount; housingData.floor_number = house.FloorNumber; housingData.id = 0; housingData.latitude = house.LatLng.Lat; housingData.longitude = house.LatLng.Lng; housingData.under_construction = house.UnderConstruction; var featureVector = Utils.HousingFeatures(housingData).ToArray(); var value = await ServiceCall.InvokeRequestResponseService(featureVector, apiKey); return(Convert.ToInt32(1000 * (Convert.ToInt32(value * housingData.built_up_area / 1000)))); }
/// <summary> /// This method updates the HousingDataDto /// </summary> /// <param name="fixData"></param> /// <returns>Task<bool></returns> public async Task <bool> UpdateHousingData(HousingDataDto fixData) { HousingData dataVnM = new HousingData(); return(await graceService.UpdateHousingDataAsync(dataVnM.MapToDao(fixData))); }
public HousingController(HousingMaster housingMaster, HousingConfig housingConfig, HousingData housingData) { this.housingMaster = housingMaster; this.housingConfig = housingConfig; this.housingData = housingData; }
public HousingDataDao MapToService(HousingData hdata) { var mapper = HousingDataMapper.CreateMapper(); return(mapper.Map <HousingDataDao>(hdata)); }