Accord.NET: framework para Machine Learning compatível com Unity
Recentemente voltei a estudar Inteligência Artificial (I.A.), mais específicamente Machine Learning, e acabei encontrando este framework chamado Accord.NET que por ser desenvolvido com .NET é compatível com a game engine Unity.
Eu estudei I.A. na minha graduação e na pós-graduação, mas em ambos não saí muito da teoria. Até implementei algo para trabalhos nessas matérias, mas lembro que foram bem básicos. Um tempo depois eu fiz um curso online chamado Introdução à Inteligência Artificial, em uma plataforma que depois se tornou o Udacity. O curso ainda existe lá (em Inglês), e eu recomendo bastante pra quem quer rever o básico de I.A. ou ter um primeiro contato. Quando fiz ele tinha duração de 2 meses se não me engano, hoje ele dura 4 meses e deve ser mais completo.
Mas, mesmo depois deste curso, nunca parei para implementar algo relevante. Nas últimas semanas voltei a me interessar pelo assunto que comecei a pesquisar frameworks para implementar soluções envolvendo I.A. e encontrei este framework chamado Accord.NET. Por ser compatível com a Unity me animei a tentar fazer um jogo com alguma mecânica simples que envolva Machine Learning.
Por enquanto estou apenas estudando e entendendo como utilizar o Accord.NET. No seu repositório no GitHub existem exemplos para Unity, mas sem saber o que eles fazem ou usam do framework não tem muito sentido ainda pra mim. Para integração com a Unity existe este guia, que é necessário mesmo para rodar os exemplos que estão no projeto.
No site do Accord.NET existe bastante informação interessante, como a página de exemplos que tem muita coisa legal feita com o framework, e a página de Getting Started que mostra o básico do framework e possui links para conteúdos mais avançados. Existem também mais de 100 artigos acadêmicos publicados que utilizaram o Accord.NET.
Além de Machine Learning este framework também possui métodos para Estatística, Visão Computacional e Processamento de Imagem, e pode ser utilizado com Windows, Xamarin, Unity, aplicações desktop, Linux e mobile. Eu estou começando a me familiarizar com o Accord.NET, e assim que possível quero fazer um post ou até um vídeo monstrando como fazer algum exemplo na Unity.