Dos físicos à ciência de dados (dos motores da ciência ao plâncton de escritório). A terceira parte

Dos físicos à ciência de dados (dos motores da ciência ao plâncton de escritório). A terceira parte

Esta foto é de Arthur Kuzin (n01z3), resume com bastante precisão o conteúdo da postagem do blog. Como resultado, a narrativa a seguir deve ser percebida mais como uma história de sexta-feira do que como algo extremamente útil e técnico. Além disso, vale ressaltar que o texto é rico em palavras em inglês. Não sei como traduzir alguns deles corretamente e simplesmente não quero traduzir alguns deles.

A primeira parte.
A segunda parte.

A forma como se deu a transição do ambiente acadêmico para o ambiente industrial é revelada nos dois primeiros episódios. Neste, a conversa será sobre o que aconteceu a seguir.

Era janeiro de 2017. Naquela época, eu tinha pouco mais de um ano de experiência profissional e trabalhava em São Francisco na empresa TrueAccord como o Sr. Cientista de Dados.

TrueAccord é uma startup de cobrança de dívidas. Em termos simples - uma agência de cobrança. Os cobradores costumam ligar muito. Enviamos muitos e-mails, mas fizemos poucas ligações. Cada e-mail levava ao site da empresa, onde era oferecido ao devedor um desconto na dívida, podendo até parcelar o pagamento. Essa abordagem proporcionou melhor arrecadação, permitiu escalonamento e menor exposição a ações judiciais.

A empresa estava normal. O produto é claro. A gestão é sensata. A localização é boa.

Em média, as pessoas no vale trabalham num local durante cerca de um ano e meio. Ou seja, qualquer empresa em que você trabalha é apenas um pequeno passo. Nesta etapa você irá arrecadar algum dinheiro, adquirir novos conhecimentos, habilidades, conexões e linhas em seu currículo. Depois disso, há uma transição para a próxima etapa.

Na própria TrueAccord, estive envolvido na anexação de sistemas de recomendação a boletins informativos por e-mail, bem como na priorização de ligações telefônicas. O impacto é compreensível e foi medido muito bem em dólares por meio de testes A/B. Como não havia aprendizado de máquina antes da minha chegada, o impacto do meu trabalho não foi ruim. Novamente, é muito mais fácil melhorar algo do que algo que já está fortemente otimizado.

Depois de seis meses trabalhando nesses sistemas, eles até aumentaram meu salário base de US$ 150 mil para US$ 163 mil. Na comunidade Ciência de Dados Abertos (ODS) há um meme de cerca de US$ 163 mil. Ela cresce com as pernas a partir daqui.

Tudo isso foi maravilhoso, mas não levou a lugar nenhum, ou levou, mas não chegou lá.

Tenho grande respeito pela TrueAccord, tanto pela empresa quanto pelos caras com quem trabalhei lá. Aprendi muito com eles, mas não queria trabalhar muito tempo em sistemas de recomendação em uma agência de cobrança. A partir deste passo você teve que seguir em alguma direção. Se não para frente e para cima, pelo menos para os lados.

O que eu não gostei?

  1. Do ponto de vista do aprendizado de máquina, os problemas não me entusiasmaram. Eu queria algo moderno, jovem, ou seja, Deep Learning, Computer Vision, algo bastante próximo da ciência ou pelo menos da alquimia.
  2. Uma startup, e até mesmo uma agência de cobrança, tem problemas para contratar pessoal altamente qualificado. Como uma startup, não pode pagar muito. Mas, como agência de cobrança, perde status. Grosso modo, se uma garota em um encontro perguntar onde você trabalha? Sua resposta: “No Google” soa muito melhor do que “agência de cobrança”. Fiquei um pouco incomodado com o fato de que para meus amigos que trabalham no Google e no Facebook, ao contrário de mim, o nome da empresa deles abriu portas como: você pode ser convidado para uma conferência ou encontro como palestrante, ou pessoas mais interessantes escrevem no LinkedIn com uma oferta para conhecer e conversar enquanto tomamos um copo de chá. Eu realmente adoro me comunicar com pessoas que não conheço pessoalmente. Então, se você mora em São Francisco, não hesite em escrever - vamos tomar um café e conversar.
  3. Além de mim, três Cientistas de Dados trabalhavam na empresa. Eu estava trabalhando em aprendizado de máquina e eles estavam trabalhando em outras tarefas de ciência de dados, que são comuns em qualquer startup daqui até amanhã. Como resultado, eles realmente não entendiam o aprendizado de máquina. Mas para crescer preciso me comunicar com alguém, discutir artigos e os últimos desenvolvimentos e, no final, pedir conselhos.

O que estava disponível?

  1. Educação: física, não ciência da computação.
  2. A única linguagem de programação que eu conhecia era Python. Tive a sensação de que eu precisava mudar para C++, mas ainda não consegui.
  3. Um ano e meio de trabalho na indústria. Além disso, no trabalho não estudei Deep Learning nem Visão Computacional.
  4. Nem um único artigo sobre Deep Learning/Computer Vision no currículo.
  5. Houve uma conquista do Kaggle Master.

O que você queria?

  1. Uma posição onde será necessário treinar muitas redes, e mais próximo da visão computacional.
  2. É melhor se for uma grande empresa como Google, Tesla, Facebook, Uber, LinkedIn, etc. Embora em apuros, uma startup serviria.
  3. Não preciso ser o maior especialista em aprendizado de máquina da equipe. Havia uma grande necessidade de camaradas seniores, mentores e todo tipo de comunicação, o que deveria agilizar o processo de aprendizagem.
  4. Depois de ler postagens em blogs sobre como graduados sem experiência industrial recebem uma remuneração total de US$ 300 a 500 mil por ano, eu queria entrar na mesma faixa. Não é que isso me incomode tanto, mas como dizem que isso é um fenômeno comum, mas tenho menos, então isso é um sinal.

A tarefa parecia completamente solucionável, embora não no sentido de que você pudesse entrar em qualquer empresa, mas sim de que se você passar fome, tudo dará certo. Ou seja, dezenas ou centenas de tentativas, e a dor de cada fracasso e de cada rejeição, devem ser usadas para aguçar o foco, melhorar a memória e esticar o dia para 36 horas.

Ajustei meu currículo, comecei a enviá-lo e a fazer entrevistas. Passei pela maioria deles na fase de comunicação com o RH. Muitas pessoas precisavam de C++, mas eu não sabia disso e tinha uma forte sensação de que não estaria muito interessado em cargos que exigissem C++.

É importante destacar que na mesma época houve uma transição de fase no tipo de competições no Kaggle. Antes de 2017, havia muitos dados tabulares e muito raramente dados de imagens, mas a partir de 2017 havia muitas tarefas de visão computacional.

A vida fluiu da seguinte maneira:

  1. Trabalhe durante o dia.
  2. Quando a tecnologia é exibida / no local, você tira uma folga.
  3. Noites e fins de semana Kaggle + artigos/livros/postagens em blogs

O final de 2016 foi marcado pelo fato de ter ingressado na comunidade Ciência de Dados Abertos (ODS), o que simplificou muitas coisas. Há muitos caras na comunidade com vasta experiência industrial, o que nos permitiu fazer muitas perguntas estúpidas e obter muitas respostas inteligentes. Há também muitos especialistas fortes em aprendizado de máquina de todos os matizes, o que, inesperadamente, me permitiu, por meio do ODS, encerrar o assunto com comunicação regular e aprofundada sobre Ciência de Dados. Até agora, em termos de ML, o ODS me dá muitas vezes mais do que ganho no trabalho.

Bem, como sempre, o ODS conta com especialistas suficientes em competições no Kaggle e outros sites. Resolver problemas em equipe é mais divertido e produtivo, então com piadas, palavrões, memes e outras diversões nerds, começamos a resolver os problemas um por um.

Em março de 2017 - em equipe com Serega Mushinsky - terceiro lugar para Detecção de recursos de imagens de satélite Dstl. Medalha de ouro no Kaggle + US$ 20 mil para dois. Nesta tarefa foi aprimorado o trabalho com imagens de satélite + segmentação binária via UNet. Postagem no blog do Habré sobre este assunto.

