Tutorial: Demand forecasting & AutoML - Azure Machine Learning (2023)

  • Article
  • 9 minutes to read

Learn how to create a time-series forecasting model without writing a single line of code using automated machine learning in the Azure Machine Learning studio. This model will predict rental demand for a bike sharing service.

You won't write any code in this tutorial, you'll use the studio interface to perform training. You'll learn how to do the following tasks:

  • Create and load a dataset.
  • Configure and run an automated ML experiment.
  • Specify forecasting settings.
  • Explore the experiment results.
  • Deploy the best model.

Also try automated machine learning for these other model types:

  • For a no-code example of a classification model, see Tutorial: Create a classification model with automated ML in Azure Machine Learning.
  • For a code first example of an object detection model, see the Tutorial: Train an object detection model with AutoML and Python.

Prerequisites

  • An Azure Machine Learning workspace. See Create workspace resources.

  • Download the bike-no.csv data file

Sign in to the studio

For this tutorial, you create your automated ML experiment run in Azure Machine Learning studio, a consolidated web interface that includes machine learning tools to perform data science scenarios for data science practitioners of all skill levels. The studio is not supported on Internet Explorer browsers.

  1. Sign in to Azure Machine Learning studio.

  2. Select your subscription and the workspace you created.

  3. Select Get started.

  4. In the left pane, select Automated ML under the Author section.

  5. Select +New automated ML job.

Create and load dataset

Before you configure your experiment, upload your data file to your workspace in the form of an Azure Machine Learning dataset. Doing so, allows you to ensure that your data is formatted appropriately for your experiment.

  1. On the Select dataset form, select From local files from the +Create dataset drop-down.

    1. On the Basic info form, give your dataset a name and provide an optional description. The dataset type should default to Tabular, since automated ML in Azure Machine Learning studio currently only supports tabular datasets.

    2. Select Next on the bottom left

    3. On the Datastore and file selection form, select the default datastore that was automatically set up during your workspace creation, workspaceblobstore (Azure Blob Storage). This is the storage location where you'll upload your data file.

      (Video) Forecasting Demand with Azure Machine Learning

    4. Select Upload files from the Upload drop-down..

    5. Choose the bike-no.csv file on your local computer. This is the file you downloaded as a prerequisite.

    6. Select Next

      When the upload is complete, the Settings and preview form is pre-populated based on the file type.

    7. Verify that the Settings and preview form is populated as follows and select Next.

      FieldDescriptionValue for tutorial
      File formatDefines the layout and type of data stored in a file.Delimited
      DelimiterOne or more characters for specifying the boundary between separate, independent regions in plain text or other data streams.Comma
      EncodingIdentifies what bit to character schema table to use to read your dataset.UTF-8
      Column headersIndicates how the headers of the dataset, if any, will be treated.Only first file has headers
      Skip rowsIndicates how many, if any, rows are skipped in the dataset.None
    8. The Schema form allows for further configuration of your data for this experiment.

      1. For this example, choose to ignore the casual and registered columns. These columns are a breakdown of the cnt column so, therefore we don't include them.

      2. Also for this example, leave the defaults for the Properties and Type.

      3. Select Next.

    9. On the Confirm details form, verify the information matches what was previously populated on the Basic info and Settings and preview forms.

    10. Select Create to complete the creation of your dataset.

    11. Select your dataset once it appears in the list.

    12. Select Next.

Configure job

After you load and configure your data, set up your remote compute target and select which column in your data you want to predict.

  1. Populate the Configure job form as follows:
    1. Enter an experiment name: automl-bikeshare

    2. Select cnt as the target column, what you want to predict. This column indicates the number of total bike share rentals.

    3. Select compute cluster as your compute type.

    4. Select +New to configure your compute target. Automated ML only supports Azure Machine Learning compute.

      1. Populate the Select virtual machine form to set up your compute.

        (Video) Demand forecasting in Machine Learning Studio on Azure

        FieldDescriptionValue for tutorial
        VirtualmachinetierSelect what priority your experiment should haveDedicated
        VirtualmachinetypeSelect the virtual machine type for your compute.CPU (Central Processing Unit)
        VirtualmachinesizeSelect the virtual machine size for your compute. A list of recommended sizes is provided based on your data and experiment type.Standard_DS12_V2
      2. Select Next to populate the Configure settings form.

        FieldDescriptionValue for tutorial
        Compute nameA unique name that identifies your compute context.bike-compute
        Min / Max nodesTo profile data, you must specify 1 or more nodes.Min nodes: 1
        Max nodes: 6
        Idle seconds before scale downIdle time before the cluster is automatically scaled down to the minimum node count.120 (default)
        Advanced settingsSettings to configure and authorize a virtual network for your experiment.None
      3. Select Create to get the compute target.

        This takes a couple minutes to complete.

      4. After creation, select your new compute target from the drop-down list.

    5. Select Next.

Select forecast settings

Complete the setup for your automated ML experiment by specifying the machine learning task type and configuration settings.

  1. On the Task type and settings form, select Time series forecasting as the machine learning task type.

  2. Select date as your Time column and leave Time series identifiers blank.

  3. The Frequency is how often your historic data is collected. Keep Autodetect selected.

  4. The forecast horizon is the length of time into the future you want to predict. Deselect Autodetect and type 14 in the field.

  5. Select View additional configuration settings and populate the fields as follows. These settings are to better control the training job and specify settings for your forecast. Otherwise, defaults are applied based on experiment selection and data.

    AdditionalconfigurationsDescriptionValuefortutorial
    Primary metricEvaluation metric that the machine learning algorithm will be measured by.Normalized root mean squared error
    Explain best modelAutomatically shows explainability on the best model created by automated ML.Enable
    Blocked algorithmsAlgorithms you want to exclude from the training jobExtreme Random Trees
    Additional forecasting settingsThese settings help improve the accuracy of your model.

    Forecast target lags: how far back you want to construct the lags of the target variable
    Target rolling window: specifies the size of the rolling window over which features, such as the max, min and sum, will be generated.

    Forecasttargetlags: None
    Targetrollingwindowsize: None

    Exit criterionIf a criteria is met, the training job is stopped.Trainingjobtime (hours): 3
    Metricscorethreshold: None
    ConcurrencyThe maximum number of parallel iterations executed per iterationMaxconcurrentiterations: 6

    Select Save.

  6. Select Next.

  7. On the [Optional] Validate and test form,

    1. Select k-fold cross-validation as your Validation type.
    2. Select 5 as your Number of cross validations.

Run experiment

To run your experiment, select Finish. The Job details screen opens with the Job status at the top next to the job number. This status updates as the experiment progresses. Notifications also appear in the top right corner of the studio, to inform you of the status of your experiment.

Important

Preparation takes 10-15 minutes to prepare the experiment job.Once running, it takes 2-3 minutes more for each iteration.

(Video) Azure Machine Learning Demand Forecasting P2

In production, you'd likely walk away for a bit as this process takes time. While you wait, we suggest you start exploring the tested algorithms on the Models tab as they complete.

Explore models

Navigate to the Models tab to see the algorithms (models) tested. By default, the models are ordered by metric score as they complete. For this tutorial, the model that scores the highest based on the chosen Normalized root mean squared error metric is at the top of the list.

While you wait for all of the experiment models to finish, select the Algorithm name of a completed model to explore its performance details.

The following example navigates through the Details and the Metrics tabs to view the selected model's properties, metrics and performance charts.

Tutorial: Demand forecasting & AutoML - Azure Machine Learning (1)

Deploy the model

Automated machine learning in Azure Machine Learning studio allows you to deploy the best model as a web service in a few steps. Deployment is the integration of the model so it can predict on new data and identify potential areas of opportunity.

For this experiment, deployment to a web service means that the bike share company now has an iterative and scalable web solution for forecasting bike share rental demand.

Once the job is complete, navigate back to parent job page by selecting Job 1 at the top of your screen.

In the Best model summary section, the best model in the context of this experiment, is selected based on the Normalized root mean squared error metric.

We deploy this model, but be advised, deployment takes about 20 minutes to complete. The deployment process entails several steps including registering the model, generating resources, and configuring them for the web service.

  1. Select the best model to open the model-specific page.

  2. Select the Deploy button located in the top-left area of the screen.

  3. Populate the Deploy a model pane as follows:

    FieldValue
    Deployment namebikeshare-deploy
    Deployment descriptionbike share demand deployment
    Compute typeSelect Azure Compute Instance (ACI)
    Enable authenticationDisable.
    Use custom deployment assetsDisable. Disabling allows for the default driver file (scoring script) and environment file to be autogenerated.

    For this example, we use the defaults provided in the Advanced menu.

  4. Select Deploy.

    A green success message appears at the top of the Job screen stating that the deployment was started successfully. The progress of the deployment can be found in the Model summary pane under Deploy status.

