Inteligência Artificial e
Aprendizado de Máquina
Max Pereira
13/05/2017
CODE FOR TUBA
Como fazer as máquinas compreenderem
as coisas?
(MINSKY, 1968).
Nós não precisamos mais ensinar os
computadores como executar tarefas
complexas, como reconhecimento de imagens
ou tradução de textos. Agora podemos
construir sistemas que permitem que os
próprios computadores aprendam como
fazer.
Greg Corrado, a senior research scientist at
Google (2016).
“Eu não aprendi a falar com um
linguista. Eu aprendi a falar
ouvindo outras pessoas falando.”
Greg Corrado
A > C
Programa
A > B,
B > C
Mapear o processo,
levantar os requisitos,
definir as regras...
Mas há problemas que nós não sabemos resolver!
A falta de conhecimento é compensada
pelos dados.
QUAIS AS REGRAS???
Reconhecimento de imagens
Engenharia de software
tradicional
Reconhecimento de imagens
Aprendizado de máquina supervisionado
Tigre
Onça
Programa
Aprendizado
de
Máquina
Exemplos
“O computador aprende a escrever o programa que nós, como
programadores não somos inteligentes o suficiente para fazê-lo.”
(Peter Norvig, 2015)
A Economia baseada em Algoritmos
“Tudo em grande escala nesse mudo será
gerenciado por algoritmos e dados”
Joseph Sirosh, CVP of Data Group and Machine Learning
at Microsoft (2016).
Engrenagem (ciclo) dos dados
“Mais dados proporcionam melhores modelos, que
possibilitam melhores experiências para os usuários,
fazendo com que o número de usuários aumente e, como
consequência, maior geração de dados.”
Por exemplo, a Tesla coletou 780 milhões de milhas de dados
referente a condução de automóveis, e eles estão adicionando
um milhão de milhas a cada 10 horas. Esses dados estão sendo
usados para alimentar um programa assistente de condução
(Autopilot).
Aprendizado de Máquina
Em geral, um problema de aprendizado
considera um conjunto de n amostras
(exemplos) de dados e depois tenta prever
propriedades dos dados desconhecidos.
Algoritmos
Aprendizado de Máquina
1. Naïve Bayes
2. K-Means
3. Support Vector Machine
4. Apriori
5. Regressão Linear
6. Regressão Logística
7. Redes Neurais Artificiais
8. Random Forest
9. Decision Trees
10. KNN
“Maçã”
Classificador
Classificador
Dados de
Treinamento
Treinar o
Classificador
Realizar
Predições
from sklearn import tree
atributos = [[140,1],[130,1],[150,0],[170,0]]
rotulos = [0,0,1,1]
clf = tree.DecisionTreeClassifier()
clf = clf.fit(atributos, rotulos)
print clf.predict([[160,0]])
Árvore de decisão
(decision tree)
from sklearn import datasets
from sklearn import svm
numeros = datasets.load_digits()
classificador = svm.SVC(gamma=0.001, C=100.)
classificador.fit(numeros.data[:-1], numeros.target[:-1])
print(classificador.predict(numeros.data[-1:]))
import matplotlib.pyplot as plt
import pandas
import numpy
url = "https://archive.ics.uci.edu/ml/machine-learning-databases/pima-indians-diabetes/pima-indians-diabetes.data"
atributos = ['Grav', 'Plas', 'Pres', 'Pele', 'Insu', 'IMC', 'Diab', 'Idade', 'classe']
dados = pandas.read_csv(url, names=atributos)
dados.hist()
plt.show()
cor = dados.corr()
fig=plt.figure()
ax=fig.add_subplot(111)
cax=ax.matshow(cor, vmin=-1, vmax=1)
fig.colorbar(cax)
ticks = numpy.arange(0,9,1)
ax.set_xticks(ticks)
ax.set_yticks(ticks)
ax.set_xticklabels(atributos)
ax.set_yticklabels(atributos)
plt.show()
iris = datasets.load_iris()
x = pd.DataFrame(iris.data)
x.columns=['Comprimento_Sepala', 'Largura_Sepala', 'Comprimento_Petala', 'Largura_Petala']
y = pd.DataFrame(iris.target)
y.columns=['Saidas']
modelo = KMeans(n_clusters=3)
modelo.fit(x)
mapaCores = np.array(['red', 'lime', 'black'])
plt.subplot(1,2,1)
plt.scatter(x.Comprimento_Petala, x.Largura_Petala, c=mapaCores[y.Saidas], s=40)
plt.title('Valores Reais')
plt.subplot(1,2,2)
plt.scatter(x.Comprimento_Petala, x.Largura_Petala, c=mapaCores[modelo.labels_], s=40)
plt.title('K means')
plt.show()
imagemPath = "pessoas4.png"
cascPath =
"C:Usersmax.pereiraopencvsourcesdatahaarcascadeshaarcascade_frontalface_defa
ult.xml"
faceCascade = cv2.CascadeClassifier(cascPath)
imagem = cv2.imread(imagemPath)
escalaCinza = cv2.cvtColor(imagem, cv2.COLOR_BGR2GRAY)
faces = faceCascade.detectMultiScale(
escalaCinza,
scaleFactor=1.1,
minNeighbors=5,
minSize=(30, 30),
flags=cv2.cv.CV_HAAR_SCALE_IMAGE
)
print("Encontrou {0} faces!".format(len(faces)))
for (x, y, w, h) in faces:
cv2.rectangle(imagem, (x, y), (x+w, y+h), (0, 255, 0), 2)
cv2.imshow("Faces encontradas", imagem)
cv2.waitKey(0)
Text Mining usando a Linguagem R
Conexão
Limpeza
Análise de frequência
das palavras
Gráfico de
ocorrências
Gráfico de relações
entre palavras
library(wordcloud)
wordcloud(words=names(word.freq), freq = word.freq, min.freq = 3, random.order = F,
colors = pal)
Análise de Sentimentos com R
Classificação
Gráficos
Clusterização
06 de maio de 2017
Se podemos prever as consequências
das escolhas, então podemos escolher as
consequências que queremos.
Inteligência Artificial e
Aprendizado de Máquina
Max Pereira
max.pereira@unisul.br
CODE FOR TUBA

