Mestrado em Ciência da Computação, na área de Machine Learning, que tal tentar?

Luís Gonçalves
luisfredgs
Published in
14 min readAug 20, 2018

Nesse post eu conto um pouco sobre os motivos que me levaram a cursar um mestrado acadêmico em Machine Learning, como tem sido minha experiência no curso e, além disso, ofereço alguns conselhos para quem está prestes a tomar a mesma decisão. A ideia seria compartilhar parte dessa minha experiência, com bastante sinceridade, na intenção de, talvez, te inspirar de alguma forma caso você se identifique com o conteúdo.

Os tópicos abordados são esses:

1. Mestrado X Cursos online
2. Voltar à universidade?
3. Mestrado profissional X Mestrado acadêmico
4. Vida de pesquisador, no Brasil, não é fácil
5. Participando do processo seletivo
6. Alguns conselhos para você que pretende entrar no mundo da pesquisa científica (Universidade)

Recentemente, eu comecei a cursar um mestrado acadêmico em Ciência da Computação, com ênfase em inteligência computacional. Finalmente consegui alcançar uma das metas que havia traçado há algum tempo, que era trabalhar com pesquisa acadêmica dentro dos temas aprendizado de máquina e mineração de dados. Decidi cursar na Universidade Federal de Pernambuco — UFPE.

De início, deixa eu te contar uma pequena história. A pesquisa e a docência sempre me interessaram em grande medida. Honestamente, eu gosto mesmo é de estudar e de compartilhar conhecimento! Sou um sujeito curioso, gosto de me aprofundar em diferentes temas envolvendo ciência e tecnologia. Sempre senti que havia nascido pra esse mundo. Apesar disso, minhas responsabilidades como chefe de família me fizeram muito cedo adiar esse projeto por um tempo não determinado, já que havia outras prioridades a serem atendidas com bastante urgência.

Acontece que os anos vão passando, a gente segue fazendo várias concessões que nos distanciam progressivamente dos nossos sonhos, até que muitos deixam a ideia de lado, geralmente ficando para filhos e netos. Analisando aquela situação na qual eu me encontrava, eu penso que desistir teria sido algo até perdoável. Aliás, aquela já era mesmo uma boa oportunidade para abandonar a missão. Todavia, vamos ser muito francos aqui a respeito de algo que precisa ser considerado: Há projetos que não devem ser adiados por muito tempo [ou abandonados] e sonhos são um exemplo. Adiar sonhos não é saudável.

Num certo dia, decidi que já estava na hora de me mexer. Chamei minha esposa e minha filha [então com 8 anos de idade] pra uma conversa e falei “o papai vai fazer um mestrado e algumas coisas vão mudar por aqui, porque alguns sacrifícios precisarão ser feitos”. Dali em diante, eu tinha um novo e importante compromisso.

Ao mesmo tempo, eu estava cheio de dúvidas. Como me preparar devidamente, por onde começar? Pelo menos uma das dúvidas eu já havia resolvido, que era sobre a escolha da universidade pra onde eu iria. Para todo o restante, eu tive que correr atrás.

Isto posto, resolvi me deslocar do Ceará para o estado de Pernambuco, onde fica uma das melhores universidades federais do Nordeste e onde tem uma turma trabalhando forte com aprendizagem de máquina. Já adianto que essa foi uma das melhores escolhas que fiz. Me sinto grato por ter trilhado o caminho certo, e por ter me mantido firme com o meu objetivo, mesmo rodeado por tantas dúvidas, incertezas, receios e a angústia por precisar me afastar da minha família por um tempo.

Em particular, o curso de Ciência da Computação da UFPE possui um programa acadêmico de pós-graduação avaliado com nível 7 (em uma escala que vai de 1 até 7) pela Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES). Por tal motivo, a UFPE tornou-se uma instituição referência em ensino e inovação no país.

Bem antes de finalmente decidir ir para uma universidade federal fazer pesquisa, eu já havia pensado em outras alternativas. Por exemplo, fazer algum curso on-line nessas empresas que vendem cursos de ciência de dados e machine learning. Eu poderia ter me contentado com um curso online de machine learning na Udacity? Teria sido a melhor escolha?

Mestrado X Cursos online

Eu poderia ter investido em um curso Udacity ou Coursera, mas nenhum deles me daria a chance de estudar o tema de uma forma realmente aprofundada. Mesmo assim, uma coisa bem legal nesses cursos de curta duração voltados para a indústria é que você aprende por meio de projetos práticos, dentro de contextos específicos.

Porém, é sempre bom lembrar que os organizadores desses programas resumem a grade do curso de forma que ele possa ser ministrado dentro de poucos meses. Costumo ver isso com reservas, pois acredito que não se forma um bom engenheiro, cientista ou um outro profissional de alto nível com cursos de curta duração. Por tal motivo, a universidade ainda tem um papel importante a desempenhar nessa questão.

Há, ainda, aqueles cursos que são pré-requisitos e você precisa completá-los antes. Deste modo, você acaba tendo que comprar dois ou três cursos antes de iniciar aquele que realmente deseja. Para confirmar o que estou tentando dizer, basta que você veja o exemplo do curso Nanodegree Engenheiro de Machine Learning, da empresa Udacity.

Então, você aprende com projetos reais, investindo muito dinheiro (às vezes mais do que você está disposto a investir) e com uma grade resumida, a menos que esteja disposto a investir mais para cursar os módulos complementares. Pode valer muito a pena, dependendo de qual for o seu objetivo final. No meu caso, entretanto, isto estaria completamente fora de cogitação.

No caminho que optei por seguir, eu teria dois anos para completar o curso de mestrado acadêmico em ciência da computação, o que envolve cursar algumas disciplinas específicas durante o primeiro ano, além de publicar artigos, e desenvolver o projeto final, que corresponde à dissertação, no ano seguinte. Em suma, é normalmente assim: você cursa todas as disciplinas no primeiro ano e a dissertação é desenvolvida no último ano do curso.

As disciplinas têm o objetivo de imergir o aluno em vários tópicos de interesse dentro da área escolhida por ele, o que acaba sendo a oportunidade de se aprofundar no tema que será tomado como base para desenvolver a pesquisa. É comum algumas disciplinas serem acompanhadas pelo desenvolvimento de algum projeto, que é avaliado, e a nota dele ajuda a compor a nota final da disciplina, junto com uma prova final. Então, você absorve o conteúdo das disciplinas ao longo de cada semestre e aplica o conhecimento no desenvolvimento de projetos práticos. Isso aconteceu comigo em quase todas as disciplinas que cursei no primeiro ano do mestrado, e foi muito legal.

Todo o aprendizado adquirido ao longo das disciplinas é utilizado para desenvolver o projeto da sua dissertação de mestrado. Se você aproveitar bem o curso e seu projeto for interessante, poderá render um artigo com grandes chances de ser publicado e aceito em conferências importantes na área. Algumas dissertações podem dá origem a vários artigos. Isso te dará notoriedade no meio acadêmico, além de render muitos outros frutos.

Voltar à universidade?

Por bastante tempo eu fiquei pensando assim:

Será que vale a pena investir tempo e esforço num mestrado acadêmico? Seria mesmo interessante voltar à universidade neste momento?

Eu saí da graduação em 2013 e mergulhei de vez no mercado, onde atuei por um bom tempo como desenvolvedor, tendo contato diário com várias tecnologias. Hoje eu sei bem que precisava desta experiência.

Gostava do meu trabalho só até certo ponto (o ponto em que era dessa forma que eu pagava as minhas contas). Todos os dias, eu sentia o desejo de virar o leme e mudar de direção. Além disso, em grande parte desse tempo eu fazia as coisas quase que mecanicamente, pois raramente havia um grande desafio e tudo era muito repetitivo. Eu queria usar ciência no meu trabalho e resolver problemas desafiadores.

Em 2015 eu tive meu primeiro contato com o machine learning. Ao acompanhar as tendências recentes em sites de tecnologia e ciência que costumo seguir, praticamente todos os dias eu via algo novo surgir sobre o assunto. Não demorou muito tempo, eu já estava “bisbilhotando” os artigos científicos sobre inteligência computacional. Foi nessa época em que começaram a ficar famosos os cursos das plataformas Coursera e Udacity. Pensei em fazer um curso numa dessas plataformas, mas logo me "assustei" com os valores. Eu sabia que deveria abraçar aquilo com força e o momento era aquele. No fim das contas, achei que seria melhor estudar por livros e artigos científicos. Portanto, fiz dos livros e artigos científicos a minha principal fonte de estudos. Olha, foi mais uma decisão acertada.

O curso de engenharia me deu um certo traquejo matemático, de maneira que eu não tinha muita dificuldade para ler e interpretar os papers publicados nas conferências e periódicos de machine learning. Ainda que o salto que eu estivesse fazendo [Engenharia Mecânica — Ciência da Computação] fosse relativamente grande, havia muita coisa familiar ali.

A experiência com programação (principalmente na linguagem Python) também me ajudou a reproduzir os resultados dos papers, fazer modificações e tentar abordagens diferentes. Eu lia os artigos, tentava entendê-los, e depois começava a luta para tentar reproduzir os resultados. Eu cometia erros e aprendia com eles. Também comecei a seguir grandes autores no Twitter, como Yann LeCun, Sutskever, Goodfellow, etc. Enfim, passei a acompanhar o trabalho dessa turma toda.

Esse contato mais frequente que passei a ter com materiais acadêmicos me fez relembrar do gosto que sempre tive pela pesquisa, e eu já havia sido bolsista de iniciação científica nos tempos de graduação. Assim, de um modo natural, fiquei tentado a investir tempo em um curso de pós-graduação na área, para me especializar e me aprofundar no assunto. Eu queria cursar um mestrado em machine learning.

Mestrado profissional X Mestrado acadêmico

O mestrado acadêmico prepara o estudante para uma atuação na pesquisa e na docência em áreas específicas, onde ele deverá continuar sua carreira com um doutorado. A intenção, de um modo geral, é ampliar o conhecimento sobre um tema de interesse acadêmico e estimular a reflexão teórica. Isto abre espaço para desenvolver, explorar e aplicar muitas ideias interessantes, na indústria e na sociedade.

Há, ainda, o mestrado profissional. Este tem como diferença o foco em um profissional de alto nível, mais voltado para atuação no mercado, embora também possa abrir caminho para a docência. Assim, este modelo de pós-graduação procura um alinhamento entre universidade e mercado. É útil, neste caso, que o aluno não se submeta ao mestrado profissional logo que sair da graduação, pois é recomendado adquirir alguma experiência na sua área de interesse.

Logo ficou claro que o meu objetivo me levaria a um mestrado acadêmico.

Vida de pesquisador, no Brasil, não é fácil

Estou ciente de que nunca foi fácil ser pesquisador em um país cujo governo, por tradição, desestimula quase todo tipo de desenvolvimento científico e tecnológico. No Brasil, a ciência não parece ser uma prioridade. Justo numa época na qual a riqueza das nações é medida pela sua capacidade de produção de conhecimento científico e o consequente desenvolvimento tecnológico que se dá a partir disso.

Iniciativa Privada

Por outro lado, há o fato de que muitos líderes no mercado de tecnologia, tais como IBM, Google, Microsoft, Apple e Facebook mantêm centros de pesquisa financiados com seu capital, onde costumam fomentar projetos de P&D completamente focados em suas áreas de mercado específicas. Neste caso, as chances de um projeto de pesquisa se tornar praticável e ver a luz do dia se potencializam.

A necessidade de buscar soluções mais imediatas para problemas enfrentados diariamente por grandes empresas orienta a pesquisa desde o início, onde você tem todo o apoio de que precisa, seja na forma de materiais, equipamentos, laboratórios, etc. A grande lição aqui é que, onde há dinheiro as coisas andam mais rápido, os resultados acontecem mais rápido.

Se compararmos com a academia, onde é predominante a dependência de verbas do governo (às vezes bem limitadas) e o pesquisador precisa torcer para que os financiamentos não sejam cortados pelos órgãos de fomento (estamos vendo isso acontecer agora), uma grande empresa privada pode ser o lugar dos sonhos para qualquer pesquisador.

Nem tudo é tão perfeito, é claro, visto que há também "aquela pressão" para a chegada dos resultados promissores, sob o risco de a pesquisa ser cancelada. Com grandes poderes…..

Além disso, não se pode esquecer do fato de que estas empresas também financiam centros de pesquisa e inovação dentro de muitas universidades federais, sendo que a Universidade Federal de Pernambuco é um exemplo disso (Apple, Samsung e Lenovo são algumas que possuem convênio com a instituição, tendo salas próprias e laboratórios de pesquisa em andares específicos).

Participando do processo seletivo

Tudo isso pesou muito na minha decisão e, como já estava com a mão na massa, decidi levar a ideia adiante e tentar uma vaga na área de Machine Learning (a única que me interessava).