Once deployment succeeds, you have an operational web service to generate predictions.

Proceed to the Next steps to learn more about how to consume your new web service, and test your predictions using Power BI's built in Azure Machine Learning support.

Clean up resources

Deployment files are larger than data and experiment files, so they cost more to store. Delete only the deployment files to minimize costs to your account, or if you want to keep your workspace and experiment files. Otherwise, delete the entire resource group, if you don't plan to use any of the files.

(Video) Time Series Forecasting with Azure Machine Learning

Delete the deployment instance

Delete just the deployment instance from the Azure Machine Learning studio, if you want to keep the resource group and workspace for other tutorials and exploration.

  1. Go to the Azure Machine Learning studio. Navigate to your workspace and on the left under the Assets pane, select Endpoints.

  2. Select the deployment you want to delete and select Delete.

  3. Select Proceed.

Delete the resource group

Important

The resources that you created can be used as prerequisites to other Azure Machine Learning tutorials and how-to articles.

If you don't plan to use any of the resources that you created, delete them so you don't incur any charges:

  1. In the Azure portal, select Resource groups on the far left.

  2. From the list, select the resource group that you created.

  3. Select Delete resource group.

    Tutorial: Demand forecasting & AutoML - Azure Machine Learning (2)

  4. Enter the resource group name. Then select Delete.

Next steps

In this tutorial, you used automated ML in the Azure Machine Learning studio to create and deploy a time series forecasting model that predicts bike share rental demand.

See this article for steps on how to create a Power BI supported schema to facilitate consumption of your newly deployed web service:

Consume a web service

  • Learn more about automated machine learning.
  • For more information on classification metrics and charts, see the Understand automated machine learning results article.

Note

(Video) AutoML demo on time series with Azure ML service (no sound)

This bike share dataset has been modified for this tutorial. This dataset was made available as part of a Kaggle competition and was originally available via Capital Bikeshare. It can also be found within the UCI Machine Learning Database.

Source: Fanaee-T, Hadi, and Gama, Joao, Event labeling combining ensemble detectors and background knowledge, Progress in Artificial Intelligence (2013): pp. 1-15, Springer Berlin Heidelberg.

FAQs

Is Azure ML easy to learn? ›

Fast and easy Machine Learning product

Microsoft Azure Machine Learning provides highest availability and is very pocket friendly for any sized company. Its intelligent bot service provides great customer service by interacting them with very high speed.

What is the best machine learning model for forecasting? ›

LightGBM. This is a popular machine learning technique that is primarily concerned with identifying intricate patterns in tabular datasets. As a result, sales data estimates are extremely accurate. When it comes to creating tabular-based forecasts, LightGBM occasionally performs better than the traditional ARIMA method ...

Can I learn Azure in a month? ›

Learn Azure in a Month of Lunches gets you started by breaking down the most important concepts and tasks into 21 bite-sized lessons, complete with examples, exercises, and labs. You'll be productive immediately, and when you finish you'll be well on the way to Azure mastery!

Which is the most difficult Azure exam? ›

Expert in Azure Solutions Architecture

Earning the Azure Solutions Architect Expert certification and passing its two difficult certification exams is one of the most difficult feats in cloud certification. So it comes as no surprise that CIO has named it one of the most in-demand IT certifications for 2021.

What data is needed for demand forecasting? ›

These forecasts use firm-level data and data about a firm's customers to predict demand for particular products and services. Data will often include historical sales, past and current financial metrics and sales team projections.

Which machine learning models are used for demand forecasting? ›

Regression Modelling

Regression models like Random Forest & XGBoost can also be used to forecast demand for the future. In our case, XGBoost has outperformed Random Forest. 24 data points are used as input and the 25th data points as prediction; the entire data set must be broken down into sets of 24+1 values.

What is an example of a demand forecasting model? ›

