<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Featured | Ibrahim Maïga</title>
    <link>https://ibrahimmaiga.com/tag/featured/</link>
      <atom:link href="https://ibrahimmaiga.com/tag/featured/index.xml" rel="self" type="application/rss+xml" />
    <description>Featured</description>
    <generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><lastBuildDate>Tue, 15 Oct 2024 00:00:00 +0000</lastBuildDate>
    <image>
      <url>https://ibrahimmaiga.com/media/icon_hufd6f977d0fa8c1812e905f5bcd032e38_62203_512x512_fill_lanczos_center_3.png</url>
      <title>Featured</title>
      <link>https://ibrahimmaiga.com/tag/featured/</link>
    </image>
    
    <item>
      <title>An Analytics Solution for AML Transaction Monitoring</title>
      <link>https://ibrahimmaiga.com/project/analytics-solution-for-aml-transaction-monitoring/</link>
      <pubDate>Tue, 15 Oct 2024 00:00:00 +0000</pubDate>
      <guid>https://ibrahimmaiga.com/project/analytics-solution-for-aml-transaction-monitoring/</guid>
      <description>&lt;h2 id=&#34;project-overview&#34;&gt;Project Overview&lt;/h2&gt;
&lt;p&gt;This project aims to build a scalable ETL pipeline designed for Anti-Money Laundering (AML) transaction monitoring. By automating data extraction, transformation, and loading, it supports AML compliance teams with quick access to insights on potentially suspicious activities.&lt;/p&gt;
&lt;p&gt;Ideal for finance and data professionals involved in AML compliance or data engineering, this solution provides a reference for those needing to balance cost efficiency and high security.
The project highlight how practical use of AWS services and data engineering best practices can drive compliance while managing resources effectively.&lt;/p&gt;
&lt;h2 id=&#34;context-and-background&#34;&gt;Context and Background&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Why AML Compliance Matters?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;AML compliance is crucial for financial institutions to detect and report suspicious activity, fulfilling legal obligations.
Banks must perform Know Your Customer (KYC) checks and submit Suspicious Activity Reports (SARs) to identify potential fraud or money laundering.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Project Scenario&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;High transaction volumes place stress on databases, making it costly and slow to maintain primary databases for AML monitoring. This pipeline provides a solution by offloading transactions and transforming them into a format optimized for analysis.&lt;/p&gt;
&lt;h2 id=&#34;project-goals-and-objectives&#34;&gt;Project Goals and Objectives&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Build a Robust ETL Pipeline:&lt;/strong&gt; Automate data flow from the primary transactional database to a queryable storage solution.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cost-Efficiency:&lt;/strong&gt; Minimize project costs through optimized AWS configurations and correct partitioning, maintaining a low cost of operation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Security and Scalability:&lt;/strong&gt; Secure data migration and ensure the solution is scalable to handle increasing data loads without impacting primary operations.&lt;/p&gt;
&lt;h2 id=&#34;architecture-diagram&#34;&gt;Architecture Diagram&lt;/h2&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/analytics-solution-for-aml-transaction-monitoring/AML-Project-Architecture-Diagram_hu54b2d9a05680530261ca36d26a70d6a2_388116_6751fcf1019659aaebd87301e443c1ca.webp 400w,
               /project/analytics-solution-for-aml-transaction-monitoring/AML-Project-Architecture-Diagram_hu54b2d9a05680530261ca36d26a70d6a2_388116_9b80b3b5584b7b903b8d07477803c738.webp 760w,
               /project/analytics-solution-for-aml-transaction-monitoring/AML-Project-Architecture-Diagram_hu54b2d9a05680530261ca36d26a70d6a2_388116_1200x1200_fit_q75_h2_lanczos_3.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/analytics-solution-for-aml-transaction-monitoring/AML-Project-Architecture-Diagram_hu54b2d9a05680530261ca36d26a70d6a2_388116_6751fcf1019659aaebd87301e443c1ca.webp&#34;
               width=&#34;760&#34;
               height=&#34;340&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Architecture Diagram&lt;/center&gt;
&lt;p&gt;Amazon Aurora MySQL serves as the primary source database, continuously storing real-time transaction data for AML monitoring. AWS Data Migration Service (DMS) facilitates efficient, uninterrupted data replication from Aurora to the analytics environment. AWS Glue performs the ETL processing, transforming raw data into an optimized format, ready for analysis. Transformed data is stored in Amazon S3, a cost-effective and scalable storage solution that enables seamless access to processed data. Finally, Amazon Athena offers fast, SQL-based querying capabilities directly on the data in S3, empowering AML analysts to quickly retrieve insights and identify patterns in transactions.&lt;/p&gt;
&lt;h2 id=&#34;financial-cost-and-lessons-learned&#34;&gt;Financial Cost and Lessons Learned&lt;/h2&gt;
&lt;p&gt;The project’s cost breakdown revealed that initial setup expenses were elevated due to unoptimized configurations, resulting in higher-than-expected costs early in development. However, through a series of iterative optimizations, I managed to reduce the final project costs significantly to around $10 USD. Key lessons emerged from this process: implementing early partitioning strategies proved essential in lowering read and write costs on S3, and ensuring proper configuration and role permissions helped minimize unexpected charges while enhancing overall security.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;p&gt;The required setup for this project included a PostgreSQL database configured locally as a staging ground to hold raw transaction data before migration. On AWS, several services were configured to streamline data handling, including Amazon Aurora for scalable storage, S3 for secure storage of transformed data, Glue for ETL processes, Athena for querying, and AWS DMS for data migration. A key compatibility consideration was ensuring that AWS DMS supported PostgreSQL version 15, crucial for maintaining smooth data replication throughout the pipeline.&lt;/p&gt;
&lt;h2 id=&#34;step-by-step-guide-overview&#34;&gt;Step-by-Step Guide Overview&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Step 1: Local PostgreSQL Database&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The process begins by importing raw data into a locally set up PostgreSQL database, which acts as the initial source for data migration.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 2: Amazon Aurora MySQL&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Next, a highly available and secure Amazon Aurora MySQL instance is configured to migrate the data. Aurora’s robust infrastructure ensures reliability and scalability, allowing the data to be readily available for ETL job processing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 3: VPC Endpoint &amp;amp; Security Groups&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;To maintain secure access and data flow, a VPC endpoint and security groups are set up. This configuration allows controlled communication between AWS DMS, S3, and other AWS resources, ensuring that data remains secure while traversing different stages of the pipeline.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 4: AWS DMS Setup&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;AWS Database Migration Service (DMS) is configured by defining both source and target endpoints, streamlining data replication from the PostgreSQL database to Amazon Aurora MySQL. This setup minimizes downtime and ensures continuous data flow, making data from the local source seamlessly available within the AWS environment.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 5: S3 Buckets &amp;amp; IAM Roles&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Data storage on Amazon S3 is established for the ETL output, providing scalable and cost-effective storage. IAM roles are assigned following the least privilege principle to enhance security, ensuring that each service has only the permissions necessary for its function, thus reducing potential vulnerabilities.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 6: AWS Glue for ETL&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;AWS Glue is set up to handle extraction, transformation, and loading, removing personally identifiable information (PII), and converting data into Parquet format. This transformation not only reduces data size but also improves query performance, making large datasets easier to manage and more efficient to analyze.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 7: Athena Querying&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Finally, Amazon Athena is configured to query the transformed data directly from S3, providing AML analysts with fast, direct access to insights. This setup enables quick querying capabilities, allowing analysts to perform data analysis without the need for extensive ETL processing in real-time, enhancing both speed and usability.&lt;/p&gt;
&lt;h2 id=&#34;aws-glue--athena-integration&#34;&gt;AWS Glue &amp;amp; Athena Integration&lt;/h2&gt;
&lt;p&gt;AWS Glue functions as the primary ETL engine, cataloging metadata and orchestrating jobs to transform raw data into partitioned Parquet files optimized for efficient querying. Leveraging this metadata catalog, Amazon Athena enables AML analysts to perform quick, SQL-based analyses directly on the Parquet files stored in S3. This streamlined setup empowers analysts to swiftly identify irregularities in transaction data, providing an effective tool for uncovering potential compliance issues.&lt;/p&gt;
&lt;h2 id=&#34;example-queries-for-aml-monitoring&#34;&gt;Example Queries for AML Monitoring&lt;/h2&gt;
&lt;p&gt;The transaction flagging query identifies high-risk transactions that may indicate laundering patterns, enhancing detection of potentially suspicious activities. A high-value transactions query filters for transfers over $10,000, meeting compliance requirements for large transactions, while a high-risk location filter zeroes in on transactions originating from regions or jurisdictions flagged for laundering risks, supporting targeted analysis. Each query aligns with typical AML patterns, offering focused insights that aid compliance teams in monitoring and managing transaction data effectively.&lt;/p&gt;
&lt;h2 id=&#34;challenges-and-solutions&#34;&gt;Challenges and Solutions&lt;/h2&gt;
&lt;p&gt;Balancing security with cost presented a challenge, as configuring robust security (such as VPCs and IAM roles) while keeping AWS costs manageable required careful planning. Ensuring data compatibility during schema transformation also posed difficulties, particularly in migrating data formats from PostgreSQL to Athena. Solutions included implementing minimal-permission IAM roles, securing VPC configurations, and closely monitoring access controls to fortify security without inflating costs. Schema validation and mapping were critical in maintaining data consistency across services; using AWS Glue’s schema transformation capabilities enabled alignment, reducing the risk of data misalignment during migration and transformation.&lt;/p&gt;
&lt;h2 id=&#34;key-takeaways&#34;&gt;Key Takeaways&lt;/h2&gt;
&lt;p&gt;This project demonstrates real-world experience with Anti-Money Laundering (AML) compliance processes in a financial setting, showcasing effective use of AWS services to meet strict regulatory needs while controlling costs. By leveraging AWS tools in an integrated approach, the setup provides a scalable solution for financial institutions needing robust transaction monitoring capabilities. Potential applications include deployment as a scalable monitoring framework for banks or regulatory bodies, aiding AML analysts in identifying suspicious patterns efficiently. The project also serves as a valuable reference for teams managing sensitive transaction data within secure cloud environments, setting a foundation for compliance and operational best practices.&lt;/p&gt;
&lt;h2 id=&#34;thank-you&#34;&gt;Thank You!&lt;/h2&gt;
&lt;p&gt;Thank you for reading! I hope this overview provides clear insights into how cloud-based ETL solutions can effectively address AML requirements while optimizing for efficiency.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Building a Road Sign Detection System with YOLOv8</title>
      <link>https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/</link>
      <pubDate>Sun, 25 Aug 2024 00:00:00 +0000</pubDate>
      <guid>https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/</guid>
      <description>&lt;h2 id=&#34;table-of-contents&#34;&gt;Table of Contents*&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Introduction&lt;/li&gt;