Entre outras coisas, eu também considerei o seguinte:

  • O mestrado abre caminho para a docência e para o doutorado, coisa que sempre me atraiu;
  • Aumenta as chances de ir para uma empresa grande, que investe em P&D, como IBM, Google, Microsoft;
  • Confere um diploma reconhecido pelo MEC, o que pode trazer muitas vantagens, principalmente no longo prazo. A Udacity é uma empresa, e se ela deixa de existir de uma hora pra outra, o certificado que você recebeu dela vai continuar tendo o mesmo valor? Não se sabe ao certo.

Depois de um longo período fazendo o levantamento de bibliografia, tomando notas e absorvendo o conteúdo necessário, comecei a elaborar um pré-projeto para submetê-lo durante o processo seletivo, que veio cerca de 8 meses depois.

Eu só teria que tomar uma decisão importante, que seria largar o emprego para poder voltar à universidade e me dedicar ao curso da forma como eu desejava — decisão difícil para um pai de família, mas tinha a possibilidade de bolsa e eu decidi que, talvez, valesse a pena arriscar.

Enfim, pedi as contas, dei tchau e tomei meu rumo com uma satisfação que poucas vezes senti na vida. Você deve tá pensando algo como “esse cara é doido!”. Afinal, estamos falando de alguém que optou por largar o emprego com filho pequeno dentro de casa tendo necessidades imediatas para serem atendidas, para perseguir uma coisa de longo prazo. Bem, uma coisa que me deu bastante tração pra mudar a rota foi justamente o foco na recompensa de longo prazo. Não é fácil, mas vale a pena. Olhando em retrospecto, mais de dois anos depois, vejo que aquela foi uma das melhores decisões que já tomei na vida.

Alguns conselhos para você que pretende entrar no mundo da pesquisa científica

Antes de submeter um projeto à avaliação

Para entrar no mestrado/doutorado, você precisa escolher uma área de pesquisa e conhecê-la razoavelmente bem. Ao longo do curso, você vai desenvolver um projeto de pesquisa dentro desta área, por um período de dois anos (se for doutorado, 4 anos), que vai atacar um problema específico. Assim sendo, a comissão responsável pelo processo de seleção precisa saber se você conhece a área e tem o devido domínio do tema que pretende tratar, se você conhece o problema que vai tentar resolver ao longo do curso. Esse projeto é seu, é você quem vai desenvolvê-lo, ele é de sua responsabilidade.

Por esse motivo, uma das principais exigências do centro acadêmico onde fiz minha inscrição, o Cin-UFPE, foi a inclusão de um pré-projeto de pesquisa entre os documentos necessários para participar do processo seletivo.

Então, primeiro você precisará encontrar um problema dentro da sua área de pesquisa, estudar esse problema e propor uma solução. O seu pré-projeto de mestrado é um documento (uma proposta) onde você vai tratar justamente disso. Você vai:

  1. Apresentar o problema e dizer porque ele merece ser estudado (justificativa)
  2. Falar sobre outros trabalhos de pesquisa que também estudaram esse tipo de problema e apontar as possíveis fraquezas das soluções propostas por eles. O referencial teórico é uma parte super importante
  3. Falar sobre como você pretende executar esse trabalho, que métodos você vai usar, qual é o objetivo principal da sua pesquisa, quais são os objetivos específicos. Seu problema pode ser maior e você vai precisar dividir em problemas menores. Como você pretende atacar esses problemas menores?
  4. E o cronograma? Eles precisam saber se a sua pesquisa pode ser executada dentro do prazo que será dado. Para isso você vai precisar de um cronograma detalhando as fases da execução do seu trabalho
  5. Considerar a qualidade das referências. Você não precisa abarrotar o seu pre-projeto com um monte de referências. Tente ser objetivo e olhe mais para a qualidade das referências. Coisas como o conceito da conferência onde o artigo foi aceito, o renome do periódico onde foi publicado, etc. Além disso, as referências precisam ser coerentes com o seu tema, tudo precisa fazer sentido

Esse pré-projeto/proposta é o seu convite para entrada no mestrado/doutorado, onde será avaliada a sua capacidade de escrita, de argumentação e organização de pensamento. É o que permitirá que os avaliadores tenham uma ideia sobre o domínio que você tem em torno do assunto. Então, capriche no texto.

