4 anos em Ciência de Dados no Schibsted Media Group

Os arquivos x


Em 2014, entrei para a pequena equipe do Schibsted Media Group como o sexto especialista em ciência de dados dessa empresa. Desde então, tenho trabalhado em muitos empreendimentos no campo da ciência de dados em uma organização que agora tem mais de 40 pessoas. Neste post, falarei sobre algumas das coisas que aprendi nos últimos quatro anos, primeiro como especialista e depois como gerente de ciência de dados.


Esta publicação segue o exemplo de Robert Chang e seu excelente artigo, " Fazendo ciência de dados no Twitter " , que achei muito valioso quando a li pela primeira vez em 2015. O objetivo da minha própria contribuição é compartilhar idéias igualmente úteis com especialistas e gerentes de ciência de dados de todo o mundo.


Dividi o post em duas partes:


  • Parte I: Ciência de Dados na Vida Real
  • Parte II: Gerenciando a equipe de ciência de dados

Na Parte I, concentrei-me no trabalho que os especialistas em Ciência de Dados realmente fazem, enquanto a Parte II discute como gerenciar a equipe de Ciência de Dados da maneira mais eficiente possível. Eu diria que ambas as partes são importantes para especialistas e gerentes.


Não vou gastar muito tempo descrevendo quem e quem é o especialista em ciência de dados e quem não é - há artigos suficientes sobre esse tópico em toda a Internet.


Brevemente sobre Schibsted: mídia e mercados em mais de 20 países ao redor do mundo. Eu trabalho principalmente em nossos negócios de mercados, onde milhões de pessoas compram e vendem mercadorias todos os dias. Se você quiser dar uma olhada em alguns exemplos reais do trabalho de ciência de dados na Schibsted, aqui está uma pequena seleção:



Com isso em mente, vamos mergulhar!


Parte I: Ciência de Dados na Vida Real


Começar como especialista em ciência de dados em uma nova empresa com grandes ambições é realmente incrível, mas também pode parecer assustador. O que as pessoas ao meu redor esperam? Qual o nível de habilidade que meus colegas terão? Como trabalho para prestar serviços à empresa? Em uma posição em torno da qual há tanto hype, às vezes é difícil não parecer um impostor .


O medo de ser um simplório geralmente leva um profissional de Ciência de Dados a se concentrar principalmente na complexidade. Isso nos leva à primeira conclusão.


1.1 Dificuldade aumenta valor, começa simples


Eles contrataram um especialista em ciência de dados, então esse problema certamente deve ser realmente complexo, certo?


Não seja tentado pela complexidade


Essa suposição frequentemente o enganará como especialista em ciência de dados. Primeiro de tudo, os problemas que você encontra nos negócios são muitas vezes resolvidos usando métodos bastante simples. Em segundo lugar, é importante lembrar que a complexidade aumenta o valor. É provável que um modelo complexo implique mais trabalho em sua implementação, maior risco de erros e mais dificuldades em explicá-lo aos clientes. Portanto, você deve sempre procurar primeiro a abordagem mais simples.
Mas como entender se a abordagem mais simples é suficiente?


1.2 Sempre tenha um modelo base


As estimativas da qualidade do seu modelo, provavelmente, não fazem sentido sozinhas, sem comparação com o modelo base. Comparação com precisão com seleção aleatória, na maioria dos casos, simplesmente não é suficiente.


Se você não desenhar uma linha de areia, nunca saberá ou o que é realmente suficiente


Em algum momento, criamos um modelo para prever a probabilidade de um usuário retornar ao nosso site - o modelo de retorno. Foram utilizados cerca de 15 atributos baseados no comportamento do usuário em nosso modelo, e alcançamos uma precisão de aproximadamente 0,8 ROC-AUC. Comparando com a precisão da previsão aleatória (0,5), ficamos bastante satisfeitos com este resultado. Mas quando jogamos tudo do modelo, exceto os dois sinais mais importantes: recente (o número de dias da última visita) e frequência (número de dias de visitas no passado), descobrimos que uma simples regressão logística nessas duas variáveis ​​nos deu 78% de ROC-AUC ! Em outras palavras, poderíamos obter mais de 97% do desempenho jogando fora mais de 85% dos atributos.


Já vi tantas vezes como os especialistas em ciência de dados mostram os resultados de experiências off-line em modelos complexos sem nenhum modelo básico simples para comparação. Quando você vê isso, sempre deve perguntar: podemos obter o mesmo resultado usando um modelo muito mais simples?


1.3 Use os dados que você possui


Uma vez almocei com um engenheiro de dados e outro especialista em ciência de dados. Os olhos do último se iluminaram quando ele falou sobre todas as coisas incríveis que ele poderia fazer "se ele tivesse dados sobre X, Y ou Z". Em algum momento da conversa, o engenheiro riu: "Você, especialista em ciência de dados, sempre fala sobre o que poderia fazer com dados que não possui. Que tal fazer algo com os dados que você possui? ”


Mais dados suculentos por lá!


Parecia rude, mas o engenheiro expressou uma verdade importante. Você nunca terá o conjunto de dados perfeito e sempre haverá dados que você poderá usar. Na maioria dos casos, você pode fazer algo com o que tem.


1.4 Assumir a responsabilidade pelos dados


Como mencionado acima, a qualidade e a integridade dos dados são quase sempre um problema. Mas, em vez de ficar sentado esperando que alguém apresente dados em uma bandeja de prata, você precisa falar e assumir a responsabilidade pelos dados necessários.


ETL através do vale


Não estou falando de propriedade formal no sentido de um modelo de gerenciamento de dados. Estou falando sobre expandir minha função e ajudar, sempre que possível, a obter os dados necessários.
Isso pode significar participar da criação de esquemas e formatos de coleta de dados. Isso pode significar examinar o código Javascript em execução na interface do aplicativo da web para garantir que os eventos sejam disparados quando necessário. Ou pode significar construir pipelines de dados sem esperar que os engenheiros de dados façam tudo por você.


1.5 Esqueça os dados


Obviamente, isso contradiz tudo o que eu disse acima, mas é muito importante não se concentrar muito nos dados que você possui.


Tabula rasa


Quando um novo problema aparecer, tente primeiro esquecer os dados existentes. Porque assim? Sim, porque seus dados existentes podem limitar o espaço de decisões e isso pode distraí-lo de encontrar a melhor abordagem. Você ficará preso em um local ideal, onde está tentando extrair a solução para qualquer problema no conjunto de dados que está disponível para você (use além do aprendizado). Como resultado, você nunca terá novos conjuntos de dados.


1.6 Desenvolver um entendimento detalhado da causalidade


Todos sabemos que a correlação não implica uma relação causal. O problema é que muitos especialistas em ciência de dados param nisso e têm medo de relacionar a causa ao efeito.


Uma abordagem covarde de causalidade


Por que isso é um problema? Porque os gerentes de produto, a equipe de marketing, o seu CEO ou com quem você trabalha lá não estão preocupados com a correlação. Eles se preocupam com um relacionamento causal.


O gerente de produto deseja ter certeza de que, quando decidir lançar esse novo recurso, ele provocará um aumento de 10% no envolvimento do produto. A equipe de marketing deseja saber que aumentar o número de cartas de 2 por semana para 4 não forçará as pessoas a cancelar a inscrição no boletim. E o CEO quer saber que investir em uma melhor segmentação levará a um aumento na receita de publicidade.


Bem, existe uma solução de compromisso? Acontece que existem dois deles.


Os experimentos online mais famosos. De fato, você executa testes aleatórios, entre eles os testes A / B mais populares. A idéia é simples: como escolhemos acidentalmente quem estará no grupo-alvo e quem estará no grupo controle, se encontrarmos uma diferença estatisticamente significativa entre os grupos, o "tratamento" que usamos será considerado o motivo. Sem entrar em raciocínio filosófico, na prática essa é uma suposição razoável.


Uma abordagem menos conhecida para a busca de relacionamentos causais é a modelagem causal. A idéia aqui é que você faça suposições sobre a estrutura causal do mundo e use dados observacionais (não experimentais) para verificar se essas suposições são consistentes com os dados ou para avaliar a força de várias relações de causa-efeito. Adam Kelleher escreveu uma grande série de artigos, " Causal Data Science " , que recomendo a leitura. Além disso, a Bíblia de causalidade é o livro Causalidade de Judea Pearl.


Na minha experiência, a maioria dos especialistas em ciência de dados tem uma vasta experiência na criação de modelos de aprendizado de máquina e sua avaliação offline. Muito menos pessoas têm experiência com avaliação e experimentação online. A explicação é simples: você pode baixar o conjunto de dados do Kaggle, treinar o modelo e avaliá-lo offline em minutos. Para avaliar esse modelo online, por outro lado, você precisa ter acesso ao mundo real. Mesmo se você trabalha em uma empresa de Internet com milhões de usuários, muitas vezes precisa superar muitas barreiras para expor seu modelo de aprendizado de máquina aos usuários.