&lt;li&gt;Story&lt;/li&gt;
&lt;li&gt;Problem&lt;/li&gt;
&lt;li&gt;Dataset&lt;/li&gt;
&lt;li&gt;Model Selection&lt;/li&gt;
&lt;li&gt;Model Training&lt;/li&gt;
&lt;li&gt;Training Metrics&lt;/li&gt;
&lt;li&gt;Outcome Analysis&lt;/li&gt;
&lt;li&gt;Demonstration&lt;/li&gt;
&lt;li&gt;Validation Images&lt;/li&gt;
&lt;li&gt;Conclusion&lt;/li&gt;
&lt;li&gt;Further Development&lt;/li&gt;
&lt;li&gt;Q&amp;amp;A&lt;/li&gt;
&lt;li&gt;References&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;1-introduction&#34;&gt;1. Introduction&lt;/h2&gt;
&lt;p&gt;In this project, I explore the complexities of Traffic Sign Recognition (TSR), a pivotal technology for autonomous driving and smart city systems. Leveraging the power of the YOLOv8 model, I set out to create a robust, high-accuracy solution for detecting and classifying key road signs, such as stop signs, traffic lights, crosswalks, and speed limits. Through extensive training, data augmentation, and model fine-tuning, this TSR system achieves real-time detection with impressive precision and recall, making it well-suited for practical deployment in real-world, on-road environments.&lt;/p&gt;
&lt;h2 id=&#34;2-the-story&#34;&gt;2. The Story&lt;/h2&gt;
&lt;p&gt;This project is inspired by real-world driving challenges where traffic sign visibility is often compromised by environmental factors, leading to potentially hazardous situations. Driven by a vision for safer roads, I set out to build a deep-learning-powered system capable of accurately recognizing traffic signs even under difficult conditions. My goal is to create a solution that enhances driver awareness, supports safer decision-making, and ultimately reduces traffic sign-related incidents.&lt;/p&gt;
&lt;h2 id=&#34;3-problem-statement&#34;&gt;3. Problem Statement&lt;/h2&gt;
&lt;p&gt;Traffic Sign Recognition (TSR) involves both object detection and classification, made challenging by factors like changing weather conditions, occlusions, and variable lighting. Achieving accurate TSR requires the ability to distinguish subtle differences between similar signs while maintaining high speed and low latency; critical features for real-world use in autonomous vehicles and advanced driver-assistance systems.&lt;/p&gt;
&lt;h2 id=&#34;4-the-dataset&#34;&gt;4. The Dataset&lt;/h2&gt;
&lt;p&gt;The dataset, sourced from Kaggle, contains 877 images annotated in PASCAL VOC XML format across four classes: Traffic Light, Stop, Speed Limit, and Crosswalk. To make the dataset compatible with YOLOv8, I utilized a custom Python function to convert these XML annotations into the YOLO format, allowing for seamless integration with YOLOv8 for training.&lt;/p&gt;
&lt;p&gt;Key preprocessing steps included:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Annotation Conversion:&lt;/strong&gt; Converted XML annotations to the YOLO format to align with YOLOv8&amp;rsquo;s requirements.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Image Resizing and Normalization:&lt;/strong&gt; Applied uniform resizing and normalization to maintain consistency in input dimensions and color scales.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Splitting:&lt;/strong&gt; Divided the dataset into training, validation, and test sets to support model training, performance tuning, and evaluation.&lt;/p&gt;
&lt;p&gt;This preprocessing pipeline ensured a well-structured and standardized dataset for accurate and efficient training.&lt;/p&gt;
&lt;h2 id=&#34;5-model-selection&#34;&gt;5. Model Selection&lt;/h2&gt;
&lt;p&gt;I selected YOLOv8, specifically the nano version (YOLOv8n), for its exceptional speed and accuracy, making it highly suitable for real-time applications. Building on the efficiency of the YOLO series, YOLOv8 enables simultaneous object detection and classification with high precision and minimal latency; key features for real-world performance.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alternative Models Considered&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I explored other models, including Faster R-CNN and SSD, but they fell short on the speed and efficiency required for real-time detection. A detailed comparison of these models confirmed that YOLOv8 strikes the ideal balance between accuracy and processing time, making it the optimal choice for this project.&lt;/p&gt;
&lt;h2 id=&#34;6-model-training&#34;&gt;6. Model Training&lt;/h2&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/road-sign-recognition-using-yolov8/image1_hu9613b33216a66e80fd678ae29006e4a7_23959_381c46b0a784ec0e9d014e87a7870778.webp 400w,
               /project/road-sign-recognition-using-yolov8/image1_hu9613b33216a66e80fd678ae29006e4a7_23959_b6cd48f7ec346cfff31979c9f69b78d0.webp 760w,
               /project/road-sign-recognition-using-yolov8/image1_hu9613b33216a66e80fd678ae29006e4a7_23959_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/image1_hu9613b33216a66e80fd678ae29006e4a7_23959_381c46b0a784ec0e9d014e87a7870778.webp&#34;
               width=&#34;603&#34;
               height=&#34;223&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Training Metrics&lt;/center&gt;
&lt;p&gt;The model training phase focused on configuring YOLOv8 for optimal performance and applying targeted data augmentation techniques to improve robustness and generalization.&lt;/p&gt;
&lt;h3 id=&#34;training-configuration&#34;&gt;Training Configuration&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Model:&lt;/strong&gt; YOLOv8n&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Epochs:&lt;/strong&gt; 50&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Batch Size:&lt;/strong&gt; 16&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Image Size:&lt;/strong&gt; 640&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Optimizer:&lt;/strong&gt; AdamW&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;data-augmentation-techniques&#34;&gt;Data Augmentation Techniques&lt;/h3&gt;
&lt;p&gt;To enhance the model’s generalization and adaptability, several augmentations were applied:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Blur:&lt;/strong&gt; Reduces high-frequency noise for better generalization.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MedianBlur:&lt;/strong&gt; Addresses outliers and improves performance under various lighting.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ToGray:&lt;/strong&gt; Prepares the model for grayscale conditions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CLAHE:&lt;/strong&gt; Enhances contrast in low-visibility scenarios.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;training-process-and-fine-tuning&#34;&gt;Training Process and Fine-Tuning&lt;/h3&gt;
&lt;p&gt;During initial training, the model faced accuracy issues. Fine-tuning resolved these and substantially enhanced performance, as demonstrated below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Metrics Before Fine-Tuning&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Precision (P): 0.0&lt;/li&gt;
&lt;li&gt;Recall (R): 0.0&lt;/li&gt;
&lt;li&gt;mAP@50: 0.0&lt;/li&gt;
&lt;li&gt;mAP@50-95: 0.0&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Metrics After Fine-Tuning&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Precision (P): 0.913&lt;/li&gt;
&lt;li&gt;Recall (R): 0.775&lt;/li&gt;
&lt;li&gt;mAP@50: 0.83&lt;/li&gt;
&lt;li&gt;mAP@50-95: 0.658&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These results illustrate the impact of meticulous fine-tuning, which optimized the model’s ability to manage diverse, real-world conditions with improved accuracy and reliability.&lt;/p&gt;
&lt;h2 id=&#34;7-training-metrics&#34;&gt;7. Training Metrics&lt;/h2&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/road-sign-recognition-using-yolov8/image2_hu5701a915b85728eda5853a97a986201d_22557_151ba12e7655bbe373ea20a2612b142e.webp 400w,
               /project/road-sign-recognition-using-yolov8/image2_hu5701a915b85728eda5853a97a986201d_22557_5c498de0700e5bff064989751baee5ce.webp 760w,
               /project/road-sign-recognition-using-yolov8/image2_hu5701a915b85728eda5853a97a986201d_22557_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/image2_hu5701a915b85728eda5853a97a986201d_22557_151ba12e7655bbe373ea20a2612b142e.webp&#34;
               width=&#34;474&#34;
               height=&#34;415&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Confusion Matrix Normalized&lt;/center&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/road-sign-recognition-using-yolov8/image3_hucf5c28a43a41f5ae45e81d72b9089b9e_25374_7938d6e7028ef20f618dc2929d28fb63.webp 400w,
               /project/road-sign-recognition-using-yolov8/image3_hucf5c28a43a41f5ae45e81d72b9089b9e_25374_beb87031c19ec879f51563a934321321.webp 760w,
               /project/road-sign-recognition-using-yolov8/image3_hucf5c28a43a41f5ae45e81d72b9089b9e_25374_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/image3_hucf5c28a43a41f5ae45e81d72b9089b9e_25374_7938d6e7028ef20f618dc2929d28fb63.webp&#34;
               width=&#34;551&#34;
               height=&#34;384&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Precision-Recall Curve&lt;/center&gt;
&lt;p&gt;Throughout training, I tracked key metrics to assess the model’s performance and improvements over time:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Precision and Recall:&lt;/strong&gt; These metrics revealed the model’s accuracy in correctly identifying traffic signs while minimizing false positives.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;mAP@50 and mAP@50-95:&lt;/strong&gt; These mean Average Precision metrics measured detection accuracy across different Intersection over Union (IoU) thresholds, offering a comprehensive view of the model’s reliability.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Training Loss:&lt;/strong&gt; A consistent reduction in training loss across epochs indicated effective learning and convergence.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The analysis demonstrated a steady increase in both precision and recall after fine-tuning, highlighting the model’s enhanced ability to detect and classify signs accurately. The upward trends in these metrics reflect the model’s growing accuracy and robustness, making it well-suited for real-world traffic sign recognition.&lt;/p&gt;
&lt;h2 id=&#34;8-outcome-analysis&#34;&gt;8. Outcome Analysis&lt;/h2&gt;
&lt;h3 id=&#34;class-wise-performance&#34;&gt;Class-Wise Performance&lt;/h3&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/road-sign-recognition-using-yolov8/image4_hud07ed21365e5f75f2b75ba9280fe8992_18659_f7dcb702111c886a6a7817ed3baae899.webp 400w,
               /project/road-sign-recognition-using-yolov8/image4_hud07ed21365e5f75f2b75ba9280fe8992_18659_6ab9b972bf07db7c7db6b03fb197b18a.webp 760w,
               /project/road-sign-recognition-using-yolov8/image4_hud07ed21365e5f75f2b75ba9280fe8992_18659_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/image4_hud07ed21365e5f75f2b75ba9280fe8992_18659_f7dcb702111c886a6a7817ed3baae899.webp&#34;
               width=&#34;568&#34;
               height=&#34;164&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Each traffic sign class exhibited unique performance metrics:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Traffic Light:&lt;/strong&gt; Precision is relatively high, but recall is low. This suggests that the model correctly identifies traffic lights when it does detect them, but it misses a significant number of them.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stop:&lt;/strong&gt; High precision and recall indicate the model is performing well for stop signs.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Speed Limit:&lt;/strong&gt; Exceptional performance in both precision and recall, making this the best-performing class.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Crosswalk:&lt;/strong&gt; Good balance between precision and recall, with strong mAP scores.&lt;/p&gt;
