Trending November 2023 # How To Use Keras Model With Examples? # Suggested December 2023 # Top 14 Popular

You are reading the article How To Use Keras Model With Examples? updated in November 2023 on the website We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested December 2023 How To Use Keras Model With Examples?

Introduction to Keras Model

Keras models are special neural network-oriented models that organize different layers and filter out essential information. The Keras model has two variants: Keras Sequential Model and Keras Functional API, which makes both the variants customizable and flexible according to scenario and changes. Moreover, it makes the functional APIs give a set of inputs and outputs with a single file, giving the graph model’s look and feel accordingly. It is a library with high-level language considered for deep learning on top of TensorFlow and Theano. It is written in Python language.

Start Your Free Data Science Course

What is Keras Model?

Keras model is used for designing and working with neural network types that are used for building many other similar formats of architecture possessing training and feeding complex models with structures. It comprises many graphs that support the representation of a model in some other ways, with many other configurable systems and patterns for feeding values as part of training. Moreover, it provides modularity, which helps make flexible and well-suited models for customization and support. Two approaches based on this help develop sequential and functional models.

How to Use Keras model?

As the Keras model is a python-based library, it must be used for flexibility and customized model design, especially for prediction.

Keras model has its way of detecting trends with behavior for modeling and prediction.

Keras model uses a model.predict() class and reconstructed_model.predict(), which have their own significance.

Predict () class within a model can be used for creating and fitting trained data using prediction.

Another class, i.e., reconstructed_model.predict() within a model, is used to save and load the model for reconstruction. A reconstructed model compiles and retains the state into optimization using either historical or new data.

Certain components will also get incorporated or are already part of the Keras model for customization, which is as follows:

Optimizer: It is used for compiling a Keras model by passing certain arguments containing the Optimizer loss function to minimize and handle any unpredictable loss.

Loss of set and metrics: A model is compiled and is used in a way where it is used for including losses and metrics that will get taught at the time of training or modeling.

Weights: Certain input parameters must be fed to the model for required output within a Keras model.

Create Keras Model

Ways to create a model using Sequential API and Functional API

1. Using Sequential API

The idea is to create a sequential flow within layers that possess some order and help make certain flows from top to bottom, giving individual output. It helps in creating an ANN model just by calling a Sequential API() using the Keras model package, which is represented below:

model_any = sequential()

The next step is to add a layer for which a layer needs to be created, followed by passing that layer using add() function within it

model_any.add( inpt_layer)

Next, Is to access the model: which means to provide the relevant information about the layers defined or added as part of the model.


Model. input: will provide all relevant input then similarly model. the output will give relevant information about the same.

Serializing the model is another important step for serializing the model into an object like JSON and then loading it like

Then, the Summarization of the model happens, followed by Training and prediction of the model, which include components like compile, evaluate, fit, and predict.

2. Using Functional API

Functional API is an alternative to Sequential API, where the approach is almost identical. Still, it does support and gives flexibility in terms of a certain complex model where an instance is created first, followed by connecting the layers with an input or output.

Let’s create a model by importing an input layer.

Creating an input layer where we can define dimensional input shape for a model is as follows:


Add a dense layer for the input


Define your model accordingly:

Create a model with both input and output layers using functional API:

model=Model(inpt=data, otput=layer)

Keras Model Types

Keras model represents and gels well with Deep learning; it gives the following ways to generate model types:

1. Sequential Type Model

As its name suggests, the sequential type model mostly supports and creates sequential type API, which tries to arrange the layers in a specific sequence and order.

Most deep learning and neural network have layers provisioned in a sequence for transferring data and flow from one layer to another sequence data.

2. Functional API model

This model is used to create and support some complex and flexible models.

This also helps make Directed acyclic graphs (DAGs) where the architecture comprises many layers that need to be filtered from top to bottom.

It also helps define and design branches within the architecture with some inception blocks, functions, etc.

Highlight a few famous examples supporting the Functional API model Squeeze Net, Xception, ResNet, GoogleNet, and Inception.

3. Model Subclassing

Model subclassing is a way to create a custom model comprising most of the functions and classes that are the root and internal models to the full custom forward pass model.

It does help in assisting and supporting Functional or sequential types of models for manipulation and testing.

Examples of Keras Model

Below are the different examples of the Keras Model:

Example #1

x_val_0 = x_train_0[-10020:] y_val_0 = y_train_0[-10010:] x_train_0 = x_train_0[:-10000] y_train_0 = y_train_0[:-10060] print(“prediction shape:”, prediction.shape)

Example #2

This program represents the creation of a model using Sequential API ().


Example #3

This program represents the creation of a model with multiple layers using functional API()



Keras model is used for a lot of model analysis related to deep learning and gels well with all types of the neural network, which requires an hour as most of the task carried out contains an association with AI and ANN. Tensorflow, when incorporated with Keras, makes wonder and performs quite well in analysis phases of different types of models.

Recommended Articles

This is a guide to Keras Model. Here we discuss the definition, how to use and create Keras Model, and examples and code implementation. You may also have a look at the following articles to learn more –

You're reading How To Use Keras Model With Examples?

How To Use Vba Timer Function With Examples?


Valuation, Hadoop, Excel, Mobile Apps, Web Development & many more.

This function cannot be performed in Excel. In Excel, we can only see the time and add it to any cell but cannot measure it as Timer.

You can download this VBA TIMER Excel Template here – VBA TIMER Excel Template

Examples of VBA TIMER

Following are the different examples:

Example #1

In this example, we will see how to count or measure the time to run the completed code. For this, go to the insert menu of VBA and select a Module as shown below.

Once we do that, it will open a new module, as shown below. Write the sub-category of the current function name or any other name you choose.




End Sub

Now define two dimensions as Seconds1 and Seconds2 as a SINGLE function, which means there were two individual single number data (Without decimal).






As Single



As Single

End Sub

To Start the Timer, select the defined dimension Seconds1 and assign the function TIMER. And do the same thing for another dimension Seconds2 as shown below. The purpose of doing this is to measure the start and end of the time.






As Single



As Single

Seconds1 = Timer() Seconds2 = Timer()

End Sub

This completes the timer portion of the code. Now we need to see the time-lapse in running the code. We need to print the output in the message box, as shown below.

In the below screenshot, we printed the text “Time taken:” and the difference between Seconds2 and Seconds1 with unit seconds.






As Single



As Single

Seconds1 = Timer() Seconds2 = Timer() MsgBox ("Time taken:" & vbNewLine & Seconds2 - Seconds1 & " seconds")

End Sub

We will see a message box with a counted time of 0 Seconds, as the time required to run the complete code was 0.

We may see slightly more differences if the written code is huge.

Example #2

There is another method where we can choose a time-lapse of any small amount of waiting time and let the user or operator wait till the process gets completed. This can be used to create a tool or macro with a huge line of code structure. Doing this will allow the user to wait for the whole code to run and the operation to complete because doing something when the code is running may crash the file.

For this, open a new module and write the Sub-category in the name of the required function or any name, as shown below.



End Sub

Now to make this code small and simple, we will use the inbuilt functions of VBA. And for this type of Application, follow a dot (.), and then, from the list search, select the Wait function as shown below.

This Wait function will allow us to add waiting time till the complete code may get run. This wait time is Boolean. After that, when running the program, it will display the execution time as 0 seconds plus the desired waiting time using TimeValue.



Timer2() chúng tôi Now + TimeValue("00:00:10")

End Sub

Here we consider 10 seconds as the waiting time to complete the code run.

To print the waiting time, we need to print the message in the message box with the help of the command MsgBox, as shown below.



Timer2() chúng tôi Now + TimeValue("00:00:10") MsgBox ("Waiting Time - 10 Seconds")

End Sub

As we can see, in the message box, we added the text “Waiting time – 10 Seconds” to be printed.

Now run the code using the F5 key or manually. After waiting for 10 seconds, we will see a message box with the message used in the code.

Example #3 – VBA Timer

There is another easy way to see and show the current time in VBA. For this, we will directly use MsgBox and the rest of the code there only. For this, open a new module in VBA and write Sub-category in the name of the used function or any other name as shown below.




End Sub

Now write MsgBox, which is a command to print the message. In the bracket, we can write any message to be printed in the message box. Here we have chosen “Time is:” as our text, and along with it, “& Now ()” is used. It will display the current time with the date in the pop-up message box.



Timer3() MsgBox ("Time is : " & Now())

End Sub

Now in another message box, we will count the number of seconds passed in the whole day till the current time by the clock. For this, write MsgBox, and between the brackets, write the text “Timer is:” along with “& Timer (),” as shown below.



Timer3() MsgBox ("Time is : " & Now()) MsgBox ("Timer is: " & Timer())

End Sub

Once done, run the code using the F5 key or manually. We will get two separate message boxes, as shown below.

In the first message box, we will get the current date and time in DD/MM/YYYY and hh:mm:ss AM/PM format, which is the default format Excel. In the second message box, we will see time lapsed on that day in seconds.

The second message box shows Timer is 59953.62 Seconds. If we divide that by 60 Seconds and 60 Minutes, we will get the exact Timer in hours lapsed on that day which is 16.65 Hours.

Things to Remember About VBA TIMER

Always save the file in Marco Enabled Workbook to avoid losing the written VBA Code.

Always compile the complete code step by step to ensure every code is incorrect.

In example #1, the SINGLE function displays the number as a whole. Even if we use DOUBLE, it will give the result in decimal.

Recommended Articles

This has been a guide to Excel VBA TIMER. Here we discussed how to use the VBA TIMER function, some practical examples, and a downloadable Excel template. You can also go through our other suggested articles–