Agora, embora poucos especialistas em ciência de dados tenham ampla experiência em avaliação on-line, muito poucos têm experiência em modelagem causal. Eu acho que há muitas boas razões. Uma das razões é que a maioria dos livros sobre causalidade é bastante teórica, entre eles existem poucas diretrizes práticas sobre como iniciar a modelagem causal no mundo real. Prevejo que nos próximos anos veremos diretrizes mais práticas para modelagem causal.


O desenvolvimento de um entendimento detalhado da causalidade permitirá fornecer recomendações práticas aos seus clientes e, ao mesmo tempo, apoiar sua integridade como especialista em Ciência de Dados.


Parte II: Gerenciando a equipe de ciência de dados


Schibsted, como muitas outras empresas, tem duas carreiras: como trabalhador independente e como líder. No contexto da ciência de dados, o primeiro é destinado a quem realmente deseja aumentar seus conhecimentos no campo da ciência de dados e contribuir com a empresa através de trabalho prático e liderança técnica. O caminho da liderança é para aqueles que são mais apaixonados pelo desenvolvimento de pessoas e gerenciamento de equipes.


Eu não tinha certeza de qual caminho era certo para mim, mas no final decidi tentar o caminho do líder. Não passou muito tempo quando percebi que esse era realmente o caminho certo para mim, mas é claro que tive muitos problemas (e ainda o faço!).
O primeiro desafio que você enfrentará é que existem muito poucos outros gerentes de ciência de dados no mundo. Se você pensou que especialistas experientes em ciência de dados são raros, os gerentes experientes de ciência de dados são muitas vezes menos. Assim, você é mais ou menos deixado para seus próprios dispositivos.


Mas é verdade que gerenciar uma equipe de ciência de dados é tão diferente de gerenciar outros tipos de equipes? Sim e não


Se você nunca dirigiu uma equipe antes, provavelmente poderá encontrar o material de leitura clássico para gerenciamento, como o High Output Management, de Andrew Grove. Além disso, o recurso proativo aos gerentes seniores (de outras disciplinas) para aconselhamento também é crucial.


No entanto, as equipes de ciência de dados têm várias diferenças importantes, então agora vamos nos concentrar em conclusões, especialmente aquelas relacionadas às equipes de ciência de dados.


2.1 A equipe de ciência de dados não é realmente uma equipe


Quando a maioria das pessoas pensa em equipes, pensa em algo assim:


Mes que un club


Quais são algumas características de um time de futebol como o FC Barcelona? Pelo menos três coisas:


  1. Objetivo comum
  2. Papéis diferentes na equipe, cada um com responsabilidades diferentes
  3. Independência em alcançar seu objetivo

Se você estiver gerenciando uma equipe composta exclusivamente por especialistas em ciência de dados, provavelmente nenhuma dessas características será atendida. Em vez disso, sua equipe terá:


  1. Múltiplas metas em mudança
  2. Especialistas, e eles são bons na mesma coisa: Data Science
  3. Outras equipes com as quais você pode trabalhar para impactar os usuários e as receitas

Uma analogia mais adequada do que um time de futebol para um time de especialistas em ciência de dados é:


Os arquivos x


A demanda pelos serviços de Mulder e Scully está mudando ao longo do tempo. Eles são atraídos quando sua experiência é necessária. E eles nunca resolverão o problema sem conversar com pessoas de fora do FBI.
Por que essa distinção é importante?


Como se você possui uma equipe de especialistas em ciência de dados e os gerencia como uma equipe "clássica", com um objetivo comum, várias funções e total autonomia, rapidamente terá uma equipe frustrada.


Vi equipes de Data Science gerenciadas como qualquer outro produto ou equipe de desenvolvimento, e a conseqüência inevitável disso é que os especialistas em Data Science estão começando a fazer qualquer coisa, menos Data Science. Em vez disso, eles acabam desenvolvendo, decompondo ou gerenciando o produto.


Portanto, os especialistas em ciência de dados são diferentes. Mas como você garante, então, que sua ciência de dados não viverá em uma torre de marfim?


2.2 Incorporar profissionais de ciência de dados em outras equipes


A mágica acontece quando você coloca especialistas em ciência de dados ao lado de gerentes de produto, programadores, pesquisadores de interface, profissionais de marketing e muito mais.


Simplesmente, a função objetivo que você deseja maximizar é a seguinte: interação frutífera entre especialistas em ciência de dados em sua equipe e pessoas em outras equipes.


Eu gosto de pensar sobre isso usando o conceito de canal amplo. Vamos ilustrar isso com um gerente de produto emparelhado com um especialista em ciência de dados.
Pior de tudo, quando não há canal entre eles:


Nenhum canal entre o especialista em ciência de dados e o gerente de produto


Isso significa que não há comunicação entre o DS e o PM. Em outras palavras, o DS não estará ciente de nenhum problema de produto que o PM esteja enfrentando, o que torna impossível analisar ou resolver esses problemas.


Um pouco melhor quando temos um canal estreito entre eles:


Um canal estreito entre um especialista em ciência de dados e um gerente de produto


Nesse caso, as informações chegam, mas geralmente são limitadas e geralmente assíncronas. As informações são obtidas por outras pessoas (por exemplo, outro gerente) ou por formulários de solicitação etc. Esse tipo de comunicação é comum quando se espera que os especialistas em ciência de dados atendam a muitos clientes diferentes. Mas isso pode ser frustrante, porque o contexto de negócios geralmente está ausente e isso pode levar a mal-entendidos e barulho estúpido.
A condição mais eficaz é quando temos um canal amplo:


Amplo canal entre especialista em ciência de dados e gerente de produto


No sentido mais literal, um amplo canal é quando um especialista em Ciência de Dados se senta ao lado de um gerente de produto. Isso, é claro, permite que eles se comuniquem com muito mais eficácia. Manter as pessoas fisicamente próximas nem sempre é conveniente ou até possível (nós da Schibsted estamos espalhados por 22 países diferentes!), Mas existem versões virtuais desse princípio: do Slack à programação de pares remotos e Hangouts.


Naturalmente, não será possível para cada gerente de produtos da empresa organizar um amplo canal com cada especialista em ciência de dados da sua equipe, o que não é escalável. Sua tarefa como gerente de ciência de dados é determinar quando organizar quais canais amplos. E então saia do caminho!


Um dos casos em Schibsted, quando estávamos trabalhando ativamente na criação de um canal amplo, foi o desenvolvimento de nossa ferramenta de precificação de carros, que ajuda a definir o preço ao vender seu carro ( experimente no nosso mercado finlandês na Noruega ). Inicialmente, tínhamos um canal bastante restrito, como este: "Tente criar o modelo de precificação mais preciso possível". Achamos que isso era bastante ineficiente, pois havia muitas perguntas sobre produtos que não poderíamos responder sem experimentar com os usuários nos estágios iniciais.


No entanto, depois de algum tempo, tudo terminou com o fato de integrarmos um de nossos especialistas em ciência de dados à equipe do produto, e obtivemos os resultados muito melhores. Você pode ler sobre alguns de nossos primeiros trabalhos sobre uma ferramenta de classificação de carros neste post .


Um exemplo de quando tivemos um amplo canal desde o início é um modelo de previsão para novas assinaturas digitais . O modelo ajudou a aumentar as conversões de vendas em 540% e foi recompensado com o Prêmio INMA de Melhor Uso de Análise de Dados em 2017.


2.3 Assuma o controle da produtividade da análise


Andrew Grove declara no livro High Output Management que você, como gerente, é o proprietário dos resultados de sua equipe. Isso significa que o gerente de ciência de dados deve investir na criação do melhor ambiente possível para que seus especialistas em ciência de dados sejam produtivos.


Desempenho de beleza


Isso é, de muitas maneiras, contrário ao modelo de incorporação descrito acima. Se você incorporar tudo o tempo todo, há uma alta probabilidade de que, como resultado, você obtenha data warehouses e infraestrutura não ideal, duplicados várias vezes.


Alguns gerentes de desenvolvimento afirmam que, quando você se tornar um líder, pare completamente de codificar. , Data Science 10% : , . . Data Science.


« 15 , , , , ad-hoc ?! , ».


« ― ?»


.


, . , , , Data Science.


, Lean Management, Data Science. XKCD :


Vale a pena o tempo?


, Data Science . !


2.4 -> ->


«» , Data Science, . Data Science . , , , .


Game of Thrones


:


  • - . 98% , , (… , ).


  • - , , - , .


  • , Data Science, , , , .


  • , , .



, , , , . , .


, ― . , . . Slack . ( !) , .


. . , !


, ? , , . , , , Data Science.


. , , , , . .


2.5. ,


Data Science. , . , , - , ?


Ferrari, .


Grande uso deste mecanismo


, .


Você seria mais adequado Skoda


Ferrari , .


Ferrari em seu habitat natural


Data Science ― , , . , , , , (ROI).


Data Science. - , .
, , . , , , , ― , . , , .


, Data Science . , . , , , .


2.6. OKR


, Data Science. Objectives and Key Results (OKR). , OKR ― , . , . OKR , .


OKR , , , , .


, OKR , . , : , .


, , OKR.
-: OKR. OKR , , , . « », . , . , .


LSTM ? , NLP-, , LSTM . ? . ? , .
OKR, .