&lt;h3 id=&#34;overall-performance&#34;&gt;Overall Performance&lt;/h3&gt;
&lt;p&gt;Post-fine-tuning, the model achieved:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Precision:&lt;/strong&gt; 0.913&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Recall:&lt;/strong&gt; 0.775&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;mAP@50:&lt;/strong&gt; 0.83&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;mAP@50-95:&lt;/strong&gt; 0.658&lt;/p&gt;
&lt;h2 id=&#34;9-demonstration&#34;&gt;9. Demonstration&lt;/h2&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/road-sign-recognition-using-yolov8/image5_hua1594a1909d89cd4ee53d044119de25b_92008_7f4bcbf66e46120fe96b5624d0dbf75e.webp 400w,
               /project/road-sign-recognition-using-yolov8/image5_hua1594a1909d89cd4ee53d044119de25b_92008_6705aa37c90fd747125832e3b41a214d.webp 760w,
               /project/road-sign-recognition-using-yolov8/image5_hua1594a1909d89cd4ee53d044119de25b_92008_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/image5_hua1594a1909d89cd4ee53d044119de25b_92008_7f4bcbf66e46120fe96b5624d0dbf75e.webp&#34;
               width=&#34;566&#34;
               height=&#34;638&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Validation Images&lt;/center&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/road-sign-recognition-using-yolov8/image6_hue0e82a7285ec8f920b94977f02e39a53_129551_ee5fd167d7d40f2f058311b0ab2ef73b.webp 400w,
               /project/road-sign-recognition-using-yolov8/image6_hue0e82a7285ec8f920b94977f02e39a53_129551_364b512bfacf5a5044a5904c1c39406e.webp 760w,
               /project/road-sign-recognition-using-yolov8/image6_hue0e82a7285ec8f920b94977f02e39a53_129551_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/road-sign-recognition-using-yolov8/image6_hue0e82a7285ec8f920b94977f02e39a53_129551_ee5fd167d7d40f2f058311b0ab2ef73b.webp&#34;
               width=&#34;717&#34;
               height=&#34;760&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Inference Images Taken Around GBC&lt;/center&gt;
&lt;h2 id=&#34;10-validation-images&#34;&gt;10. Validation Images&lt;/h2&gt;
&lt;p&gt;Validation images were used to further verify model accuracy. Some notable examples include:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Traffic Light Detection:&lt;/strong&gt; Accurate identification in complex intersections.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stop Sign Detection:&lt;/strong&gt; Detection despite partial occlusion.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Speed Limit Sign Detection:&lt;/strong&gt; Reliable detection under low-light conditions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Crosswalk Detection:&lt;/strong&gt; Accurate identification of crosswalks, even with pedestrian presence.&lt;/p&gt;
&lt;h2 id=&#34;11-conclusion&#34;&gt;11. Conclusion&lt;/h2&gt;
&lt;p&gt;This project demonstrates the power of YOLOv8 in addressing the challenges of traffic sign recognition. With fine-tuning and data augmentation, the model has proven capable of accurately identifying key road signs in real-time, paving the way for applications in autonomous driving and smart traffic management.&lt;/p&gt;
&lt;h2 id=&#34;12-further-development&#34;&gt;12. Further Development&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Expand Dataset:&lt;/strong&gt; Introduce more classes and regional sign samples for greater generalization.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Text Recognition for Speed Limits:&lt;/strong&gt; Enabling recognition of specific speed limits.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Enhanced Data Augmentation:&lt;/strong&gt; To further improve recall for certain classes, like traffic lights.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Exploring Advanced Models:&lt;/strong&gt; Explore newer versions of YOLO or models like SAM, and investigate additional deep learning architectures for improved accuracy.&lt;/p&gt;
&lt;h2 id=&#34;13-qa&#34;&gt;13. Q&amp;amp;A&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Q1: How does the model handle different lighting conditions?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The model’s robustness is enhanced through augmentations like CLAHE and ToGray, which simulate various lighting conditions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Q2: What are the current limitations?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;One limitation is the lower recall rate for traffic lights, which I plan to improve through further augmentation and more diverse training samples.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Q3: Can this model be deployed in real-world applications?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Yes, the model’s real-time detection capabilities make it a viable solution for autonomous driving and traffic monitoring applications.&lt;/p&gt;
&lt;h2 id=&#34;14-references&#34;&gt;14. References&lt;/h2&gt;
&lt;p&gt;YOLOv8 Documentation: &lt;a href=&#34;https://docs.ultralytics.com/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://docs.ultralytics.com/&lt;/a&gt;
Dataset (Kaggle Road Sign Detection): &lt;a href=&#34;https://www.kaggle.com/datasets/andrewmvd/road-sign-detection&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://www.kaggle.com/datasets/andrewmvd/road-sign-detection&lt;/a&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Flypto: Automated Cryptocurrency Trading Solution</title>
      <link>https://ibrahimmaiga.com/project/automated-crypto-trading-bot/</link>
      <pubDate>Tue, 16 Jul 2024 00:00:00 +0000</pubDate>
      <guid>https://ibrahimmaiga.com/project/automated-crypto-trading-bot/</guid>
      <description>&lt;h2 id=&#34;revolutionizing-crypto-trading-with-ai-driven-intelligence&#34;&gt;Revolutionizing Crypto Trading with AI-Driven Intelligence&lt;/h2&gt;
&lt;p&gt;The cryptocurrency market has emerged as one of the most dynamic and volatile sectors in the global financial landscape. With its rapid growth and the advent of digital assets like Bitcoin, Ethereum, and numerous altcoins, the market offers unprecedented opportunities for traders and investors. However, this volatility also presents significant challenges, particularly for those who rely on manual trading methods. Emotional decision-making, the complexity of market data, and the constant need for vigilance can lead to suboptimal outcomes.&lt;/p&gt;
&lt;p&gt;In response to these challenges, Flypto was conceived as a cutting-edge solution designed to harness the power of artificial intelligence to optimize cryptocurrency trading. Flypto combines the power of advanced machine learning models, and real-time market analysis to provide traders with a competitive edge that was previously only available to large institutional investors. By automating the trading process, Flypto aims to eliminate the emotional biases that often lead to poor trading decisions, enabling users to capitalize on market opportunities with confidence.&lt;/p&gt;
&lt;h2 id=&#34;the-challenge-why-traditional-trading-falls-short&#34;&gt;The Challenge: Why Traditional Trading Falls Short&lt;/h2&gt;
&lt;p&gt;Cryptocurrency markets are unlike traditional financial markets in many ways. The most notable difference is their round-the-clock nature. While stock exchanges close at the end of the day, cryptocurrency markets operate 24/7, meaning traders must remain vigilant at all hours to capitalize on market movements. However, the challenges don&amp;rsquo;t stop there.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Human Emotions Lead to Impulsive Decisions&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;One of the biggest limitations of traditional trading is the human element. Emotions like fear and greed often lead to poor decision-making, especially in volatile markets like cryptocurrency. Many traders struggle to stay disciplined when facing extreme price swings, and emotional decisions can result in missed opportunities or significant losses.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Market Reactions to News and Social Media Happen in Seconds&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The cryptocurrency market is highly sensitive to news and social media. Major events, regulatory announcements, or even rumors can send prices into a frenzy within seconds. Human traders often struggle to react fast enough to capitalize on these opportunities. By the time they read about the news, the market has already moved.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Complex Market Patterns Are Difficult to Identify Manually&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The cryptocurrency market is notoriously volatile, with rapid and unpredictable price movements. Identifying patterns, trends, and signals in the chaos requires advanced analysis tools and the ability to process large amounts of data. Manual analysis is slow and prone to error, making it difficult for traders to spot profitable opportunities before they vanish.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. 24/7 Markets Require Constant Attention&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Unlike traditional stock markets, cryptocurrency markets never close. This means traders need to be available 24/7 to monitor and react to market movements. For most people, this is simply not feasible, especially if they have other commitments or only trade part-time. However, missing out on trades during off-hours can lead to missed profits.&lt;/p&gt;
&lt;h2 id=&#34;enter-flypto-your-ai-trading-advantage&#34;&gt;Enter Flypto: Your AI Trading Advantage&lt;/h2&gt;
&lt;p&gt;Flypto offers a solution to these challenges by leveraging artificial intelligence (AI) to automate trading decisions and eliminate emotional biases. By using advanced machine learning algorithms, Flypto can process massive amounts of data from multiple sources in real-time, identify emerging market trends, and execute trades faster than any human trader could. This allows Flypto to take advantage of market opportunities around the clock, without the limitations imposed by human emotions or the need for constant attention.&lt;/p&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img src=&#34;https://github.com/user-attachments/assets/5b1f8252-5f87-4f74-a96b-86911e9838d5&#34; alt=&#34;&#34; loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Architecture Diagram&lt;/center&gt;
&lt;h3 id=&#34;key-features-that-set-us-apart&#34;&gt;Key Features That Set Us Apart&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Real-Time Sentiment Analysis&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;A unique aspect of Flypto’s platform is its real-time sentiment analysis. Flypto continuously monitors news articles, social media platforms, and market trends to gauge public sentiment. Through the power of natural language processing (NLP), Flypto is able to detect market-moving events in real-time. Whether it&amp;rsquo;s a sudden regulatory change, a new product announcement, or social media chatter, Flypto can process the information instantly and adjust trading strategies accordingly.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Continuous Monitoring:&lt;/strong&gt; Flypto tracks multiple news sources, social media platforms, and other market-relevant channels to gather and process information on a continuous basis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Advanced Natural Language Processing:&lt;/strong&gt; Flypto uses cutting-edge NLP techniques to interpret and quantify market sentiment, determining whether the news is bullish or bearish for specific cryptocurrencies.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Instant Detection:&lt;/strong&gt; Market-moving events are detected as soon as they are reported, enabling Flypto to take immediate action before the market fully reacts.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;AI-Driven Predictive Models&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Flypto uses Facebook Prophet, a powerful open-source tool for time-series forecasting, to build predictive models that forecast future market movements based on historical data and current market conditions. By integrating technical indicators such as moving averages and RSI (Relative Strength Index), along with sentiment data derived from real-time news, Flypto’s predictive models are able to anticipate price movements with remarkable accuracy.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Time-Series Forecasting:&lt;/strong&gt; Flypto’s AI models take into account historical price movements, volume data, and external variables to predict future market trends.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real-Time Learning and Adaptation:&lt;/strong&gt; Flypto continuously learns and adapts to changing market conditions, improving the accuracy of its predictions over time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multi-Factor Integration:&lt;/strong&gt; Flypto combines technical indicators, sentiment data, and predictive models to generate trading signals, ensuring that no single data point dominates the decision-making process.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;Risk Management and Volatility Handling&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Cryptocurrency markets are notoriously volatile, with large price swings occurring frequently. Flypto is equipped with sophisticated risk management tools designed to protect traders from excessive losses. The platform uses dynamic portfolio rebalancing and volatility-based position sizing to adjust exposure based on current market conditions.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automated Stop-Loss Triggers:&lt;/strong&gt; Flypto automatically sets stop-loss orders to limit potential losses, reducing the risk of significant downturns.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dynamic Portfolio Rebalancing:&lt;/strong&gt; Flypto continuously adjusts portfolio allocations to optimize returns while minimizing risk.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Volatility-Based Position Sizing:&lt;/strong&gt; Flypto adjusts the size of positions based on market volatility, ensuring that trades are appropriately sized to handle periods of high volatility without risking too much capital.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;4&#34;&gt;
&lt;li&gt;&lt;strong&gt;Customizable Trading Strategies&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Flypto offers a range of pre-built strategies that cater to different risk appetites, from conservative to aggressive trading. For more advanced users, Flypto provides full customization options, allowing traders to build their own strategies using a wide array of technical and fundamental indicators. This ensures that traders of all experience levels can take full advantage of Flypto’s advanced AI-powered features.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pre-Built Strategies:&lt;/strong&gt; Flypto offers ready-made strategies for different risk profiles, making it easier for users to get started.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Customizable Trading Rules:&lt;/strong&gt; Advanced users can tailor strategies to their specific needs, adjusting risk parameters, technical indicators, and trading timeframes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Institutional-Grade Tools:&lt;/strong&gt; Flypto provides professional-grade tools and analytics, making it suitable for both retail traders and institutional investors.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;who-benefits-from-flypto&#34;&gt;Who Benefits from Flypto?&lt;/h2&gt;
&lt;p&gt;Flypto’s innovative trading platform is designed to meet the needs of various types of investors, from large hedge funds to individual retail traders.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Hedge Funds &amp;amp; Asset Managers&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Flypto offers hedge funds and asset managers access to institutional-grade tools for portfolio optimization and risk management. With the ability to execute trades in milliseconds based on real-time market intelligence, Flypto enables institutional investors to remain competitive in an increasingly fast-moving market.&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;High-Frequency Traders&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For high-frequency traders who rely on speed and precision, Flypto provides low-latency infrastructure and advanced predictive models that can identify and act on market opportunities faster than traditional systems.&lt;/p&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;Crypto Exchanges&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Flypto offers crypto exchanges the opportunity to provide their users with a powerful trading tool that not only increases engagement but also provides a new revenue stream through white-label solutions.&lt;/p&gt;
&lt;ol start=&#34;4&#34;&gt;
&lt;li&gt;&lt;strong&gt;Retail Investors&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Flypto’s automated trading system allows retail investors to benefit from professional-grade strategies that are otherwise unavailable to most individual traders. With the ability to implement sophisticated trading strategies 24/7, retail traders never miss an opportunity to make a profitable trade.&lt;/p&gt;
&lt;h2 id=&#34;the-technology-behind-flypto&#34;&gt;The Technology Behind Flypto&lt;/h2&gt;
&lt;p&gt;Flypto is built on robust AWS infrastructure, ensuring that the platform is secure, scalable, and always available. The system leverages AWS Lambda functions for efficient serverless execution, while real-time data feeds are processed through AWS Kinesis for high-throughput and low-latency data streaming. Flypto also ensures reliability by using redundant systems for uninterrupted operation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reliable Real-Time Data Feeds:&lt;/strong&gt; Flypto utilizes fast and reliable data pipelines powered by AWS to ensure that market data and news updates are always current.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure Trade Execution:&lt;/strong&gt; Flypto’s trade execution systems are secured using industry-standard encryption protocols, ensuring that all trades are executed safely and efficiently.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scalable Processing Power:&lt;/strong&gt; Flypto’s AI models are powered by scalable cloud infrastructure, ensuring that processing power grows as the platform scales.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Redundant Systems:&lt;/strong&gt; Flypto&amp;rsquo;s infrastructure is designed to handle failures gracefully, with redundant systems ensuring that the platform remains online even during system outages.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;looking-ahead&#34;&gt;Looking Ahead&lt;/h2&gt;
&lt;p&gt;As the cryptocurrency market continues to evolve, Flypto remains at the forefront of trading innovation. By combining cutting-edge AI technology with a deep understanding of market dynamics, Flypto is transforming how both institutional and retail investors trade cryptocurrencies. Whether you are an institutional investor looking for sophisticated trading tools or a retail trader seeking automation and advanced strategies, Flypto offers the competitive edge you need to succeed.&lt;/p&gt;
&lt;h2 id=&#34;ready-to-transform-your-trading&#34;&gt;Ready to Transform Your Trading?&lt;/h2&gt;
&lt;p&gt;Join the growing number of traders and institutions who are discovering the power of AI-driven trading with Flypto. Contact us today to learn how we can help you achieve your trading goals. Stay ahead of the market with Flypto – where AI meets cryptocurrency trading excellence.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt; Cryptocurrency trading involves substantial risk of loss and is not suitable for every investor. The performance of backtested trading strategies does not guarantee future results.&lt;/p&gt;
&lt;p&gt;Contributor: &lt;a href=&#34;https://www.linkedin.com/in/andythf/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Andy Tang&lt;/a&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Global Warming Effects: Big Data Analysis Reveals Surprising Connections</title>
      <link>https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/</link>
      <pubDate>Sat, 15 Jun 2024 00:00:00 +0000</pubDate>
      <guid>https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/</guid>
      <description>&lt;h2 id=&#34;contents&#34;&gt;Contents&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;1. Introduction&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Data&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. ETL Pipeline&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Database Migration&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. Dashboarding with Power BI&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;6. Results and Findings&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;7. Limitations and Challenges&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;8. Conclusion&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;9. References&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&#34;abstract&#34;&gt;Abstract&lt;/h2&gt;
&lt;p&gt;This report explores the impact of global warming on crime rates, birth rates, and energy consumption in the United States and Canada. With the evolution towards a digitally connected world, the volume, variety, and velocity of data have increased significantly. To derive valuable insights from this data, we utilized temperature, crime, natality, and energy consumption data from various sources. By employing big data tools and techniques, we transformed raw data into meaningful insights. Key findings indicate that higher temperatures are correlated with increased crime rates and energy consumption, while extreme temperatures are associated with reduced birth rates. This project demonstrates the potential of big data in enhancing our understanding of the implications of global warming.&lt;/p&gt;
&lt;p&gt;This project aims to integrate and analyze diverse data sources to gain insights into the correlations between weather patterns, birth rates, crime statistics, and energy consumption in Canada and the USA. By leveraging big data technologies such as Hadoop, PostgreSQL, MongoDB, MySQL, and MSSQL Server, we aim to build a comprehensive ETL pipeline that facilitates the seamless collection, storage, and analysis of large datasets. The outcome will provide valuable insights to inform policy decisions and operational strategies across various sectors.&lt;/p&gt;
&lt;h2 id=&#34;1-introduction&#34;&gt;1. Introduction&lt;/h2&gt;
&lt;p&gt;The digital age has led to an exponential increase in data generation, characterized by high volume, variety, and velocity. Managing this much data requires robust data governance policies and best practices. However, the true value of data lies in its ability to provide actionable insights. This project aims to analyze the impact of global warming on crime rates, birth rates, and energy consumption in the US and Canada using temperature, crime, natality, and energy consumption data.&lt;/p&gt;
&lt;p&gt;The goal of this project is to leverage big data technologies to process and analyze data from multiple sources, thereby gaining a better understanding of how rising global temperatures affect various societal metrics. By integrating and analyzing data from different databases, we aim to uncover patterns and correlations that can inform policy decisions and future research. The goal is to create a seamless data flow from collection to analysis, enabling comprehensive insights into how these variables interact over time and across regions.&lt;/p&gt;
&lt;h2 id=&#34;2-data&#34;&gt;2. Data&lt;/h2&gt;
&lt;h3 id=&#34;21-data-sources&#34;&gt;2.1 Data Sources&lt;/h3&gt;
&lt;p&gt;This project extracts data from various publicly available sources to collect the data required for our analysis, including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;APIs from weather services, crime statistics bureaus, and energy consumption reports.&lt;/li&gt;
&lt;li&gt;Publicly available datasets from Government websites and international organisations.&lt;/li&gt;
&lt;li&gt;Synthetic data.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In order to conduct our analysis, it is crucial to ensure that the datasets we collect are on a daily basis. This is imperative for our process. The datasets that were sourced in this project are listed below.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&#34;https://www.statcan.gc.ca/en/start&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Canada Daily Birth&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&#34;https://dd.weather.gc.ca/climate/ltce/daily/temperature/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Canada Daily Temperature&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&#34;https://www.ncei.noaa.gov/pub/data/uscrn/products/daily01/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;USA Daily Temperature&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&#34;https://github.com/fivethirtyeight/data/blob/master/births/US_births_2000-2014_SSA.csv&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;USA Daily Birth&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&#34;https://wonder.cdc.gov/controller/datarequest/D10;jsessionid=4E3CD4A6945320675A2E65F0A87B&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;USA Natality&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&#34;https://www.eia.gov/electricity/gridmonitor/dashboard/electric_overview/US48/US48&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;USA Daily Energy Consumption&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Additional sources:&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.kaggle.com/datasets/sobhanmoosavi/us-accidents/data?select=US_Accidents_March23.csv&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;USA Accidents&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.kaggle.com/datasets/tbsteal/canadian-car-accidents-19942014&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Canadian Car Accidents&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&#34;https://www.kaggle.com/datasets/robikscube/hourly-energy-consumption&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;USA Hourly Energy Consumption&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;22-databases&#34;&gt;2.2 Databases&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Data Collection and Preprocessing&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Data was gathered from nine different sources, pre-processed, and stored in seven databases as follows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Apache Hadoop:&lt;/strong&gt; US crime data (us_crime.csv)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Snowflake:&lt;/strong&gt; Canadian temperature data (ca_temp.csv)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PostgreSQL:&lt;/strong&gt; US temperature data (us_temp.csv)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MySQL:&lt;/strong&gt; US birth data (us_birth.csv)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SQL Server:&lt;/strong&gt; US energy consumption data (us_energy.csv)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MongoDB:&lt;/strong&gt; Canadian birth data (ca_birth.json)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Local Machine Storage:&lt;/strong&gt; Canadian crime data (ca_crime.csv)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Initial data collection and preprocessing involved cleaning and standardizing the datasets. This included handling missing values, normalizing temperature readings, and ensuring consistency in the data formats across different sources.&lt;/p&gt;
&lt;p&gt;For Canadian birth data, I could only get monthly counts, and I generated the daily counts using the actual monthly totals to ensure accuracy.&lt;/p&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/big-data-analysis-with-pyspark/Project-image1_hu8acd88d6331fae5b7af57abe8485e68f_57034_5df1b7acb31043865fa0de4c44d358d9.webp 400w,
               /project/big-data-analysis-with-pyspark/Project-image1_hu8acd88d6331fae5b7af57abe8485e68f_57034_ebfd27c3d31dcd737e115e3cf5650d89.webp 760w,
               /project/big-data-analysis-with-pyspark/Project-image1_hu8acd88d6331fae5b7af57abe8485e68f_57034_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/Project-image1_hu8acd88d6331fae5b7af57abe8485e68f_57034_5df1b7acb31043865fa0de4c44d358d9.webp&#34;
               width=&#34;603&#34;
               height=&#34;340&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;DBeaver UI on Azure VM&lt;/center&gt;
&lt;h2 id=&#34;programming-languages&#34;&gt;PROGRAMMING LANGUAGES&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;SQL&lt;/li&gt;
&lt;li&gt;PySpark&lt;/li&gt;
&lt;li&gt;Shell Scripting&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;3-etl-pipeline&#34;&gt;3. ETL Pipeline&lt;/h2&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/big-data-analysis-with-pyspark/Data-Flow-Diagram_hu226df73390e6bd2d73c2d10661c78536_171225_98499043669cb8882248da0b1c0ee164.webp 400w,
               /project/big-data-analysis-with-pyspark/Data-Flow-Diagram_hu226df73390e6bd2d73c2d10661c78536_171225_e142f715787c97bd1462d8f4854f9a2c.webp 760w,
               /project/big-data-analysis-with-pyspark/Data-Flow-Diagram_hu226df73390e6bd2d73c2d10661c78536_171225_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/Data-Flow-Diagram_hu226df73390e6bd2d73c2d10661c78536_171225_98499043669cb8882248da0b1c0ee164.webp&#34;
               width=&#34;760&#34;
               height=&#34;590&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;DATA FLOW DIAGRAM&lt;/center&gt;
&lt;br&gt;
&lt;p&gt;Our ETL process commences with extracting raw data from the data sources, which is then organised into several datasets. Each dataset undergoes a cleaning and pre-processing phase before being stored in its respective databases, such as Apache Hadoop, Microsoft SQL Server, PostgreSQL, and MongoDB. Additionally, one dataset is retained as a CSV file to replicate local data processing scenarios.&lt;/p&gt;
&lt;p&gt;Apache Spark is utilised to consolidate data from different databases. The consolidated data is then exported to a CSV file and imported into Azure SQL Server using SSMS. Azure SQL Server, a cloud-based service, facilitates access to its data for all team members, regardless of location.&lt;/p&gt;
&lt;p&gt;At the final stage, Power BI visualizes the data and provides insights for our research.&lt;/p&gt;
&lt;h3 id=&#34;31-data-cleaning&#34;&gt;3.1 DATA CLEANING&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Data Alignment:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Aligned datasets to a common timeline to ensure consistency in time series analysis. This involved transforming various temporal resolutions (daily, monthly, yearly) into a unified format.&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;Data Normalization:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Standardized units of measurement across different datasets (e.g., Fahrenheit to Celsius for temperature data&lt;/li&gt;
&lt;li&gt;Harmonized categorical variables, especially in crime datasets, to ensure comparability between US and Canada data.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;Handling Missing Data:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Identified and addressed missing values through interpolation or imputation methods.&lt;/li&gt;
&lt;li&gt;Ensured that the missing data did not skew the results by applying appropriate statistical techniques.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;4&#34;&gt;
&lt;li&gt;&lt;strong&gt;Data Filtering:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Filtered out irrelevant data points and outliers that could affect the analysis. For instance, extreme temperature values that were likely recording errors were excluded.&lt;/p&gt;
&lt;ol start=&#34;5&#34;&gt;
&lt;li&gt;&lt;strong&gt;Data Integration:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Merged datasets from different sources, ensuring data integrity and consistency.&lt;/li&gt;
&lt;li&gt;Used ETL (Extract, Transform, Load) processes to consolidate data into a unified database, facilitating easier access and analysis.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;6&#34;&gt;
&lt;li&gt;&lt;strong&gt;Data Validation:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Validated the accuracy of the data by cross-referencing with reliable sources.&lt;/li&gt;
&lt;li&gt;Ensured that the datasets were free from duplicates and errors.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;32-data-consolidation&#34;&gt;3.2 DATA CONSOLIDATION&lt;/h3&gt;
&lt;p&gt;To facilitate comprehensive analysis, we configured an Azure VM with 4 CPUs and 8GB RAM to host a single-node Hadoop cluster, PySpark, and DBeaver. However, due to resource constraints, this VM was inadequate, leading to its replacement with a more powerful VM with 8 CPUs and 32GB RAM.&lt;/p&gt;
&lt;p&gt;Using PySpark, we aggregated data from the six databases, performed additional cleaning, and joined the datasets to create a unified dataset. The combined dataset was then exported to Azure SQL Server and subsequently imported into PowerBI for analysis and reporting.&lt;/p&gt;
&lt;p&gt;To effectively manage and analyze the large and varied datasets, we utilized PySpark for aggregation and querying. PySpark is the Python API for Apache Spark, which is a powerful open-source distributed computing system.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Benefits of Using PySpark:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Scalability: PySpark’s distributed computing capabilities allowed me to scale the data processing tasks across multiple nodes, handling large volumes of data efficiently.&lt;/li&gt;
&lt;li&gt;Speed: Spark’s in-memory processing and optimized execution plans significantly reduced the time required for data aggregation and querying compared to traditional methods.&lt;/li&gt;
&lt;li&gt;Integration: PySpark seamlessly integrates with various data sources, including HDFS, Apache Hive, and relational databases like MySQL and PostgreSQL, enabling easy data consolidation from diverse sources.&lt;/li&gt;
&lt;li&gt;Flexibility: PySpark supports both SQL queries and complex data transformations using its DataFrame API, providing the flexibility needed for our data consolidation tasks.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Data Loading&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I loaded the cleaned datasets into Spark DataFrames from various storage systems, including Snowflake and Hadoop Distributed File System (HDFS).&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;Data Transformation&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Using PySpark’s DataFrame API, I performed necessary transformations such as filtering, joining, and grouping data. These transformations helped in aligning the data from different sources and preparing it for analysis.&lt;/p&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;Aggregation&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;PySpark’s powerful aggregation functions enabled me to compute summary statistics, such as average daily birth rates and total daily energy consumption, across large datasets efficiently.&lt;/p&gt;
&lt;ol start=&#34;4&#34;&gt;
&lt;li&gt;&lt;strong&gt;Querying&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For querying the data, I used PySpark SQL, which allowed me to run SQL-like queries on the dataframes. This approach provided an intuitive and familiar interface for data analysts to extract insights from the consolidated data.&lt;/p&gt;
&lt;ol start=&#34;5&#34;&gt;
&lt;li&gt;&lt;strong&gt;Data Export&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;After performing the necessary aggregations and queries, the resulting datasets were exported to formats suitable for further analysis and visualization, such as CSV files and tables in a relational database. In our case we are using PowerBi for further visualization&lt;/p&gt;
&lt;h2 id=&#34;4-data-migration&#34;&gt;4. Data Migration&lt;/h2&gt;
&lt;p&gt;Data migration involves transferring data from source systems to the target data warehouse. This process ensures that data is accurately and efficiently moved while maintaining its integrity. ETL scripting techniques and database connector tools facilitated smooth migration and data replication.&lt;/p&gt;
&lt;h2 id=&#34;5-dashboarding-with-power-bi&#34;&gt;5. Dashboarding with Power BI&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;PowerBI&lt;/strong&gt; was used to create various visualizations to represent the findings:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Heat maps&lt;/strong&gt; depicting the correlation between temperature and crime rates.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Line graphs&lt;/strong&gt; showing trends in birth rates relative to temperature variations.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Bar charts&lt;/strong&gt; illustrating energy consumption patterns in relation to temperature changes.&lt;/p&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/big-data-analysis-with-pyspark/Project-image4_huda274e881198bee02482b0b3ed192c20_25839_3bf146130f6dc4e3ec0f5796098f1b49.webp 400w,
               /project/big-data-analysis-with-pyspark/Project-image4_huda274e881198bee02482b0b3ed192c20_25839_71ac4029bf769d8a08f8f6c82ec4ef76.webp 760w,
               /project/big-data-analysis-with-pyspark/Project-image4_huda274e881198bee02482b0b3ed192c20_25839_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/Project-image4_huda274e881198bee02482b0b3ed192c20_25839_3bf146130f6dc4e3ec0f5796098f1b49.webp&#34;
               width=&#34;547&#34;
               height=&#34;346&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Figure 1. The average temperature in the US vs Canada, in Celsius&lt;/center&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/big-data-analysis-with-pyspark/Project-image5_hu2482980dbb27bc7f07755e621c6f124c_57246_b57babb9d3dd3d159fe0b9aad0769681.webp 400w,
               /project/big-data-analysis-with-pyspark/Project-image5_hu2482980dbb27bc7f07755e621c6f124c_57246_03c76429e764b8da46773b8511ceb395.webp 760w,
               /project/big-data-analysis-with-pyspark/Project-image5_hu2482980dbb27bc7f07755e621c6f124c_57246_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/Project-image5_hu2482980dbb27bc7f07755e621c6f124c_57246_b57babb9d3dd3d159fe0b9aad0769681.webp&#34;
               width=&#34;601&#34;
               height=&#34;340&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Figure 2. Locations and quantities of data collected&lt;/center&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/big-data-analysis-with-pyspark/Project-image6_hu88da25768bb3514c5cf0f06c14c9a7f3_37711_6ed3fa72c5bfc9cf5abf8732e22eb980.webp 400w,
               /project/big-data-analysis-with-pyspark/Project-image6_hu88da25768bb3514c5cf0f06c14c9a7f3_37711_cbff4c2e9d79c499a6503fb3b32e958a.webp 760w,
               /project/big-data-analysis-with-pyspark/Project-image6_hu88da25768bb3514c5cf0f06c14c9a7f3_37711_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/Project-image6_hu88da25768bb3514c5cf0f06c14c9a7f3_37711_6ed3fa72c5bfc9cf5abf8732e22eb980.webp&#34;
               width=&#34;601&#34;
               height=&#34;341&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Figure 3. Dashboard of US Statistics, including birth rate, energy demand, and crime rate&lt;/center&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34; srcset=&#34;
               /project/big-data-analysis-with-pyspark/Project-image7_hu89f6170cfdb1663ea7412a0cce598ae0_43933_b713b0c7344af030f8104843de18c07f.webp 400w,
               /project/big-data-analysis-with-pyspark/Project-image7_hu89f6170cfdb1663ea7412a0cce598ae0_43933_34a54345112f46acc47a352bdd049a2c.webp 760w,
               /project/big-data-analysis-with-pyspark/Project-image7_hu89f6170cfdb1663ea7412a0cce598ae0_43933_1200x1200_fit_q75_h2_lanczos.webp 1200w&#34;
               src=&#34;https://ibrahimmaiga.com/project/big-data-analysis-with-pyspark/Project-image7_hu89f6170cfdb1663ea7412a0cce598ae0_43933_b713b0c7344af030f8104843de18c07f.webp&#34;
               width=&#34;603&#34;
               height=&#34;342&#34;
               loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Figure 4. Dashboard of Canada’s Statistics, including birth rate, max and min temperatures, and crime rate&lt;/center&gt;
