Cada vez mais estou ouvindo startups falarem sobre “dados sintéticos” (synthetic data). Vejo startups novas começarem a usá-lo e vi empresas inteiras se formarem em torno desses dados. Afinal, qual a importância desta nova tech no mundo IA?
Depois de muito pesquisar e entrevistar quem utilizou posso dizer que, no geral, são dados criados por uma máquina. Fim.
Ok, um pouco mais complexo do que isto…
Imagine que você deseja treinar um modelo de visão de máquina para identificar um Tesla. Agora imagine que você só tem 10 fotos de Teslas para treinar, então você precisa de um conjunto de dados maior para treinar um modelo melhor e completo. Uma maneira de obter um conjunto maior de dados é obter milhares de outras imagens de Tesla. Ou então, você pode considerar fazer uma manipulação simples das imagens para criar novas imagens.
Imagine que você não tenha uma foto de um Tesla vermelho. Você pode fazer ‘um’ photoshop de uma de suas outras fotos que tem para deixar um dos Teslas vermelho e, adicionar ao seu conjunto de dados para que você modele com um desempenho melhor na classificação do Tesla. A maioria das pessoas usa dados sintéticos para testar sob diferentes condições. Eles capturam uma imagem e alteram a iluminação, as sombras etc. para simular diferentes condições, para que o modelo de aprendizado de máquina aprenda como é um objeto de diferentes ângulos.
Dentro deste cenário, então, o uso de dados sintéticos é a de construir um conjunto de dados para veículos autônomos. Imagina que poderemos criar uma cidade inteira gerada por máquina, dirigir por essa cidade obedecendo às leis de trânsito e inserir esses dados no modelo de veículo autônomo. Isso permite simular cenários, momentos, e demais que podem ser mais difíceis de capturar na vida real (por exemplo, um carro com um sinal de parada).
Agora, dados sintéticos nem sempre são bons para um modelo. Em aplicativos de PNL, uma das críticas é que os conjuntos de dados sintéticos gerados para treinamento geralmente são muito simples (porque nossas técnicas de geração de linguagem ainda são fracas em comparação com outros tipos de IA). Portanto, o treinamento de um modelo em todos esses dados de linguagem não captura as nuances e os caprichos da linguagem humana real e confusa. Mas em outras situações, como visão de máquina, dados sintéticos tendem a funcionar muito bem.
Já do ponto de vista comercial, existem algumas maneiras de pensar sobre dados sintéticos. Você pode usá-lo para gerar novas variações de cenários válidas para o treinamento ou também para rotular dados para alimentar IAs que os humanos não precisam mais rotular.
Mas, você deve criar e utilizar dados sintéticos?
Meu pensamento atual é que os dados sintéticos serão feitos principalmente por algumas plataformas de terceiros em um mercado que se transforma em um oligopólio. Acredito que a maneira como a depuração de software funciona hoje:
Relatar um bug -> codificar uma correção -> testar em um ambiente de teste -> implantar na produção e verificar, será a maneira como um fluxo de trabalho de dados sintéticos evolui.
Ficará um pouco desta maneira no futuro: Relatar uma falha do modelo (por exemplo, o modelo ainda não detecta bem as coisas à noite) -> Usar uma plataforma de dados sintética para gerar novos itens para um conjunto de dados que aumentam os dados para esse problema (como são os cenários e tudo mais à noite) -> Reconstruir modelo -> Modelo de teste -> Implantar novo modelo na produção. Um dia será tão fácil quanto pressionar um botão de INICIAR.
Isso significa que, se tudo ocorrer similar na maneira citada acima, as oportunidades de negócios de dados sintéticos terão dois caminhos e necessidades. O primeiro são dados sintéticos para objetos comuns, onde há muitos dados. Essas plataformas podem vencer por serem as mais fáceis de usar, conectando-se ao maior fluxo de trabalho e possuindo as opções mais comuns para geração de dados. O segundo é o caso em que a geração de dados sintéticos é difícil devido à natureza do espaço do problema e à falta de conjuntos de dados existentes para começar. Isso levará a provedores especializados que podem dominar domínios específicos.
Se você estiver trabalhando em IA, em breve precisará de uma estratégia de dados sintéticos. E se você é uma empresa no espaço, compartilhe sua experiência abaixo.