, OKR . , .


-: OKR . , . , :


Great UX


, , 10 , . , , ― . . OKR .


, , OKRs ― .


2.7.


E no final, o ponto mais importante.


Quando o Google estudou suas equipes por dois anos para descobrir o que faz com que algumas equipes funcionem bem e outras com menos, houve uma coisa que se destacou. Isso é segurança psicológica .


Em resumo, a segurança psicológica pode ser resumida como a crença de que você não será punido quando cometer um erro.


Agora pense sobre isso no contexto da introdução da Parte I. A síndrome do impostor é muito grande na Data Science. Do que você tem medo quando se sente um impostor? Cometer erros.


Ao longo dos anos, descobri que pessoas de várias áreas vêm à Data Science. Em nossa equipe da Schibsted, temos a sorte de termos pessoas fantásticas com uma ampla gama de experiências. Pessoas com experiência em finanças, pesquisa, educação, consultoria, desenvolvimento de software, etc.


Seria tolice supor que todas essas pessoas saibam a mesma coisa. Pelo contrário, o valor de uma experiência tão diversa reside no fato de que todos trazem algo novo para a equipe.
A idéia de um Data Science “unicórnio” é um veneno para a segurança psicológica.


Existe uma solução rápida para aumentar a segurança psicológica? Eu acho que não. Mas acredito que ele deve estar no topo da sua lista de prioridades como gerente - especialmente quando você cria uma nova equipe ou quando novos membros se juntam a você. Embora não exista uma solução rápida, existem medidas claras que você pode tomar para aumentar a segurança psicológica. Aqui estão alguns dos que funcionaram bem para nós:


  • Crie uma cultura de feedback . Deixe claro que os membros de sua equipe devem comunicar "vantagens e o que pode ser melhorado" entre si após apresentações, sprints etc. etc. A propósito, você como gerente também deve fazer isso! E ensine as pessoas a dar feedback construtivo corretamente - isso não é algo natural para todos.
  • Aumente o tempo frente a frente . Programação em pares, resolução de problemas no quadro ... Isso é especialmente importante para equipes remotas. Este bilhete vale quase certamente o dinheiro.
  • Crie pares ou equipes em vez de trabalho individual. Você pode acabar fazendo menos coisas na equipe, mas fará melhor. E aqueles que trabalham juntos construirão confiança um no outro.
  • Incentive discussões de reunião abertas e honestas . Trabalhe ativamente para equilibrar o tempo no ar de todos os participantes - algumas pessoas podem precisar ser convidadas a falar.
  • Lembre-se das diferenças culturais . Você pode vir de uma cultura igualitária, explícita e direta . Há uma alta probabilidade de que você perca os sinais de um membro da equipe originário de uma cultura hierárquica, implícita e indireta.
  • Realize experimentos em grupo para melhoria contínua. Envolver toda a equipe no problema "Como você gerencia uma equipe com sucesso" oferece a todos um senso de responsabilidade pelo bem-estar da equipe.
  • Meça a felicidade e a segurança psicológica. Encontre uma maneira fácil de fazer perguntas regularmente sobre felicidade e segurança psicológica. Se você não possui um sistema de RH moderno para essas finalidades, comece com Typeform e itere até que você e a equipe o considerem útil. Compartilhe classificações ou descobertas médias (anônimas) com a equipe e inclua-as em como melhorar a situação.

...
Parabéns, você chegou ao fim! Espero que este post tenha sido um pouco útil para você como especialista ou gerente de ciência de dados.


Passamos por muitas coisas, aqui está uma pequena lista:
Parte I: Ciência de Dados na Vida Real
1.1 Complexidade aumenta valor, comece com simples
1.2 Sempre tenha um modelo base
1.3 Use os dados que você possui
1.4 Assuma o controle dos dados
1.5 Esqueça os dados
1.6 Desenvolver um entendimento detalhado da causalidade
Parte II: Gerenciando a equipe de ciência de dados
2.1 A equipe de ciência de dados não é realmente uma equipe
2.2 Incorporar profissionais de ciência de dados em outras equipes
2.3 Assuma o controle da produtividade da análise
2.4 Dados -> Poder -> Política
2.5 Use seus recursos, lute por um alto retorno do investimento
2.6 OKR para foco e alinhamento
2.7 Primeiro de tudo, segurança psicológica
...
Obrigado pela leitura! Se isso foi útil, considere compartilhar esta postagem com outras pessoas. Espero um dia ver seus próprios pensamentos sobre trabalhar como especialista ou gerente de ciência de dados

Source: https://habr.com/ru/post/pt417497/


All Articles