Ibrahim Mahmoud Ahmed, Ph.D., Machine Learning Developer in Perth, Western Australia, Australia
Ibrahim Mahmoud Ahmed, Ph.D.

Machine Learning Developer in Perth, Western Australia, Australia

Member since April 22, 2019
Ibrahim is a veteran data scientist and software developer with a passion for deep learning and extensive experience in statistics and time-series. He is interested in helping businesses to take full advantage of their data and make data-driven actions.
Ibrahim is now available for hire

Portfolio

Experience

Location

Perth, Western Australia, Australia

Availability

Full-time

Preferred Environment

Jupyter Notebook, Windows 10, Ubuntu, Google Cloud Platform (GCP), Azure, AWS

The most amazing...

...ship berthing project I've developed for a mining company used SPLATNeT, an enabled hierarchical and spatially aware feature detection to be used by AR.

Employment

  • Machine Learning Expert for Data Science POC

    2021 - 2022
    Breadcrumb Data Limited
    • Developed time series anomaly detection using autoencoders for bearing and mills.
    • Used a Controller Area Network (CAN bus) to build a vibration anomaly detection. The system uses the accelerometer acceleration data to estimate velocity and displacement.
    • Estimated power spectrum to estimate the harmonics of vibration and use that to estimate the health of the equipment.
    • Used TensorFlow to build this application and deployed it to Pi Zero and Pi 4.
    Technologies: TensorFlow Deep Learning Library (TFLearn), Data Science, Machine Learning, Data Featuring, Variational Autoencoders, TensorFlow, IOTA, Raspberry Pi, Autoencoders, Canbus, Data Analysis, Forecasting, Data Visualization, API Integration, Simulations, Inference, Finetuning, Recommendation Systems, Communication, Open Source, Pandas, Bash
  • Data Scientist and AI Consultant

    2021 - 2022
    S Wave International Corp
    • Developed deep learning models to auto-tag music records using generated spectrogram images created from music records.
    • Tracked and fixed bugs using Jira as a reporting tool.
    • Deployed the production model in AWS Fargate with an elastic application load balancer to auto-scale the auto-tagging of music records depending on demand.
    • Estimated the beat per minute using signal processing and deep learning. The project used the ViT model to classify spectrograms.
    • Used PyTorch Lightning and DeepSpeed to train models using a large number of tracks.
    Technologies: Data Science, Machine Learning, Data Engineering, AIOps, AWS, Models, Data, Projects, Hang Tags, Transformer Models, Fast.ai, Scikit-learn, Time Series Analysis, Docker, Audio, Signal Processing, Data Visualization, API Integration, Inference, Finetuning, DeepSpeed, PyTorch-lightning, Communication, Open Source, Pandas, Bash
  • GIS Platform Architect/Engineer

    2021 - 2021
    Birch Infrastructure, PBLLC
    • Replicated data from Velocity Suite to BigQuery, performed many ETL operations, and generated materialized views using DBT.
    • Converted geospatial data from shapefiles into BigQuery spatial.
    • Generated a materialized view of LMP prices with weather information, updated hourly.
    • Created Prefect flows to create jobs for data scrapping and downloading from various sources into BigQuery.
    • Created APIs to perform data downloads from various sources like FRED, LMP prices, and other spatial data sources.
    Technologies: Python, Data Building Tool (DBT), Prefect, ArcGIS, GPS, Docker, Google Kubernetes Engine (GKE), Data Analysis, Statistics, Data Analytics, Data Visualization, API Integration, Analytics, Datasets, Inference, Finetuning, Google BigQuery, Communication, Open Source, Data Mining, ETL, Pandas, Bash, Data Reporting
  • Developer

    2020 - 2021
    Toptal Client
    • Created an API for a chatbot to train medical students with virtual patients for the Meksi project in Sydney.
    • Used pre-trained BERT models with examples sent from the client.
    • Created an API to infer the intent from user inquiries.
    • Built a chatbot using the intent classifier, Named Entity Recognition (NER).
    • Merged the Bert Response with an IBM Watson assistant response based on confidence to identify the intent. The results were 97% accurate across 512 intents.
    Technologies: Language Models, BERT, Python 3, PyTorch, Fast.ai, Scikit-learn, Natural Language Processing (NLP), GPT-2, GPT-J, Docker, Data Analysis, Statistics, Data Visualization, Causal Inference, Text Generation, Inference, Finetuning, Communication, Open Source, ETL, Machine Learning Operations (MLOps), Pandas, Bash
  • Machine Learning to Build Seismic Activity Classifier

    2019 - 2021
    Oyu Tolgoi LLC
    • Converted seismic traces into the spectrogram to be used with image detection, a Resnet50 model.
    • Built a multi-input model with the height of the event as an embedding input and spectrogram as the second input. The model and approach will be published in the scientific journal Bulletin of Seismological Society of America.
    • Deployed the model successfully, and it is planned to go into production in 2020.
    Technologies: Computer Vision, Deep Learning, Dlib, OpenCV, Qt, C++, PyTorch, TensorFlow, Keras, Python, Time Series Analysis, Google Kubernetes Engine (GKE), Audio, Data Visualization, Inference, Finetuning, Communication, Open Source, Azure Databricks, Pandas, Bash
  • Machine Learning Consultant

    2015 - 2021
    Global Unmanned System
    • Developed algorithms to estimate above-ground biomass using point cloud data from drone images.
    • Created object detection software for sealion detection in drone images.
    • Classified images for Sandalwood detection in drone images.
    • Developed various image analysis software for drone images using OpenCV.
    • Created various GIS applications for satellite images and point cloud data.
    • Developed a program to help ship berthing at Fremantle Port using slam algorithm and graph network.
    • Gathered requirements and met with mine managers and refineries to learn their problems and find possible projects.
    Technologies: Amazon Web Services (AWS), ArcPy, Point Clouds, Amazon SageMaker, 3D Image Processing, Image Processing, Predictive Analytics, Computer Vision, ArcGIS Runtime SDK for .NET, PyTorch, Data Science, GIS, MySQL, Agile Software Development, Deep Learning, AWS, Git, XGBoost, Keras, OpenCV, R, Python, Data Analysis, Object Detection, Video Processing, Statistics, Data Visualization, Inference, Finetuning, Algorithms, Open Source, Pandas, Bash, Data Reporting
  • Senior Data Scientist

    2018 - 2020
    Freelance Work
    • Developed refineries predictive maintenance using machine learning in Databricks, Azure Machine Learning service, and Azure Machine Learning Studio.
    • Built time series prediction using Keras and PyTorch for anomaly detection.
    • Built time series prediction with LSTM/CNN using multivariate one-minute sensors data.
    • Developed a PowerBI dashboard for mining with Fleet Management System.
    • Built a sound and vibration equipment health using a convolution neural network.
    • Managed external contractors to evaluate cloud technology and perform a proof-of-concept solution to common anomaly detection in time series data and apply it to all pumps in the refinery.
    Technologies: Transformer Models, BERT, Language Models, Reinforcement Learning, Uniformance Process History Database (PHD), OSI Model, Data Engineering, ArcPy, Point Clouds, RStan, Image Processing, Predictive Analytics, Kubernetes, Microsoft Power BI, ArcGIS Runtime SDK for .NET, PyTorch, Data Science, GIS, SQL, Agile Software Development, Deep Learning, Artificial Intelligence (AI), Statistical Learning, Databricks, Azure ML Studio, Azure Machine Learning, C++, R, Python, Scikit-learn, Time Series Analysis, Signal Processing, Forecasting, Statistics, Data Analytics, Data Visualization, Physics Simulations, Inference, Finetuning, Open Source, ETL, Azure Databricks, Machine Learning Operations (MLOps), XGBoost, Pandas, Bash, Data Reporting
  • Senior Data Scientist

    2019 - 2019
    Western Power
    • Built energy demand time series prediction with multivariate half-hourly input data using LSTM/CNN neural networks.
    • Created a production solution to use forecasted weather data to forecast demand deployed to AWS Fargate.
    • Project-managed through Jira tickets and code stored in Bitbucket.
    Technologies: ArcGIS Runtime SDK for .NET, Data Science, GIS, Agile Software Development, Artificial Intelligence (AI), TensorFlow, Keras, Python, ArcGIS, Time Series Analysis, Data Analysis, Sensor Fusion, Forecasting, Statistics, Data Visualization, Analytics, Physics Simulations, Inference, Finetuning, JavaScript, Open Source, Plotly, ETL, Pandas, Bash, Data Reporting
  • Senior Spatial Engineer

    2016 - 2018
    BHP
    • Helped a big mining company to take advantage of its spatial data.
    • Created driver behavior analysis software for a mining operation.
    • Worked with natural language processing with Keras.
    • Developed various GIS projects using ArcPy and C# arcobjects.
    • Created predictive models using machine learning and Apache Spark (data bricks).
    • Completed a time series data analysis using Kalman filters for vehicle tracking.
    • Mounted edge devices on diggers in an underground mine (Olympic Dam Mine) to classify the underground signs and determine if the bucket was full or empty.
    • Built a data pipeline using Java to take data from the data logger through Kafka into the Hadoop cluster.
    • Gathered requirements and met with mine managers and refineries to learn about their problems and find possible projects.
    • Developed an R Shiny dashboard for mining, a hotspot of high-rack events.
    Technologies: Amazon Web Services (AWS), Cloudera, Hortonworks Data Platform (HDP), OSI Model, Data Engineering, Point Clouds, RStan, ArcGIS GeoEvent Server, 3D Image Processing, Redshift, Spotfire, Microsoft Power BI, Hadoop, ArcGIS Runtime SDK for .NET, GIS, SQL, Agile Software Development, Statistical Learning, RStudio Shiny, Kibana, Elasticsearch, AWS, Oracle, Microsoft SQL Server, Git, Apache Kafka, C#, ArcPy, Keras, Python, Esri, Kalman Filtering, ArcGIS Server, ArcGIS, GPS, Docker, Data Analysis, Sensor Fusion, Video Processing, Data Analytics, Data Visualization, Analytics, Schlumberger, JavaScript, Plotly, ETL, Spark, Big Data, XGBoost, Pandas, Bash, Data Reporting
  • Senior Algorithm Engineer

    2014 - 2016
    Fugro
    • Developed image analysis software for underwater object detection.
    • Processed point cloud data using C++/Python for both underwater objects and above ground.
    • Created image classification for a remote sensing LiDAR point cloud using Python running in AWS and Fugro Roames for Ergon.
    • Created C++ numerical algorithms for echo sounder calculation using Armadillo C++, OpenBLAS, and algorithms including Kalman filter, LAZ smoothing, and classification.
    • Created various Julia and R regression machine learning applications.
    Technologies: Amazon Web Services (AWS), Data Engineering, Point Clouds, ArcGIS Runtime SDK for .NET, GIS, SQL, Artificial Intelligence (AI), Statistical Learning, MATLAB, Julia, Esri, Oracle, Microsoft SQL Server, Git, AWS, Python, C++, Kalman Filtering, ArcGIS, GPS, Sensor Fusion, Object Detection, Audio, Data Analytics, Data Visualization, Algorithms, JavaScript, XGBoost, Pandas, Bash
  • Senior GIS Developer

    2010 - 2014
    Department of Mines and Petroleum
    • Developed various GIS software to help surveyors in their work.
    • Wrote classification and regression software for a GIS application.
    • Developed GeoMap.WA, which is used to display the department's GIS products.
    • Developed projects to do point cloud data analysis using ArcGIS software.
    • Wrote various SQL server scripts to optimize retrieval of data.
    Technologies: ArcPy, .NET, GIS, SQL, Microsoft SQL Server, Microsoft Team Foundation Server, TeamCity, Git, R, Python, GPS, Esri, C#, 3D Image Processing, ArcGIS, ArcSDE, ArcGIS Server, Data Visualization, JavaScript
  • Software Engineer

    2008 - 2010
    Western Power
    • Supported GIS software to show Western Power Assets in Western Australia.
    • Created predictive models for wooden pole maintenance and inspection using R.
    • Developed and helped in the establishment of the wooden pole serviceability index.
    • Wrote classification software for pole top fire prediction and pole serviceability index.
    • Wrote Oracle scripts to download data for Oracle reports and optimize database queries.
    Technologies: SQL, Java, SourceTree, Oracle, C++, C#, R, Time Series Analysis, Kalman Filtering, Signal Processing, Forecasting, Data Visualization, JavaScript
  • Senior Software Engineer

    2006 - 2008
    Comsec
    • Served as a senior software engineer and worked with various kinds of share trading software.
    • Developed and designed NAB Equity Lending's online margin lending software.
    • Supported various kinds of online trading software and managed funds.
    • Created a SQL Server and Oracle database that shared procedures and database optimization.
    • Participated in the design of NAB Equity Lending's migration to the Commsec Apollo project.
    • Provided bug fixes and problem-solving for issues with trading software.
    Technologies: T-SQL, SQL, COM+, ASP, SourceTree, Java, .NET, C++, Quantitative Finance
  • Senior Software Engineer

    2000 - 2006
    ERG
    • Wrote Various C++ and Java applications for smart rider ticketing.
    • Wrote transaction processing software in C++ to run under Solaris Unix and Windows operating systems.
    • Supported existing software and bug fixes, code debugging, code executing speed (profiling), and peer review.
    • Generated Oracle reports for Ventura bus travel times, loading, and peak time analysis.
    • Optimized various PL and SQL queries for reports using Toad and Oracle query analysis.
    Technologies: T-SQL, SQL, PostgreSQL, IBM Rational Rose, Case, C#, Oracle, C++, Bash
  • Postdoctoral Research Fellow

    1999 - 2000
    Columbia University, New York
    • Conducted research on the Columbia Linear Machine (CLM) as a postdoctoral research fellow at Columbia University.
    • Supervised PhD and honor students and assisted with lectures and labs.
    • Worked with LabVIEW on their National Instrument (NI) products control experiment.
    • Looked after the lab supplies and placed orders to maintain operations.
    • Wrote signal processing software (filtering) for probe measurements to remove noise.
    • Wrote scientific papers and published the results of experiments.
    Technologies: NAG Numerical Library, MATLAB, IMSL Numerical Libraries, Fortran, C++, LabVIEW, Time Series Analysis, Signal Processing, Physics Simulations, Simulations
  • Postdoctoral Research Fellow

    1996 - 1999
    Flinders University of South Australia
    • Supervised PhD students and honour students during their studies.
    • Wrote numerical analysis software for signal processing.
    • Helped with lectures and lab tutorials and demonstrations.
    • Maintained the lab by ordering supplies and repairs.
    • Wrote scientific papers and published results of experiments.
    Technologies: NAG Numerical Library, MATLAB, Fortran, LabWindows/CVI, Windows, C++, Signal Processing, Simulations