Naquele mesmo mês de março, fui entrevistar na NVidia com a equipe Self Driving. Eu realmente tive dificuldades com perguntas sobre detecção de objetos. Não havia conhecimento suficiente.

Felizmente, ao mesmo tempo, começou a competição de detecção de objetos em imagens aéreas do mesmo DSTL. O próprio Deus ordenou resolver o problema e atualizar. Um mês de noites e fins de semana. Adquiri o conhecimento e terminei em segundo. Essa competição tinha uma nuance interessante nas regras, o que me levou a ser exibido na Rússia em canais federais e não tão federais. eu entrei casa Lenta.rue em várias publicações impressas e on-line. O Grupo Mail Ru recebeu algumas relações públicas positivas às minhas custas e com seu próprio dinheiro, e a ciência fundamental na Rússia foi enriquecida em 12000 libras. Como sempre, foi escrito sobre este assunto postagem no blog sobre hubr. Vá lá para obter detalhes.

Ao mesmo tempo, um recrutador da Tesla me contatou e se ofereceu para falar sobre o cargo de Visão Computacional. Eu concordei. Corri para casa, duas telas de tecnologia, uma entrevista no local e tive uma conversa muito agradável com Andrei Karpathy, que acabara de ser contratado pela Tesla como Diretor de IA. A próxima etapa é a verificação de antecedentes. Depois disso, Elon Musk teve que aprovar pessoalmente minha inscrição. A Tesla tem um rigoroso Acordo de Não Divulgação (NDA).
Não passei na verificação de antecedentes. O recrutador disse que converso muito online, violando o NDA. O único lugar onde eu disse alguma coisa sobre uma entrevista na Tesla foi no ODS, então a hipótese atual é que alguém fez uma captura de tela e escreveu para o RH da Tesla, e eu fui retirado da corrida, fora de perigo. Foi uma pena então. Agora estou feliz que não deu certo. Minha posição atual é muito melhor, embora fosse muito interessante trabalhar com o Andrey.

Imediatamente depois disso, mergulhei na competição de imagens de satélite no Kaggle de Planet Labs – Compreendendo a Amazônia vista do espaço. O problema era simples e extremamente chato; ninguém queria resolvê-lo, mas todos queriam uma medalha de ouro grátis ou um prêmio em dinheiro. Portanto, com uma equipe de Kaggle Masters de 7 pessoas, combinamos que jogaríamos ferro. Treinamos 480 redes no modo ‘fit_predict’ e formamos um conjunto de três andares com elas. Terminamos em sétimo. Postagem no blog descrevendo a solução de Arthur Kuzin. A propósito, Jeremy Howard, amplamente conhecido como o criador Rápido.AI terminou 23.

Após o término da competição, através de um amigo que trabalhava na AdRoll, organizei um Meetup nas instalações deles. Representantes do Planet Labs falaram lá sobre como foi a organização da competição e marcação de dados por parte deles. Wendy Kwan, que trabalha na Kaggle e supervisionou a competição, falou sobre como a viu. Descrevi nossa solução, truques, técnicas e detalhes técnicos. Dois terços do público resolveram esse problema, então as perguntas foram feitas direto ao ponto e no geral tudo correu bem. Jeremy Howard também estava lá. Acontece que ele terminou em 23º lugar porque não sabia empilhar o modelo e não conhecia esse método de construção de conjuntos.

Os encontros no vale sobre aprendizado de máquina são muito diferentes dos encontros em Moscou. Via de regra, os encontros no vale ficam no fundo. Mas o nosso acabou bem. Infelizmente, o camarada que deveria apertar o botão e gravar tudo não apertou o botão :)

Depois disso, fui convidado para conversar com o cargo de Deep Learning Engineer neste mesmo Planet Labs, e imediatamente no local. Eu não passei. A redação da recusa é que não há conhecimento suficiente em Deep Learning.