&lt;h2 id=&#34;6-results-and-findings&#34;&gt;6. Results and Findings&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Temperature Trends:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Average temperatures in the US are higher than in Canada.
There is a noticeable increase in temperatures over the years, indicative of global warming trends.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Crime Rates:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Higher temperatures are positively correlated with increased crime rates in both the US and Canada.
This correlation suggests that as temperatures rise, the likelihood of criminal activity also increases.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Birth Rates:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Extremely high temperatures are associated with reduced birth rates in both countries.
This trend may be attributed to the adverse effects of heat on human health and fertility.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Energy Consumption:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Energy consumption is directly correlated with temperature variations.
Higher temperatures lead to increased energy demand, particularly for cooling purposes, while lower temperatures increase heating needs.&lt;/p&gt;
&lt;h2 id=&#34;7-limitations-and-challenges&#34;&gt;7. Limitations and Challenges&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Procuring datasets that matched for all the metrics we are querying&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Datasets with dissimilar scopes of time, frequency of data collection, and even unit measurements were a significant challenge that necessitated the use of big data analytical tools to aggregate this data across multiple sources and adjust it to be comparable.&lt;/li&gt;
&lt;li&gt;Ensuring that the crime data included a similar scope of criminality – certain crimes in Canada aren’t even considered crimes in the US.&lt;/li&gt;
&lt;li&gt;Ensuring data relevant to my use case met the standards for big data in terms of size and format (CSV vs JSON).&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;Issues with resources and resource allocation&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Handling large datasets requires substantial computational power and memory. My initial Azure Virtual Machine setup did not provide sufficient power to efficiently process and analyze the data, which led to multiple crashes of Spark sessions.&lt;/li&gt;
&lt;li&gt;I encountered an issue with the Hadoop NameNode entering safe mode, which halted all read and write operations on the file system. Safe mode is generally enabled when the NameNode detects resource constraints or during startup until a minimum percentage of data blocks are replicated safely. This can disrupt workflows, especially in resource-intensive tasks.&lt;/li&gt;
&lt;li&gt;Procuring high-quality datasets, especially from paid sources, and upgrading computational resources were constrained by budget limits.&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;Difficulties connecting different databases and aggregating data&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Integrating data from heterogeneous sources (Hadoop HDFS, Snowflake, SQL Server, MongoDB, PostgreSQL, and MySQL) involved significant compatibility issues. Each database has its own query language and data handling mechanisms.&lt;/li&gt;
&lt;li&gt;Aggregating data from different sources required complex ETL processes. Ensuring data integrity and consistency across databases was a major hurdle.&lt;/li&gt;
&lt;li&gt;Querying large datasets across different databases resulted in high latency and performance issues, slowing down the analysis.&lt;/li&gt;
&lt;li&gt;Each database have a different schema for storing similar data, necessitating a thorough understanding and mapping of these schemas for accurate data integration.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;8-conclusion&#34;&gt;8. Conclusion&lt;/h2&gt;
&lt;p&gt;This project demonstrates the potential of big data in transforming raw data into valuable insights. By analyzing the impact of global warming on crime rates, birth rates, and energy consumption, I have uncovered significant correlations that can inform policy and decision-making. The findings highlight the importance of addressing climate change and its far-reaching effects on society.&lt;/p&gt;
&lt;p&gt;Future work could involve extending the analysis to include additional metrics and regions, as well as exploring predictive modeling techniques to forecast the impacts of global warming. Continued advancements in big data technologies and methodologies will further enhance our ability to derive meaningful insights from complex datasets.&lt;/p&gt;
&lt;p&gt;This project underscores the value of big data in understanding and addressing global challenges, reinforcing the need for robust data governance and analytics frameworks.&lt;/p&gt;
&lt;h2 id=&#34;9-references&#34;&gt;9. References&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&#34;https://climate-change.canada.ca/climate-data/#/daily-climate-data&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Government of Canada. (n.d.). Daily climate data. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://dd.weather.gc.ca/climate/ltce/daily/temperature/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Government of Canada. (n.d.). Daily temperature data. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.ncei.noaa.gov/access/crn/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;National Centers for Environmental Information. (n.d.). Climate Reference Network (CRN). Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.ncei.noaa.gov/pub/data/uscrn/products/daily01/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;National Centers for Environmental Information. (n.d.). U.S. Climate Reference Network (USCRN) daily data. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/jakevdp/data-CDCbirths/blob/master/births.csv&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;VanderPlas, J. (n.d.). CDC births data. GitHub. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/fivethirtyeight/data/blob/master/births/US_births_2000-2014_SSA.csv&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;FiveThirtyEight. (n.d.). US births 2000-2014 data. GitHub. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://wonder.cdc.gov/controller/datarequest/D10;jsessionid=4E3CD4A6945320675A2E65F0A87B&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Centers for Disease Control and Prevention. (n.d.). CDC WONDER data request. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.kaggle.com/datasets/sobhanmoosavi/us-accidents/data?select=US_Accidents_March23.csv&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Kaggle. (n.d.). US accidents data. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.kaggle.com/datasets/tbsteal/canadian-car-accidents-19&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Kaggle. (n.d.). Canadian car accidents (1994-2014) [Data set]. Retrieved July 11, 2024&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
</description>
    </item>
    
    <item>
      <title>From Text to Insight: A Comprehensive Guide to Model Design and Sentiment Analysis</title>
      <link>https://ibrahimmaiga.com/project/sentiment-analysis-on-airline-customer-feedback/</link>
      <pubDate>Mon, 20 May 2024 00:00:00 +0000</pubDate>
      <guid>https://ibrahimmaiga.com/project/sentiment-analysis-on-airline-customer-feedback/</guid>
      <description>&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;In the age of social media and online reviews, sentiment analysis has become essential for understanding public opinion. This NLP technique classifies sentiments in text as positive, negative, or neutral and is especially valuable for businesses to monitor brand reputation, gauge customer satisfaction, and assess market trends.&lt;/p&gt;