Experience

  • Automatic Processing of Mine Micro-seismic: Application to the Oyu Tolgoi Mine

    Developed an automatic processing system that outperforms the analysts for routine processing in terms of processing quality and speed.

    Our processing scheme mixes novel approaches and a more traditional method relying on energy variation-based event detection and on the picking of arrival times. Our platform directly employs the raw events detected by the seismic system. The event detection is set to be highly sensitive. When an event is detected, a block of continuous data is extracted and the event is located using a grid-based event location method. It classifies the event into ten categories, picks the arrival times, locates the events, and calculates the source parameters. The Oyu Tolgoi mine is currently using this system to process data in a production setting.

    The system is deployed on Kubernetes clusters. Automatically processing seismic data requires the adoption of a holistic approach that extends to the design of the seismic array, the choice of sensors and the type and shape of the input data.

    Using convolution neural networks and mixed networks with other features available, an automatic seismic identifier was created that outperforms other models in the market.

  • Auto-tagging Music Records

    The project is to auto-tag production-level music records to run under AWS to enable auto-tagging of music as they are used. The auto-tagging included mood/fee, genre, Instruments, vocals, and Type. The project converted the audio track into a mel spectrogram and did image classification. For the beats or beats per minute (BPM), I used wave analysis and some property software written to estimate BPM. The project achieved over 80% macro precision and 60% macro recall.

  • Electricity Demand Prediction
    https://github.com/cobleg/Hack-A-Gig

    Electricity demand prediction using current population categories and weather conditions helps companies plan their usage of electricity to reduce costs.

    Western Power had a hack-a-gig competition to help them use their smart meter collected data, weather conditions, and population categories to determine their electricity demand. This helps clients to achieve minimum costs and helps Western Power plan its electricity network.

    Mine was the winning solution and was written in Python using Keras for neural network and a mixed input model neural network, which consisted of the following inputs:

    • Embedding of categorical fields like household categories, days to public holidays, and days after a public holiday (up to 5 days).
    • Tabular numerical data for weather conditions.
    • LSTM of the previous usage pattern of electricity.

    These inputs were then concatenated into a fully connected deep neural network with one output variable to estimate the current usage of electricity per household. The data is then aggregated to reduce error by localities. My solution gave the best result in the competition, and the best reward was getting contracted by Western Power to do the project.

  • Driver Behavior Analysis

    BHP mines have a large number of haul trucks, light vehicles, dozers, excavators, and others. There is a need to detect when drivers exceed the speed limit, hit the brakes harshly, and take turns at high speed. These events lead to fast wear of tires and required coaching drivers to stop doing that. Light vehicles should not approach haul trucks less than 50m unless they have positive communication since the haul truck driver may not be able to see the light vehicle. Detecting these events helps increase safety in mines.

    I wrote a C# application to collect GPS location data from various sources streamed through Kafka and then calculate the speed and orientation using the Kalman filter to reduce errors in the GPS measurements, and I stored the data in an Elasticsearch spatiotemporal database. I then used this data to determine events using the Elasticsearch database. I was the lead developer in the project.