Elaborei cada competição como um projeto em LinkedIn. Para o problema DSTL escrevemos pré-impressão e postei no arxiv. Não é um artigo, mas ainda pão. Também recomendo a todos que aumentem seu perfil no LinkedIn por meio de competições, artigos, habilidades e assim por diante. Há uma correlação positiva entre quantas palavras-chave você tem em seu perfil do LinkedIn e a frequência com que as pessoas enviam mensagens para você.

Se no inverno e na primavera eu era muito técnico, em agosto já tinha conhecimento e autoconfiança.

No final de julho, um cara que trabalhava como gerente de Data Science na Lyft me contatou pelo LinkedIn e me convidou para tomar um café e bater um papo sobre a vida, sobre Lyft, sobre TrueAccord. Nós conversamos. Ele se ofereceu para entrevistar sua equipe para o cargo de Cientista de Dados. Eu disse que a opção está funcionando, desde que seja Visão Computacional / Aprendizado Profundo de manhã à noite. Ele garantiu que não houve objeções de sua parte.

Enviei meu currículo e ele carregou no portal interno do Lyft. Depois disso, o recrutador me ligou para abrir meu currículo e saber mais sobre mim. Desde as primeiras palavras ficou claro que para ele isso era uma formalidade, pois era óbvio para ele em seu currículo que “não sou um material para Lyft”. Acho que depois disso meu currículo foi para a lixeira.

Todo esse tempo, enquanto eu estava sendo entrevistado, discuti minhas falhas e quedas no ODS e os caras me deram feedback e me ajudaram de todas as maneiras possíveis com conselhos, embora, como sempre, também houvesse muitos trollings amigáveis.

Um dos membros do ODS se ofereceu para me conectar com seu amigo, que é o Diretor de Engenharia da Lyft. Dito e feito. Venho almoçar no Lyft e, além desse amigo, há também um Head of Data Science e um Product Manager que é um grande fã de Deep Learning. No almoço conversamos no DL. E como treino redes 24 horas por dia, 7 dias por semana há meio ano, li metros cúbicos de literatura e executei tarefas no Kaggle com resultados mais ou menos claros, poderia falar sobre Deep Learning por horas, tanto em termos de novos artigos e técnicas práticas.

Depois do almoço eles olharam para mim e disseram - é imediatamente óbvio que você é bonito, quer falar conosco? Além disso, eles acrescentaram que está claro para mim que a tela inicial + tecnologia pode ser ignorada. E que serei convidado imediatamente para estar no local. Eu concordei.

Depois disso, aquele recrutador me ligou para agendar uma entrevista no local e ficou insatisfeito. Ele murmurou algo sobre não pular na sua cabeça.

Veio. Entrevista no local. Cinco horas de comunicação com pessoas diferentes. Não houve uma única pergunta sobre Deep Learning ou sobre aprendizado de máquina em princípio. Como não existe Deep Learning/Computer Vision, não estou interessado. Assim, os resultados das entrevistas foram ortogonais.

Este recrutador liga e diz: parabéns, você passou para a segunda entrevista no local. Tudo isso é surpreendente. Qual é o segundo local? Nunca ouvi falar de tal coisa. Eu fui. Há algumas horas lá, desta vez sobre aprendizado de máquina tradicional. Isso é melhor. Mas ainda não é interessante.

O recrutador liga parabenizando por ter passado na terceira entrevista presencial e jura que esta será a última. Fui ver e tinha um DL e um currículo.

Tive um antecedente por muitos meses que me disse que não haveria oferta. Não treinarei em habilidades técnicas, mas em habilidades leves. Não pelo lado soft, mas pelo fato de a vaga ser encerrada ou de a empresa ainda não estar contratando, mas simplesmente testar o mercado e o nível dos candidatos.

Meados de agosto. Eu bebi cerveja ok. Pensamentos sombrios. 8 meses se passaram e ainda nenhuma oferta. É bom ser criativo na cerveja, principalmente se a criatividade for estranha. Uma ideia me vem à mente. Compartilho isso com Alexey Shvets, que na época era pós-doutorado no MIT.

