Mi chiamo Sasha e amo l'apprendimento automatico, così come l'insegnamento alle persone. Attualmente coordino programmi educativi presso il centro di Computer Science e dirigo il corso di laurea in analisi dei dati presso l'Università Statale di San Pietroburgo. Prima ho lavorato come analista in Yandex e, ancora prima, come ricercatore: mi occupavo di modellazione matematica presso l'Istituto di Informatica della RAN.
In questo post voglio raccontare cosa è nato dall'idea di avviare allenamenti di apprendimento automatico per studenti, neolaureati dell'Università Statale di Novosibirsk e chiunque fosse interessato.
Da tempo desideravo organizzare un corso speciale di preparazione per competizioni di analisi dei dati su Kaggle e altre piattaforme. Mi sembrava un'ottima idea:
- Gli studenti e chiunque altro potrà applicare nella pratica le conoscenze teoriche, acquisire esperienza nella risoluzione di problemi in competizioni pubbliche.
- Gli studenti che occupano posti in cima in tali competizioni influenzano positivamente l'attrattiva dell'NSU per aspiranti studenti, attuali studenti e laureati. Con gli allenamenti di programmazione competitiva avviene lo stesso.
- Questo corso speciale completa e amplia ottimamente le conoscenze fondamentali: i partecipanti realizzano autonomamente modelli di apprendimento automatico, spesso si uniscono in team che competono a livello mondiale.
- In altre università si sono già tenuti allenamenti simili, quindi speravo nel successo del corso speciale anche nell'NSU.
Avvio
Nell'Accademgorodok di Novosibirsk c'è un terreno molto fertile per iniziative di questo tipo: studenti, laureati e docenti del centro di Computer Science e forti facoltà tecniche, come FIT, MMF, FF, un forte supporto dall'amministrazione dell'NSU, una comunità ODS attiva, ingegneri e analisti esperti di varie aziende IT. All'incirca in quel periodo abbiamo appreso del programma di finanziamento di — il fondo supporta i team che raggiungono buoni risultati nelle competizioni di ML sportivo.
Abbiamo trovato un'aula presso l'NSU per incontri settimanali, creato un gruppo su Telegram e dal 1° ottobre siamo partiti insieme a studenti e laureati del centro CS. Al primo incontro si sono presentate 19 persone. Sei di loro sono diventati partecipanti fissi degli allenamenti. In totale durante l'anno accademico, ben 31 persone hanno partecipato almeno una volta all'incontro.
I primi risultati
Io e i ragazzi ci siamo conosciuti, abbiamo condiviso esperienze, discusso delle competizioni e dei piani per il futuro. Abbiamo capito piuttosto rapidamente che la lotta per posizioni nelle competizioni di analisi dei dati è un lavoro regolare e sfinente, simile a un lavoro full-time non pagato, ma molto interessante e coinvolgente 🙂 Uno dei partecipanti, il Kaggle-master Maksim, ci ha consigliato di iniziare a partecipare ai concorsi individualmente e solo dopo alcune settimane unirci in team, tenendo conto del punteggio pubblico. Così abbiamo fatto! Durante gli allenamenti in presenza abbiamo discusso di modelli, articoli scientifici e curiosità sulle librerie Python, risolvendo insieme i problemi.
I risultati del semestre autunnale sono stati tre argenti in due competizioni su Kaggle: e . E un terzo posto nel concorso CFT per la correzione di errori di battitura con i primi guadagni (in the money, come dicono i keggler esperti).
Un altro risultato molto importante del corso speciale è stato il lancio e la configurazione del cluster VKI di NGU. La sua potenza computazionale ha migliorato notevolmente la nostra vita competitiva: 40 CPU, 755 Gb di RAM, 8 GPU NVIDIA Tesla V100.
Prima di questo ci siamo arrangiati come potevamo: facevamo calcoli sui nostri laptop e desktop, in Google Colab e nei kernel di Kaggle. Una squadra aveva anche uno script scritto a mano che salvava automaticamente il modello e riavviava il calcolo, che si era fermato per il limite di tempo.
Nel semestre primaverile abbiamo continuato a riunirci, a condividere successi e a parlare delle nostre soluzioni per le competizioni. Sono arrivati nuovi partecipanti interessati. Durante il semestre primaverile abbiamo già ottenuto un oro, tre argenti e nove bronzi in otto competizioni su Kaggle: , , , , , e altri, bronzo nel , terzo posto nel Changellenge>>Cup e primo posto (di nuovo in the money) nella competizione di machine learning al di Yandex.
Cosa dicono i partecipanti agli allenamenti
«Sono molto contento che un'attività del genere venga portata avanti qui in Siberia, poiché considero che partecipare a queste competizioni sia il modo più veloce per apprendere il ML. Per tali competizioni l'hardware è abbastanza costoso da acquistare autonomamente, ma qui puoi provare idee gratuitamente».
«Prima dell'arrivo dei corsi di allenamento in ML, non partecipavo a concorsi, eccetto quelli scolastici e gare indiane: non ne vedevo il senso, dato che lavoravo nel campo dell'IA e conoscevo già l'argomento. Nel primo semestre andavo come uditore. E a partire dal secondo semestre, non appena sono apparsi le risorse computazionali, ho pensato: perché non partecipare? E mi ha coinvolto. I compiti, i dati e le metriche erano già stati pensati e preparati per me, usa la potenza dell'IA, verifica modelli e tecniche all'avanguardia. Se non ci fossero stati gli allenamenti e, non meno importante, le risorse computazionali, non avrei iniziato a partecipare per un bel po'.»
«I corsi di allenamento ML dal vivo mi hanno aiutato a trovare persone con cui condividere idee, con cui sono riuscito ad approfondire le mie conoscenze nel campo dell'apprendimento automatico e dell'analisi dei dati. È anche un'ottima opzione per coloro che non hanno molto tempo libero per approfondire autonomamente il tema dei concorsi, ma vogliono comunque rimanere aggiornati.»
Unisciti a noi
Le competizioni su Kaggle e altre piattaforme affilano le competenze pratiche e si traducono rapidamente in lavori interessanti nel campo della data science. Le persone che hanno partecipato insieme a una competizione difficile spesso diventano colleghi e continuano a risolvere con successo compiti lavorativi. È successo anche a noi: Mikhail Karchiev insieme a un amico del team ha iniziato a lavorare nella stessa azienda su un sistema di raccomandazione.
Nel tempo pianifichiamo di espandere questa attività con pubblicazioni scientifiche e partecipazione a conferenze sull'apprendimento automatico. Unisciti a noi come partecipante o esperto a Novosibirsk — scrivi a o . Organizza corsi di allenamento simili nelle tue città e università.
Ecco un piccolo promemoria che ti aiuterà a fare i primi passi:
- Pensa a un luogo e un orario comodi per le lezioni regolari. L'ideale è 1-2 volte a settimana.
- Scrivi ai potenziali partecipanti riguardo al primo incontro. In primo luogo, si tratta di studenti di università tecniche e partecipanti a ODS.
- Crea una chat per discutere delle attività correnti: Telegram, VK, WhatsApp o qualsiasi altro messenger comodo per la maggior parte.
- Mantieni un piano delle lezioni pubblico, un elenco di competizioni e partecipanti, e tieni traccia dei risultati.
- Trova capacità di calcolo libere o finanziamenti presso università, istituti di ricerca o aziende vicine.
- PROFIT!
Fonte: habr.com