Skills

  • Languages

    C++, C#, R, Python, SQL, Python 3, JavaScript, Bash, T-SQL, Java, Fortran, SPARQL
  • Frameworks

    .NET, Hadoop, RStudio Shiny, Spark, Qt
  • Libraries/APIs

    Scikit-learn, PyTorch, Keras, TensorFlow, ArcGIS, XGBoost, Pandas, OpenCV, Dlib, Fast.ai, TensorFlow Deep Learning Library (TFLearn)
  • Tools

    GIS, Esri, Azure Machine Learning, MATLAB, Amazon SageMaker, Google Kubernetes Engine (GKE), Plotly, ArcGIS Runtime SDK for .NET, Microsoft Power BI, Spotfire, Kibana, Azure ML Studio, Cloudera, Git, LabWindows/CVI, Protégé
  • Paradigms

    Agile Software Development, Data Science, Anomaly Detection, ETL, Functional Programming
  • Platforms

    Ubuntu, Azure, Jupyter Notebook, Oracle, Windows, Amazon Web Services (AWS), Google Cloud Platform (GCP), Linux, ArcGIS Server, Apache Kafka, Docker, Kubernetes, Databricks, Hortonworks Data Platform (HDP), Raspberry Pi
  • Storage

    Microsoft SQL Server, Elasticsearch, MySQL, PostgreSQL, Amazon S3 (AWS S3), PL/SQL, Redshift
  • Other

    Natural Language Processing (NLP), Artificial Intelligence (AI), Deep Learning, Statistical Learning, ArcGIS GeoEvent Server, ArcPy, Predictive Analytics, RStan, Image Processing, 3D Image Processing, RSelenium, AWS, Machine Learning, Models, GPT-2, Time Series Analysis, Data Analysis, Kalman Filtering, Sensor Fusion, Object Detection, Audio, Signal Processing, Video Processing, Forecasting, Statistics, Quantitative Finance, Finance, Data Analytics, Data Visualization, API Integration, Analytics, Physics Simulations, Simulations, Datasets, Language Models, Text Generation, Inference, Finetuning, Google BigQuery, Algorithms, Recommendation Systems, Communication, Open Source, Data Mining, Azure Databricks, Machine Learning Operations (MLOps), Data Reporting, Software Development, Uniformance Process History Database (PHD), OSI Model, Point Clouds, Reinforcement Learning, Data Engineering, Generative Adversarial Networks (GANs), NAG Numerical Library, Graph Neural Networks, GPT-J, Stable Diffusion, Causal Inference, DeepSpeed, PyTorch-lightning, Big Data, Windows 10, GPS, BERT, Transformer Models, TAPAS, OWL2, Computer Vision, Data Building Tool (DBT), Prefect, Variational Autoencoders, ArcSDE, AIOps, Data, Data Featuring, IOTA, Autoencoders, Canbus, Schlumberger

Education

  • Master's Degree in Actuarial Science
    2010 - 2016
    Curtin University - Perth, Western Australia
  • Graduate Diploma in GIS
    2009 - 2010
    Curtin University - Australia
  • PhD in Science and Engineering
    1992 - 1996
    Flinders University - Adelaide, Australia

Certifications

  • Google Associate Cloud Engineer
    MARCH 2020 - MARCH 2022
    Google Cloud
  • Artificial Intelligence Nanodegree
    JULY 2017 - PRESENT
    Udacity

To view more profiles

Join Toptal
Share it with others