Advertisement

Viser innlegg med etiketten adverts. Vis alle innlegg
Viser innlegg med etiketten adverts. Vis alle innlegg

mandag 6. juni 2016

Life Cycle of a Data Science Project

When working with big data, it is always advantageous for data scientists to follow a well-defined data science workflow. Regardless of whether a data scientist wants to perform analysis with the motive of conveying a story through data visualization or wants to build a data model- the data science workflow process matters. Having a standard workflow for data science projects ensures that the various teams within an organization are in sync, so that any further delays can be avoided.


The end goal of any data science project is to produce an effective data product. The usable results produced at the end of a data science project is referred to as a data product. A data product can be anything -a dashboard, a recommendation engine or anything that facilitates business decision-making) to solve a business problem. However, to reach the end goal of producing data products,data scientists have to follow a formalized step by step workflow process. A data product should help answer a business question. The lifecycle of data science projects should not merely focus on the process but should lay more emphasis on data products. This post outlines the standard workflow process of data science projects followed by data scientists.







Are you interested in learning how to implement the practical aspects of a data science project?


Write to: kontakt@beyondit.no, mob: 004794875183


Data science projects do not have a nice clean lifecycle with well-defined steps like software development lifecycle(SDLC). Usually, data science projects tramp into delivery delays with repeated hold-ups, as some of the steps in the lifecycle of a data science project are non-linear, highly iterative and cyclical between the data science team and various others teams in an organization. It is very difficult for the data scientists to determine in the beginning which is the best way to proceed further. Although the data science workflow process might not be clean, data scientists ought to follow a certain standard workflow to achieve the output.





If you would like more information about Data Science careers, please click the orange "Request Info" button on top of this page.


People often confuse the lifecycle of a data science project with that of a software engineering project. That should not be the case, as data science is more of science and less of engineering. There is no one-size-fits-all workflow process for all data science projects and data scientists have to determine which workflow best fits the business requirements. However, there is a standard workflow of a data science project which is based on one of the oldest and most popular-CRISP DM. It was developed for data mining projects but now is also adopted by most of the data scientists with modifications as per the requirements of the data science project.


According to a recent KDnuggets poll on – “What main methodology are you using for your analytics, data mining, or data science projects?” CRISP-DM remained the top methodology/workflow for data mining and data science projects with 43% of the projects using it.


Every step in the lifecycle of a data science project depends on various data scientist skills and data science tools. The typical lifecycle of a data science project involves jumping back and forth among various interdependent data science tasks using variety of data science programming tools. Data science process begins with asking an interesting business question that guides the overall workflow of the data science project.


CLICK HERE to get the Data Scientist Salary Report for 2016 delivered to your inbox!
Standard Lifecycle of Data Science Projects


Data science project lifecycle is similar to the CRISP-DM lifecycle that defines the following standard 6 steps for data mining projects-
Business Understanding
Data Understanding
Data Preparation
Modelling
Evaluation
Deployment


Lifecycle of data science projects is just an enhancement to the CRISP-DM workflow process with some alterations-
Data Acquisition
Data Preparation
Hypothesis and Modelling
Evaluation and Interpretation
Deployment
Operations
Optimization


1) Data Acquisition

For doing Data Science, you need data. The primary step in the lifecycle of data science projects is to first identify the person who knows what data to acquire and when to acquire based on the question to be answered. The person need not necessarily be a data scientist but anyone who knows the real difference between the various available data sets and making hard-hitting decisions about the data investment strategy of an organization – will be the right person for the job.
Data science project begins with identifying various data sources which could be –logs from webservers, social media data, data from online repositories like US Census datasets, data streamed from online sources via APIs, web scraping or data could be present in an excel or can come from any other source. Data acquisition involves acquiring data from all the identified internal and external sources that can help answer the business question.
A major challenge that data professionals often encounter in data acquisition step is tracking where each data slice comes from and whether the data slice acquired is up-to-date or not. It is important to track this information during the entire lifecycle of a data science project as data might have to be re-acquired to test other hypothesis or run any other updated experiments.


2) Data Preparation

Often referred as data cleaning or data wrangling phase. Data scientists often complain that this is the most boring and time consuming task involving identification of various data quality issues. Data acquired in the first step of a data science project is usually not in a usable format to run the required analysis and might contain missing entries, inconsistencies and semantic errors.
Having acquired the data, data scientists have to clean and reformat the data by manually editing it in the spreadsheet or by writing code. This step of the data science project lifecycle does not produce any meaningful insights. However, through regular data cleaning, data scientists can easily identify what foibles exists in the data acquisition process, what assumptions they should make and what models they can apply to produce analysis results. Data after reformatting can be converted to JSON, CSV or any other format that makes it easy to load into one of the data science tools.
Exploratory data analysis forms an integral part at this stage as summarization of the clean data can help identify outliers, anomalies and patterns that can be usable in the subsequent steps. This is the step that helps data scientists answer the question on as to what do they actually want to do with this data.
“Exploratory data analysis” is an attitude, a state of flexibility, a willingness to look for those things that we believe are not there, as well as those we believe to be there. — said John Tukey, an American Mathematician