E se você participar da conferência DL/CV mais próxima, assistir às competições que acontecem como parte dela, treinar alguma coisa e se inscrever? Como todos os especialistas estão construindo suas carreiras com base nisso e já fazem isso há muitos meses ou até anos, não temos chance. Mas não é assustador. Fazemos algumas submissões significativas, voamos para o último lugar e depois escrevemos um pré-print ou um artigo sobre como não somos como todo mundo e falamos sobre nossa decisão. E o artigo já está no LinkedIn e no seu currículo.

Ou seja, parece ser relevante e há palavras-chave mais corretas no currículo, o que deve aumentar um pouco as chances de chegar à tela técnica. Código e envios meus, textos de Alexey. Jogo, claro, mas por que não?

Dito e feito. A conferência mais próxima que pesquisamos no Google foi a MICCAI e realmente houve competições lá. Acertamos o primeiro. Era ANÁLISE DE IMAGENS GASTROINTESTINAIS (GIANA). A tarefa possui 3 subtarefas. Faltavam 8 dias para o prazo. Fiquei sóbrio pela manhã, mas não desisti da ideia. Peguei meus pipelines do Kaggle e os troquei de dados de satélite para dados médicos. 'ajustar_prever'. Alexey preparou uma descrição de duas páginas com soluções para cada problema e nós a enviamos. Preparar. Em teoria, você pode expirar. Mas descobriu-se que havia outra tarefa para o mesmo workshop (Segmentação de instrumentos robóticos) com três subtarefas e que o prazo dela foi adiantado em 4 dias, ou seja, podemos fazer 'fit_predict' aí e enviar. Foi isso que fizemos.

Ao contrário do Kaggle, essas competições tinham suas próprias especificidades acadêmicas:

  1. Sem tabela de classificação. As submissões são enviadas por e-mail.
  2. Você será afastado caso um representante da equipe não compareça para apresentar a solução na conferência do Workshop.
  3. Sua posição na tabela de classificação só será conhecida durante a conferência. Uma espécie de drama acadêmico.

A conferência MICCAI 2017 foi realizada na cidade de Quebec. Para ser sincero, em setembro eu estava começando a ficar exausto, então a ideia de tirar uma semana de folga do trabalho e ir para o Canadá parecia interessante.

Veio para a conferência. Vim para esse Workshop, não conheço ninguém, estou sentado no canto. Todos se conhecem, comunicam-se, pronunciam palavras médicas inteligentes. Revisão da primeira competição. Os participantes falam e falam sobre suas decisões. É legal lá, com brilho. Minha vez. E de alguma forma estou até envergonhado. Eles resolveram o problema, trabalharam nele, avançaram a ciência, e nós estamos puramente “fit_predict” a partir de desenvolvimentos passados, não pela ciência, mas para impulsionar nosso currículo.

Ele apareceu e disse que eu também não sou especialista em medicina, pediu desculpas por ter perdido tempo e me mostrou um slide com a solução. Desci para o corredor.

Eles anunciam a primeira subtarefa - somos os primeiros e por uma margem.
O segundo e o terceiro são anunciados.
Eles anunciam o terceiro - novamente primeiro e novamente com vantagem.
Geral é o primeiro.

Dos físicos à ciência de dados (dos motores da ciência ao plâncton de escritório). A terceira parte

Comunicado de imprensa oficial.

Alguns na plateia sorriem e olham para mim com respeito. Outros, aqueles que aparentemente eram considerados especialistas na área, tinham ganho uma bolsa para esta tarefa e já o faziam há muitos anos, tinham uma expressão ligeiramente distorcida no rosto.

A seguir vem a segunda tarefa, aquela com três subtarefas e que foi adiantada em quatro dias.

Aqui também pedi desculpas e mostrei nosso único slide novamente.
A mesma história. Dois primeiro, um segundo, comum primeiro.

Acho que esta é provavelmente a primeira vez na história que uma agência de cobrança ganha um concurso de imagens médicas.

E agora estou no palco, eles me entregam uma espécie de diploma e sou bombardeado. Como diabos isso pode ser? Estes académicos estão a gastar o dinheiro dos contribuintes, a trabalhar para simplificar e melhorar a qualidade do trabalho dos médicos, ou seja, em teoria, a minha esperança de vida, e alguém destruiu todo este corpo académico na bandeira britânica em poucas noites.