Some real-world practical examples of Demand Forecasting are – A leading car maker, refers to the last 12 months of actual sales of its cars at model, engine type, and color level; and based on the expected growth, forecasts the short-term demand for the next 12 month for purchase, production and inventory planning ...

How does Azure AutoML work? ›

How does AutoML work? During training, Azure Machine Learning creates a number of pipelines in parallel that try different algorithms and parameters for you. The service iterates through ML algorithms paired with feature selections, where each iteration produces a model with a training score.

Which steps can automate by AutoML? ›

More specifically, here are some steps in the machine learning process that AutoML can automate, in the order they occur:
  • Raw data processing.
  • Feature engineering and feature selection.
  • Model selection.
  • Hyperparameter optimization and parameter optimization.

Can you train ML model in Azure? ›

Azure Machine Learning provides several ways to train your models, from code-first solutions using the SDK to low-code solutions such as automated machine learning and the visual designer.

What is the difference between forecasting and machine learning? ›

Consider the problem of forecasting sales. A traditional method such as trend analysis might only consider past sales data in order to make a forecast. Machine learning, on the other hand, can analyze data from social media, customer reviews, and other sources in order to make a more accurate prediction.

Which is the simplest model used for forecasting? ›

The Delphi method. This method is commonly used to forecast trends based on the information given by a panel of experts.

Can I learn Azure without coding? ›

Yes, you can learn Microsoft Azure without learning to program. But this would restrict your work roles to just non-technical roles. If you're a beginner, learning a programming language is recommended, such as Python, to get a high-paying job in the cloud computing industry.

Does Azure ML require coding? ›

Azure Machine Learning designer: use the designer to train and deploy machine learning models without writing any code.

Can you learn Azure on your own? ›

You can learn Microsoft Azure on your own. There are various resources available in the market like online videos tutorials, e-books, articles and so on.

Can a non it person learn Azure? ›

Yes! There is no pre-requisite in learning Azure and the AZ-900 in this platform will help you understand Azure basics and for sure can make you explain what each and every offering Azure currently has.

Is learning Azure difficult? ›

The short answer is yes, Azure is easy to learn if you already know AWS for many reasons: Basic architecture concepts are the same across all the cloud vendors.

How many days required to learn Azure? ›

It takes the majority of Azure solutions experts over 2 months to prepare for the Azure Solutions Architect Expert exam – most of them over 4 months. If you're studying for the AZ-303 and you want to earn the Azure Architect cert, you should prepare yourself to take as long as 4 months or more to study for it.

How many times can you fail Azure exam? ›

If you don't pass an exam the first time, you must wait 24 hours before retaking it. A 14-day waiting period is imposed between all subsequent attempts (up to 5). You may not take a given exam more than five (5) times within a 12-month period from the first attempt.

Is Azure harder than AWS? ›

Both Azure and AWS may be difficult to learn if you don't know what you're doing, or they can be quite simple if you're well instructed. Many IT experts, however, argue that AWS is far easier to learn and obtain certification in.

Which course is easy in Azure? ›

Azure DevOps Fundamentals for Beginners [Udemy]

Since this course is designed for people who are new to DevOps terms and concepts, I highly recommend to both beginners and experienced software developers join this course.

What are the four types of demand forecasting? ›

Methods of Demand Forecasting. Demand forecasting allows manufacturing companies to gain insight into what their consumer needs through a variety of forecasting methods. These methods include: predictive analysis, conjoint analysis, client intent surveys, and the Delphi Method of forecasting.

What are the 6 components of demand forecasting? ›

Six components of demand: average demand, a trend, seasonal element, cyclical elements, random variation, and auto-correlation.

What are the 4 steps involved in demand forecasting? ›

Preparing data for analysis; Measuring data currency, coverage and accuracy; Understanding how order fulfilment impacts your forecasts; and. Managing spikes in the data that may or may not be real demand.

What are the algorithms for demand forecasting? ›

Algorithms in demand forecasting often involve cluster analysis, factor analysis and regression analysis. Eric is the Director of Thought Leadership at The Institute of Business Forecasting (IBF), a post he assumed after leading the planning functions at Escalade Sports, Tempur Sealy and Berry Plastics.

Can machine learning be used for forecasting? ›

Machine learning (ML) in demand forecasting makes it possible to avoid traditional challenges associated with planning such as long delivery lead times, high transport costs, high inventory and waste levels, and incorrect decision making due to inaccurate forecasts.

What are the five types of demand forecasting? ›

Some of the important demand forecast methods are predictive analysis, conjoint analysis, client intent surveys, and the Delphi Method of forecasting. Market research is based on customer survey data and can provide valuable insights that internal sales data cannot.

What are the two types of demand forecasting? ›

There are two methods in which demand forecasting can be done i.e (A) Survey Methods and (B) Statistical Methods. In the market research technique, consumer-specific survey forms are sent out in tabular format to get insights that an organization can't get from internal sales.

What is Azure AutoML? ›

Azure AutoML is a cloud-based service that can be used to automate building machine learning pipelines for classification, regression and forecasting tasks.

What are the key steps in the AutoML process? ›

There are generally eight steps in the AutoML process: data ingestion, data preparation, data engineering, model selection, model training, hyperparameter tuning, model deployment, and model updates.

What are the techniques of AutoML? ›

The AutoML techniques include Bayesian optimization (BO), reinforcement learning (RL), evolutionary algorithm (EA), and gradient approaches (Gra- dient).

What is the difference between AutoML and vision API? ›

AutoML Vision automates the training of custom machine learning models, whilst Vision API offers powerful pre-trained machine learning models through REST and RPC APIs. OCR (Optical Character Recognition) is highly known as one of Vision API's best feature.

What programming languages does Azure ML support? ›

On the other hand, Azure Machine learning service supports Python, R and . NET programming languages. And if you are working with Python then you can use some common frameworks like — PyTorch, TensorFlow, LightGBM and scikit-learn.

What languages does Azure ML designer use? ›

Standard ones are C#, Java, JavaScript, and Python. Build intelligent applications using pre-trained models available through REST API and SDK.

How much data do I need to train an ML model? ›

Generally speaking, the rule of thumb regarding machine learning is that you need at least ten times as many rows (data points) as there are features (columns) in your dataset. This means that if your dataset has 10 columns (i.e., features), you should have at least 100 rows for optimal results.

How is machine learning used in demand forecasting? ›

Unlike traditional methods, demand forecasting using machine learning is more flexible and allows the quick infusion of new information into models. That's why ML models are adaptive and accurate enough to bring obvious benefits to the business: Increase in sales.

What are the different types of forecasting techniques? ›

There are three basic types—qualitative techniques, time series analysis and projection, and causal models.

Is forecasting supervised or unsupervised learning? ›

Forecasting is a task and supervised learning describes a certain type of algorithm. So, saying that "forecasting belong to supervised learning" is incorrect. However, you can use supervised learning algorithms on forecasting tasks, even though this has well-known pitfalls you should be aware of. Save this answer.

How many methods of demand forecasting are there? ›

Based on future trends, the demand for the product is forecasted. An index of economic indicators is formed. There are three types of economic indicators, viz. leading indicators, lagging indicators, and coincidental indicators.

Which of the following are the 3 principles of forecasting? ›

The general principles are to use methods that are (1) structured, (2) quantitative, (3) causal, (4) and simple. I then examine how to match the forecasting methods to the situation. You cannot avoid judgment.

What forecast model does Excel use? ›

Exponential smoothing forecasting in Excel is based on the AAA version (additive error, additive trend and additive seasonality) of the Exponential Triple Smoothing (ETS) algorithm, which smoothes out minor deviations in past data trends by detecting seasonality patterns and confidence intervals.

Which method of forecasting is most widely used? ›

Top 6 Methods of Forecasting
  • #1 – Delphi Method. The agreement of a group of experts in consensus is required to conclude in the Delphi method. ...
  • #2 – Market Survey. ...
  • #3 – Executive Opinion. ...
  • #4 – Sales Force Composite. ...
  • #5 – Time Series Models. ...
  • #6 – Associative Models.

Should I learn Azure or Python? ›

Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best. Azure Machine Learning belongs to "Machine Learning as a Service" category of the tech stack, while Python can be primarily classified under "Languages".

Can I practice Azure for free? ›

Do I pay anything to start with the Azure free account? No. Starting is free. You won't be charged anything unless you decide to move to pay-as-you-go pricing.

How much does Azure training cost? ›