E não se preocupe tanto em propor alguma solução inédita (se você estiver tentando um mestrado). Normalmente não se espera tanto de um aluno recém saído da graduação, mesmo que você seja extremamente capaz. Além disso, o seu tema de pesquisa provavelmente vai sofrer alguma alteração depois que você entrar para o curso. Então, relaxa!

Procure conhecer seu futuro orientador primeiro

O orientador que será seu parceiro ao longo da execução da sua pesquisa quem escolhe é você mesmo. Ao submeter um pré-projeto, você normalmente vai precisar dizer quem é o orientador que você escolheu. Por isso mesmo é importantíssimo procurar conhecê-lo, saber o que ele estuda e se há mais do que apenas uma interseção entre os interesses de pesquisa dele e o seu. Você não vai querer submeter um projeto lindo e ver, com extremo desgosto, ele ser rejeitado porque o orientador que você escolheu não tem interesse na sua área. É pertinente dizer que isso faz uma enorme diferença.

Se puder ir além, pegue o contato do orientador e marque um encontro com ele na universidade em um horário no qual ele esteja por lá. Durante a reunião, fale sobre as suas ideias e o que você sabe sobre o tema. Pergunte a ele se vale a pena atacar o problema que você escolheu resolver. Isso aumenta muito as suas chances. Se não puder ir até o campus da universidade, manda um e-mail para o orientador. No e-mail, adote a seguinte postura:

  1. Apresente-se e fale sobre a sua formação;
  2. Mencione que leu alguns artigos dele e que você está estudando sobre um problema relacionado.
  3. Apresente o problema que você está tentando atacar e diga o que você sabe sobre a área envolvida. Use bons argumentos e defenda sua ideia, fale o motivo de ela ser importante.
  4. Por fim, pergunte se ele tem interesse na sua pesquisa e se vocês podem desenvolver algum trabalho juntos nessa área.

Tudo ficará mais fácil se:

  1. Se os seus interesses e os dele se alinharem;
  2. Se você mostrar domínio sobre o tema;
  3. Se você mostrar que tem autonomia para conduzir a pesquisa. Lembre-se de que o projeto é seu, e o orientador é sempre uma pessoa super ocupada com dezenas de compromissos, incluindo com outros alunos. Ele precisa saber que você é capaz de conduzir seu esforço de pesquisa da maneira mais autônoma possível.

E, por último, lembre-se de que você estará concorrendo com outras pessoas e que as vagas são limitadas. Então, estude bastante sobre a sua área primeiro, para que consiga se destacar. Eu ficaria feliz em sugerir a você algumas áreas de pesquisa interessantes em machine learning, que você poderia tentar se aprofundar e que valeriam um bom projeto de pesquisa, até mesmo dar algum pitaco na elaboração da estrutura do seu pré-projeto. Entra em contato comigo pelo Linkedin.

Esse episódio do podcast Manual do Machine learning também traz algumas dicas sobre carreira acadêmica na área de Machine Learning, sendo um bom complemento a esse post.

Atualização 11/2021: Defendi minha dissertação de mestrado recentemente e, hoje, estou indo para o segundo ano do doutorado dentro da mesma área de concentração. No geral, o mestrado foi tranquilo, com raros momentos de tensão. Aprendi que publicar artigos durante o curso faz muita diferença caso você esteja pleiteando um doutorado em seguida, sobretudo se o Qualis da conferência ou do periódico for bom. Cursar as disciplinas e tirar boas notas é uma obrigação, não se contente apenas com isso. Ademais, quando você concluir sua jornada na pós-graduação e já estiver atuando como docente numa universidade, vai perceber que os artigos publicados têm um enorme peso quando se pretende submeter projetos para concessão de bolsas em órgãos de fomento à pesquisa. Até o momento, consegui publicar dois artigos [esse e esse outro aqui]. Ambos são artigos de conferência. O primeiro foi ainda durante o mestrado; ao passo em que o segundo foi publicado no início do doutorado.

Caso você tenha interesse em cursar um mestrado acadêmico [ou doutorado] na área de Deep Learning, entra em contato comigo. Eu posso te sugerir um projeto, te orientar com a proposta de pesquisa, e te sugerir um orientador na área.

Por fim, só tenho mais uma coisa pra te dizer: Estuuuuuuda menino!!!! Corre atrás dos teus sonhos porque só você pode fazer isso.

--

--

Luís Gonçalves
luisfredgs

Machine Learning Researcher and PhD student in Computer Science at Universidade Federal de Pernambuco, Brazil.