The dataset selected for this project is titled "AI-Augmented Freelancer Productivity", sourced from Kaggle. It originates from a large-scale survey designed to analyze the intersection of artificial intelligence, independent work, and professional well-being.
• Observations (Rows): 100,000
• Features (Columns): 35
The dataset consists of Mixed Data types, providing a rich foundation for both categorical and numerical analysis:
Categorical Variables (Objects): Includes key features such as project_type (the professional domain), ai_usage_intensity (level of adoption), and primary_ai_tool (the specific tool used).
Numerical Variables: Includes variables such as monthly_earnings_usd (financial outcome), tasks_completed (efficiency metric), experience_years, and self_reported_productivity (1-10 scale).
Research Question: To what extent does AI adoption intensity (ai_usage_intensity) predict a freelancer's financial success (monthly_earnings_usd) and work efficiency (tasks_completed), and how does this relationship vary across different project types (project_type)?
Exploratory Data Analysis (EDA):
1.Data Cleaning and Preprocessing:
To prepare the dataset for predictive modeling and ensure the reliability of our findings regarding financial success and efficiency, the following cleaning steps were performed:
Handling Missing Values:
AI-Related Features: Missing values in ai_tools_used and primary_ai_tool were filled with 'None', and ai_generated_code_pct was filled with 0. This ensures that sessions without AI tools are correctly identified as the "baseline" (non-users) group.
Numerical Imputation: For other numeric columns (e.g., client_satisfaction_score), I used Median Imputation to fill gaps without letting extreme outliers skew the data.
Categorical Imputation: Columns like energy_level were filled using the Mode (most frequent value) to maintain the natural distribution of the data.
Duplicate Entries: A comprehensive scan for redundant records was performed across the 100,000 observations. No duplicate rows were identified, confirming that each entry represents a unique, independent work session.
Scaling and Normalization:
The Challenge: Significant scale differences existed between features, such as experience_years (small range) and monthly_earnings_usd (large range).
The Solution: I applied MinMaxScaler to all continuous numeric features. This transforms all values into a uniform range of [0, 1], ensuring that high-magnitude financial data does not unfairly dominate the model during training.
Parsing Dates and Temporal Features:
Datetime Conversion: The session_date column was converted from a string to a proper datetime object for chronological consistency.
Feature Extraction: I extracted the session_start_hour from the session logs. This allows us to analyze how efficiency (tasks_completed) fluctuates throughout the day.
Fixing Typos and Inconsistencies:
Categorical Consistency: I inspected the unique values of categorical features like os_used, platform, and project_type. No typos or inconsistencies were found.
Type Casting: Boolean flags (such as deadline_met and repeat_client) were cast to proper boolean types.
Optimized Storage: High-cardinality text columns were converted to the 'category' data type to improve computational efficiency during the modeling phase.
image
2.Outlier Detection & Handling:
In this stage, I identified data points that deviate significantly from the norm. Given our focus on financial success and work efficiency, these anomalies provide critical insights into the "top performers" of the freelance economy.
Identification of Outliers:
Using the Interquartile Range (IQR) method, significant outliers were identified in the following key variables:
Justification: My research question seeks to understand what predicts financial success. In the freelance market, income distribution is rarely "normal", it often follows a power-law distribution where a small group of "Elite Freelancers" earns significantly more than the average.
The 7,010 outliers in monthly_earnings_usd likely represent the most successful individuals in the sample. Similarly, the 1,795 outliers in hourly_rate_usd represent senior specialists and high-value consultants. Removing them would eliminate the very group we are trying to study, those who have achieved peak financial success. The outliers in session_duration_mins represent "marathon" workers or highly specialized tasks. These are crucial for understanding if AI adoption allows for these extreme levels of efficiency.
Since the values are already normalized between [0, 1] and the sample size is large (100,000), these outliers do not represent "errors" but rather real-world variance that our model needs to capture. Collectively, these outliers represent approximately 5-7% of the 100,000 observations. Removing such a significant portion of the data would bias the model toward "average" cases and lead to a substantial loss of information regarding high-performance scenarios.
image
3.Descriptive Statistics
In this section, I summarized the central tendencies and distributions of the dataset to reveal initial patterns between AI adoption, financial success, and efficiency.
Categorical Distribution:
The dataset is well-balanced, providing a solid foundation for comparing the impact of AI:
• AI Adoption Intensity: The largest group is Moderate users (27.56%), followed closely by Light (25.15%) and No AI (24.60%). Heavy users represent 22.70%. This even split allows for unbiased comparisons between adoption levels.
• Professional Domains (project_type): The primary sectors are Web Development (22.12%), Data Science (16.66%), and Content Writing (16.52%). The diversity of fields allows us to test if AI adoption intensity benefits technical roles differently than creative ones.
• Tools Used: Outside of the "None" group (24.60%), we see a highly fragmented tool market led by Gemini (8.85%), Claude (8.82%), and ChatGPT (8.58%).
Key Numeric Variables:
The statistical summary of the target variables (scaled [0, 1]) reveals important characteristics:
• Financial Success (monthly_earnings_usd): The mean is 0.040, with a median (50%) of 0.021. The large gap between the mean and the max (1.000) confirms a heavily right-skewed distribution, supporting our decision to retain high-income outliers as they represent the "peak success" scenarios.
• Work Efficiency (tasks_completed): With an average of 0.065 and a median of 0.050, most freelancers complete a steady volume of tasks, though the maximum value suggests specific high-efficiency "bursts" facilitated by AI.
• Experience Level: The average experience stands at 0.219, indicating that our sample primarily consists of early-to-mid-career freelancers, providing a great context for how newer professionals use AI to compete.
Visualizations & Key Insights
In this section, I explore the dataset through four visual perspectives to address the research question regarding the impact of AI on freelancer success and efficiency.
Sequence of Success: Mean Earnings by AI Intensity
• Graph: Point Plot
• Insight: This trend line illustrates the relationship between AI intensity and financial success. A critical observation is the "AI Efficiency Paradox": while earnings generally follow adoption, we see a slight decline or plateau at the "Heavy" usage level. This suggests that the predictive power of AI on earnings might reach a saturation point where human-driven value or market competition offsets the gains from high-intensity tool usage.
image
Sector-Led Variance: Technical vs. Creative
• Graph: Categorical Strip Plot
• Insight: To answer how this relationship varies across project types, I categorized roles into Technical and Creative sectors. The visualization reveals that Technical Sectors (Data Science, Dev) exhibit a more consistent earnings cluster as AI intensity increases. In contrast, Creative & Content Sectors show a wider variance, implying that in creative domains, AI is a less consistent predictor of success than individual artistic expertise.
image
Visualizing Efficiency Density Per Group
• Graph: Violin Plot
• Insight: This Violin Plot addresses the tasks_completed aspect of the research question. The density distribution confirms that Moderate and Heavy AI users are significantly more likely to operate at peak efficiency levels. The "Heavy" user group shows a wider density at the top of the scale, proving that AI adoption intensity is a strong predictor of work efficiency.
image
AI Adoption Intensity Across Professional Roles
• Graph: Categorical Count Plot
• Insight: This final comparison maps the "adoption landscape" across all project types. It reveals that fields like AI/ML Engineering and Data Science have naturally higher adoption rates, whereas roles like UI/UX Design and Mobile App Development show more varied adoption. This explains the variation in financial success: sectors with higher intrinsic compatibility with AI tools tend to show more structured growth patterns.
image
Summary of Findings:
AI as a Predictor of Financial Success: The data shows a clear positive correlation between AI adoption and earnings, but with a significant caveat. While moving from "Low" to "Moderate" usage leads to higher earnings, the "AI Efficiency Paradox" reveals that "Heavy" users often hit a plateau or a slight decline. This suggests that while AI tools boost value, there is a saturation point where human expertise and market competition become the primary drivers of financial growth.
Work Efficiency:AI intensity is a highly reliable predictor of work efficiency (tasks_completed). The density distribution in the Violin Plots confirms that Moderate and Heavy users consistently operate at higher efficiency levels compared to Low users. For freelancers, AI is less about "earning more per hour" and more about "increasing the volume of output."
Variations Across Project Types (Technical vs. Creative):
The relationship between AI and success is not uniform:
Technical Sectors (Data Science, Dev): AI adoption leads to consistent and structured earnings patterns. In these fields, AI acts as a standard multiplier of professional output.
Creative & Content Sectors: AI adoption shows much wider variance in earnings. Here, individual artistic expertise and unique creative value remain the dominant predictors of success, with AI playing a more supportive, less predictable role.
Research: Investigating Patterns & Anomalies
Q1: Does heavy AI usage actually equate to more money?
image
The Answer: No. While AI integration initially boosts earnings, the relationship is not linear. Earnings peak at the Moderate level and then decline overall at the Heavy level. This suggests an "Optimal Zone" for AI usage in the general freelance market.
Q2: Who earns more from AI: the "Techies" or the "Creatives"?
image
The Answer: Technical sectors consistently see higher median earnings across all AI adoption levels compared to Creative sectors. While AI serves as a powerful catalyst for both, the financial "boost" is more pronounced in technical roles. Interestingly, while the Creative sector experiences a decline at the Heavy usage stage, the Technical sector maintains its earnings or even shows slight growth.
Q3: Does AI actually make freelancers faster?
image
The Answer: Yes, significantly. The KDE density plot shows a clear rightward shift in task completion for AI users. Freelancers using AI at a Moderate level exhibit the highest probability of reaching peak efficiency. In contrast, those not using AI are heavily clustered at the lower end of the task completion scale, proving that AI adoption is a definitive predictor of increased work speed.
Q4: Which AI engine drives higher efficiency?
image
The Answer: The data shows that Gemini and Notion AI lead the efficiency race, linked to the highest average number of tasks completed per session. Midjourney show a lower task volume, likely due to the higher complexity and time-intensity of creative deliverables compared to code or text-based tasks.
Define and Train a baseline model:
1.Regression Goal: The primary objective of this model is to predict a freelancer's monthly earnings (in USD) based on their professional profile and AI usage patterns.
By analyzing variables such as AI usage intensity, sector (Technical vs. Creative), and efficiency metrics (tasks completed), the model aims to determine the financial "weight" of each factor. Essentially, we want to answer: "If we know how a freelancer uses AI and what their field is, can we accurately estimate their income?"
2.Feature Selection: I selected a broad set of features that combine professional background, AI usage, and work performance to ensure the model captures the full complexity of freelance earnings:
Financial & Professional Core:
• hourly_rate_usd: The baseline for all earnings.
• experience_years: Professional seniority.
• project_type: The sector (Tech vs. Creative).
AI Integration (The Research Core):
• ai_usage_intensity: How much AI is used.
• ai_generated_code_pct: The depth of AI involvement in the output.
• primary_ai_tool: The specific engine used (as seen in our research).
Performance & Efficiency:
• tasks_completed: Direct output volume.
• session_duration_mins: Time invested in work.
• deadline_met: Reliability and professional standing.
Quality & Relationships:
• client_satisfaction_score: Impact on premium pricing.
• repeat_client: Long-term financial stability.
3.Train-Test Split: To ensure the model is evaluated on data it has never seen before, I partitioned the dataset into Training (80%) and Testing (20%) sets using simple random sampling.
To guarantee that the results are reproducible (meaning the split remains the same every time the code is run). This split creates a robust foundation for training the model while maintaining a clean "blind test" to verify its accuracy later.
4.Training: To establish a performance baseline, I selected a Linear Regression model using the scikit-learn library. I used a Pipeline approach to handle both the data transformation (One-Hot Encoding for categorical variables) and the model fitting in a single execution flow.
The model was trained using default parameters to provide a clean starting point.
This baseline serves as a reference point for future iterations. It allows us to measure the complexity of the relationship between our features (like AI intensity and experience) and the target variable (monthly earnings).
5.Model Evaluation: To assess the accuracy and reliability of the baseline model, I evaluated its performance on the testing set (20,000 samples). Given that the target variable (monthly_earnings_usd) was pre-normalized, the following metrics provide a clear picture of the model's predictive power:
Mean Absolute Error (MAE): 0.0205 On average, the model's predictions deviate by only 2.05% from the actual normalized values, indicating a very high level of precision.
Mean Squared Error (MSE): 0.0014 The extremely low average of squared errors indicates that the model produces very few large outliers, meaning it is consistently accurate across most cases.
Root Mean Squared Error (RMSE): 0.0370 This represents the standard deviation of the prediction errors, showing that the model maintains a tight and reliable error margin.
R-squared (R2) Score: 0.6892 Approximately 69% of the variance in monthly earnings is successfully explained by the selected features (AI intensity, experience, sector, etc.).
The R2 score of 0.6892 is a strong result for a baseline linear regression model. It demonstrates that the features we identified are powerful predictors of financial success in the freelance market. While the model captures the majority of the trends, the remaining 31% of variance is likely influenced by external factors not captured in this dataset (such as specific niche expertise or global economic shifts). Overall, this baseline provides a robust foundation for predicting freelancer earnings with high confidence.
6.Insights: To visually validate the model’s reliability, I analyzed the relationship between actual data and model predictions through two key visualizations:
Actual vs. Predicted Earnings: The scatter plot (left) shows a clear, dense diagonal trend. Most data points align closely with the red dashed reference line, confirming that the model’s predictions are highly accurate across the entire range of income levels. The high density around the line reflects our R2 score of 0.69.
Residual Analysis (Error Distribution): The residual plot (right) shows that the prediction errors are randomly scattered around the zero-line. This "cloud" of points indicates homoscedasticity, meaning the model's accuracy is consistent and doesn't suffer from systematic bias. There are no visible patterns in the errors, which proves that a Linear Regression model was a statistically sound choice.
The combination of strong statistical metrics (low MAE) and healthy visual distributions confirms that factors like AI usage intensity, professional sector, and experience provide a robust framework for predicting financial outcomes in the modern freelance economy.
image
7.Feature Importance: To understand what truly drives monthly earnings, I analyzed the coefficients of the Linear Regression model. The results show a clear "Signal vs. Noise" dynamic, where only three features carry significant predictive weight:
Primary Driver: Session Duration (0.39): The strongest predictor. Monthly income is primarily a function of total time invested in work sessions.
Secondary Driver: Hourly Rate (0.17): Pricing power remains a critical pillar, significantly shifting the financial baseline.
Marginal Impact: Tasks Completed (0.001): While positive, its impact is minimal compared to raw time and rates.
Insight on Visualization: The graph displays only three visible bars because the mathematical influence of these "Power Drivers" is hundreds of times stronger than the other variables. Features like AI tools, Experience, and Project Type appear as flat lines, indicating they are not primary drivers of earnings in this specific model.
Success in this dataset is dictated by volume (hours) and value (rates), with other factors serving as secondary background elements.
image
Feature Engineering and Preprocessing:
To enhance the model's predictive power beyond simple linear relationships, I performed advanced feature engineering using Scikit-Learn’s ColumnTransformer and Pipeline. This stage involved transforming the raw data into a high-dimensional feature space:
One-Hot Encoding: Applied to all categorical features (e.g., Project Type, AI Tool), converting qualitative labels into numerical vectors.
Polynomial Features (Degree 2): Applied to numerical variables to capture interactions between features (e.g., the combined effect of Hourly Rate and Experience). This allows the model to identify non-linear patterns in the data.
Standard Scaling: Used StandardScaler following the polynomial expansion to ensure all 61 resulting features are normalized, preventing numerical instability and ensuring equal feature weighting.
Result: The feature space was successfully expanded from 11 original features to 61 engineered features. This transformation provides the model with a much richer dataset to learn from, facilitating more accurate predictions of freelancer earnings.
By implementing extensive feature engineering and moving beyond the baseline, I trained an advanced model that significantly captures the complexities of freelancer earnings.
I utilized Ridge Regression with L2 Regularization, combined with Degree 2 Polynomial Expansion. This expanded the feature space to 61 variables, allowing the model to weigh not only individual factors but also their non-linear interactions.
The choice of Ridge was strategic to manage the increased complexity of the engineered features, preventing overfitting and ensuring the model remains robust on new data.
Model Performance Results:
Baseline Model (Simple Linear): Achieved an R2 score of 0.6892, explaining approximately 69% of the variance in earnings.
Advanced Model (Ridge + Polynomials): Achieved a significantly higher R2 score of 0.8548, explaining over 85.5% of the variance.
Overall Improvement: The advanced approach yielded a 24.02% increase in predictive accuracy compared to the baseline.
Final Conclusion: The substantial leap in performance confirms that freelancer earnings are driven by complex, synergistic relationships between pricing, time investment, and technical specialization. By capturing these interactions through feature engineering, the model provides a far more accurate and reliable prediction of financial success.
To further optimize the model, I manually engineered two features based on productivity logic:
Workload Intensity: The ratio of tasks completed to session duration. This represents freelancer efficiency, capturing how much is achieved per minute of work.
AI Leverage Index: A composite score of AI usage multiplied by tasks completed. This measures the actual impact of AI tools on a freelancer’s output volume.
Impact: These features allow the model to distinguish between simple "time spent" and "productive output," which is a much stronger predictor of earnings.
Applying Clustering:
image
To identify latent groupings within the freelancer dataset, I implemented the K-Means Clustering algorithm. To determine the ideal number of clusters, I utilized the Elbow Method, calculating the Within-Cluster Sum of Squares (WCSS) for k values ranging from 1 to 10.
Selection: As shown in the generated Elbow Plot, the rate of decrease in WCSS significantly levels off at k=3. This "elbow" indicates that three clusters provide the most effective balance between simplicity and group cohesion.
Implementation: The final model was trained with k=3, successfully segmenting the population into three distinct professional profiles based on the full feature set.
image
Cluster Visualization (PCA):
To visualize the high-dimensional clusters in a 2D space, I applied Principal Component Analysis (PCA). The resulting scatter plot shows three clearly defined and separated clusters.
Based on the mean values of each cluster, we can identify three distinct professional profiles:
Cluster 0: The Efficiency Masters (High Volume)
Distinct because: They have the highest tasks_completed (0.58) by a huge margin, despite having moderate experience and rates.
Profile: These are the "workhorses" of the platform. They are extremely efficient and produce a high volume of output.
Cluster 1: The AI-Specialists (High Value & Tech)
Distinct because: They have the highest hourly_rate (0.37), the most experience (0.34), and the highest AI usage (43%).
Profile: These are senior freelancers who command high prices and leverage AI extensively for specialized, high-value work (low volume of tasks, but high complexity).
Cluster 2: The Traditional Beginners
Distinct because: They have the lowest values across the board-lowest rate, lowest experience, and almost no AI usage (6.5%).
Profile: Entry-level freelancers who are still working manually and haven't yet adopted AI tools or built significant efficiency.
Are they useful? Yes, for two main reasons:
They capture "Professional Identity" that individual features miss. Knowing someone is an "AI-Specialist" vs. a "Beginner" tells the model more about their earning potential than just their years of experience.
A platform could use this to nudge "Beginners" (Cluster 2) to adopt AI tools, as the data shows that "Specialists" (Cluster 1) who use AI earn significantly more.
To bridge the gap between unsupervised and supervised learning, I transformed the clustering results into 6 new predictive features:
Cluster Membership (One-Hot): Added three binary features (cluster_0, cluster_1, cluster_2) to allow the regression model to apply group-specific logic to different freelancer archetypes.
Distance to Centroids: Calculated the Euclidean distance of each freelancer to all three cluster centers. These act as "Typicality Scores," measuring how closely a freelancer fits a specific professional profile versus being an outlier.
The dataset was expanded to 67 features, providing the final model with deeper context regarding professional identity and efficiency patterns, which significantly improves the precision of the earnings prediction.
Train and Evaluate Three Improved Models:
Linear Regression (Updated): I retrained the Linear Regression model using the fully engineered dataset (67 features). By incorporating AI-usage metrics and cluster-based data, the model can now account for complex professional archetypes, leading to more nuanced earnings predictions.
2.Alternative Model Training (Non-Linear):
To capture non-linear relationships that simple regression might miss, I trained two additional ensemble models from the sklearn library:
Random Forest Regressor: An ensemble of 100 decision trees designed to capture complex interactions between features.
Gradient Boosting Regressor: A boosting algorithm that builds trees sequentially to minimize residual errors.
Both models were trained on the same 80,000-row dataset to identify the most robust algorithm for the final prediction task.
Performance Comparison vs. Baseline: After evaluating all models on the test set, I compared their performance against the initial baseline.
Baseline R2: ~0.85
Final Result: The Linear Regression model (with engineered features) emerged as the winner with an R2 score of 0.8548 and the lowest RMSE (0.0253).
Surprisingly, the simpler linear model outperformed complex ensembles like Random Forest and Gradient Boosting. This indicates that the Feature Engineering (AI intensity and Cluster IDs) effectively captured the underlying patterns in a way that aligns perfectly with linear logic.
4.Visualize feature importance :
image
5.Reasons for Improvement: The improvement from the baseline to the final model is driven by three main factors:
Information Density: By adding Cluster IDs and Centroid Distances, we provided the model with "pre-digested" group behaviors. Instead of the model trying to guess if a freelancer is a "Veteran" or a "Beginner," we gave it that identity as a direct feature.
Feature Importance Alignment: As seen in the Feature Importance visualization, the engineered cluster-based features (specifically dist_to_c0 and cluster_1) are among the top 5 most influential predictors. This confirms that unsupervised learning captured variance that raw features alone could not explain.
Linear Clarity: The data exhibits strong linear relationships once correctly segmented. The engineered features reduced the "noise" in the dataset, allowing the Linear Regression to outperform non-linear models which may have overfitted to small fluctuations in the 80,000-row dataset.
6.Declaring the Winner: The Linear Regression model is the overall winner of this project, achieving the highest performance metrics: R2
Score: 0.8548
RMSE: 0.0253
Despite testing more complex ensemble methods like Random Forest and Gradient Boosting, the linear model with optimized features provided the most accurate and stable predictions.
Regression-to-Classification:
Target Transformation: Numeric to Categorical:
I chose a 3-class quantile split because it categorizes freelancers into distinct economic tiers (Low, Medium, and High), providing more granular business insights than a simple binary split. As shown in the output, this strategy resulted in a perfectly balanced distribution (~33.3% per class) across both sets, which prevents model bias and ensures a robust training process. By using this approach, the model can better identify the specific characteristics that differentiate top-tier professionals from entry-level ones.
Check Class Balance:
1.The conversion of the continuous target into three categories resulted in a highly balanced dataset. Below are the percentage distributions for the Train and Test sets:
Train Set Distribution:
Class 0 (Low): 33.33%
Class 1 (Medium): 33.33%
Class 2 (High): 33.33%
Test Set Distribution:
Class 0 (Low): 32.84%
Class 1 (Medium): 33.44%
Class 2 (High): 33.72%
The strategy achieved a nearly perfect 1/3 split across all classes. This balance is ideal for training classification models as it ensures the model is exposed to an equal number of examples from each earning tier, preventing any majority-class bias.
Are some classes under-represented?
No. All three classes are equally represented in the dataset. Because I used a Quantile Binning strategy (split into tertiles), the classes are perfectly balanced, with each representing approximately 33.33% of the data. This balance ensures that the classification models can learn the characteristics of each earning tier effectively without being biased toward a majority class.
Train & Eval Classification Models:In this task, Precision is more important, particularly for the High-Value (Class 2) category. If a platform or recruiter uses this model to identify top-tier talent, a "False Positive" (labeling a low-earner as a high-earner) is a costly mistake that leads to misaligned expectations and loss of trust. It is better to be highly confident in our "High-Value" predictions, even if we miss a few candidates (Recall), than to incorrectly label unqualified individuals as top earners.
A False Positive is more critical in this context. If the model incorrectly labels a low-earning freelancer as "High-Value" (Class 2), any platform or recruiter using this data would misallocate resources or recommend unqualified talent to clients. This leads to a loss of trust and professional credibility. In contrast, a False Negative (missing a high-earner) is a missed opportunity, but it doesn't actively damage the reputation or quality standards of the system.
I evaluated three models using Scikit-Learn’s built-in tools. While all three models performed consistently well, showing that the engineered features have strong predictive power, the Random Forest Classifier emerged as the top performer.
The specific performance metrics for each model are as follows:
• Random Forest: Achieved an Accuracy of 0.7653 and a Macro F1-Score of 0.77.
• Logistic Regression: Achieved an Accuracy of 0.7636 and a Macro F1-Score of 0.76.
• Decision Tree: Achieved an Accuracy of 0.7550 and a Macro F1-Score of 0.76.
Analysis of Mistakes (Based on Confusion Matrices):
Extreme Separation: There is almost zero confusion between Class 0 (Low) and Class 2 (High). For instance, in the Random Forest matrix, only 13 samples out of thousands were misclassified from 0 to 2. This proves that the features clearly distinguish between entry-level and top-tier earners.
The "Adjacency" Error: Most mistakes occur between adjacent classes (0 vs. 1 and 1 vs. 2).
Middle-Class Ambiguity: Class 1 (Medium) is the primary source of error. The models often struggle to decide if a "middle-tier" freelancer belongs in the low or high category. This makes sense professionally, as middle-tier freelancers often possess a hybrid mix of skills and project types from both other groups.
The Winner: Random Forest
Why it performed best: The Random Forest outperformed the other models because of its ensemble nature.
Complexity: Unlike Logistic Regression, which assumes a linear relationship, Random Forest can capture complex, non-linear interactions between features (e.g., how the combination of specific AI tools and years of experience creates a "jump" in income tier).
Stability: By averaging the results of 100 different decision trees, it reduces the "noise" and variance that caused the single Decision Tree model to have the lowest accuracy (0.7550).
High Precision for Top Earners: It maintained a high precision for Class 2, ensuring that freelancers labeled as "High-Value" are very likely to actually belong to that tier.