Um bônus disso é que nas demais equipes, os pós-graduandos que já trabalham nessas tarefas há muitos meses terão um currículo atrativo para o RH, ou seja, chegarão facilmente à tela do técnico. E diante dos meus olhos há um e-mail recém-recebido:

A Googler recently referred you for the Research Scientist, Google Brain (United States) role. We carefully reviewed your background and experience and decided not to proceed with your application at this time.

Em geral, logo no palco pergunto ao público: “Alguém sabe onde trabalho?” Um dos organizadores da competição sabia - ele pesquisou no Google o que era TrueAccord. O resto não é. Continuo: “Trabalho para uma agência de cobrança e no trabalho não faço Visão Computacional nem Aprendizagem Profunda. E de muitas maneiras, isso acontece porque os departamentos de RH do Google Brain e Deepmind filtram meu currículo, não me dando chance de demonstrar formação técnica. "

Entregaram o certificado, uma pausa. Um grupo de acadêmicos me puxa de lado. Acontece que este é um grupo de saúde com Deepmind. Eles ficaram tão impressionados que imediatamente quiseram falar comigo sobre a vaga de Engenheiro de Pesquisa em sua equipe. (Nós conversamos. Essa conversa durou 6 meses, passei no teste para casa, mas foi interrompida na tela técnica. 6 meses desde o início da comunicação para a tela técnica é muito tempo. A longa espera dá um gostinho de inutilidade. Engenheiro de pesquisa da Deepmind em Londres, no contexto do TrueAccord houve um forte avanço, mas no contexto da minha posição atual é um retrocesso. De uma distância de dois anos que se passaram desde então, é bom que isso não aconteceu.)

Conclusão

Na mesma época, recebi uma oferta da Lyft, que aceitei.
Com base nos resultados destas duas competições com o MICCAI, foram publicados os seguintes:

  1. Segmentação automática de instrumentos em cirurgia assistida por robô usando aprendizagem profunda
  2. Detecção e localização de angiodisplasia usando redes neurais convolucionais profundas
  3. Desafio de segmentação de instrumentos robóticos 2017

Ou seja, apesar da loucura da ideia, adicionar artigos incrementais e preprints por meio de concursos funciona bem. E nos anos seguintes tornamos tudo ainda pior.

Dos físicos à ciência de dados (dos motores da ciência ao plâncton de escritório). A terceira parte

Tenho trabalhado na Lyft nos últimos anos fazendo Visão Computacional/Aprendizado Profundo para carros que dirigem sozinhos. Ou seja, consegui o que queria. E tarefas, e uma empresa de alto status, e colegas fortes, e todas as outras vantagens.

Ao longo desses meses, tive comunicação tanto com grandes empresas Google, Facebook, Uber, LinkedIn, quanto com um mar de startups de diversos portes.

Doeu todos esses meses. O universo lhe diz algo não muito agradável todos os dias. Rejeição regular, cometer erros regularmente e tudo isso é temperado com um sentimento persistente de desesperança. Não há garantias de que você terá sucesso, mas há a sensação de que você é um tolo. É uma reminiscência de como tentei encontrar um emprego logo após a universidade.

Acho que muitos procuravam trabalho no vale e tudo era muito mais fácil para eles. O truque, na minha opinião, é este. Se você está procurando emprego em uma área que você entende, tem muita experiência e seu currículo diz o mesmo, não há problemas. Eu peguei e encontrei. Há muitas vagas.

Mas se você está procurando emprego em uma área que é nova para você, ou seja, quando não há conhecimento, não há conexões e seu currículo diz algo errado - neste momento tudo se torna extremamente interessante.

No momento, os recrutadores me escrevem regularmente e se oferecem para fazer a mesma coisa que estou fazendo agora, mas em uma empresa diferente. É realmente hora de mudar de emprego. Mas não adianta fazer o que já sou bom. Para que?

Mas para o que quero, novamente não tenho o conhecimento nem as linhas do meu currículo. Vamos ver como tudo isso termina. Se tudo correr bem, escreverei a próxima parte. 🙂

Fonte: habr.com

Adicionar um comentário