Kaggle Competitions: come e da dove cominciare?

Introduzione

Ho le competenze necessarie per partecipare ai Concorsi Kaggle?

Hai mai affrontato questa domanda? Almeno l’ho fatto, al secondo anno, quando temevo Kaggle solo immaginando il livello di difficoltà che offre. Questa paura era simile alla mia paura dell’acqua. La mia paura dell’acqua non mi permetterebbe di prendere lezioni di nuoto. Anche se, più tardi ho imparato, “Fino al momento in cui non entri nell’acqua, non riesci a capire quanto sia profonda”. Filosofia simile si applica a Kaggle. Non concludere finché non provi!

Kaggle, la casa della scienza dei dati, fornisce una piattaforma globale per concorsi, soluzioni per i clienti e job board. Ecco la cattura Kaggle, queste competizioni non solo ti fanno pensare fuori dalla scatola, ma offre anche un bel premio in denaro.

Eppure, le persone esitano a partecipare a questi concorsi. Ecco alcuni motivi principali:

  1. Sminuiscono il loro livello di abilità, conoscenze e tecniche acquisite.
  2. Indipendentemente dal loro livello di abilità, scelgono il problema offrendo il premio in denaro più alto.
  3. Non riescono a confondere il loro livello di abilità con il livello di difficoltà del problema.

Credo che questo problema emani per Kaggle stesso. Kaggle.com non fornisce alcuna informazione che può aiutare le persone a scegliere il problema più appropriato corrispondenza con il loro set di abilità. Di conseguenza, è diventato un compito arduo per i principianti / intermedi di decidere per problema adatto per iniziare.

Cosa imparerai in questo articolo?

In questo articolo, abbiamo aperto lo stallo di scegliere il problema kaggle appropriato in base al tuo set di abilità, strumenti & tecniche. Qui, abbiamo illustrato ogni problema kaggle con il livello di difficoltà e il livello di competenze necessarie per risolverlo.

Nell’ultima parte, abbiamo definito l’approccio corretto per affrontare un problema di kaggle per i seguenti casi:

Caso 1 : ho un background di codifica ma nuovo per l’apprendimento automatico.

Caso 2 : Sono stato in analytics Industria per più di 2 anni, ma non confortevole su R/Python

Caso 3 : io sono buono con la macchina e codifica di apprendimento, hanno bisogno di qualcosa di impegnativo al lavoro su

Caso 4 : io sono un novizio sia del machine learning o linguaggio di programmazione, ma io voglio imparare

Elenco di Kaggle Problemi

Titanic : Macchina di Apprendimento di emergenza

Obiettivo: Un classico popolare problema per iniziare il vostro viaggio con la macchina di apprendimento. Si è data una serie di attributi di passeggeri a bordo ed è necessario prevedere chi sarebbe sopravvissuto dopo la nave affondato.

Livello di difficoltà

a) Capacità di apprendimento automatico-Facile

b) Capacità di codifica-Facile

c) Acquisizione di competenze di dominio-Facile

d) Tutorial disponibili-Molto completo

2. Primo passo con Julia

Obiettivo: Questo è un problema per identificare i caratteri su Google Street View immagine utilizzando uno strumento imminente Julia.

Livello di difficoltà su ciascuno degli attributi :

a) Machine Learning Skills – Easy

b) Coding skills – Medium

c) Acquisizione di competenze di dominio-Easy

d) Tutorial disponibile – Comprehensive

Digit Recognizer

Obiettivo: Ti viene dato un dato con pixel su cifre scritte a mano e devi dire in modo conclusivo quale cifra è. Questo è un problema classico per il modello Latent Markov.

Livello di difficoltà su ciascuno degli attributi :

a) Macchina di Apprendimento di Competenze Medio –

b) capacità di Codifica e Medie

c) l’Acquisizione del Dominio di Abilità -Facile

d) Esercitazione disponibile – Disponibile ma non in mano

Borsa di Parole soddisfare Sacchetto di Popcorn

Obiettivo: Si è data una serie di recensioni di film, e avete bisogno di trovare il sentimento nascosto in queste dichiarazione. L’obiettivo di questa dichiarazione problema è quello di farvi conoscere il pacchetto di Google – Word2Vec.

È un pacchetto fantastico che ti aiuta a convertire le parole in uno spazio a dimensione finita. In questo modo possiamo costruire analogie solo guardando il vettore. Un esempio molto semplice è che il tuo algoritmo può far emergere analogie come: King – Male + Female ti darà la regina.

Livello di difficoltà su ciascuno degli attributi:

a) Capacità di apprendimento automatico-Difficile

b) Capacità di codifica-Medio

c) Acquisizione di competenze di dominio-Facile

d) Tutorial disponibile-Disponibile ma nessuna mano che tiene

5. Denoising Documenti sporchi

Obiettivo: Potresti conoscere una tecnologia nota come OCR. Converte semplicemente documenti scritti a mano in documenti digitali. Tuttavia, non è perfetto. Il tuo compito qui è usare l’apprendimento automatico per renderlo perfetto.

il livello di Difficoltà su ogni attributi :

a) Macchina di Apprendimento Competenze – Difficile

b) capacità di Codifica – Difficile

c) l’Acquisizione del Dominio di Abilità Difficile

d) Tutorial – No

San Francisco Reato di Classificazione

Obiettivo: Prevedere la categoria dei crimini che si sono verificati nella città della baia.

il livello di Difficoltà su ogni attributi :

a) Macchina di Apprendimento di Abilità Molto Difficile

b) capacità di Codifica è Molto Difficile

c) l’Acquisizione del Dominio di Abilità Difficile

d) Tutorial – No

Taxi Traiettoria di Stima Tempo / Posizione

Obiettivo: Ci sono due problemi di base sullo stesso set di dati. Si è dato il controller di un taxi, e si suppone di prevedere dove è il taxi andare a o il tempo che ci vorrà per completare il viaggio.

il livello di Difficoltà su ogni attributi :

a) Macchina di Apprendimento Competenze – Facile

b) capacità di Codifica – Difficile

c) l’Acquisizione del Dominio di Abilità Medio-

d) Tutorial – Un paio di benchmark codici disponibili

Facebook di Reclutamento – Umano o un bot

Obiettivo: Se si dispone di un nag a comprendere un nuovo dominio, avete avuto modo di risolvere questo. Si sono dati i dati di offerta e si prevede di classificare l’offerente a bot o umano. Questo ha la fonte di dati più ricca disponibile di tutti i problemi su Kaggle.

il livello di Difficoltà su ogni attributi :

a) Macchina di Apprendimento di Competenze Medio –

b) capacità di Codifica e Medie

c) l’Acquisizione del Dominio di Abilità Medio-

d) Tutorial – Nessun supporto dato che si tratta di un reclutamento concorso

Nota: Non ho coperto la Kaggle concorsi di offrire un premio in denaro in questo articolo in quanto sono tutti connessi a un dominio specifico. Fatemi sapere la vostra opinione su di loro nella sezione commenti qui sotto.

Ora vedremo l’approccio corretto per le persone che hanno diversi set di abilità in diverse fasi della vita per iniziare il loro viaggio Kaggle!

Caso 1: ho uno sfondo di codifica ma nuovo per l’apprendimento automatico.

Passo 1: Il primo problema di kaggle che dovresti affrontare è: previsione della traiettoria del taxi. Il motivo è che il problema ha un set di dati complesso che include un formato JSON in una delle colonne che indica l’insieme di coordinate che il taxi ha visitato. Se si è in grado di abbattere questo, ottenere una stima iniziale sulla destinazione di destinazione o il tempo non ha bisogno di un apprendimento automatico. Quindi, puoi usare la tua forza di codifica per trovare il tuo valore in questo settore.

Passo 2: Il prossimo passo dovrebbe essere quello di prendere: Titanic. La ragione è che ora capiresti già come gestire set di dati complessi. Quindi, ora è il momento perfetto per prendere un colpo su problemi di apprendimento automatico puro. Con abbondanza di soluzioni / script disponibili, si sarà in grado di costruire una buona soluzione.

Passo 3: Ora sei pronto per qualcosa di grande. Prova Facebook Reclutamento. Questo ti aiuterà ad apprezzare come comprendere il dominio può aiutarti a ottenere il meglio dall’apprendimento automatico.

Una volta che hai tutti questi pezzi a posto, sei bravo a provare qualsiasi problema su Kaggle.

Caso 2: Sono stato nel settore dell’analisi per più di 2 anni, ma non mi sento a mio agio su R / Python

Passo 1: Dovresti iniziare con un colpo su Titanic. La ragione è che hai già capito come costruire un algoritmo predittivo. Ora dovresti sforzarti di imparare lingue come R e Python. Con abbondanza di soluzioni/script disponibili, sarete in grado di costruire diversi tipi di modelli sia su R che su Python. Questo problema ti aiuterà anche a capire alcuni algoritmi di apprendimento automatico avanzati.

Passo 2: il prossimo passo dovrebbe essere il reclutamento di Facebook. Ragione essendo, data la semplicità della struttura dei dati e la ricchezza del contenuto, si sarà in grado di unire le tabelle giuste e fare un algoritmo predittivo su questo. Questo ti aiuterà anche ad apprezzare come comprendere il dominio può aiutarti a ottenere il meglio dall’apprendimento automatico.

Suggerimenti: Ora siete pronti per qualcosa di molto diverso dalla vostra zona di comfort. Leggi problemi come il rilevamento della retinopatia diabetica, i clic sugli annunci di contesto Avinto, la classificazione dei reati e trova il dominio di tuo interesse. Ora prova ad applicare tutto ciò che hai imparato finora.

Ora è il momento di provare qualcosa di più complesso da codificare. Prova la previsione della traiettoria del taxi o Denoising documenti sporchi. Una volta che hai tutti questi pezzi a posto, ora puoi provare qualsiasi problema su Kaggle.

Caso 3: sono bravo con la codifica e l’apprendimento automatico, ho bisogno di qualcosa di impegnativo su cui lavorare

Passaggio 1: Hai molte opzioni su Kaggle. La prima opzione è padroneggiare una nuova lingua come Julia. Si può iniziare con il primo passo con Julia. La ragione è che questo ti darà un’ulteriore esposizione a ciò che può fare Julia oltre a Python o R.

Passo 2: La seconda opzione è sviluppare abilità con un dominio aggiuntivo. Puoi provare Avito Context, Search Relevance o Facebook-Human vs. Bot.

Caso 4: Sono un principiante sia per l’apprendimento automatico che per il linguaggio di codifica, ma voglio imparare

Passo 1: Dovresti iniziare il tuo viaggio kaggle con Titanic. La ragione è che il primo passo per te è imparare lingue come R e Python. Con abbondanza di soluzioni/script disponibili, sarete in grado di costruire diversi tipi di modelli sia su R che su Python. Questo problema ti aiuterà anche a capire alcuni algoritmi di apprendimento automatico.

Passo 2: Si dovrebbe quindi prendere: Facebook Reclutamento. Ragione essendo, data la semplicità della struttura dei dati e la ricchezza del contenuto, si sarà in grado di unire le tabelle giuste e fare un algoritmo predittivo su questo. Questo ti aiuterà anche ad apprezzare come comprendere il dominio può aiutarti a ottenere il meglio dall’apprendimento automatico.

Una volta che hai finito con questi, puoi quindi affrontare i problemi secondo il tuo interesse.

Pochi hack per essere una concorrenza leale su Kaggle

Questo non è un elenco completo di hack, ma lo scopo di fornire un buon inizio. Elenco completo merita un nuovo post da solo:

  1. Assicurati di inviare una soluzione (anche l’invio del campione farà questo lavoro) prima dell’ultima data di iscrizione, se desideri partecipare al concorso in futuro.
  2. Comprendere il dominio prima di accedere ai dati. Ad esempio in bot vs. human, devi capire come funziona la piattaforma di offerte online prima di iniziare il viaggio con i dati.
  3. Crea il tuo algoritmo di valutazione che può imitare il punteggio del test di Kaggle. Una semplice convalida incrociata di 10 volte generalmente funziona bene.
  4. Cerca di ritagliarti quante più funzioni possibili dai dati del treno: l’ingegneria delle funzionalità è di solito la parte che ti spinge dal 40 percentile superiore al 10 percentile superiore.
  5. Un singolo modello in genere non si ottiene nella top 10. Hai bisogno di fare molti molti modelli e li ensemble insieme. Questo può essere più modelli con diversi algoritmi o diversi set di variabili.

Note finali

Ci sono molteplici vantaggi che ho realizzato dopo aver lavorato sui problemi di Kaggle. Ho imparato R / Python al volo. Credo che sia il modo migliore per imparare lo stesso. Anche interagire con le persone del forum di discussione su vari problemi vi aiuterà a ottenere uno scoop più profondo in machine learning e dominio.

In questo articolo, abbiamo illustrato vari problemi di Kaggle e classificato i loro attributi essenziali nel livello di difficoltà. Abbiamo anche preso vari casi di vita reale e suscitato il giusto approccio per partecipare a Kaggle.

Hai partecipato a qualche problema di Kaggle? Hai visto benefici significativi facendo lo stesso? Fateci sapere i vostri pensieri su questa guida nella sezione commenti qui sotto.

Se ti piace quello che hai appena letto & vuoi continuare il tuo apprendimento analitico, iscriviti alle nostre e-mail, seguici su Twitter o come la nostra pagina Facebook.

Puoi anche leggere questo articolo sulla nostra APP mobile

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.