[Machine Learning] (Un)Supervised learning

[Nota: Usarei os termos técnicos em inglês por não saber exatamente a tradução correta para eles em português]

No campo de estudo de Machine Learning nós temos dois tipos mais usados de algoritmos, os de "Supervised learning" e o"Unsupervised learning".

O primeiro se dá quando  damos para o software  termos de entrada e o que esperamos na saída("damos as respostas certas" para o computador se basear). Assim "treinamos" a máquina para seguir este padrão de saída. Ao usarmos o algoritmo "treinado" em problemas reais ele se baseará nos valores dados previamente e seguirá o padrão para dar o resultado.

Podemos classificar esse tipo em mais duas categorias, aqueles cujo o problema é um problema de classificação, exemplo: Saber se um tumor é ou não é maligno. Neste exemplo só há duas saídas possíveis, ou seja, temos que classificar o objeto de saída.

Temos também os "regression problems" cujo os valores de saída variam de acordo com o objeto de entrada. Temos neste exemplo o preço de uma casa dada a a partir do tamanho dela. Não é possível mais classificar o objeto de saída, apenas dar seu valor, pois não temos mais grupos distintos. Então esperamos simplesmente que o software siga o padrão dado previamente.

Quanto ao grupo de Unsupervised learning, nós não separamos as respostas, simplesmente as colocamos para o computador e ele mesmo terá que definir padrões e separar as respostas conforme o algoritmo achar melhor.

Um exemplo de unsupervised learning é o google news que pega centenas de milhares de notícias e agrupa elas automaticamente apenas olhando o padrão dos textos.