3) Hypothesis and Modelling

This is the core activity of a data science project that requires writing, running and refining the programs to analyse and derive meaningful business insights from data. Often these programs are written in languages like Python, R, MATLAB or Perl. Diverse machine learning techniques are applied to the data to identify the machine learning model that best fits the business needs. All the contending machine learning models are trained with the training data sets.


4) Evaluation and Interpretation

There are different evaluation metrics for different performance metrics. For instance, if the machine learning model aims to predict the daily stock then the RMSE (root mean squared error) will have to be considered for evaluation. If the model aims to classify spam emails then performance metrics like average accuracy, AUC and log loss have to be considered. A common question that professionals often have when evaluating the performance of a machine learning model is that which dataset they should use to measure the performance of the machine learning model. Looking at the performance metrics on the trained dataset is helpful but is not always right because the numbers obtained might be overly optimistic as the model is already adapted to the training dataset. Machine learning model performances should be measured and compared using validation and test sets to identify the best model based on model accuracy and over-fitting.
All the above steps from 1 to 4 are iterated as data is acquired continuously and business understanding become much clearer.


5) Deployment

Machine learning models might have to be recoded before deployment because data scientists might favour Python programming language but the production environment supports Java. After this, the machine learning models are first deployed in a pre-production or test environment before actually deploying them into production.


6) Operations/Maintenance

This step involves developing a plan for monitoring and maintaining the data science project in the long run. The model performance is monitored and performance downgrade is clearly monitored in this phase. Data scientists can archive their learnings from a specific data science projects for shared learning and to speed up similar data science projects in near future.


7) Optimization

This is the final phase of any data science project that involves retraining the machine learning model in production whenever there are new data sources coming in or taking necessary steps to keep up with the performance of the machine learning model.
Having a well-defined workflow for any data science project is less frustrating for any data professional to work on. The lifecycle of a data science project mentioned above is not definitive and can be altered accordingly to improve the efficiency of a specific data science project as per the business requirements.

DeZyre’s Data Science training in Python and R programming course, helps you learn about the entire lifecycle of data science projects right from data acquisition to model evaluation.















onsdag 1. juni 2016

The Great Marketing Experiment – PPC Update

You may have read my post a few weeks ago about the post about experimenting with PPC adverts. During that post, I spent just under £300 on different forms of pay-per-click advertising. I didn’t get much out of that £300, but I did learn a lot.

I ended the post by saying that we were going to try and use Outbrain and Reddit to try and drum up sales for our table tennis bats we sell on Amazon in Germany. The bats are very popular in the UK and USA but we have been finding it difficult to get traction and sales in non-English-speaking countries.
Outbrain isn’t your standard advertising platform. You can’t buy PPC adverts that lead directly to products, rather your adverts need to lead to blog posts or articles. For a week, we ran an Outbrain campaign where we paid to drive traffic to an article that is very favourable towards our bats: Der beste Tischtennisschläger für Anfänger.
Hopefully, people would read the article, go to Amazon and buy our bats.
This was a very good experiment because we could very easy to track how the adverts performed. Our sales in Germany were so low that any increase would be obvious and would clearly be linked to Outbrain. If we made more profit normal and that extra covered the cost of the adverts, the experiment would be a success. Otherwise, it would be back to the drawing board.
To work this out we took the sales from the previous month and calculated what the average gross profit per day was. We could then compare this to the profit we made in the week we spent money on Outbrain advertising.
Gross Profit: The amount of money we made when taking into account all expenses but not including what we spent on advertising at Outbrain.
For the month before we started advertising: 24 Feb to 24 March, we averaged €18.97 (£15.17) gross profit per day. 
I set a bid of 5p a click and a maximum budget of £25 a day. Here’s a screenshot from the Outbrain dashboard showing it how got on:
outbrain table tennis bat sales 2
£169.79 spent for 3,426 clicks. £24.26 a day, slightly below budget.
For the week we were advertising: 24 March to 31 March, we averaged €79.35 (£63.48) gross profit per day. That’s £48.31 extra gross profit.
That is quite an increase. And it was definitely linked to the Outbrain advertising. 4 out of the 7 days had higher sales than on any day in the previous month.
What is great is that the amount of extra gross profit was more than the cost of advertising. Over the whole week, we spent £169.79 in advertising and made an extra £338.16. Once we take out the cost of the adverts we still made an extra £182.32.
This is very very good. Especially as the results should be scalable. Every £1 we spent on advertising led to £1.93 of gross profit (93p net profit). If we set our budget higher then the profit should scale proportionally. £500 a day on advertising should get us £965 gross profit.
Over the next few weeks and months we will be aggressively scaling this advertising in Germany, and also launching similar schemes in the other non-English speaking Amazon territories: France, Italy, Spain and Mexico.
For once, this was a very successful experiment that beat all our expectations!