&lt;p&gt;In this blog post, we’ll explore a step-by-step guide to conducting sentiment analysis using a machine learning approach. This includes data loading, preprocessing, model training, evaluation, and insights derived from airline customer reviews. Let&amp;rsquo;s get started!&lt;/p&gt;
&lt;h2 id=&#34;1-understanding-the-sentiment-analysis-process&#34;&gt;1. Understanding the Sentiment Analysis Process&lt;/h2&gt;
&lt;p&gt;Sentiment analysis typically involves classifying text into distinct categories. For this project, we’ll perform binary classification to distinguish between positive and negative sentiments. The complete process includes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Loading and cleaning the dataset.&lt;/li&gt;
&lt;li&gt;Conducting exploratory data analysis (EDA).&lt;/li&gt;
&lt;li&gt;Transforming text data into numerical features.&lt;/li&gt;
&lt;li&gt;Training a machine learning model.&lt;/li&gt;
&lt;li&gt;Evaluating the model’s performance.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Each step is critical for building a reliable sentiment analysis pipeline.&lt;/p&gt;
&lt;h2 id=&#34;2-data-loading-and-initial-exploration&#34;&gt;2. Data Loading and Initial Exploration&lt;/h2&gt;
&lt;p&gt;We begin by loading a dataset containing 23,171 reviews with multiple attributes, including customer sentiment labels. Initial data exploration ensures data integrity and familiarizes us with its structure.&lt;/p&gt;
&lt;h3 id=&#34;key-steps-in-initial-exploration&#34;&gt;Key Steps in Initial Exploration:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Checking for Missing Values&lt;/strong&gt;: Identifying and handling empty text entries or undefined labels to maintain data quality.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Overview&lt;/strong&gt;: Analyzing the distribution of features to understand their composition and relevance.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A clean dataset is essential for accurate sentiment analysis, and this step sets the foundation for further preprocessing.&lt;/p&gt;
&lt;h2 id=&#34;3-data-preprocessing-cleaning-the-text-data&#34;&gt;3. Data Preprocessing: Cleaning the Text Data&lt;/h2&gt;
&lt;p&gt;Text data, especially from user-generated sources like reviews, can be noisy. Effective preprocessing ensures that text is standardized and irrelevant elements are removed.&lt;/p&gt;
&lt;h3 id=&#34;preprocessing-techniques&#34;&gt;Preprocessing Techniques:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lowercasing&lt;/strong&gt;: Standardizes text by converting all words to lowercase.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Removing Special Characters&lt;/strong&gt;: Eliminates punctuation, symbols, and emojis to focus on core words.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tokenizing&lt;/strong&gt;: Splits sentences into individual words (tokens) for word-by-word analysis.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Removing Stopwords&lt;/strong&gt;: Filters out common words such as &amp;ldquo;the,&amp;rdquo; &amp;ldquo;is,&amp;rdquo; and &amp;ldquo;and&amp;rdquo; to reduce noise and improve text relevancy.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The cleaned data provides a consistent format for model training and meaningful feature extraction.&lt;/p&gt;
&lt;h2 id=&#34;4-exploratory-data-analysis-eda&#34;&gt;4. Exploratory Data Analysis (EDA)&lt;/h2&gt;
&lt;p&gt;EDA helps reveal data characteristics, enabling better decision-making during model training.&lt;/p&gt;
&lt;h3 id=&#34;key-eda-steps&#34;&gt;Key EDA Steps:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sentiment Distribution Analysis&lt;/strong&gt;: Visualizes the proportion of positive vs. negative samples to identify potential data imbalances.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Word Frequency Analysis&lt;/strong&gt;: Identifies commonly used words within each sentiment class, offering insights into key differentiators for positive and negative sentiments.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These insights are crucial for understanding the dataset’s structure and ensuring it aligns with the analysis goals.&lt;/p&gt;
&lt;h2 id=&#34;5-feature-engineering-with-tf-idf&#34;&gt;5. Feature Engineering with TF-IDF&lt;/h2&gt;
&lt;p&gt;To train a machine learning model, text data must be transformed into numerical features. &lt;strong&gt;TF-IDF (Term Frequency-Inverse Document Frequency)&lt;/strong&gt; is a popular method that highlights word importance in the context of a document:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Term Frequency (TF)&lt;/strong&gt;: Counts how frequently a word appears in a document.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inverse Document Frequency (IDF)&lt;/strong&gt;: Downscales words that appear frequently across all documents to emphasize unique words.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Limiting the transformation to the top 5000 words maintains efficiency and retains essential features for training.&lt;/p&gt;
&lt;h2 id=&#34;6-model-training&#34;&gt;6. Model Training&lt;/h2&gt;
&lt;p&gt;With the numerical features ready, we can train a custom neural network using Keras. The model architecture was designed from scratch and includes:&lt;/p&gt;
&lt;h3 id=&#34;model-architecture-overview&#34;&gt;Model Architecture Overview:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Input Layer&lt;/strong&gt;: Embedding layer with a vocabulary size of 5000, embedding vector size of 128, and sequence length of 100.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LSTM Layers&lt;/strong&gt;: Two LSTM layers, with the first having 128 units and &lt;code&gt;return_sequences=True&lt;/code&gt; and the second with 64 units.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dense Layers&lt;/strong&gt;: Three dense layers (32, 16, and 1 unit) with ReLU activation for the first two and sigmoid activation for the output.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Regularization&lt;/strong&gt;: BatchNormalization and dropout layers (0.2 rate) are used after each major layer to prevent overfitting.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Model Compilation&lt;/strong&gt;: The model is compiled using the Adam optimizer (&lt;code&gt;learning_rate=0.001&lt;/code&gt;) and &lt;code&gt;binary_crossentropy&lt;/code&gt; as the loss function, with accuracy as the evaluation metric.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;model-training-steps&#34;&gt;Model Training Steps:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Dataset Splitting&lt;/strong&gt;: The data is split into an 80% training set and a 20% test set.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Training the Model&lt;/strong&gt;: The model learns the patterns from the training data.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hyperparameter Tuning&lt;/strong&gt;: Random search is employed to optimize hyperparameters for better performance.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;7-evaluating-model-performance&#34;&gt;7. Evaluating Model Performance&lt;/h2&gt;
&lt;p&gt;Model performance is evaluated using the following metrics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Accuracy&lt;/strong&gt;: Indicates the percentage of correctly classified samples.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Precision and Recall&lt;/strong&gt;: Precision checks the correctness of positive predictions, while recall measures how well actual positives are identified.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;F1-Score&lt;/strong&gt;: Balances precision and recall, providing a comprehensive metric for imbalanced data.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Confusion Matrix&lt;/strong&gt;: Visualizes true positives, true negatives, false positives, and false negatives to identify error types.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;benchmarking-results&#34;&gt;Benchmarking Results:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Accuracy Improvement&lt;/strong&gt;: From an initial 84.79% to 86.39% after tuning.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Loss Reduction&lt;/strong&gt;: Decreased from 0.5018 to 0.3843, reflecting improved prediction accuracy.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;8-ranking-airlines-by-customer-recommendations&#34;&gt;8. Ranking Airlines by Customer Recommendations&lt;/h2&gt;
&lt;p&gt;Using the &amp;ldquo;Recommended&amp;rdquo; column, we aggregated positive recommendations to rank airlines. Here’s how we ranked the top 20 airlines:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Group by &amp;#39;Airline Name&amp;#39; and aggregate the sum of &amp;#39;Recommended&amp;#39; column&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;airline_recommendations&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;df&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;groupby&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Airline Name&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Recommended&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sum&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reset_index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Rename the columns for better understanding&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;airline_recommendations&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;columns&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Airline Name&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;Count of Recommended (yes=1)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Sort the airlines by the count of recommendations in descending order&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ranked_airlines&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;airline_recommendations&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sort_values&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;by&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Count of Recommended (yes=1)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;ascending&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;False&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reset_index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;drop&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Display the ranked airlines&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ranked_airlines&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;head&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;20&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;insights-from-the-analysis&#34;&gt;Insights from the Analysis:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;High Customer Satisfaction&lt;/strong&gt;: Airlines like China Southern Airlines and Hainan Airlines topped the list with the highest positive recommendations.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Regional Diversity&lt;/strong&gt;: The rankings included airlines from various regions, showcasing global recognition for excellent service.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;9-resources-and-environment&#34;&gt;9. Resources and Environment&lt;/h2&gt;
&lt;h3 id=&#34;environment-details&#34;&gt;Environment Details:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Platform&lt;/strong&gt;: Google Colab&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hardware&lt;/strong&gt;: TPU V2&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RAM&lt;/strong&gt;: 2.79 GB&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Disk&lt;/strong&gt;: 27.47 GB&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Using TPU V2 accelerated training and allowed for efficient processing of a large dataset with complex deep learning models.&lt;/p&gt;
&lt;h2 id=&#34;10-future-work&#34;&gt;10. Future Work&lt;/h2&gt;
&lt;h3 id=&#34;areas-for-further-improvement&#34;&gt;Areas for Further Improvement:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Advanced Hyperparameter Tuning&lt;/strong&gt;: Experiment with techniques like Grid Search or Bayesian Optimization.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Augmentation&lt;/strong&gt;: Increase training data diversity to improve model generalization.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Explainability&lt;/strong&gt;: Use SHAP values to interpret the model’s predictions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Granular Analysis&lt;/strong&gt;: Investigate specific text features that drive sentiment.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improvement Strategies for Airlines&lt;/strong&gt;: Use insights to suggest enhancements for airlines with lower rankings.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;11-lessons-learned&#34;&gt;11. Lessons Learned&lt;/h2&gt;
&lt;h3 id=&#34;key-takeaways&#34;&gt;Key Takeaways:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Importance of Hyperparameter Tuning&lt;/strong&gt;: This step significantly boosted model performance.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Model Evaluation Matters&lt;/strong&gt;: Regularly assess models using multiple metrics to understand their strengths and weaknesses.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Resource Management&lt;/strong&gt;: Efficient use of computational resources, like TPUs, can accelerate deep learning workflows.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Customer Service Excellence&lt;/strong&gt;: Top-ranked airlines share traits like strong customer service and consistent positive reviews.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Power of Reviews&lt;/strong&gt;: Customer feedback plays a crucial role in brand reputation.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;conclusion&#34;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;This sentiment analysis project showcases how deep learning and NLP techniques can turn raw text data into actionable insights. With proper data preparation, EDA, feature engineering, model training, and evaluation, this approach provides a structured method for future projects. Experimenting with advanced models and larger datasets can further refine sentiment analysis capabilities, benefiting businesses, researchers, and data enthusiasts.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Predicting SpaceX Rocket Landings: A Data Science Journey</title>
      <link>https://ibrahimmaiga.com/project/spacex-falcon9-landing-prediction/</link>
      <pubDate>Sun, 21 Jan 2024 00:00:00 +0000</pubDate>
      <guid>https://ibrahimmaiga.com/project/spacex-falcon9-landing-prediction/</guid>
      <description>&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;SpaceX has redefined aerospace economics with its reusable rocket system, achieving historic milestones that set it apart in the space industry. Since December 2010, SpaceX has been the only private company to return a spacecraft from low-Earth orbit. In 2024, it offers Falcon 9 rocket launches at a highly competitive price of approximately 67 million dollars per launch, a significant reduction compared to other providers. The closest competitor to the Falcon 9 in terms of payload capacity and market segment is ULA&amp;rsquo;s Atlas V rocket, which had a launch cost of approximately 115 million per launch. The primary factor behind these cost savings is the reusability of the Falcon 9’s first stage, which allows for refurbishment and relaunch at a fraction of traditional costs.&lt;/p&gt;
&lt;h2 id=&#34;project-goal&#34;&gt;Project Goal&lt;/h2&gt;
&lt;p&gt;The primary objective was to develop a machine learning model capable of predicting Falcon 9 landing successes. Such a model could inform launch cost estimations and enhance mission planning, offering additional insights that could benefit other space organizations aiming to optimize their own rocket landings.&lt;/p&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img alt=&#34;&#34;
           src=&#34;https://ibrahimmaiga.com/project/spacex-falcon9-landing-prediction/spacex-landing.gif&#34;
           loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Successful Landings&lt;/center&gt;
&lt;p&gt;















&lt;figure  &gt;
  &lt;div class=&#34;d-flex justify-content-center&#34;&gt;
    &lt;div class=&#34;w-100&#34; &gt;&lt;img src=&#34;https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-DS0701EN-SkillsNetwork/api/Images/crash.gif&#34; alt=&#34;&#34; loading=&#34;lazy&#34; data-zoomable /&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;center&gt;Failed landings&lt;/center&gt;