Inteligencia Artificial e Aprendizado de Máquina

  • 1.
    Inteligência Artificial e Aprendizadode Máquina Max Pereira 13/05/2017 CODE FOR TUBA
  • 4.
    Como fazer asmáquinas compreenderem as coisas? (MINSKY, 1968).
  • 5.
    Nós não precisamosmais ensinar os computadores como executar tarefas complexas, como reconhecimento de imagens ou tradução de textos. Agora podemos construir sistemas que permitem que os próprios computadores aprendam como fazer. Greg Corrado, a senior research scientist at Google (2016). “Eu não aprendi a falar com um linguista. Eu aprendi a falar ouvindo outras pessoas falando.” Greg Corrado
  • 6.
    A > C Programa A> B, B > C Mapear o processo, levantar os requisitos, definir as regras...
  • 7.
    Mas há problemasque nós não sabemos resolver! A falta de conhecimento é compensada pelos dados.
  • 8.
    QUAIS AS REGRAS??? Reconhecimentode imagens Engenharia de software tradicional
  • 9.
    Reconhecimento de imagens Aprendizadode máquina supervisionado Tigre Onça
  • 10.
    Programa Aprendizado de Máquina Exemplos “O computador aprendea escrever o programa que nós, como programadores não somos inteligentes o suficiente para fazê-lo.” (Peter Norvig, 2015)
  • 12.
    A Economia baseadaem Algoritmos “Tudo em grande escala nesse mudo será gerenciado por algoritmos e dados” Joseph Sirosh, CVP of Data Group and Machine Learning at Microsoft (2016).
  • 13.
    Engrenagem (ciclo) dosdados “Mais dados proporcionam melhores modelos, que possibilitam melhores experiências para os usuários, fazendo com que o número de usuários aumente e, como consequência, maior geração de dados.” Por exemplo, a Tesla coletou 780 milhões de milhas de dados referente a condução de automóveis, e eles estão adicionando um milhão de milhas a cada 10 horas. Esses dados estão sendo usados para alimentar um programa assistente de condução (Autopilot).
  • 14.
    Aprendizado de Máquina Emgeral, um problema de aprendizado considera um conjunto de n amostras (exemplos) de dados e depois tenta prever propriedades dos dados desconhecidos.
  • 17.
    Algoritmos Aprendizado de Máquina 1.Naïve Bayes 2. K-Means 3. Support Vector Machine 4. Apriori 5. Regressão Linear 6. Regressão Logística 7. Redes Neurais Artificiais 8. Random Forest 9. Decision Trees 10. KNN
  • 20.
  • 22.
    Classificador Dados de Treinamento Treinar o Classificador Realizar Predições fromsklearn import tree atributos = [[140,1],[130,1],[150,0],[170,0]] rotulos = [0,0,1,1] clf = tree.DecisionTreeClassifier() clf = clf.fit(atributos, rotulos) print clf.predict([[160,0]]) Árvore de decisão (decision tree)
  • 24.
    from sklearn importdatasets from sklearn import svm numeros = datasets.load_digits() classificador = svm.SVC(gamma=0.001, C=100.) classificador.fit(numeros.data[:-1], numeros.target[:-1]) print(classificador.predict(numeros.data[-1:]))
  • 25.
    import matplotlib.pyplot asplt import pandas import numpy url = "https://archive.ics.uci.edu/ml/machine-learning-databases/pima-indians-diabetes/pima-indians-diabetes.data" atributos = ['Grav', 'Plas', 'Pres', 'Pele', 'Insu', 'IMC', 'Diab', 'Idade', 'classe'] dados = pandas.read_csv(url, names=atributos) dados.hist() plt.show() cor = dados.corr() fig=plt.figure() ax=fig.add_subplot(111) cax=ax.matshow(cor, vmin=-1, vmax=1) fig.colorbar(cax) ticks = numpy.arange(0,9,1) ax.set_xticks(ticks) ax.set_yticks(ticks) ax.set_xticklabels(atributos) ax.set_yticklabels(atributos) plt.show()
  • 26.
    iris = datasets.load_iris() x= pd.DataFrame(iris.data) x.columns=['Comprimento_Sepala', 'Largura_Sepala', 'Comprimento_Petala', 'Largura_Petala'] y = pd.DataFrame(iris.target) y.columns=['Saidas'] modelo = KMeans(n_clusters=3) modelo.fit(x) mapaCores = np.array(['red', 'lime', 'black']) plt.subplot(1,2,1) plt.scatter(x.Comprimento_Petala, x.Largura_Petala, c=mapaCores[y.Saidas], s=40) plt.title('Valores Reais') plt.subplot(1,2,2) plt.scatter(x.Comprimento_Petala, x.Largura_Petala, c=mapaCores[modelo.labels_], s=40) plt.title('K means') plt.show()
  • 27.
    imagemPath = "pessoas4.png" cascPath= "C:Usersmax.pereiraopencvsourcesdatahaarcascadeshaarcascade_frontalface_defa ult.xml" faceCascade = cv2.CascadeClassifier(cascPath) imagem = cv2.imread(imagemPath) escalaCinza = cv2.cvtColor(imagem, cv2.COLOR_BGR2GRAY) faces = faceCascade.detectMultiScale( escalaCinza, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30), flags=cv2.cv.CV_HAAR_SCALE_IMAGE ) print("Encontrou {0} faces!".format(len(faces))) for (x, y, w, h) in faces: cv2.rectangle(imagem, (x, y), (x+w, y+h), (0, 255, 0), 2) cv2.imshow("Faces encontradas", imagem) cv2.waitKey(0)
  • 31.
    Text Mining usandoa Linguagem R
  • 32.
    Conexão Limpeza Análise de frequência daspalavras Gráfico de ocorrências Gráfico de relações entre palavras
  • 39.
    library(wordcloud) wordcloud(words=names(word.freq), freq =word.freq, min.freq = 3, random.order = F, colors = pal)
  • 40.
  • 41.
  • 45.
    06 de maiode 2017
  • 55.
    Se podemos preveras consequências das escolhas, então podemos escolher as consequências que queremos.
  • 56.
    Inteligência Artificial e Aprendizadode Máquina Max Pereira max.pereira@unisul.br CODE FOR TUBA