How Java @Inherited Work With Examples To Implement

Introduction to Java @Inherited

The @inherited in Java is an annotation used to mark an annotation to be inherited to subclasses of the annotated class. The @inherited is a built-in annotation, as we know that annotations are like a tag that represents metadata which gives the additional information to the compiler. Same as built-in annotation, which is exits in the Javadoc, it is possible to create another meta-annotation out of existing in the java. There are actually two types of annotations, one type of annotations applied to the java code like @override, and another type of annotations applied to the other annotation like @target @inherited. So @inherited is an annotation that is applied to other annotation whose we want to create subclasses or we want to inherit to make another user define annotation.

Start Your Free Software Development Course


The syntax of the @inherited in java is –

@Inherited public @interface MyAnnotation {// code of the MyAnnotation } @MyAnnotation public class SuperClass { public class SubClass extends SuperClass {

As in the above syntax, the class SubClass is inherited from the annotation @MyAnnotation, because it is inherited from SuperClass, and SuperClass has a @MyAnnotation annotation.

How does @Inherited work in Java?

The @Inherited annotation is used or annotated to the annotation (MyAnnotation as in above syntax), which the @interface should prefix. Next, this annotation (MyAnnotation) can be used where ever need to apply as @MyAnnotation. These annotations can be applied just before the declaration of an element and can be applied to any element of the program like variables, class, constructors, methods, etc. When this user-defined annotation is annotated on the superclass, it is automatically inherited to subclasses (subclass as in the above syntax), as we can see in the below examples.

Examples to Implement @Inherited annotation in Java

Next, we write the java code to understand the @Inherited annotation more clearly with the following example where we use @Inherited annotation to inherit in the subclass from the superclass, as below –

Example #1

First, we create an interface for annotation @MyAnnotation, which has two fields, name and code.

Code: chúng tôi

package demo; import java.lang.annotation.Inherited; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Inherited @Target ({ElementType.TYPE, ElementType.METHOD}) @Retention (RetentionPolicy.RUNTIME) public @interface MyAnnotation { String name () default "unknown"; String code () default " "; }

Next, we create a superclass to use the above annotation by annotating any class or method or variable and provide the state name and state code.

Code: package demo; import demo.MyAnnotation; @MyAnnotation (name = "Karnataka", code = "KA") public class Super { public String getstateinfo () { return null; } }

Next, we use an annotation because it is metadata, which means we should be able to get this metadata or information to use the annotation information when we need it.

Code: chúng tôi

package demo; import demo.MyAnnotation; import demo.Super; import java.lang.annotation.Annotation; import java.lang.reflect.AnnotatedElement; import java.lang.reflect.Method; public class Demo extends Super { public static void main ( String[] arg ) throws Exception { new Super (); getstateinfo (obj); Method m = obj.getMethod ("getstateinfo", new Class[]{}); getstateinfo (m); } static void getstateinfo (AnnotatedElement e) { try { System.out.println ("Finding annotations on " + e.getClass ().getName ()); Annotation[] annotations = e.getAnnotations (); for (Annotation a : annotations) { if (a instanceof MyAnnotation) { MyAnnotation stateInfo = (MyAnnotation) a; System.out.println("Name of Annotation :" + stateInfo.annotationType ()); System.out.println("State Name :" + chúng tôi ()); System.out.println("State code :" + chúng tôi ()); System.out.println(new Demo ().getClass ().getAnnotation (MyAnnotation.class)); System.out.println(new Super ().getClass ().getAnnotation (MyAnnotation.class)); } } } catch (Exception ex) { System.out.println( ex ); } } }

Output: When we run the chúng tôi class, the output is.

Explanation: As in the above code, the MyAnnotation annotation is created an also annotated by @Inherited. In the Superclass, the MyAnnotation annotation was using by the statement @MyAnnotation and annotated to the class. And another class Demo is created, which is the subclass of the Superclass because it is extended to Superclass. Farther in the main () method of the Demo class, an object of the Superclass is creating and access its method that is getstateinfo (), through this methoditerating all its annotations and checking whether the annotation is inatnce of MyAnnotation, if yes then printing some of the information as we can see above. But one important thing is that the Demo class or any of its elements not annotated to the MyAnnotation, but it still showing that the MyAnnotation is annotated to this class because it is inherent to the Superclass and Superclass is inherited MyAnnotation.

Next, we rewrite the above java code to understand the @Inherited annotation more clearly with the following example where we will not use @Inherited annotation to annotation MyAnnotation (as annotation created in the above example) to check whether this annotation is inherited in the subclass from its superclass or not, as below –

Example #2

Code: chúng tôi

package demo; import java.lang.annotation.Inherited; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Target ({ElementType.TYPE, ElementType.METHOD}) @Retention (RetentionPolicy.RUNTIME) public @interface MyAnnotation { String name () default "unknown"; String code () default " "; }

Output: Next, when we run the chúng tôi class, the output is.

Explanation: As in the above output, we can see that after state code, the “null” value is printed, that is the return value of the statement “new  Demo ().getClass ().getAnnotation (MyAnnotation.class)”, which means that the demo class is not inherited (or annotated) any MyAnnotation annotation from it Superclass, because the @Inherited annotation is not annotated to MyAnnotation to inherit it in the subclass.


The @inherited in java is a built-in annotation applied to another annotation. It is used to marks an annotation to be inherited to subclasses of the annotated class. The @inherited is available in the package java.lang.annotation.Inherited.

Recommended Articles

This is a guide to Java @Inherited. Here we discuss an introduction to Java @Inherited along with the working, appropriate syntax and respective examples to implement. You can also go through our other related articles to learn more –

How To Use The Sostac® Planning Model And The Race Framework

Marketing plan integrating the RACE Framework alongside PR Smith’s SOSTAC® planning model

Given the increasingly omnichannel nature of marketing today, applying an effective, data-driven approach to your marketing strategy is more important than ever. But it can be difficult finding a structure that works for your team and integrates your objectives across your customers’ journeys. That’s where SOSTAC® and the RACE Framework come in.

For marketers looking to rapidly grow their businesses through an insights-driven, efficient and streamlined marketing strategy, we recommend utilizing the Smart Insights RACE framework to get started. This popular structure enables marketing managers and teams to critically evaluate each stage of their marketing funnels across the customer lifecycle of Plan – Reach – Act – Convert – and Engage.

SOSTAC® is another widely used tool for marketing and business planning.  The positioning of the SOSTAC® planning model divides up the close working that agile digital marketers seek to create between objective setting, situation, and control. That’s where the RACE Framework, which integrates data throughout the planning process, comes in.

The SOSTAC® planning model, which walks through the process of creating and executing a marketing plan, encourages data from the control stage of previous marketing plans to be fed back into future situational analysis. Through this defined structure, strategists and planners using this model will always inform their future objectives with recent learnings. Moreover, both models offer valuable insights for using data in marketing strategy planning today.

In this post, I give an example of how I have applied PR Smith’s SOSTAC® Planning Model – which is my interpretation of SOSTAC®, alongside the RACE Framework.

What is the RACE Framework?

The popular RACE Framework has been a strategic jumping-board for marketers and managers to rapidly review and adapt their marketing strategies since 2010. By implementing real-time customer data alongside the latest trends and innovations, marketers can confidently plan, manage, and optimize their customer journies.

The 5-step RACE Framework empowers digital leaders and newbies to track and measure their key customer touchpoints and quickly identify opportunities to build on their existing strategies and tactics to improve their results and accelerate their ROI.

Plus, the RACE Framework can be applied to businesses in any stage of development, with a variety of objectives and resources. For example, our new free guide for businesses looking to adjust their digital marketing strategies during inflation is integrated across RACE, to support marketing leaders to make the right decisions for their marketing strategies.

Structure your marketing plan around a funnel proven to boost performance. Join Smart Insights as a Free Member for instant access to our free digital marketing plan template to hone your skills and drive the results you need.

Free digital marketing plan template

Our popular marketing planning template is structured across the Smart Insights RACE Framework. Join Smart Insights as a Free Member to download our digital marketing plan template today

Access the Free digital marketing plan template

What is SOSTAC®?

Created in the 1990s by writer and speaker PR Smith, the SOSTAC® framework has built an authoritative reputation as the framework of choice for different scales of business including multinational and start-up organizations across the world.

The SOSTAC® process covers six key areas. We will discuss each of these areas in depth, and apply the RACE Framework to find out more.

Situation Analysis






Multichannel marketing growth

If you’re looking for a visual example, the process for creating a digital marketing plan has also been summarised in this Multichannel Marketing Plan infographic. My recommendations cover many of these planning and management activities, but not all, due to space.

Stage 1. SOSTAC® Situation Analysis

Stage 1 of implementing your SOSTAC® planning framework is setting out the situation analysis. The situation should provide an overview of your organization – who you are, what you do, and how you interact and trade online by addressing internal and external factors impacting the business.

This section should be painting a picture of your organization and to do this, consider using some of the following methods to bring this section to life:

Who your digital customers currently are (how do they interact with the brand, the platform/s used, demographic breakdown.

SWOT analysis – what are the strengths, weaknesses, opportunities, and threats to the whole organization.

Competitor analysis – who are your competitors? How do they compete? e.g. price, product, customer service, reputation, what are their key differentiators?

Digital channels landscape. list out all the various digital channels used and the success of each for your organization – what’s performing well or not.

Free digital marketing plan template

Our popular marketing planning template is structured across the Smart Insights RACE Framework. Join Smart Insights as a Free Member to download our digital marketing plan template today

Access the Free digital marketing plan template

Below I’ve gone into a bit more detail for a few of these areas:

Digital Customers

An analysis of who your digital audience is should be defined in a section. This is essential to ensure you’re providing a clear picture of existing customers and who you are looking to also target. If you’re operating in a competitive environment, consider including what your online value proposition (OVP) is should you have one?

For example, how do you envision your organization to differentiate itself from the competition? To help define your organizations OVP, David Chaffey recommends the 6Cs of customer motivation framework.

Customers Personas

Creating customer personas helps brings to life who your existing customers are and what their motivations are. Persona creation also helps to get buy-in across your organization in helping to paint a picture and bring to life your customer profiles. To create a series of personas, a majority of this work can be completed by extracting existing data through your CRM system and analytics and then build on this to create a profile picture of your existing customers.

For an e-commerce retailer, information you could consider extracting from your CRM could include:

Male/Female Split – What is the percentage split?

Age profiling – Average age as well as being able to develop categories of age groupings

Location/Address details – Percentage of customers who reside in the UK as well as overseas

Purchase history – Build up a clearer picture on historical purchases, average order value, trends in brand loyalty, products ordered by size

Method of purchase (e.g. credit card, debit card, cheque)

Route to purchase – Were purchases made through a search engine, email newsletter, affiliate website, direct from the site or through the call center, i.e. Mixed-mode

Frequency/Recency – Frequency of purchase?

Based on this data, the next stage is to turn this data into more of a personality that your organization can relate to. For example, I’ve created 2 x personas for a fictional online retailer:

Persona A:

Steve is a 28 yr old professional, renting in London, single and with a high disposable income. He has a keen interest in football and supports a premiership football team. He likes to display his support for his football club every year, buying the clubs latest replica shirt online.

Steve is comfortable in ordering online and engaging with social media to keep up to date with the latest football news and football product launches. As the World Cup provides the chance to showcase international replica shirts, this provides Company X with the chance to engage with Steve to make an additional purchase of an international replica shirt as well as purchasing his favorite club shirt.


Persona B:

Clare is a 33 yr old professional who is in a relationship. She likes to keep up with the latest fashion trends and is comfortable in ordering at her favorite online shop. Her boyfriend is a keen football fan who likes to keep up with football fashion by purchasing the latest football replica shirts of his favorite team. Clare may engage with the hype of the World Cup and this could provide an opportunity for her to make and purchase at Company X for her boyfriend and the International team they choose to support during the tournament.


You can see more examples and guidance in the Smart Insights Persona Toolkit.

SWOT analysis

It’s worth considering creating a SWOT analysis of your organization, thinking laterally by embracing all your internal departments rather than just focusing on the digital marketing department and gathering evidence and interviews on your colleagues, suppliers, customer’s thoughts.

Not only will it provide a better picture to lay out a strategy for your organisation as a whole but it also provides you with the opportunity to interview and build relationships across the organisation.

Dave Chaffey has examples of a marketing SWOT examples in his post where he recommends the TOWs matrix method to link the SWOT forward to strategies.

Stage 2. Objectives

Stage 2 of your digital marketing planning framework should focus on the objective/s of your strategy. Stage 1 looked at the situation analysis which provided an overview for your organization, specifically: who you are, what you do, and how you interact and trade online by addressing internal and external factors impacting your business.

To help create your objectives, I recommend you use two guides to help to create both measurable and realistic goals to achieve for your digital marketing strategy, focusing on the 5 S’s and ensuring you make each objective SMART.

The 5 Ss goals refer to Sell, Serve, Speak, Save and Sizzle which were created by PR Smith and the concept first published it in various online e-learning packages and reference can also be found in the book, Emarketing Excellence. From defining your objectives relating to the 5 S’s to make it measurable, it is important to turn each objective into SMART objectives, which stands for:

Specific – Are you focusing enough on a specific issue or challenge within the organization?

Measurable – How do you plan to assess the performance? Will it be monitored through quantitative or qualitative analysis for example?

Actionable – Will it assist in improving performance if achieved?

Relevant – Is the issue to be addressed within the domain of the digital marketing team?

Time-related – Have you set a specific time period?.

There are several different SMART objectives that can be set for example, lead generation, acquisition or engagement, or retention. For example, if we revisit the fictional online retailer, we can create the following objectives that have been created to follow the SMART formula:

Objective 1. Engagement: Achieve 50% of existing customers to service their online accounts by July 2023.

Objective 2. Acquisition: Increase brand visibility from April 2023 through to July 2023. To be measured through Google analytics.

Objective 3. Engagement: Increase email frequency from one email per quarter to one email per week from May 2023 through to July 2023.

Stage 3. Strategy

Strategy means how do you plan to get there in terms of fulfilling the objectives set. The strategy section should also identify which segments of the market you aim to target with your plan.

We have already identified Company X will be focusing on its key strengths: product range, organizational structure, and global operations (as detailed in the SWOT analysis) whilst remaining realistic to its lack of financial resources in comparison to the competition.

It is recommended Company X develop a site geared for the World Cup which will provide a dedicated section used to service the customer base and to meet and service the objectives set for the strategy. The site will act as a key differentiator from the competition and a reason to visit and carry out a transaction. The strategy will be to outflank competitors to grab market share for world cup online traffic.

To summarise the Objectives set, specific questions have also been raised below to be considered within the strategy:

1. Acquisition

2. Engagement

Achieve 50% of existing customers to service their online accounts by July 2023. Understand our existing customer database and how they interact with the website.

3. Engagement

Increase email frequency from one email per quarter to one email per week from May 2023 through to July 2023. How is the company currently communicating with its existing customer database? Which of our competitors have implemented communication with their customers?

We’ve got marketing tools and templates designed to get you set up using the RACE Framework to plan, manage, and optimize your marketing, and drive the results you need.

All our marketing solutions are integrated across the RACE Framework, so you can be confident that your customer touchpoints are aligned and working efficiently to fill your marketing funnel.

RACE Ahead Of Inflation

Download our 10 growth insights to create a RACE digital marketing strategy during inflation

Access Now For Free

Stage 4. Tactics

Tactics cover the specific tools of the digital mix that you plan to use to realize the objectives of your digital marketing plan. The strategy section should also identify which segments of the market you aim to target with your plan.

We have already identified Company X will be focusing on its key strengths: product range, organizational structure, and global operations (as detailed in the SWOT analysis) whilst remaining realistic to its lack of financial resources in comparison to the competition.

It is recommended Company X develop a microsite geared for the World Cup which will provide a dedicated section used to service the customer base and to meet and service the objectives set for the strategy. Competitor research was completed in stage 1, situation analysis, and a microsite will act as a key differentiator from the competition and provide the foundation to meeting the objectives of the strategy.

Marketing mix to focus on your objectives

To help achieve the objectives above, use the 7PS of the Marketing Mix to focus on the key attributes to be considered by Company X to meet your objectives. The marketing mix also provides a checklist of key areas to focus on:

Product – Company X enjoys global accreditation with the leading sports manufacturers. It, therefore, needs to ensure sufficient stock levels have been secured for each team playing at the World Cup finals.

Price – Review the pricing of World Cup products and to ensure it is consistent with online competitors.

Place – Operating as an online retailer, this provides the main hub for all stock movements utilizing courier companies to increase efficiency in delivering stock to the customer in the quickest time possible.

Promotion – Can utilize many of its online marketing tools available to utilize its effectiveness in promoting the product range to create a unique selling point (USP):

Email marketing: Through past purchase history, set up targeted emails to send to existing customers based on the team they support. Drive team-specific promotions within each email e.g. Buy One Get One Free products, unique discounts on product lines. Also push refer a friend emails with incentive e.g. Send this email to five of your friends and if they register you get a 15% discount off your next order.

Online voucher codes: Set up voucher codes that offer a 10% discount which is time specific to provide reporting (e.g. does the voucher include an expiry date).

Social Media: Utilise the company accounts to engage with other football news accounts and provide information on the latest World Cup products and promotions.

People – Utilise the customer service team to engage with customers should it be needed to provide support for customers who would like to answer questions on delivery of their order, tracking their order. Introduce Live Chat to allow existing and new customers to engage with staff.

Process – The customer would be directed to the website through a referral or recommendation. Locate the product of interest and add to the shopping basket. Register your details online and add your credit card details to complete the purchase. The customer will then receive an automated email response to confirm their registration along with an email to confirm the order. A separate email will be sent to notify the customer when the order has been despatched.

Partnerships – List important strategic relationships with other companies that operate in non-competing sectors that have become an important selling point to differentiate itself from other online competitors.

Marketing tactics

When completing your strategy, you would be going into a lot more detail for each tactic along with specific KPIs for each tactic

Tactic 1: SEO

From the competitor analysis, one of the key weaknesses of Company X over its competitors was a lack of financial muscle. However, SEO does provide the company with a platform to compete head-on, specifically, Search Engine Optimisation.

To understand what a positive impact SEO would offer in terms of increasing brand visibility for this target market, a keyword analysis should be performed, specifically on the Google UK market since ~90% of all searches in many markets are conducted through Google

As with SEO, the keyword research will provide a foundation on what keywords to target with a budget. Much of the competition does not operate a PPC campaign, therefore this is an area to capitalize on, by building traffic to the World Cup site as well as increasing brand visibility.

As with SEO, there will be an ongoing refinement of keywords to target as well as budget to allocate per keyword. Due to stock fluctuations, keyword budgets will need to be paused or activated based on stock volumes and demand for the product.

Tactic 3: Affiliate Marketing

A cost-effective vehicle in driving brand visibility for Company X is the launch of a program. Building your affiliate marketing network is a central component to ensure you’re maximizing opportunities in generating incremental revenue streams through a network of publishers that are active within your program either through lead generation, display, search, or voucher codes.

Tactic 4: Email Marketing

Free digital marketing plan template

Our popular marketing planning template is structured across the Smart Insights RACE Framework. Join Smart Insights as a Free Member to download our digital marketing plan template today

Access the Free digital marketing plan template

Stage 5. Action

Stage 5 of your digital marketing planning framework is focused on how to bring your plan to life, to make actionable measures.

The action section covers what needs to be achieved for each of the tactics listed in the previous section of the SOSTAC® plan to realize the objectives of your digital marketing plan.

Case Study to show the tactics used

Continuing with the theme of the football World Cup, we have identified Company X will be focusing on its key strengths: product range, organizational structure, and global operations (as detailed in the SWOT analysis) whilst remaining realistic to its lack of financial resources in comparison to the competition.

For this case study, the following tactics were listed and below each tactic, actions have been included to ensure each has been considered before launch. This is not an exhaustive list but provides an outline to what should be considered:

Tactic 1: SEO

Keyword analysis – What keywords are we targeting?

On-page optimization – Of the targeted keywords, we need to optimize the website pages of the microsite to ensure the best rankings within Google.

Content – Identifying and reaching out to industry-leading bloggers, forums and websites prepared to create guest content and build a relationship to propel your brand’s proposition around the World Cup.

Link building – Bring together a targeted group of websites to target with similar keywords and are seen as high authority sites.

Keyword analysis – What keywords are we targeting?

Budget – What budget has been ring-fenced for PPC?

Landing pages – Do the keywords we are targeting direct customers to the correct webpage.

Product Availability – Are we communicating with our buyers to ensure we are bidding on keywords associated with products available to purchase?

Tactic 3: Affiliate Networks

Affiliate Program – What is the competition doing? e.g. commission tiers, online marketing tools made available to publishers, volume of affiliates.

Business Development – Have we built up a working relationship with the affiliate program and will they assist in identifying and recruiting key affiliates to the program.

Tactic 4: Email Marketing

Strategy and tactics for today’s marketers

Stage 6. Control

The final stage is to lay out how you plan to monitor and measure your performance based on the objectives set at stage 2. The tactics have been considered and your control section is providing you with a series of dashboards tailored for each tactic.

Look to set the KPIs per tactic that tie back into the objectives set and set up a weekly/monthly set of monitoring dashboards to ensure you are on track to meet the objectives set.

Here is where the RACE Framework really comes into its own, since we recommend KPIs at each stage of the customer journey.

Naturally, the way you measure your reach activities will be different to conversion. Planning your marketing activities through RACE allows you to anticipate and fill your marketing funnel, or make the necessary changes needed in order to achieve your business goals.

RACE Ahead Of Inflation

Download our 10 growth insights to create a RACE digital marketing strategy during inflation

Access Now For Free

It’s important to also communicate your concerns with the wider team to ensure there is buy-in to the company plan. The more data you have to back up your strategy the better. That’s why we recommend our RACE benchmarking resources to inform your objectives and control.

For further information on PR Smith SOSTAC® planning guide, I recommend you purchase the book, The SOSTAC® Guide To Writing Your Perfect Digital Marketing Plan or Smart Insights Expert members can access it as part of their resources.

SOSTAC® Note from PR Smith:

How To Fix Dangling And Misplaced Modifiers (With Examples)

A modifier is a word, phrase, or clause that describes, defines, or qualifies something else in a sentence.





in class.

She decided to buy the

blue vintage



Modifiers can also be phrases or clauses:

Anna smiled when she walked past

the bar

where she met her husband


Having received a promotion at work



went out to buy a bottle of champagne.

The most common modifier mistakes are dangling modifiers and misplaced modifiers. Both terms refer to modifiers that are connected to the wrong thing in a sentence.

A misplaced modifier is too far away from the thing it’s supposed to modify, while a dangling modifier’s intended subject is missing from the sentence altogether.

What is a misplaced modifier?

A misplaced modifier is a modifier that is positioned too far away from the word, phrase or clause it is intended to modify and, as a result, appears to be modifying something else.

A misplaced modifier can be fixed by moving it so that it is connected to the right subject.

Misplaced Corrected

The waiter presented a steak to

the guest

that was medium rare


The waiter presented a



to the guest.

The waiter presented

a steak

that was medium rare

to the guest.

In this example, the misplaced modifier implies that the guest was medium rare. Moving the modifier correctly indicates that it was the steak that was medium rare.

Read more about misplaced modifiers

What is a dangling modifier?

A dangling modifier occurs when the subject of a modifier is missing from the sentence.

Dangling modifiers often take the form of an introductory phrase followed by a clause that doesn’t state the intended subject.

Dangling Corrected

Fumbling in her purse


the keys

could not be found.

Fumbling in her purse



could not find the keys.

As she fumbled in her purse


the keys could not be found


In this example, the subject who was fumbling in her purse is not stated, so it seems like the keys were doing the fumbling. A dangling modifier like this can be fixed either by rewriting the main clause in active voice, or by revising the introductory phrase.

Read more about dangling modifiers

Sources in this article

We strongly encourage students to use sources in their work. You can cite our article (APA Style) or take a deep dive into the articles below.

This Scribbr article

Luo, A. (2023, October 24). How to Fix Dangling and Misplaced Modifiers (with Examples). Scribbr. Retrieved July 16, 2023,

Cite this article


Butterfield, J. (Ed.). (2023). Fowler’s dictionary of modern English usage (4th ed.). Oxford University Press.

Garner, B. A. (2023). Garner’s modern English usage (4th ed.). Oxford University Press.

How To Use Sas Libname With Statement?

Introduction to SAS Libname

The SAS libname is associated with the named as the associates or disassociates the SAS library with by using the shortcut keys like libref that include the characteristics of the SAS library concatenate with the SAS libraries including the SAS catalogs that moved to the SAS Global Statements with the temporary name associated with the physical name of the SAS data library to read or write the data sets.

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others

What is SAS Libname? How to Use SAS Libname?

SAS library is to define the Libname statement for assigning the libref with the global statement on the Interactive SAS session, which remains assigned until they cancel or change the libref. It is a collection of one or more number of SAS files recognized by the SAS libraries that are more referenced and storage units.

At the beginning SAS session, the SAS will automatically create the two libraries that can access the work as the temporary library and other SAS users are the permanent library. The SAS dataset is the table view of the rows and columns according to the variables path list is locked down state, which aggregates the data storage location on the SAS file Storage. Suppose any SAS name is assigned to a new libref and disassociated to the libref from the SAS library to list the attributes previously assigned to the library specification with a combination of the two datas to the SAS session. In addition, it has a built-in temporary library called the Work library to store the place placed in the current session for losing datasets created and stored in the work library for closing the SAS session.

The data step will start with the data work using the Stats Rule on the work library. It is beneficial to manipulate the dataset in multiple steps with necessary actions. Data sets with interim steps for the work library to help the stored data sets with nervous manipulating the original file from the dataset into the work library and can manipulate it.

Steps to use SAS libname

1. After login the SAS OnDemand for Academics Dashboard website.

3. Choose SAS Studio on the Applications UI.

4. Navigate to the SAS Studio Application and choose the Libraries.

7. Libraries have all the required datas and classes.

Using Libraries in SAS

Depending on the library name, the SAS file will be created, such as the SAS data set, and it will be stored in either temporary or permanent data libraries. It will create a SAS file and will use the library name to work with the specified library name in all the files that will be temporary SAS libraries. Libref is the data label and alias for temporarily assigned folder location on the full path name, including drive and folders to the form, which is recognized by the SAS system. It exists only during the user session, which is created already on the logical concept that describes the physical location stored with the file. Follow the rules for SAS users on the language reference with a dictionary for more information on SAS data libraries.

Access the new library dialog box using the GUI librefs with the new library toolbar icon from the LIBASSIGN command using the explorer window whenever it will use all of the GUI options from the New Library dialog box to specify the librefs and multiple folders engines if the second explorer window is on the right side of the libassign command box of the SAS workspace. The hard-coded file path has two pieces of data information, namely the file location along with the name and type of the data. SAS library statement starts with the LIBNAME keyword followed by the library name. Libref is one of the engines. Finally, the location of the files running with the global and RUN statements and deleting the SAS library automatically if the SAS session starts the statement. It will delete the libref using the required syntax with the Clear keyword.


Libname first clear; SAS Libname Statement

The SAS associates or disassociates from the SAS library with a libref for the shortcut statement, which clears all the librefs and characteristics lists of the SAS library. It allows SAS libraries to concatenate the SAS catalogs that moved to the SAS Global statements. The user will enable the interactive SAS session with libref and assign the statement which remains assigned to change the SAS session. It will mainly follow the same rules, like four types of rules, not more than the eight characters required; the first set of characters should be the letter, followed by the subsequent set of characters along with letters, numbers, and underscore symbols.



libname June2 sqlsvr noprompt="uid=siva; pwd=raman; dsn=sqlservr;" stringdates=yes; proc print data=June2.testemployees; where city='MAS'; run;



SAS libref is one of the main libraries from the user SAS session, and it will be used automatically from the SAS session or with the Libname keyword statement. It refers to the specified set of keywords in data formats like excel, XML, and SPSS. If we delete the libref only, we cannot delete the datas from the SAS code.

Recommended Articles

This is a guide to SAS Libname. Here we discuss the introduction and how to use SAS libname with the statement. You may also have a look at the following articles to learn more –

Update the detailed information about How To Use Keras Model With Examples? on the website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!