Probleem #94
Auteur:Ana Maria Simion
Moeilijkheid
Jouw beste score
N.v.t.
Klantenchurn vertegenwoordigt het vrijwillige opgeven van diensten door klanten bij een telecommunicatieoperator. Het begrijpen van de factoren die churn beïnvloeden is essentieel voor het ontwikkelen van retentiestrategieën en voor het optimaliseren van aanbiedingen en diensten.
Kunstmatige Intelligentie maakt complexe analyse van klantgegevens mogelijk voor:
Voor het oplossen van dit probleem heeft u twee bestanden tot uw beschikking:
train.csv – bevat alle variabelen, inclusief Churn, voor het trainen van modellentest.csv – bevat dezelfde variabelen, zonder de kolom Churn, en de gegevens uit dit bestand worden gebruikt voor het genereren van voorspellingen| Column | DType | Beschrijving |
|---|---|---|
| SampleID | int | Unieke identificatie van de klant |
| Age | int | Leeftijd van de klant |
| Avg Monthly GB Download | int | Maandelijks gemiddelde van gedownloade data (GB) |
| Avg Monthly Long Distance Charges | float | Gemiddelde maandelijkse kosten voor langeafstandsgesprekken |
| City | object | Stad van de klant |
| CLTV | int | Geschatte Customer Lifetime Value |
| Contract | object | Type contract (maandelijks, jaarlijks etc.) |
| Country | object | Land van de klant |
| Customer ID | object | Unieke interne identificatie van de klant |
| Dependents | int | Aantal afhankelijke personen |
| Device Protection Plan | int | 1 indien aanwezig, 0 indien niet |
| Gender | object | Geslacht van de klant |
| Internet Service | int | Indicator internetdienst |
| Internet Type | object | Type internetverbinding |
| Lat Long | object | Coördinaten breedtegraad en lengtegraad |
| Latitude | float | Breedtegraad |
| Longitude | float | Lengtegraad |
| Married | int | 1 indien de klant getrouwd is, 0 anders |
| Monthly Charge | float | Maandelijkse kosten van de diensten |
| Multiple Lines | int | 1 indien er meerdere lijnen zijn, 0 anders |
| Number of Dependents | int | Totaal aantal afhankelijke personen |
| Number of Referrals | int | Aantal aanbevelingen gedaan aan andere klanten |
| Offer | object | Type ontvangen aanbieding (indien aanwezig) |
| Online Backup | int | 1 indien aanwezig, 0 anders |
| Online Security | int | 1 indien aanwezig, 0 anders |
| Paperless Billing | int | 1 indien elektronische facturering aanwezig is |
| Partner | int | 1 indien de klant een partner heeft, 0 anders |
| Payment Method | object | Betalingsmethode voor facturen |
| Phone Service | int | 1 indien telefoondienst aanwezig is, 0 anders |
| Population | int | Bevolking van de stad |
| Premium Tech Support | int | 1 indien premium ondersteuning aanwezig is, 0 anders |
| Quarter | object | Kwartaal waarin de gegevens zijn geregistreerd |
| Referred a Friend | int | 1 indien de klant een vriend heeft aanbevolen |
| Satisfaction Score | int | Tevredenheidsscore van de klant |
| Senior Citizen | int | 1 indien de klant senior is, 0 anders |
| State | object | Staat/provincie van de klant |
| Streaming Movies | int | 1 indien filmstreamingdienst aanwezig is |
| Streaming Music | int | 1 indien muziekstreamingdienst aanwezig is |
| Streaming TV | int | 1 indien TV-streamingdienst aanwezig is |
| Tenure in Months | int | Aantal maanden sinds het begin van het contract |
| Total Charges | float | Totaal bedrag betaald door de klant |
| Total Extra Data Charges | int | Extra kosten voor data |
| Total Long Distance Charges | float | Totaal bedrag betaald voor langeafstandsgesprekken |
| Total Refunds | float | Totaal bedrag terugbetaald aan de klant |
| Total Revenue | float | Totale inkomsten gegenereerd door de klant |
| Under 30 | int | 1 indien de klant onder de 30 jaar is |
| Unlimited Data | int | 1 indien het plan onbeperkte data heeft |
| Zip Code | int | Postcode van de klant |
| Ping Score | float | Netwerkprestatie score |
| Avg Speed | float | Gemiddelde snelheid van de internetverbinding |
| TV Type | object | Type TV-ontvanger |
| Link Quality Index | float | Kwaliteitsindex van de verbinding |
| Total Short Distance Charges | float | Kosten voor lokale gesprekken |
| Churn | int | 1 indien de klant heeft opgezegd, 0 anders |
Voor dit probleem moet u 3 taken oplossen.
Bereken voor elke klant uit de testset een vereenvoudigde financiële risicoscore gebaseerd op de waarden Monthly Charge en Total Extra Data Charges.
FinancialRiskScore = (Monthly Charge > 70) + (Total Extra Data Charges > 10)Elke component voegt 1 punt toe aan de score als:
De eindScore ligt tussen 0 en 2.
Bereken voor elke klant uit de testset een score die de kwaliteit van diensten weergeeft op basis van de kolommen Avg Speed, Ping Score en Link Quality Index.
ServiceQualityScore = (Avg Speed < 50) + (Ping Score > 80) + (Link Quality Index < 30)Elke component draagt 1 punt bij aan de score.
De eindScore ligt tussen 0 (goede ervaring) en 3 (slechte ervaring).
Meer specifiek, als aan de eerste voorwaarde wordt voldaan (Avg Speed < 50) wordt 1 punt toegevoegd. Hetzelfde geldt voor de rest.
Bouw een classificatiemodel dat Churn voorspelt (0 = actieve klant, 1 = klant die heeft opgezegd) op basis van alle beschikbare informatie in train.csv.
test.csv moeten 0 of 1 zijn.Answer in het submitbestand moet 0 of 1 zijn voor elke klant.Het bestand submission.csv moet bevatten:
id - ID overgenomen uit test.csv (kolom SampleID)subtaskID
1 voor Taak 12 voor Taak 23 voor Taak 3answer - de berekende of voorspelde waarde voor de klant bij de aangegeven taakVoor Taak 3 wordt de score toegekend volgens de volgende regels: