OVH Groupe : A journey into the wondrous land of Machine Learning, or Cleaning data is funnier than cleaning my flat! (Part 3) – Marketscreener.com
What am I doing here? The story so far
As you might know if you have read our blog for more than a year, a few years ago, I bought a flat in Paris. If you don't know, the real estate market in Paris is expensive but despite that, it is so tight that a good flat at a correct price can be for sale for less than a day.
Obviously, you have to take a decision quite fast, and considering the prices, you have to trust your decision. Of course, to trust your decision, you have to take your time, study the market, make some visits etc This process can be quite long (in my case it took a year between the time I decided that I wanted to buy a flat and the time I actually commited to buying my current flat), and even spending a lot of time will never allow you to have a perfect understanding of the market. What if there was a way to do that very quickly and with a better accuracy than with the standard process?
As you might also know if you are one of our regular readers, I tried to solve this problem with Machine Learning, using an end-to-end software called Dataiku. In a first blog post, we learned how to make a basic use of Dataiku, and discovered that just knowing how to click on a few buttons wasn't quite enough: you had to bring some sense in your data and in the training algorithm, or you would find absurd results.
In a second entry, we studied a bit more the data, tweaked a few parameters and values in Dataiku's algorithms and trained a new model. This yielded a much better result, and this new model was - if not accurate - at least relevant: the same flat had a higher predicted place when it was bigger or supposedly in a better neighbourhood. However, it was far from perfect and really lacked accuracy for several reasons, some of them out of our control.
However, all of this was done on one instance of Dataiku - a licensed software - on a single VM. There are multiple reasons that could push me to do things differently:
What we did very intuitively (and somewhat naively) with Dataiku was actually a quite complex pipeline that is often called ELT, for Extract, Load and Transform.
And obviously, after this ELT process, we added a step to train a model on the transformed data.
So what are we going to do to redo all of that without Dataiku's help?
When ELT becomes ELTT
Now that we know what we are going to do, let us proceed!
Before beginning, we have to properly set up our environment to be able to launch the different tools and products. Throughout this tutorial, we will show you how to do everything with CLIs. However, all these manipulations can also be done on OVHcloud's manager (GUI), in which case you won't have to configure these tools.
For all the manipulations described in the next phase of this article, we will use a Virtual Machine deployed in OVHcloud's Public Cloud that will serve as the extraction agent to download the raw data from the web and push it to S3 as well as a CLI machine to launch data processing and notebook jobs. It is a d2-4 flavor with 4GB of RAM, 2 vCores and 50 GB of local storage running Debian 10, deployed in Graveline's datacenter. During this tutorial, I run a few UNIX commands but you should easily be able to adapt them to whatever OS you use if needed. All the CLI tools specific to OVHcloud's products are available on multiple OSs.
You will also need an OVHcloud NIC (user account) as well as a Public Cloud Project created for this account with a quota high enough to deploy a GPU (if that is not the case, you will be able to deploy a notebook on CPU rather than GPU, the training phase will juste take more time). To create a Public Cloud project, you can follow these steps.
Here is a list of the CLI tools and other that we will use during this tutorial and why:
Additionally you will find commented code samples for the processing and training steps in this Github repository.
In this tutorial, we will use several object storage buckets. Since we will use the S3 API, we will call them S3 bucket, but as mentioned above, if you use OVHcloud standard Public Cloud Storage, you could also use the Swift API. However, you are restricted to only the S3 API if you use our new high-performance object storage offer, currently in Beta.
For this tutorial, we are going to create and use the following S3 buckets:
To create these buckets, use the following commands after having configured your aws CLI as explained above:
Now that you have your environment set up and your S3 buckets ready, we can begin the tutorial!
First, let us download the data files directly on Etalab's website and unzip them:
You should now have the following files in your directory, each one corresponding to the French real estate transaction of a specific year:
Now, use the S3 CLI to push these files in the relevant S3 bucket:
You should now have those 5 files in your S3 bucket:
What we just did with a small VM was ingesting data into a S3 bucket. In real-life usecases with more data, we would probably use dedicated tools to ingest the data. However, in our example with just a few GB of data coming from a public website, this does the trick.
Now that you have your raw data in place to be processed, you just have to upload the code necessary to run your data processing job. Our data processing product allows you to run Spark code written either in Java, Scala or Python. In our case, we used Pyspark on Python. Your code should consist in 3 files:
Once you have your code files, go to the folder containing them and push them on the appropriate S3 bucket:
Your bucket should now look like that:
You are now ready to launch your data processing job. The following command will allow you to launch this job on 10 executors, each with 4 vCores and 15 GB of RAM.
Note that the data processing product uses the Swift API to retrieve the code files. This is totally transparent to the user, and the fact that we used the S3 CLI to create the bucket has absolutely no impact. When the job is over, you should see the following in your transactions-ecoex-clean bucket:
Before going further, let us look at the size of the data before and after cleaning:
As you can see, with ~2.5 GB of raw data, we extracted only ~10 MB of actually useful data (only 0,4%)!! What is noteworthy here is that that you can easily imagine usecases where you need a large-scale infrastructure to ingest and process the raw data but where one or a few VMs are enough to work on the clean data. Obviously, this is more often the case when working with text/structured data than with raw sound/image/videos.
Before we start training a model, take a look at these two screenshots from OVHcloud's data processing UI to erase any doubt you have about the power of distributed computing:
In the first picture, you see the time taken for this job when launching only 1 executor- 8:35 minutes. This duration is reduced to only 2:56 minutes when launching the same job (same code etc) on 4 executors: almost 3 times faster. And since you pay-as-you go, this will only cost you ~33% more in that case for the same operation done 3 times faster- without any modification to your code, only one argument in the CLI call. Let us now use this data to train a model.
To train the model, you are going to use OVHcloud AI notebook to deploy a notebook! With the following command, you will:
In our case, we launch a notebook with only 1 GPU because the code samples we provide would not leverage several GPUs for a single job. I could adapt my code to parallelize the training phase on multiple GPUs, in which case I could launch a job with up to 4 parallel GPUs.Once this is done, just get the URL of your notebook with the following command and connect to it with your browser:
Once you're done, just get the URL of your notebook with the following command and connect to it with your browser:
You can now import the real-estate-training.ipynb file to the notebook with just a few clicks. If you don't want to import it from the computer you use to access the notebook (for example if like me you use a VM to work and have cloned the git repo on this VM and not on your computer), you can push the .ipynb file to your transactions-ecoex-clean or transactions-ecoex-model bucket and re-synchronize the bucket to your notebook while it runs by using the ovhai notebook pull-data command. You will then find the notebook file in the corresponding directory.
Once you have imported the notebook file to your notebook instance, just open it and follow the directives. If you are interested in the result but don't want to do it yourself, let's sum up what the notebook does:
Use the models built in this tutorial at your own risk
So, what can we conclude from all of this? First, even if the second model is obviously better than the first, it is still very noisy: while not far from correct on average, there is still a huge variance. Where does this variance come from?
Well, it is not easy to say. To paraphrase the finishing part of my last article:
In this article, I tried to give you a glimpse at the tools that Data Scientists commonly use to manipulate data and train models at scale, in the Cloud or on their own infrastructure:
Hopefuly, you now have a better understanding on how Machine Learning algorithms work, what their limitations are, and how Data Scientists work on data to create models.
As explained earlier, all the code used to obtain these results can be found here. Please don't hesitate to replicate what I did or adapt it to other usecases!
Solutions ArchitectatOVHCloud|+ posts
Here is the original post:
OVH Groupe : A journey into the wondrous land of Machine Learning, or Cleaning data is funnier than cleaning my flat! (Part 3) - Marketscreener.com
- Portable Electronic Nose with Machine Learning Enhances VOC Detection in Forensic Science - Chromatography Online - September 15th, 2025 [September 15th, 2025]
- Developing a predictive model for breast cancer detection using radiomics-based mammography and machine learning - SpringerOpen - September 13th, 2025 [September 13th, 2025]
- and correlation of drug solubility via hybrid machine learning and gradient based optimization - Nature - September 11th, 2025 [September 11th, 2025]
- Rice-Houston Methodist partnership uses machine learning to reveal hidden patient groups in common heart valve disease - Rice University - September 11th, 2025 [September 11th, 2025]
- Amazon Uses Machine Learning to Tell Sellers if FBA Is a Good Fit - EcommerceBytes - September 11th, 2025 [September 11th, 2025]
- Eli Lilly Launches AI, Machine Learning Platform Called TuneLab For Biotech Companies - Stocktwits - September 11th, 2025 [September 11th, 2025]
- How AI and Machine Learning are Shaping the Future of Mobile Apps - indiatechnologynews.in - September 11th, 2025 [September 11th, 2025]
- Hybrid AI and semiconductor approaches for power quality improvement - Machine Learning Week 2025 - September 9th, 2025 [September 9th, 2025]
- The Predictive Turn | Preparing to Outthink Adversaries Through Predictive Analytics - Machine Learning Week 2025 - September 9th, 2025 [September 9th, 2025]
- NFL player props, odds and bets: Week 1, 2025 NFL picks, SportsLine Machine Learning Model AI predictions, SGP - CBS Sports - September 9th, 2025 [September 9th, 2025]
- Can machine learning forecast Lobo EV Technologies Ltd. recovery - Bear Alert & Daily Price Action Insights - Newser - September 6th, 2025 [September 6th, 2025]
- Generalised Machine Learning Models Outperform Personalised Models For Cognitive Load Classification In Real-Life Settings - Frontiers - September 6th, 2025 [September 6th, 2025]
- Machine learning for the prediction of blood transfusion risk during or after mitral valve surgery: a multicenter retrospective cohort study - Nature - September 6th, 2025 [September 6th, 2025]
- Machine Learning-Driven Exploration of Composition- and Temperature-Dependent Transport and Thermodynamic Properties in LiF-NaF-KF Molten Salts for... - September 6th, 2025 [September 6th, 2025]
- Machine learning analysis reveals tumor heterogeneity and stromal-immune niches in breast cancer - Nature - September 6th, 2025 [September 6th, 2025]
- Identification of Postoperative Weight Loss Trajectories and Development of a Machine Learning-Based Tool for Predicting Malnutrition in Gastric... - September 6th, 2025 [September 6th, 2025]
- The Relationship Between Number of Pregnancies and Serum 25-Hydroxyvitamin D Levels in Women with a Prior Pregnancy: A Cross - Sectional Analysis,... - September 6th, 2025 [September 6th, 2025]
- Tohoku University Researchers Use Machine Learning to Identify Factors Improving Nickel-Based Catalysts for CO Methanation - geneonline.com - September 6th, 2025 [September 6th, 2025]
- Combining machine learning predictions for Galaxy Payroll Group Limited - Quarterly Growth Report & AI Forecast Swing Trade Picks - Newser - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast CLSKW recovery - 2025 Breakouts & Breakdowns & Daily Profit Maximizing Trade Tips - Newser - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast Granite Real Estate Investment Trust recovery - July 2025 Spike Watch & Growth Focused Stock Reports - Newser - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast VERU recovery - July 2025 Intraday Action & AI Forecasted Entry/Exit Points - Newser - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast VCI Global Limited recovery - Market Rally & Expert-Curated Trade Recommendations - Newser - September 5th, 2025 [September 5th, 2025]
- Combining machine learning predictions for AutoNation Inc. - Weekly Trend Summary & Weekly Breakout Watchlists - Newser - September 5th, 2025 [September 5th, 2025]
- Combining machine learning predictions for PLXS - Options Play & Fast Gain Stock Trading Tips - Newser - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast Valens Semiconductor Ltd. recovery - July 2025 Action & Free Growth Oriented Trading Recommendations - Newser - September 5th, 2025 [September 5th, 2025]
- Improve cost visibility of Machine Learning workloads on Amazon EKS with AWS Split Cost Allocation Data - Amazon Web Services - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast LFT.PRA recovery - Weekly Trade Recap & Daily Profit Maximizing Trade Tips - Newser - September 5th, 2025 [September 5th, 2025]
- Can machine learning forecast TEAM recovery - 2025 Pullback Review & Free Weekly Chart Analysis and Trade Guides - Newser - September 5th, 2025 [September 5th, 2025]
- Combining machine learning predictions for MSBIP - Weekly Profit Analysis & AI Powered Market Entry Strategies - Newser - September 5th, 2025 [September 5th, 2025]
- Revolutionizing Antibody Discovery with Machine Learning - BIOENGINEER.ORG - September 5th, 2025 [September 5th, 2025]
- The good and bad of machine learning | Letters - The Guardian - September 3rd, 2025 [September 3rd, 2025]
- I'm a machine learning engineer at Amazon who anticipated the ML boom. Here's my advice for staying ahead. - AOL.com - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for Dogwood Therapeutics Inc. - July 2025 Breakouts & Weekly Setup with High ROI Potential - Newser - September 3rd, 2025 [September 3rd, 2025]
- Phenotyping valvular heart diseases using the lens of unsupervised machine learning: a scoping review - Nature - September 3rd, 2025 [September 3rd, 2025]
- Students use machine learning to track and protect whale populations - Technology Org - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for Triller Group Inc. Equity Warrant - Gap Up & Weekly High Conviction Ideas - Newser - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for DallasNews Corporation - Quarterly Trade Report & Technical Entry and Exit Tips - Newser - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for System1 Inc. - Weekly Gains Summary & Risk Adjusted Swing Trade Ideas - Newser - September 3rd, 2025 [September 3rd, 2025]
- Unlocking the impossible without compromising on creative control: iZotope Ozone 12 adds new machine learning modules and a more musician-friendly AI... - September 3rd, 2025 [September 3rd, 2025]
- What machine learning models say about SLND.WS - Quarterly Trade Report & Technical Entry and Exit Tips - Newser - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for Chemed Corporation - Weekly Stock Recap & Growth Focused Entry Reports - Newser - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for TAP.A - Earnings Growth Report & Entry Point Confirmation Alerts - Newser - September 3rd, 2025 [September 3rd, 2025]
- Bridging known and unknown dynamics by transformer-based machine-learning inference from sparse observations - Nature - September 3rd, 2025 [September 3rd, 2025]
- Combining machine learning predictions for Inseego Corp. - July 2025 Retail & Technical Confirmation Trade Alerts - Newser - September 3rd, 2025 [September 3rd, 2025]
- Can machine learning forecast Aditxt Inc. recovery - July 2025 Update & Expert Curated Trade Ideas - Newser - September 3rd, 2025 [September 3rd, 2025]
- I'm a machine learning engineer at Amazon who anticipated the ML boom. Here's my advice for staying ahead. - Business Insider - September 1st, 2025 [September 1st, 2025]
- Machine learning climbs the Jacobs Ladder of optoelectronic properties - Nature - September 1st, 2025 [September 1st, 2025]
- Predicting factors associated with anxiety by patients undergoing treatment for infectious diseases using a random-forest machine learning approach -... - September 1st, 2025 [September 1st, 2025]
- Hideo Kojima used "an AI machine learning rig" to painstakingly download his celebrity friends to Death Stranding 2, but he wasn't happy... - September 1st, 2025 [September 1st, 2025]
- Fibro predict a machine learning risk score for advanced liver fibrosis in the general population using Israeli electronic health records - Nature - September 1st, 2025 [September 1st, 2025]
- Machine learning for preventing stillbirths: is it possible to transform data into life-saving insights? - BMC Pregnancy and Childbirth - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Kura Sushi USA Inc. recovery - 2025 Fundamental Recap & AI Based Buy and Sell Signals - Newser - September 1st, 2025 [September 1st, 2025]
- Combining machine learning predictions for China Liberal Education Holdings Limited - Weekly Profit Recap & Weekly Breakout Watchlists - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Tyson Foods Inc. recovery - 2025 Trade Ideas & Smart Swing Trading Techniques - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast GLBZ recovery - July 2025 Movers & AI Based Buy and Sell Signals - Newser - September 1st, 2025 [September 1st, 2025]
- What machine learning models say about Sypris Solutions Inc. - Market Performance Recap & Real-Time Volume Trigger Notifications - Newser - September 1st, 2025 [September 1st, 2025]
- What machine learning models say about Astria Therapeutics Inc. - July 2025 News Drivers & Real-Time Buy Signal Alerts - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast CRTO recovery - July 2025 Analyst Calls & Growth Focused Investment Plans - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Exelon Corporation recovery - Exit Point & Pattern Based Trade Signal System - Newser - September 1st, 2025 [September 1st, 2025]
- What machine learning models say about OFIX - Bond Market & Long-Term Safe Investment Plans - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Beneficient recovery - Weekly Trade Recap & Breakout Confirmation Alerts - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast BTBDW recovery - 2025 Geopolitical Influence & Weekly High Momentum Picks - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Tri Pointe Homes Inc. recovery - July 2025 WrapUp & Free Long-Term Investment Growth Plans - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast TeraWulf Inc. recovery - Market Movement Recap & Community Supported Trade Ideas - Newser - September 1st, 2025 [September 1st, 2025]
- Combining machine learning predictions for Alset Inc. - 2025 Technical Patterns & Precise Buy Zone Identification - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Exelon Corporation recovery - 2025 Bull vs Bear & Smart Allocation Stock Reports - Newser - September 1st, 2025 [September 1st, 2025]
- Can machine learning forecast Token Cat Limited Depositary Receipt recovery - 2025 Price Action Summary & Breakout Confirmation Alerts - Newser - September 1st, 2025 [September 1st, 2025]
- Combining machine learning predictions for BT Brands Inc. - Market Performance Recap & Verified Technical Trade Signals - Newser - September 1st, 2025 [September 1st, 2025]
- 7 Beginner Machine Learning Projects To Complete This Weekend - KDnuggets - August 29th, 2025 [August 29th, 2025]
- Machine learning approaches for predicting the construction time of drill-and-blast tunnels - Nature - August 29th, 2025 [August 29th, 2025]
- Combining machine learning predictions for KKR.PRD - July 2025 Closing Moves & Technical Pattern Recognition Alerts - Newser - August 29th, 2025 [August 29th, 2025]
- Leveraging data analytics to revolutionize cybersecurity with machine learning and deep learning - Nature - August 29th, 2025 [August 29th, 2025]
- Can machine learning forecast Yext Inc. recovery - Earnings Performance Report & Accurate Buy Signal Notifications - Newser - August 29th, 2025 [August 29th, 2025]
- Combining machine learning predictions for Mercer International Inc. - July 2025 Highlights & Real-Time Volume Analysis - Newser - August 29th, 2025 [August 29th, 2025]
- Combining machine learning predictions for Kandal M Venture Limited - Inflation Watch & Verified Technical Signals - Newser - August 29th, 2025 [August 29th, 2025]
- Combining machine learning predictions for Asbury Automotive Group Inc. - July 2025 Intraday Action & Daily Volume Surge Signals - Newser - August 29th, 2025 [August 29th, 2025]
- Can machine learning forecast NINE recovery - Quarterly Performance Summary & Technical Entry and Exit Tips - Newser - August 29th, 2025 [August 29th, 2025]
- IQUP identifies quantitatively unreliable spectra with machine learning for isobaric labeling-based proteomics - Nature - August 29th, 2025 [August 29th, 2025]
- Can machine learning forecast HealthEquity Inc. recovery - Exit Point & High Accuracy Buy Signal Tips - Newser - August 29th, 2025 [August 29th, 2025]