&lt;h2 id=&#34;data-collection-and-initial-analysis&#34;&gt;Data Collection and Initial Analysis&lt;/h2&gt;
&lt;p&gt;This project leverages a comprehensive dataset of SpaceX missions to explore the potential of machine learning in predicting Falcon 9 landing success, providing insights into the factors influencing landing rates, such as payload mass, orbit type, and launch site location. By analyzing these elements, machine learning models can support more accurate cost estimations, mission planning, and optimized launch operations, offering a deeper understanding of SpaceX’s competitive advantage in the space sector.&lt;/p&gt;
&lt;p&gt;The analysis used launch data from two main sources:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Historical Data (2010-2020)&lt;/strong&gt;: Launch data from SpaceX’s history was obtained from existing datasets.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Recent Launches (2020-present)&lt;/strong&gt;: Supplemented with web scraping from Wikipedia using BeautifulSoup4.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Exploratory analysis identified several key patterns:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Launch Sites&lt;/strong&gt;: Cape Canaveral Space Force Station (CCSFS) had the highest number of successful launches, while Kennedy Space Center (KSC) and Vandenberg Space Force Base (VSFB) showed the highest success rates at 77%.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Payload Mass&lt;/strong&gt;: The highest success rates were observed in launches with payloads between 9,000-16,000 kg.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Booster Version&lt;/strong&gt;: The Falcon 9 B5 version achieved a perfect 100% landing success rate.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;machine-learning-models-and-performance&#34;&gt;Machine Learning Models and Performance&lt;/h2&gt;
&lt;p&gt;Five machine learning models were implemented and evaluated:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Logistic Regression&lt;/strong&gt;
Logistic Regression, used for binary classification, fits data to a logistic curve to predict event
probabilities based on input features, modeling relationships between variables and binary
outcomes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Decision Tree&lt;/strong&gt;
A Decision Tree is a supervised learning algorithm used for classifying or predicting outcomes by
branching data into subsets. It creates a tree-like model of decisions, where each node represents a
feature and each leaf node signifies an outcome. This approach is valued for its clear interpretation
and handling of categorical data.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Random Forest&lt;/strong&gt;
Random Forest is a popular machine learning algorithm known for its robustness and accuracy. It
builds an ensemble of decision trees and combines their predictions to make more reliable
classifications or predictions. This approach is effective for a wide range of tasks, making Random
Forest a versatile choice in machine learning.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Stochastic Gradient Descent (SGD)&lt;/strong&gt;
Stochastic Gradient Descent (SGD) is a common optimization technique in machine learning. It
updates a model&amp;rsquo;s parameters using random training examples, making it efficient for large
datasets. SGD aims to minimize the loss function iteratively, making it useful for training machine
learning models with complex optimization tasks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Support Vector Machine (SVM)&lt;/strong&gt;
The Support Vector Machine (SVM) is a powerful machine learning algorithm utilized for classification
and regression tasks. It is a supervised learning algorithm where a hyperplane in an n-dimensional
space is found to maximally separate the different classes in the training data. Both linear and
nonlinear classification tasks, as well as regression tasks, can be handled by SVMs. The algorithm is
particularly useful when the number of features is large compared to the number of samples, and
when the data is not linearly separable.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each model underwent both default testing and GridSearchCV optimization. The Decision Tree model emerged as the top performer, achieving a 96.6% accuracy rate.&lt;/p&gt;
&lt;h3 id=&#34;model-comparison-and-highlights&#34;&gt;Model Comparison and Highlights&lt;/h3&gt;
&lt;p&gt;To see how the default models performed and how GridSearchCV affected different Models, let us
summarize what we observed while working with these 5 models.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Logistic Regression&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default Model: Achieved the highest score amongst the other default models.&lt;/li&gt;
&lt;li&gt;GridSearchCV: Did not substantially improve performance; default version outperformed it.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Random Forest&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default Model: Performed nicely with a high score.&lt;/li&gt;
&lt;li&gt;GridSearchCV: Benefited from tuning, reaching higher best score and best estimator rating
as compared to the default.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Decision Tree&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default Model: Performed reasonably well.&lt;/li&gt;
&lt;li&gt;GridSearchCV: Showed improvement with higher best score, best estimator performance,
and better confusion matrix performance.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;SGD (Stochastic Gradient Descent)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default Model: Showed decent performance.&lt;/li&gt;
&lt;li&gt;GridSearchCV: Tuning improved the model, accomplishing higher best score and best
estimator score.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;SVM (Support Vector Machine)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default Model: Showed incredibly lower overall performance.&lt;/li&gt;
&lt;li&gt;GridSearchCV: Slightly improved best score but did no longer significantly affect the best
estimator score or confusion matrix performance.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Overall&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Logistic Regression&lt;/strong&gt;: Reached 93% accuracy with default settings but faced challenges predicting failures accurately.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Random Forest&lt;/strong&gt;: Demonstrated strong performance, with optimized accuracy reaching 93.1% and high precision in predicting successes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Decision Tree&lt;/strong&gt;: Excelled with 96.6% accuracy after optimization, marking it as the best-performing model.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;feature-selection-and-insights&#34;&gt;Feature Selection and Insights&lt;/h2&gt;
&lt;p&gt;This feature selection task was performed to determine if there were any improvements with a
reduced number of features. From the original dataset of 14 features, 5 features were removed,
leaving the dataset with 9 features. The removed features were selected by a data preprocessing
procedure with the 5 least important features removed. The reduced features dataset was then
used to perform the 5 previously used models to determine how feature selection had impacted the
accuracy scores.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How Features Were Selected for Removal?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Feature importance was assessed through data preprocessing, where the dataset was evaluated using various methods to identify the top nine features for each model. The counts of these selected features were tallied across all models, with the least frequently appearing features excluded from the analysis. This approach ensured a focus on the most impactful predictors for the task.&lt;/p&gt;
&lt;p&gt;Several methods were used to identify critical features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pearson Correlation&lt;/li&gt;
&lt;li&gt;Chi-Squared Analysis&lt;/li&gt;
&lt;li&gt;Recursive Feature Elimination&lt;/li&gt;
&lt;li&gt;Embedded Lasso Regularization&lt;/li&gt;
&lt;li&gt;Embedded Random Forest and LightGBM&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Overall, the accuracy was lower with the reduced feature dataset. This suggested that all the
features were important for finding the best model. The only reason why feature removal would
have been performed was to save space for storing the dataset or to reduce the model fitting
computation.&lt;/p&gt;
&lt;p&gt;The best non-tuned model was Linear Regression with a score of 0.93 for both datasets, the highest
for untuned models. The best model for a tuned model was a decision tree with a score of almost
0.97 and 0.92 for the original and reduced datasets, respectively.&lt;/p&gt;
&lt;p&gt;Interestingly, there was a 3% improvement between untuned and tuned hyperparameters for
Random Forest of the reduced dataset that was not seen in the original dataset.&lt;/p&gt;
&lt;p&gt;Precision improved with the reduced dataset for Linear Regression. Perhaps overfitting occurred
with such a simple model with the original dataset. Decision Tree, Random Forest, and Stochastic
Gradient Descent (SGD) all saw a reduction in precision with the reduced dataset, while Support
Vector Machine (SVM) had no changes. These models needed more features to create an accurate
model.&lt;/p&gt;
&lt;p&gt;Recall overall stayed the same or reduced, with the exception of the Decision Tree. More features
seemed to be more important for model fitting. The decision tree model might have been fitted with
better features first, allowing a higher recall in the reduced feature dataset.&lt;/p&gt;
&lt;p&gt;F1 scores increased for Linear Regression, Decision Tree, and SVM models but decreased for
Random Forest and SGD models. There seemed to be no correlation between the original and
reduced datasets.&lt;/p&gt;
&lt;h2 id=&#34;interactive-visualization-of-launch-sites&#34;&gt;Interactive Visualization of Launch Sites&lt;/h2&gt;
&lt;p&gt;The project utilized Folium to create interactive maps visualizing SpaceX launch sites, success rates, and proximities to possible launch trajectories. This approach provided geographical insights into launch success and suggested characteristics for optimal launch site locations.&lt;/p&gt;
&lt;h3 id=&#34;geographic-analysis-objectives&#34;&gt;Geographic Analysis Objectives&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Marking Launch Sites&lt;/strong&gt;: Visualizing each launch site on an interactive map.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Success and Failure Markers&lt;/strong&gt;: Showing successful and failed launches at each site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Distance Calculations&lt;/strong&gt;: Calculating distances from each site to nearby locations, exploring proximities and their impact on success rates.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;challenges-and-lessons-learned&#34;&gt;Challenges and Lessons Learned&lt;/h2&gt;
&lt;p&gt;One significant challenge involved handling imbalanced data, with successful landings outnumbering failures. This imbalance impacted the models’ ability to predict failures accurately despite high overall accuracy.&lt;/p&gt;
&lt;h2 id=&#34;practical-applications&#34;&gt;Practical Applications&lt;/h2&gt;
&lt;p&gt;The findings from this project can support:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Launch Cost Estimation&lt;/strong&gt;: Landing success predictions enable more precise cost estimation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mission Planning and Risk Assessment&lt;/strong&gt;: Accurate predictions aid in planning and risk management.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Resource Allocation&lt;/strong&gt;: Success rates by site allow for optimized resource planning.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-improvements&#34;&gt;Future Improvements&lt;/h2&gt;
&lt;p&gt;Although the models performed well, additional improvements could enhance their predictive power:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Increasing Data Balance&lt;/strong&gt;: Collecting more data on failed landings could improve prediction accuracy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adding Environmental Variables&lt;/strong&gt;: Including weather data and other external conditions may improve predictions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Developing Ensemble Methods&lt;/strong&gt;: Combining models could yield even better results.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Incorporating Real-Time Data&lt;/strong&gt;: Including telemetry data could enhance dynamic predictions.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;conclusion&#34;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;This project underscores the potential of machine learning to address complex aerospace challenges. Predicting landing success can lead to more precise cost estimates and optimized launch site selection, both crucial for making space travel sustainable and economically viable.&lt;/p&gt;
&lt;p&gt;This analysis highlights that simpler models, such as the Decision Tree, can sometimes outperform more complex ones when carefully optimized. As space exploration continues to evolve, data science will play a pivotal role in increasing the efficiency and accessibility of future space missions.&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>
