Lucas Pinto
Lucas Pinto15/10/2025 12:47
Compartilhe

Passo a passo: Usando o Azure AutoML para Criar um Modelo de Regressão Linear

    Este guia mostra como utilizar o Azure Machine Learning (AutoML) para criar um modelo de regressão linear com uma base de dados no formato .csv e salvar os resultados no repositório GitHub.

    1. Prérequisitos

    • Conta na Azure
    • Workspace do Azure Machine Learning
    • Python instalado (recomenda-se ambiente virtual)
    • Extensão Azure Machine Learning instalada no VSCode (opcional)
    • Base de dados .csv no seu repositório

    2. Suba a base de dados para o Azure

    • Faça login no portal Azure: https://portal.azure.com/
    • Acesse o Workspace do Azure Machine Learning
    • Vá em "Datasets" e clique em "Create dataset"
    • Faça upload do seu arquivo .csv

    3. Crie uma Experiência de AutoML

    • No Azure ML Studio, clique em Automated ML.
    • Clique em New automated ML run.
    • Selecione o seu dataset .csv.
    • Escolha o tipo de tarefa: Regressão
    • Configure a coluna alvo (coluna com os dados que serão usados como input pelo modelo)
    • Configure a coluna preditora (coluna com os dados que serão usados como target do modelo)
    • Selecione os parâmetros padrão e clique em Run.

    4. Aguarde a execução e escolha o melhor modelo

    O Azure AutoML irá testar diferentes algoritmos e parâmetros. Ao final, ele irá mostrar o modelo com melhor performance, por exemplo, Linear Regression, Decision Tree etc.

    5. Baixe os resultados

    • Após o término da execução, vá em Best model.
    • Clique em Download model para baixar o arquivo do modelo (.pkl ou .onnx).
    • Baixe também o relatório de métricas (arquivo .csv ou .json).

    6. Salve os resultados no GitHub

    • Crie uma pasta 'outputs/' no seu repositório e salve nela o arquivo do modelo.
    • Salve o relatório de métricas na pasta 'outputs/' (por exemplo, outputs/metricas_automl.csv).
    • Faça o commit e push dos arquivos para o GitHub.

    Exemplo de comandos para salvar os arquivos localmente e subir para o repositório:

    bash
    # Clone o repositório se necessário
    git clone https://github.com/nome_usuario/modelo_regressao.git
    cd modelo_regressao
    
    # Crie a pasta outputs se não existir
    mkdir -p outputs
    
    # Copie os arquivos do modelo e das métricas para outputs/
    cp /caminho/do/modelo/model.pkl outputs/
    cp /caminho/do/relatorio/metricas.csv outputs/
    
    # Adicione e faça commit dos arquivos
    git add outputs/model.pkl outputs/metricas.csv
    git commit -m "Adiciona modelo e métricas resultantes do AutoML da Azure"
    git push
    

    7. Divulgue os resultados

    Por fim, atualize o README.md para incluir os resultados obtidos com o seu modelo. Dessa forma, poderá mostrar o que alcançou de forma resumida, incentivando a curiosidade das pessoas a explorarem o repositório com o seu modelo.

    Compartilhe também o link do repositório com os arquivos salvos nas redes sociais e, se possível, escreve um pequeno artigo para publicar no LinkedIn e mostrar o que aprendeu ou exercitou durante a criação do modelo.

    Compartilhe
    Comentários (2)
    Lucas Pinto
    Lucas Pinto - 21/10/2025 18:28

    Boa pergunta, obrigado.

    A ascensão da inteligência artificial generativa (IAG) no desenvolvimento de software, como ChatGPT e Gemini, apresenta um paradoxo: enquanto acelera a produtividade e democratiza o acesso a capacidades complexas, como a criação de modelos de regressão linear via AutoML, também introduz traz questões de confiança e segurança que transcendem a mera funcionalidade do código.

    O maior desafio para um desenvolvedor reside na necessidade de equilibrar a eficiência com a garantia de que o código produzido seja robusto, seguro e compreensível. Em termos de confiança, a dependência excessiva pode levar a uma diminuição da compreensão profunda do código por parte do desenvolvedor. Modelos de IAG podem gerar um código que, embora funcional, carece de otimização, clareza ou aderência a padrões de projeto estabelecidos. Além disso, a natureza probabilística da IAG significa que o código gerado pode conter erros sutis ou lógicas inesperadas que são difíceis de depurar e quebram a confiança na sua fiabilidade. É fundamental, portanto, a validação humana, indispensável para assegurar a qualidade e a intenção do código.

    Quanto à segurança, o desafio é ainda maior. A IAG pode inadvertidamente introduzir vulnerabilidades de segurança no código. Isso ocorre porque os modelos são treinados em vastos conjuntos de dados que podem incluir código com falhas de segurança conhecidas ou padrões inseguros. Mesmo que o código pareça funcional, ele pode conter bugs ou backdoors que expõem o sistema a riscos. A ausência de uma análise de segurança rigorosa e de testes automatizados pode transformar a IA de um acelerador em uma fonte de passivos de segurança, exigindo que os desenvolvedores não apenas verifiquem a funcionalidade, mas também auditem proativamente o código gerado em busca de potenciais brechas.

    Acredito que o desafio central é desenvolvermos uma mentalidade de ceticismo produtivo. Os desenvolvedores devem tratar o código gerado pela IA como um ponto de partida, e não como uma solução final.

    DIO Community
    DIO Community - 15/10/2025 14:13

    Excelente, Lucas! Que artigo incrível e super completo sobre Azure AutoML! É fascinante ver como você aborda o Machine Learning de forma prática e acessível, mostrando que o AutoML é a ferramenta que democratiza a criação de modelos de regressão linear.

    Você demonstrou que o Azure AutoML (que usa o Gemini 1.5 Pro ou GPT-4 para o raciocínio) é o motor da produtividade que: Testa diferentes algoritmos (Linear Regression, Decision Tree), Mostra o melhor modelo e permite o download dos resultados (modelo e métricas).

    Qual você diria que é o maior desafio para um desenvolvedor ao utilizar uma ferramenta de IA generativa (como o ChatGPT ou o Gemini) em seu workflow, em termos de confiança e de segurança (já que a IA pode gerar código com bugs ou vulnerabilidades), em vez de apenas focar em fazer o software funcionar?