Class Information
Click Title for Dates & OutlinesDaysFee
DP-900: Microsoft Azure Data Fundamentals1$595
DP-050: Migrate SQL Workloads to Azure2$1195
DP-060: Migrate NoSQL Workloads to Azure Cosmos DB1$595
DP-100: Designing and Implementing a Data Science Solution on Azure4$2375
29 more rows

What is Azure tutorial for beginners? ›

Azure is a top Cloud Computing platform that comes from the Microsoft stables. In this Azure tutorial, you will learn about the architecture of the Azure cloud, various Azure products, and how enterprises are harnessing the power of Azure in computing, Azure Storage, database, networking, and content delivery.

How much does it cost to learn Azure? ›

The cost of Microsoft Azure certification in Bangalore is ₹4,800. Also, a candidate must wait for 24 hours to retake the Exam AZ-104: Microsoft Azure Administrator if needed.

What is the salary of Azure ML certification? ›

Average salary for a Azure Data Engineer in India is 6.5 Lakhs per year (₹54.2k per month).

Is Azure easy or hard to learn? ›

It provides a wide range of services such as compute, storage, networking, and applications. Azure is easy to learn. It has a well-defined interface, and the tutorials are well written. PRO TIP: No, Azure is not difficult to learn.

Should I learn Azure for machine learning? ›

If you have a lot of data to train your ML model, Microsoft Azure's Machine Learning API can help you accelerate the process. The ML API provides powerful tools to do ML that can help you build intelligent applications and gain insights from your data.

Can I learn Azure without any IT experience? ›

Yes, you can learn Microsoft Azure without learning to program. But this would restrict your work roles to just non-technical roles. If you're a beginner, learning a programming language is recommended, such as Python, to get a high-paying job in the cloud computing industry.

Can a non coder learn Azure? ›

You do not need coding skills to use Microsoft Azure.

The Microsoft Azure web portal provides all the functionality you need to manage your cloud infrastructure without previous coding experience.

What languages does Azure ML use? ›

Standard ones are C#, Java, JavaScript, and Python. Build intelligent applications using pre-trained models available through REST API and SDK.

Which cloud job has highest salary? ›

A cloud architect earns a higher remuneration than all other cloud professionals. ZipRecruiter released data that showed that their salaries go as high as $210,000 per annum.

Is azure a high paying job? ›

You can unlock opportunities for earning an excellent salary as an Azure Administrator if you passed the aforementioned certification exam. After being Azure Administrator certified, the odds of high-paying jobs increase significantly.

Can I get a job with just Azure certification? ›

A Microsoft azure certification can enable you to pursue a wide range of career options. You can become a cloud architect, a developer, or a solution architect. In addition, the certification enables you to work in various industries at different locations.

Which language is best for Azure? ›

Azure supports the most popular programming languages in use today, including Python, JavaScript, Java, . NET and Go.

Is Azure an Automl? ›

With Azure Machine Learning, you can use automated ML to build a Python model and have it converted to the ONNX format. Once the models are in the ONNX format, they can be run on a variety of platforms and devices. Learn more about accelerating ML models with ONNX.

Videos

1. Azure Machine Learning Studio Tutorial
(Dr Tun)
2. Azure Automated Machine Learning Overview and Walkthrough
(Azure Power Lunch)
3. Demand Forecasting with Meta Prophet AutoML
(Jeff Heaton)
4. Automated Machine Learning Azure || Azure Automl Tutorial || Azure Machine Learning Tutorial
(AI Geek)
5. Azure Synapse Analytics Spark - Azure AutoML Time Series Forecast
(Forrest Dermid)
6. Azure Machine Learning | Auto ML | Create ML Model with ML Studio and AutoML | Step by Step Guide
(Binod Suman Academy)

References

Top Articles
Latest Posts
Article information

Author: Otha Schamberger

Last Updated: 06/17/2023

Views: 5680

Rating: 4.4 / 5 (75 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Otha Schamberger

Birthday: 1999-08-15

Address: Suite 490 606 Hammes Ferry, Carterhaven, IL 62290

Phone: +8557035444877

Job: Forward IT Agent

Hobby: Fishing, Flying, Jewelry making, Digital arts, Sand art, Parkour, tabletop games

Introduction: My name is Otha Schamberger, I am a vast, good, healthy, cheerful, energetic, gorgeous, magnificent person who loves writing and wants to share my knowledge and understanding with you.