Como organizei os treinos de aprendizado de máquina na NGU

Meu nome é Sasha e eu amo aprendizado de máquina, bem como ensinar pessoas. Atualmente, estou coordenando programas educacionais no centro de Ciência da Computação e lidero a graduação em análise de dados na SPbGU. Antes disso, trabalhei como analista no Yandex e, ainda mais cedo, fui pesquisador: fiz modelagem matemática no IVT SO RAN.

Neste post, quero contar como evoluiu a ideia de iniciar treinamentos de aprendizado de máquina para estudantes, formados da Universidade Estadual de Novosibirsk e todos os interessados.

Como organizei os treinos de aprendizado de máquina na NGU

Fazia tempo que eu queria organizar um curso especial de preparação para competições de análise de dados na Kaggle e em outras plataformas. Isso parecia uma excelente ideia:

  • Os alunos e todos os interessados aplicarão na prática os conhecimentos teóricos, ganhando experiência na resolução de problemas em competições públicas.
  • Estudantes que se destacam nessas competições melhoram a atratividade da NSU para candidatos, alunos e ex-alunos. O mesmo ocorre com os treinos de programação competitiva.
  • Esse curso especial complementa e amplia os conhecimentos fundamentais: os participantes implementam modelos de aprendizado de máquina de forma independente e frequentemente se juntam em equipes que competem em nível mundial.
  • Outras universidades já realizaram esses treinos, então eu esperava que o curso especial também fosse um sucesso na NSU.

Iniciar

Em Akademgorodok, Novosibirsk, há um ambiente muito propício para tais iniciativas: estudantes, graduados e professores do centro de Ciência da Computação e de fortes faculdades técnicas, como FIT, MMF, FF, um forte apoio da administração da NSU, uma comunidade ativa de ODS e engenheiros e analistas experientes de várias empresas de TI. Mais ou menos na mesma época, soubemos sobre o programa de subsídios da Botan Investments — o fundo apoia equipes que obtêm bons resultados em competições de ML esportivas.

Encontramos uma sala na NSU para reuniões semanais, criamos um grupo no Telegram e, a partir de 1º de outubro, começamos juntos com os alunos e graduados do centro de CS. Na primeira aula, 19 pessoas compareceram. Seis delas se tornaram participantes regulares dos treinos. No total, durante o ano letivo, 31 pessoas compareceram pelo menos uma vez.

Os primeiros resultados

Conhecemos algumas pessoas, trocamos experiências, discutimos competições e um plano aproximado para o futuro. Com bastante rapidez, percebemos que a luta por vagas nas competições de análise de dados é um trabalho exaustivo regular, parecido com um emprego em tempo integral não remunerado, mas muito interessante e empolgante 🙂 Um dos participantes, o mestre do Kaggle Maksim, nos aconselhou a começar a competir individualmente e só depois de algumas semanas nos unirmos em equipes, levando em consideração o placar público. E foi exatamente isso que fizemos! Durante os treinos presenciais, discutimos modelos, artigos científicos e detalhes das bibliotecas Python, resolvendo problemas juntos.

Os resultados do semestre de outono foram três pratas em duas competições no Kaggle: TGS Salt Identification e PLAsTiCC Astronomical Classification. E um terceiro lugar no concurso do CFT para correção de erros de digitação, com os primeiros ganhos em dinheiro (in the money, como dizem os experientes keglers).

Outro resultado indireto muito importante do curso especial foi a configuração e ativação do cluster VKI da NSU. Seu poder computacional melhorou consideravelmente nossa vida competitiva: 40 CPU, 755Gb de RAM, 8 GPU NVIDIA Tesla V100.

Como organizei os treinos de aprendizado de máquina na NGU

Antes disso, sobrevivíamos como podíamos: computávamos em nossos próprios notebooks e desktops, no Google Colab e nos kernels do Kaggle. Uma das equipes até tinha um script personalizado que salvava automaticamente o modelo e reiniciava o cálculo que parava devido ao limite de tempo.

No semestre da primavera, continuamos nos reunindo, trocando acertos e compartilhando nossas soluções para as competições. Novos participantes interessados começaram a se juntar a nós. No semestre da primavera, já conseguimos uma medalha de ouro, três pratas e nove bronzes em oito competições no Kaggle: PetFinder, Santander, Gendered pronoun resolution, Whale Identification, Quora, Google Landmarks e outras, bronze em Recco challenge, terceiro lugar no Changellenge>>Cup e primeiro lugar (novamente in the money) na competição de machine learning no campeonato de programação da Yandex.

O que dizem os participantes dos treinos

Mikhail Karchevski
«Estou muito feliz que essa atividade esteja acontecendo aqui na Sibéria, pois acredito que participar de competições é a forma mais rápida de dominar ML. Para essas competições, o equipamento é bastante caro para se comprar sozinho, mas aqui pode-se experimentar ideias gratuitamente».

Kirill Brodt
«Antes de aparecerem os treinos de ML, eu não participei muito de competições, exceto as acadêmicas e indiana: não via sentido, pois meu trabalho era na área de IA e conhecia bem isso. No primeiro semestre, participei como ouvinte. A partir do segundo semestre, assim que os recursos computacionais apareceram, pensei: por que não participar? E isso me prendeu. A tarefa, os dados e as métricas foram criados e preparados para você, basta usar todo o poder da IA, testando modelos e técnicas de ponta. Se não fossem os treinos e, não menos importante, os recursos computacionais, eu não teria começado a participar tão cedo».

Andrey Shevelev
«Os treinos presenciais de ML me ajudaram a encontrar pessoas com ideias semelhantes, com as quais consegui aprofundar meus conhecimentos em aprendizado de máquina e análise de dados. Também é uma ótima opção para quem não tem muito tempo livre para estudar sozinho e se aprofundar em competições, mas ainda assim deseja estar por dentro do assunto».

Junte-se a nós

As competições no Kaggle e outras plataformas aprimoram habilidades práticas e rapidamente se traduzem em empregos interessantes na área de ciência de dados. As pessoas que participaram juntas de uma competição difícil muitas vezes se tornam colegas e continuam a resolver tarefas já no trabalho. Isso aconteceu conosco: Mikhail Karshevsky, junto com um amigo da equipe, foram trabalhar na mesma empresa em um sistema de recomendação.

Com o tempo, planejamos expandir essa atividade para publicações científicas e participação em conferências de aprendizado de máquina. Junte-se a nós como participantes ou especialistas em Novosibirsk — escreva para saber. Espero que este artigo tenha ajudado você em seus negócios. Quero acreditar que, ao lê-lo, você aprendeu tanto quanto eu aprendi enquanto lidava com tudo o que descrevi. ou Kirill. Organize treinos semelhantes em suas cidades e universidades.

Aqui está um pequeno guia que ajudará a dar os primeiros passos:

  1. Pense em um lugar e horário confortáveis para sessões regulares. O ideal é 1-2 vezes por semana.
  2. Escreva para possíveis participantes sobre o primeiro encontro. Isso inclui principalmente estudantes de faculdades de tecnologia e participantes da ODS.
  3. Crie um grupo para discutir assuntos atuais: Telegram, VK, WhatsApp ou qualquer outro mensageiro conveniente para a maioria.
  4. Mantenha um plano de aulas públicas, uma lista de competições e participantes, e acompanhe os resultados.
  5. Encontre recursos computacionais gratuitos ou subsídios em universidades, institutos de pesquisa ou empresas próximas.
  6. LUCRO!

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster