Extraindo atributos de textos. Prof. Fabrício Olivetti de França

Tamanho: px
Começar a partir da página:

Download "Extraindo atributos de textos. Prof. Fabrício Olivetti de França"

Transcrição

1 Extraindo atributos de textos Prof. Fabrício Olivetti de França

2 Configuração Faça o download do Anaconda Python: E do notebook: 2

3 Crie o ambiente Crie o ambiente: conda create --name lcon python=3 scikit-learn numpy scipy gensim pandas jupyter ipython nltk pip install powerlaw Ative-o com source activate lcon E abra o notebook: jupyter notebook 3

4 Representação computacional Muitos algoritmos de aprendizado de máquina foram formalizados assumindo como entrada amostras em um espaço vetorial. Quando trabalhamos com bases de dados que não são naturalmente representadas no espaço vetorial, devemos extrair os atributos. 4

5 Documentos de textos d1: o gato caçou o rato d2: o rato comeu o queijo Precisamos encontrar v1 e v2 de tal forma que cada posição dos vetores represente um aspecto específico dos documentos. 5

6 Documentos de textos d1: o gato caçou o rato d2: o rato comeu o queijo v1 = [1, 4, 5, 1, 4] v2 = [1, 4, 5, 1, 6] 6

7 Documentos de textos d1: o gato caçou o rato d2: o rato comeu o queijo v1 = [1, 4, 5, 1, 4] v2 = [1, 4, 5, 1, 6] v1-v2 = 2, distância baixa, similaridade alta. [Euclidiana] 7

8 Documentos de textos d1: o gato caçou o rato d2: o rato comeu o queijo provolone v1 = [1, 4, 5, 1, 4,?] v2 = [1, 4, 5, 1, 6, 9] 8

9 Bag of Words Cada objeto é representado por um conjunto F de atributos que é um subconjunto do conjunto F de atributos observados na base. O 1 = {F 1, F 4, F 5, F 9 } O 2 = {F 3, F 4, F 5 } 9

10 Bag of Words É possível representar computacionalmente esses conjuntos de diversas formas: vetor binário denso, vetor esparso, bitmaps, tries, etc. A escolha deve ser de acordo com a aplicação. 10

11 Bag of Words Nos vetores binários cada posição corresponde a um token do dicionário. Os vetores terão tamanho igual ao total de tokens distintos. Um token é um elemento textual: letra, palavra, frase, símbolo, etc. 11

12 Bag of Words d1: o gato caçou o rato d2: o rato comeu o queijo provolone dicionário = { o : 0, gato : 1, caçou : 2, rato : 3, comeu : 4, queijo : 5, provolone : 6} v1 = [1, 1, 1, 1, 0, 0, 0] v2 = [1, 0, 0, 1, 1, 1, 1] 12

13 Bag of Words Cada elemento do vetor representa se determinado token existe ou não no documento. v1 = [1, 1, 1, 1, 0, 0, 0] v2 = [1, 0, 0, 1, 1, 1, 1] sum(v1 == v2)/len(dicionario) = 1/7 = 0.14 [Jaccard] 13

14 Bag of Words Podemos também atribuir pesos representando a frequência dos termos: v1 = [2, 1, 1, 1, 0, 0, 0] v2 = [2, 0, 0, 1, 1, 1, 1] np.dot(v1, v2)/(np.dot(v1,v1)*np.dot(v2,v2)) = 5/(7.8) = 0.09 [Cosseno] 14

15 Cosseno w2 w1 15

16 Bag of Words A biblioteca scikit-learn possui classes para extrair atributos do tipo BOW. import pandas as pd import sklearn.feature_extraction.text as txtfeats tweets = pd.read_csv('tweets.csv.gz') bagofwords = txtfeats.countvectorizer() bow = bagofwords.fit_transform(tweets.text) 16

17 Bag of Words print(len(bagofwords.get_feature_names())) >> bagofwords.get_feature_names()[5000:5004] >> ['alemanharoubo', 'alemanhas', 'alemao', 'alemaoe'] Cada tweet tem em média 16 palavras! Cada tweet será representado por um vetor em que, em média, elementos serão 0. 17

18 Bag of Words Geralmente representamos como vetor esparso: [ (5002,1), (201288, 1), (220665, 2) ] O tweet contém uma ocorrência do token 5002, uma do token e duas do token

19 Bag of Words Quando vamos gerar um vetor BOW para um novo exemplo, os tokens novos são ignorados: novo_tweet = 'um novo tweet sobre um alemao kywz' print(bagofwords.transform([novo_tweet])) >> (0, 5002) 1 (0, ) 1 (0, ) 1 (0, ) 1 (0, ) 2 19

20 Padronização Macarrão, macarrão, macarrao, MaCarrãO representam a mesma informação. Para evitar que eles formem tokens diferentes, antes da construção do dicionário é feito uma padronização: Remover acentos Transformar em minúsculas 20

21 Padronização Existem também tokens que não contém informação necessária para o processo de aprendizado: e, ou, está, quando, etc. Podemos remover essas palavras com o uso de uma lista de stopwords. 21

22 Bag of Words Parâmetros de pré-processamento: strip_accents : remove acentos das palavras com codificação ascii ou unicode. stop_words : permite usar uma lista de stop words. lowercase : transforma as letras em caixa baixa (padrão). binary : não contabiliza a frequência dos termos. 22

23 Corte de Luhn A lei de Zipf diz que a frequência das palavras em um documento é inversamente proporcional ao seu rank. Ou seja, a palavra mais frequente vai aparecer duas vezes com mais frequência que a segunda mais frequente, três vezes mais frequente que a terceira, Luhn argumentou que as palavras muito frequentes e as pouco frequentes não colaboram para discriminação e similaridade entre documentos. LUHN, H.P., 'The automatic creation of literature abstracts', IBM Journal of Research and Development, 2, (1958). 23

24 Corte de Luhn 24

25 Corte de Luhn Mas como determinar os cortes? Basicamente queremos o meio da distribuição. df = sorted(bow.sum(axis=0).a1) # frequencia dos termos fit = powerlaw.fit(df) mediana = fit.xmin*np.power(2, 1/(fit.power_law.alpha-1)) df_max = int(np.round(np.power(mediana, 4/3))) df_min = int(np.round(np.power(mediana, 2/3))) >> df_min = 106, df_max =

26 Corte de Luhn bagofwords = txtfeats.countvectorizer(min_df=df_min, max_df=df_max, strip_accents='unicode', stop_words=['e', 'ou', 'ele', 'ela']) bow = bagofwords.fit_transform(tweets.text) >> 5333 tokens 26

27 tf-idf Uma outra forma de reduzir a influência dos termos frequentes é penalizar as frequências dos tokens pelo inverso da frequência no documento. Quanto mais a frequência do token se aproxima de N, mais idf se aproxima de 0. 27

28 tf-idf tfidf = txtfeats.tfidfvectorizer() bow = tfidf.fit_transform(tweets.text) 28

29 tf-idf norm : l1, l2 or None, optional. Norma usada para normalizar os vetores resultantes. use_idf : se deseja usar o idf. smooth_idf : técnica de smooth para evitar divisões por 0. sublinear_tf : calcula a frequência dos termos como 1 + log(tf). 29

30 Contexto Um ponto negativo da tokenização por palavras é que os tokens não possuem o contexto. Para aliviar esse problema surgiu o n-grams. 30

31 N-grams d1: o gato caçou o rato d2: o rato comeu o queijo provolone 2-gram: dicionário = { o gato : 0, gato caçou : 1, caçou o : 2, o rato : 3, rato comeu : 4, comeu o : 5, o queijo : 6, queijo provolone : 7} 31

32 N-grams bagofwords = txtfeats.countvectorizer(min_df=df_min, max_df=df_max, strip_accents='unicode', ngram_range=(2,2)) bow = bagofwords.fit_transform(tweets.text) >> tokens 32

33 N-grams analyzer : string, { word, char, char_wb }: se os n-grams serão determinados por palavras, por caracteres ou por caracteres dentro das palavras. ngram_range : tuple (min_n, max_n): gera n-gramas com min_n <= n <= max_n. 33

34 N-grams Problemas: Pode aumentar muito a dimensionalidade Muitos tokens continuam sem contexto: o gato 34

35 k-skip-n-grams Tokeniza realizando pulos de 0 a k tokens. d1: o gato caçou o rato d2: o rato comeu o queijo provolone 3-skip-2-gram: dicionário = { o gato : 0, o caçou : 1, o o : 2, gato caçou : 3, gato o : 4, gato rato : 5,...} 35

36 k-skip-n-grams Tem uma chance maior de capturar o contexto, porém pode aumentar a dimensionalidade exageradamente. Podemos utilizar o parâmetro tokenizer que permite passar um tokenizador customizado. A biblioteca nltk implementa o k-skip-n-gram. 36

37 k-skip-n-grams skip3n2grams = lambda s: nltk.skipgrams(s.split(), 2, 3) tfidf = txtfeats.tfidfvectorizer(tokenizer=skip3n2grams, min_df=df_min, max_df=df_max) bow = tfidf.fit_transform(tweets.text) >> tokens 37

38 Aprendendo uma representação Ideia: d1: o gato caçou o rato d2: o rato comeu o queijo provolone Aprender que entre o e caçou vem a palavra gato. 38

39 Continuous Bag-of-Word o gato caçou 39

40 Aprendendo uma representação Cada neurônio de entrada e o neurônio de saída é um vetor binário em que o elemento representando a palavra de entrada tem valor 1 e o restante, 0. 40

41 Continuous Bag-of-Word o gato caçou v(gato) 41

42 Skip-gram o gato caçou v(gato) 42

43 Continuous Bag-of-Word Pesos W 1 dim: V x N 43

44 Continuous Bag-of-Word A entrada são vetores binários, cada vetor binário contém apenas um elemento igual a 1. entrada x W 1 = Soma das linhas de W 1 correspondentes as palavras da entrada (a ordem então não importa) h(entrada x W 1 ) = (entrada x W 1 ) / entradas 44

45 Continuous Bag-of-Word y = softmax(z. W 2 ) z = h(x. W 1 ) 45

46 softmax Saída é um vetor de dimensão V que representa a distribuição categórica de probabilidade para as possíveis saídas. 46

47 softmax O objetivo é minimizar a função custo definida como o logaritmo da probabilidade de p(wt wt+j) ou p(wt+j wt) dependendo do modelo de word2vec utilizado. wt = palavra alvo do vetor wt+j = contexto da palavra 47

48 Função custo 48

49 Atualizando os pesos O processo de atualização demanda que os pesos das V possíveis palavras de saída sejam atualizados! Lembrem-se que V é geralmente centenas de milhares! 49

50 Continuous Bag-of-Word w1 w2 w3 w4 50

51 Continuous Bag-of-Word w1 w2 w3 w4 51

52 Atualizando os pesos Agora só precisamos fazer o processo de atualização em log(v) elementos! 52

53 Demo 53

54 GloVe: Global Vectors for Word Repr. X = matriz de co-ocorrência que a palavra j ocorreu no contexto de i com janela k. 54

55 GloVe: Global Vectors for Word Repr. 55

56 GloVe: Global Vectors for Word Repr. Objetivo: encontrar uma representação vetorial de cada palavra tal que: 56

57 GloVe: Global Vectors for Word Repr. Minimizar: 57

58 GloVe: Global Vectors for Word Repr. Com: 58

59 Polêmica No artigo original os autores indicaram que GloVe era mais rápido que o word2vec e apresentava 12% de melhora na tarefa de analogia de palavras. Discussão sobre validade dos experimentos: U5IMJJsbxAi-kRl8czSwpti15s/edit# 59

60 Polêmica O argumento é que os autores utilizaram apenas os resultados numéricos do artigo original do word2vec, e isso pode ter causado um viés por conta de diferenças na base de treinamento. Um novo teste realizado indicou que não existe diferença significativa entre os dois sob as mesmas condições. 60

61 Polêmica Mas ainda está em discussão Código: 61

62 doc2vec doc id o gato caçou v(gato) 62

63 doc2vec Igual a word2vec, mas agora existe uma nova entrada identificando o parágrafo/documento. Com isso, cada documento pode ser descrito também como um vetor. 63

64 gensim from gensim.models import doc2vec class LabeledLineSentence(object): def init (self, stream): self.stream = stream def iter (self): for uid, line in enumerate(self.stream): yield doc2vec.labeledsentence(words=line.split(), tags=['sent_%s' % uid]) 64

65 gensim model = doc2vec.doc2vec( ) LabeledLineSentence(tweets.text.values[:1000]) 65

66 Minhash Lembrando em nossa representação Bag-of-Words: Token D1 D2 D3 D4 A B C D E

67 Minhash Ela gera uma matriz esparsa e de alta dimensão! Token D1 D2 D3 D4 A B C D E

68 Minhash O cálculo da similaridade (de Jaccard) pode se tornar muito custosa. Token D1 D2 D3 D4 A B C D E

69 Minhash Pré-calcular uma assinatura da matriz que é equivalente a sim. de Jaccard. Token D1 D2 D3 D4 A B C D E

70 Minhash Se permutarmos aleatoriamente as linhas dessa matriz: Token D1 D2 D3 D4 B A E C D

71 Minhash E representarmos cada documento pelo índice da primeira linha contendo 1: Minhash Token D1 D2 D3 D4 B A E C D

72 Minhash Dessa forma cada documento pode ser representado por apenas 1 valor! Minhash Token D1 D2 D3 D4 B A E C D

73 Minhash Mas qual a probabilidade de mh(di) = mh(dj)? 73

74 Minhash Quantas linhas o valor 1 coincide dividido pelo total de linhas com pelo menos um valor 1: 74

75 Minhash Comparando D1 e D4 Minhash Token D1 D2 D3 D4 B A E C D

76 Minhash J = ⅔ = P(mh(D1)=mh(D4)) Minhash Token D1 D2 D3 D4 B A E C D

77 Minhash Se temos P = 2/3, se fizermos 100 permutações diferentes, teremos cerca de 67 valores iguais de minhash entre os dois documentos! 77

78 Minhash Cada documento é representado por N minhashes diferentes. Di = [mh 1 (Di), mh 2 (Di),, mh N (Di)] 78

79 Minhash Computar permutações é custoso! Vamos simplificar utilizando funções hashes! 79

80 Minhash Dada a função hash: h(x) = (ax + b) mod p onde x é o índice do atributo. ela gera uma permutação aleatória com diferentes valores de a,b e mantendo p fixo. 80

81 Minhash Sorteamos N valores de a e b e escolhemos um p primo. Escolhemos um p grande o suficiente para representar nossas variáveis. 81

82 Minhash Exemplo: h1(x) = (x + 1) mod 5 h2(x) = (3x + 1) mod 5 82

83 Minhash h1(x) = (x + 1) mod 5 h2(x) = (3x + 1) mod 5 Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

84 Minhash Para cada documento, marcamos as linhas iguais a 1: Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

85 Minhash Representamos o documento com os menores valores marcados de cada hash: SIG(D1) = [1, 0] Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

86 Minhash - Algoritmo SIG1 e SIG2 inicializam com o maior valor possível +1. SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

87 Minhash - Algoritmo Para cada linha, atualizamos os documentos com valor igual a 1: SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

88 Minhash - Algoritmo SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

89 Minhash - Algoritmo Repare que apenas atualizamos os valores se for menor! SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

90 Minhash - Algoritmo SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

91 Minhash - Algoritmo SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

92 Minhash - Algoritmo D1' = [1, 0] D3' = [0, 0] D2' = [3, 2] D4' = [1, 0] SIG SIG Linha Token D1 D2 D3 D4 h1 h2 0 A B C D E

93 Minhash - Algoritmo D1' = [1, 0] D3' = [0, 0] D2' = [3, 2] D4' = [1, 0] J D2 D3 D4 D1 0 0,25 0,67 D2 0 0,33 D3 0,2 J D2' D3' D4' D1' 0 0,5 1 D2' 0 0 D3' 0,5 93

94 Código P = nhashes = 3 alphas = np.random.randint(1, P-1, (nhashes,)) betas = np.random.randint(1, P-1, (nhashes,)) 94

95 Código H = [list(map(hash,t.split())) for t in tweets.text[:100]] MH = np.zeros((100,nhashes)) for i, h in enumerate(h): for j in range(nhashes): MH[i,j] = np.min(np.remainder(alphas[j]*h + betas[j], P)) 95

Aprendizado de Supervisionado

Aprendizado de Supervisionado Aprendizado de Supervisionado Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Padronizando e Normalizando os Atributos 2. Tipos de Atributos 3. Representação Textual 1 Padronizando e

Leia mais

Implementação de Kernel Customizado Aplicado à Análise de Sentimentos em Resenhas de Filmes

Implementação de Kernel Customizado Aplicado à Análise de Sentimentos em Resenhas de Filmes Implementação de Kernel Customizado Aplicado à Análise de Sentimentos em Resenhas de Filmes Luciana Kayo e Paulo Mei Prof. Dr. Marco Dimas Gubitoso Introdução Inspiração na competição When Bag of Words

Leia mais

Aprendizado de Supervisionado

Aprendizado de Supervisionado Aprendizado de Supervisionado Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Aprendendo com Exemplos 2. Classificação 3. Conceitos Gerais 4. Vizinho Mais Próximo 1 Aprendendo com Exemplos

Leia mais

DATA MINING & MACHINE LEARNING (I) Thiago Marzagão

DATA MINING & MACHINE LEARNING (I) Thiago Marzagão DATA MINING & MACHINE LEARNING (I) Thiago Marzagão transformando textos em dados Documento 1: Não trabalho para ter clientes; tenho clientes para poder trabalhar. Documento 2: Não se pode forçar a inteligência

Leia mais

MINERAÇÃO DE DADOS. Thiago Marzagão MINERAÇÃO DE TEXTOS. marzagao.1@osu.edu. Thiago Marzagão (UnB) MINERAÇÃO DE DADOS 1/2016 1 / 25

MINERAÇÃO DE DADOS. Thiago Marzagão MINERAÇÃO DE TEXTOS. marzagao.1@osu.edu. Thiago Marzagão (UnB) MINERAÇÃO DE DADOS 1/2016 1 / 25 MINERAÇÃO DE DADOS Thiago Marzagão marzagao.1@osu.edu MINERAÇÃO DE TEXTOS Thiago Marzagão (UnB) MINERAÇÃO DE DADOS 1/2016 1 / 25 transformando textos em dados Documento 1: "Não trabalho para ter clientes;

Leia mais

Pré-processamento dos Dados e Análise Exploratória

Pré-processamento dos Dados e Análise Exploratória Pré-processamento dos Dados e Análise Exploratória Prof. Fabrício Olivetti de França Universidade Federal do ABC Processando os dados Data Sets Conjunto de objetos de dados. Objeto de dados é uma entidade:

Leia mais

Redução de Dimensionalidade, DCDistance, e CARFRE

Redução de Dimensionalidade, DCDistance, e CARFRE Redução de Dimensionalidade, DCDistance, e CARFRE Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Redução de Dimensionalidade 2. Análise de Componentes Principais 3. DCDistance - Document-Class

Leia mais

Python + Spark = PySpark. Prof. Fabrício Olivetti de França Universidade Federal do ABC

Python + Spark = PySpark. Prof. Fabrício Olivetti de França Universidade Federal do ABC Python + Spark = PySpark Prof. Fabrício Olivetti de França Universidade Federal do ABC Spark Plataforma para processamento de dados em larga escala. Baseado em transformações preguiçosas dos dados. Estende

Leia mais

Profª Ana Lúcia Lima Marreiros Maia Profª Fabiana Cristina Bertoni

Profª Ana Lúcia Lima Marreiros Maia Profª Fabiana Cristina Bertoni Profª Ana Lúcia Lima Marreiros Maia Profª Fabiana Cristina Bertoni Motivação e Objetivos Etapas do Desenvolvimento de um Sistema de Recuperação de Informações (SRI): Pré-processamento; Representação; Extração

Leia mais

Pré-processamento de Dados

Pré-processamento de Dados Pré-processamento de Dados Fabrício Olivetti de França Universidade Federal do ABC Pré-Processamento dos Dados Tópicos 1. Pré-Processamento dos Dados 2. Conceitos Básicos 3. Representação Textual 4. Padrões

Leia mais

Term weighting: outras ideias

Term weighting: outras ideias Term weighting: outras ideias Term Weighting i Diversas são as abordagens. Vamos discutir algumas ideias mais simples, porém conhecidas. i Abordagens 4 Pesos binários (já vimos) 4 Frequência (já vimos)

Leia mais

Tópicos Especiais: Inteligência Artificial. Deep Learning

Tópicos Especiais: Inteligência Artificial. Deep Learning Tópicos Especiais: Inteligência Artificial Deep Learning Bibliografia Inteligência Artificial Russell & Norvig Site: http://aima.cs.berkeley.edu Inteligência Artificial, Ben Coppin. Online Course: Zero

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação (Machine Learning) Aula 02 Representação dos dados Pré-processamento Max Pereira Tipo de Dados Os atributos usados para descrever objetos de dados podem ser de diferentes tipos: Quantitativos

Leia mais

Tabela Hash: Índice remissivo

Tabela Hash: Índice remissivo Capítulo 3 Tabela Hash: Índice remissivo Um índice remissivo lista os termos e tópicos que são abordados em um documento juntamente com páginas em que aparecem. É bastante comum encontrar tais índices

Leia mais

Melhorando a Recuperação de Informação

Melhorando a Recuperação de Informação Recuperação de Informação e Web Mining 1 Melhorando a Recuperação de Informação O modelo de espaço vetorial Utiliza pesos para termos Permite o ranqueamento dos resultados Pode reduzir a dimensão do espaço

Leia mais

Aprendizado Não-Supervisionado

Aprendizado Não-Supervisionado Aprendizado Não-Supervisionado Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Aprendizado Não-Supervisionado 2. Agrupamento de Dados 1 Aprendizado Não-Supervisionado Aprendizado Não-Supervisionado

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Redes Neurais Artificiais Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Redes Neurais Biológicas 2. Neurônio Artificial 3. Rede Neural Artificial 4. Keras 1 Redes Neurais Biológicas

Leia mais

Mineração de Textos. Mineração de Textos

Mineração de Textos. Mineração de Textos Mineração de Textos Os estudos em Aprendizado de Máquina normalmente trabalham com dados estruturados Entretanto, uma grande quantidade de informação é armazenada em textos, que são dados semi-estruturados

Leia mais

Universidade do Sul de Santa Catarina Ciência da Computação Aula 09 Introdução a Análise de Textos Prof. Max Pereira

Universidade do Sul de Santa Catarina Ciência da Computação Aula 09 Introdução a Análise de Textos Prof. Max Pereira Universidade do Sul de Santa Catarina Ciência da Computação Técnicasde InteligênciaArtificial Aula 09 Introdução a Análise de Textos Prof. Max Pereira Processamento de Linguagem Natural Conjunto de técnicas

Leia mais

Introdução ao Python. Prof. Fabrício Olivetti de França Universidade Federal do ABC

Introdução ao Python. Prof. Fabrício Olivetti de França Universidade Federal do ABC Introdução ao Python Prof. Fabrício Olivetti de França Universidade Federal do ABC Python Linguagem interpretada criada em 1991 Objetivos: enfatizar a legibilidade do código e, encurtar o tamanho dos códigos.

Leia mais

Visualização de Texto e Documento

Visualização de Texto e Documento Visualização de Texto e Documento SCC5836 Visualização Computacional Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação

Leia mais

Agrupamento Espectral e Hierárquico

Agrupamento Espectral e Hierárquico Agrupamento Espectral e Hierárquico Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Agrupamento Espectral 2. Agrupamento Hierárquico 1 Agrupamento Espectral Agrupamento Espectral Nem

Leia mais

Hashing: conceitos. Hashing

Hashing: conceitos. Hashing Hashing: conceitos hashing é uma técnica conhecida como espalhamento, mapeamento ou randomização que tenta distribuir dados em posições aleatórias de uma tabela (array) associa cada objeto (de um determinado

Leia mais

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC Regressão Linear Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Ordinary Least Square 2. Gradiente Descendente 1 Aprendendo com exemplos Uma das formas de aprendizado de máquina é definido

Leia mais

Compiladores. Análise Léxica

Compiladores. Análise Léxica Compiladores Análise Léxica Cristiano Lehrer, M.Sc. Introdução (1/3) Análise léxica é a primeira fase do compilador. A função do analisador léxico, também denominado scanner, é: Fazer a leitura do programa

Leia mais

Descoberta de conhecimento em redes sociais e bases de dados públicas

Descoberta de conhecimento em redes sociais e bases de dados públicas Descoberta de conhecimento em redes sociais e bases de dados públicas Trabalho de Formatura Supervisionado Bacharelado em Ciência da Computação - IME USP Aluna: Fernanda de Camargo Magano Orientadora:

Leia mais

Introdução à Mineração de Dados com Aplicações em Ciências Espaciais

Introdução à Mineração de Dados com Aplicações em Ciências Espaciais Introdução à Mineração de Dados com Aplicações em Ciências Espaciais Escola de Verão do Laboratório Associado de Computação e Matemática Aplicada Rafael Santos Dia 3: 1 /54 Programa Dia 1: Apresentação

Leia mais

Capítulo 4. Comitê BAS 35

Capítulo 4. Comitê BAS 35 4 Comitê BAS Devido à flexibilidade do algoritmo BAS, que aceita qualquer distribuição inicial para os exemplos, diversas heurísticas podem ser implementadas com o objetivo de criar classificadores de

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Listas e Vetores 1 Listas e Vetores Listas e Vetores Uma lista em Python é um container de informações que, por

Leia mais

Classificação de Padrões. Abordagem prática com Redes Neurais Artificiais

Classificação de Padrões. Abordagem prática com Redes Neurais Artificiais Classificação de Padrões Abordagem prática com Redes Neurais Artificiais Agenda Parte I - Introdução ao aprendizado de máquina Parte II - Teoria RNA Parte III - Prática RNA Parte IV - Lições aprendidas

Leia mais

4 Recuperação de Informação

4 Recuperação de Informação 4 Recuperação de Informação No presente capítulo são apresentados os fundamentos da área de Recuperação de Informação utilizados em Mineração de Textos, como por exemplo, os modelos de representação de

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES Representação de Dados Professor: Airton Ribeiro de Sousa E-mail: airton.ribeiro@faciplac.edu.br 1 Ao longo dos anos, muitos padrões e convenções foram estabelecidas para determinar certos aspectos da

Leia mais

Modelo Probabilístico

Modelo Probabilístico Wendel Melo Faculdade de Computação Universidade Federal de Uberlândia Recuperação da Informação Adaptado do Material da Profª Vanessa Braganholo - IC/UFF Proposto em 1976 por Roberstson e Sparck Jones;

Leia mais

Sobre o curso. Fabrício Olivetti de França. Universidade Federal do ABC

Sobre o curso. Fabrício Olivetti de França. Universidade Federal do ABC Sobre o curso Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Sobre mim 2. Sobre a Disciplina 1 Sobre mim Sobre mim Formado em Engenharia Elétrica com ênfase em Computação pela Universidade

Leia mais

Trilha Machine Learning Fabíola S. F. Pereira

Trilha Machine Learning Fabíola S. F. Pereira Trilha Machine Learning Fabíola S. F. Pereira De pai pra filho! A Tarefa de Classificação Hierárquica aplicada em um Case Real sobre Dados Textuais Fabíola S. F. Pereira Data Scientist @ ZUP IT Olá! Muito

Leia mais

SCC0173 Mineração de Dados Biológicos

SCC0173 Mineração de Dados Biológicos SCC0173 Mineração de Dados Biológicos Classificação I: Algoritmos 1Rule e KNN Prof. Ricardo J. G. B. Campello SCC / ICMC / USP 1 Créditos O material a seguir consiste de adaptações e extensões dos originais:

Leia mais

CMP Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira

CMP Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira CMP1048 - Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira 1. Considere um programa em C++ que tenha duas variáveis declaradas

Leia mais

Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem Python

Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem Python Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem Python Exercícios: Funções 1. Crie uma função que recebe como parâmetro um número

Leia mais

Unidades de Medidas Computacionais

Unidades de Medidas Computacionais Unidades de Medidas Computacionais Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Unidades de Medidas Computacionais QUANTIFICAÇÃO DE DADOS Dados e Informações Como nós representamos? Texto: Nome

Leia mais

Correção Ortográfica. Processamento Estatístico da Linguagem Natural. Correção de Erros. Distância Mínima de Edição. Distância Mínima de Edição

Correção Ortográfica. Processamento Estatístico da Linguagem Natural. Correção de Erros. Distância Mínima de Edição. Distância Mínima de Edição Processamento Estatístico da Linguagem Natural Aula 6 Professora Bianca (Sala 302 Bloco E) bianca@ic.uff.br http://www.ic.uff.br/~bianca/peln/ Correção Ortográfica Três tipos de problemas: Detecção de

Leia mais

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó

Leia mais

Segundo trabalho de Organização e Recuperação da Informação

Segundo trabalho de Organização e Recuperação da Informação FACOM- UFU Professor: Wendel Melo Segundo trabalho de Organização e Recuperação da Informação 2018-02 Descrição Este trabalho consiste em duas etapas: 1. Implementação de cálculo da ponderação TF-IDF,

Leia mais

Lista de exercícios 2 Recuperação de Informação Textual

Lista de exercícios 2 Recuperação de Informação Textual Lista de exercícios 2 Recuperação de Informação Textual 2 de dezembro de 2015 0.1 O que é o modelo bag-of-words? Porque ele é uma simplificação? Dê um exemplo em que ele estaria incorreto. 0.2 O que é

Leia mais

Aprendizado Bayesiano Anteriormente...

Aprendizado Bayesiano Anteriormente... Aprendizado Bayesiano Anteriormente... Conceito de Probabilidade Condicional É a probabilidade de um evento A dada a ocorrência de um evento B Universidade de São Paulo Instituto de Ciências Matemáticas

Leia mais

Tabelas de dispersão/hash

Tabelas de dispersão/hash Tabelas de dispersão/hash 1 Tabelas de dispersão/hash 1. Considere uma tabela de hash de tamanho m = 1000 e a função de hash h(k)= [m.(k.a % 1)], com A=( 5-1)/2. Calcule os valores de hash das chaves 61,

Leia mais

Padrão para a codificação em Python

Padrão para a codificação em Python Padrão para a codificação em Python Bonito é melhor que feio. Explícito é melhor que implícito. Simples é melhor que complexo. Complexo é melhor que complicado. Esparso é melhor que denso. Legibilidade

Leia mais

Aula 3: Manipulando Textos e Imagens

Aula 3: Manipulando Textos e Imagens Mineração de Dados Aula 3: Manipulando Textos e Imagens Rafael Izbicki 1 / 24 Nesta Aula: Vamos aprender como manipular imagens e textos (no R). 2 / 24 Em estatística, estamos acostumados a trabalhar com

Leia mais

Tabelas Hash. informação, a partir do conhecimento de sua chave. Hashing é uma maneira de organizar dados que:

Tabelas Hash. informação, a partir do conhecimento de sua chave. Hashing é uma maneira de organizar dados que: Tabelas Hash Tabelas Hash O uso de listas ou árvores para organizar informações é interessante e produz bons resultados. Porem, em nenhuma dessas estruturas se obtém o acesso direto a alguma informação,

Leia mais

Aula 6 Mineração Streams Representação dos Dados. Profa. Elaine Faria UFU

Aula 6 Mineração Streams Representação dos Dados. Profa. Elaine Faria UFU Aula 6 Mineração Streams Representação dos Dados Profa. Elaine Faria UFU - 2017 Agradecimentos Este material é baseado No livro Tan et al, 2006 Nos slides do prof. Andre C. P. L. F. Carvalho Agradecimentos

Leia mais

Regressão Polinomial e Simbólica

Regressão Polinomial e Simbólica Regressão Polinomial e Simbólica Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Variáveis Não-Lineares 2. Regressão Simbólica 1 Variáveis Não-Lineares Variáveis Não-Lineares Considere

Leia mais

ORI: Pontuação e o modelo de espaço vetorial

ORI: Pontuação e o modelo de espaço vetorial 1/1 ORI: Pontuação e o modelo de espaço vetorial Marcelo Keese Albertini Faculdade de Computação Universidade Federal de Uberlândia Índice 2/1 3/1 Veremos hoje Ordenando resultados de busca: importância

Leia mais

CEFET/RJ. Aprendizado de Máquina - Trabalho 01

CEFET/RJ. Aprendizado de Máquina - Trabalho 01 CEFET/RJ Programa de Pós-graduação em Ciência da Computação Aprendizado de Máquina - Trabalho 01 Prof. Eduardo Bezerra (ebezerra@cefet-rj.br) Setembro/2017 Conteúdo 1 Regressão Linear com uma Variável

Leia mais

GSI024 - Organização e Recuperação da

GSI024 - Organização e Recuperação da GSI024 - Organização e Recuperação da Informação Ilmério Reis da Silva ilmerio@facom.ufu.br UFU/FACOM/BSI Arquivo 5 - Peso de termos GSI024-ORI Pg:5. 1 Busca paramétrica usando atributos Regiões em documentos

Leia mais

ARQUITETURA DE COMPUTADORES 21010

ARQUITETURA DE COMPUTADORES 21010 ARQUITETURA DE COMPUTADORES 21010 Considere o seguinte conjunto de dados que correspondem ao nome de estudante e à nota por este obtida num determinado trabalho: Nome Nota ALICE 16 JOÃO 10 LIA 12 PAULA

Leia mais

Aula 7 Medidas de Distância. Profa. Elaine Faria UFU

Aula 7 Medidas de Distância. Profa. Elaine Faria UFU Aula 7 Medidas de Distância Profa. Elaine Faria UFU - 2017 Agradecimentos Este material é baseado No livro Tan et al, 2006 Nos slides do prof Andre C. P. L. F. Carvalho Agradecimentos Ao professor André

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Estrutura de dados: listas Manipulando listas Vetores como listas

Leia mais

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON 02/47 O QUE É PYTHON? Python é uma linguagem de propósito geral, de alto nível e interpretada Python será

Leia mais

5. Expressões aritméticas

5. Expressões aritméticas 5. Expressões aritméticas 5.1. Conceito de Expressão O conceito de expressão em termos computacionais está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis

Leia mais

Arquivos invertidos 39

Arquivos invertidos 39 Arquivos invertidos 39 Arquivos invertidos É um mecanismo que utiliza palavras para indexar uma coleção de documentos a fim de facilitar a busca e a recuperação Estruturas de um arquivo invertido Vocabulário

Leia mais

Processamento Digital de Imagens

Processamento Digital de Imagens Processamento Digital de Imagens Aula 05 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... Unidade IV - Processamento

Leia mais

Fabio Bento

Fabio Bento Fabio Bento fbento@ifes.edu.br Códigos Binários São arranjos compostos pelos dígitos binários e para representação de dados; Não obrigatoriamente respeitam as propriedades algébricas, como os sistemas

Leia mais

Processamento de Imagens CPS755

Processamento de Imagens CPS755 Processamento de Imagens CPS755 aula 01 - geometria projetiva e transformações 2D Antonio Oliveira Ricardo Marroquim 1 / 44 laboratório de processamento de imagens tópicos geometria projetiva transformações

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Mais um tipo numérico print() formatado: clássico pythônico Tuplas

Leia mais

Organização. 1. Introdução 2. Medidas de Similaridade. hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters

Organização. 1. Introdução 2. Medidas de Similaridade. hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters Organização. Introdução 2. Medidas de Similaridade 3. Métodos de Agrupamento (métodos hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters Métodos de Partição Cada exemplo

Leia mais

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo PMR2300 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó (exceto a

Leia mais

4 Agrupamento de documentos

4 Agrupamento de documentos 4 Agrupamento de documentos É a teoria que decide o que podemos observar. Albert Einstein Um dos métodos mais utilizados de mineração de dados descritiva é conhecido como análise de grupos 23. Com ele,

Leia mais

Flávio Codeço Coelho, Bruno Cuconato TEXT ANALYTICS EM DOCUMENTOS HISTÓRICOS SENSÍVEIS: CONFIANÇA E ESCALABILIDADE 1 / 19

Flávio Codeço Coelho, Bruno Cuconato TEXT ANALYTICS EM DOCUMENTOS HISTÓRICOS SENSÍVEIS: CONFIANÇA E ESCALABILIDADE 1 / 19 TEXT ANALYTICS EM DOCUMENTOS HISTÓRICOS SENSÍVEIS: CONFIANÇA E ESCALABILIDADE Flávio Codeço Coelho Bruno Cuconato TEXT ANALYTICS EM DOCUMENTOS HISTÓRICOS SENSÍVEIS: CONFIANÇA E ESCALABILIDADE 1 / 19 Coleções,

Leia mais

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Dados em Algoritmos Quando escrevemos nossos programas, trabalhamos com: Dados que nós fornecemos ao programa Dados

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 07 Classificação com o algoritmo knn Max Pereira Classificação com o algoritmo (knn) Um algoritmo supervisionado usado para classificar

Leia mais

Estruturas de Dados Tabelas de Espalhamento

Estruturas de Dados Tabelas de Espalhamento Estruturas de Dados Tabelas de Espalhamento Prof. Eduardo Alchieri (introdução) Uma estrutura como, as árvores binárias de busca, que trabalhe na ordem de log n é muito eficiente, mas em algumas situações

Leia mais

Aprendizado por Reforço usando Aproximação

Aprendizado por Reforço usando Aproximação Aprendizado por Reforço usando Aproximação de Funções Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Aproximação de Funções 2. Do the evolution 1 Aproximação de Funções Função Utilidade

Leia mais

Implementação dos Algoritmos e Resultados

Implementação dos Algoritmos e Resultados Capítulo 6 Implementação dos Algoritmos e Resultados 6.1 Considerações Iniciais Diversas situações foram exploradas neste trabalho visando analisar qual seria a wavelet mais adequada para sistemas de extração

Leia mais

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó

Leia mais

Python: Exceções, Iteradores e Geradores. Claudio Esperança

Python: Exceções, Iteradores e Geradores. Claudio Esperança Python: Exceções, Iteradores e Geradores Claudio Esperança Exceções Quando um programa encontra dificuldades não previstas, diz se que uma condição excepcional ou uma exceção ocorreu Um erro é uma exceção

Leia mais

PreTexT II: Descrição da Reestruturação da Ferramenta de Pré-Processamento de Textos XXX RELATÓRIOS TÉCNICOS DO ICMC

PreTexT II: Descrição da Reestruturação da Ferramenta de Pré-Processamento de Textos XXX RELATÓRIOS TÉCNICOS DO ICMC Instituto de Ciências Matemáticas e de Computação ISSN - 0103-2569 PreTexT II: Descrição da Reestruturação da Ferramenta de Pré-Processamento de Textos Matheus Victor Brum Soares Ronaldo C. Prati Maria

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação

Leia mais

Fundamentos da Programação

Fundamentos da Programação Fundamentos da Programação Solução do Exame 1 de Fevereiro de 2019 09:00 11:00 1. Usando palavras suas e, no máximo, em cinco linhas responda às seguintes questões. Respostas dadas através de exemplos

Leia mais

Pré-processamento de dados

Pré-processamento de dados Pré-processamento de dados Clodoaldo A. M. Lima, Sarajane M. Peres 13 de agosto de 2015 Programa de Pós-Graduação em Sistemas de Informação Mestrado acadêmico - EACH - USP http://ppgsi.each.usp.br Clodoaldo

Leia mais

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste material e a resolução (por parte do aluno) de todos os

Leia mais

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC Regressão Linear Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Overfitting 2. Treino e Validação 3. Baseline dos modelos 1 Overfitting Overfit Em muitos casos, a amostra de dados coletada

Leia mais

Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou

Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou também denominada de tabela hashing com endereçamento aberto.

Leia mais

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas Wrapper Filtros Muitos algoritmos de AM são projetados de modo a selecionar os

Leia mais

6 Inserção Seletiva de Nulos

6 Inserção Seletiva de Nulos 6 Inserção Seletiva de Nulos 6.1 Introdução Neste capítulo será apresentado o algoritmo ADDNULLS - Inserção Seletiva de Nulos. Este algoritmo usa a técnica da esteganografia para esconder os símbolos codificados

Leia mais

Programação I Aula 19 Aritmética com racionais Pedro Vasconcelos DCC/FCUP

Programação I Aula 19 Aritmética com racionais Pedro Vasconcelos DCC/FCUP Programação I Aula 19 Aritmética com racionais DCC/FCUP DCC/FCUP 2019 1/ 30 Nesta aula 1 Aritmética com racionais 2 Simplificação 3 Operações 4 Comparações DCC/FCUP 2019 2/ 30 Aritmética com racionais

Leia mais

Modelo Espaço Vetorial. Mariella Berger

Modelo Espaço Vetorial. Mariella Berger Modelo Espaço Vetorial Mariella Berger Agenda Introdução Atribuição de Pesos Frequência TF-IDF Similaridade Exemplo Vantagens e Desvantagens Modelo Espaço Vetorial Introdução Modelo Espaço Vetorial O modelo

Leia mais

Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - Dicionário. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18

Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - Dicionário. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18 Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - 1/ 18 Considere que você precisa fazer uma função que guarde o nome e o telefone de seus amigos. Sua função também deve permitir a consulta

Leia mais

Fundamentos da Programação

Fundamentos da Programação Fundamentos da Programação Solução do exame 12 de Janeiro de 2018 09:00 11:00 1. Indique se cada uma das seguintes afirmações é verdadeira ou falsa. No caso de ser falsa, justifique de forma sucinta. (a)

Leia mais

Operador in e Caracteres

Operador in e Caracteres Operador in e Caracteres Revisão: Tipo Lógico (Booleano) Dois valores possíveis: True ( verdadeiro) e False (falso) (não esquecer a maiúscula) Curiosidades: True e False são constantes que representam

Leia mais

CIC 111 Análise e Projeto de Algoritmos II

CIC 111 Análise e Projeto de Algoritmos II CIC 111 Análise e Projeto de Algoritmos II Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 27 Square root algorithms Combining algorithms Integer partitions Mo s algorithm Square

Leia mais

Processamento de Imagens CPS755

Processamento de Imagens CPS755 Processamento de Imagens CPS755 aula 05 - sistemas lineares - parte 2 Antonio Oliveira Ricardo Marroquim 1 / 27 laboratório de processamento de imagens tópicos métodos lineares mínimos quadrados equações

Leia mais

Disciplina: Introdução à Engenharia da Computação

Disciplina: Introdução à Engenharia da Computação Colegiado de Engenharia de Computação Disciplina: Introdução à Engenharia da Computação Aula 07 (semestre 2011.2) Prof. Rosalvo Ferreira de Oliveira Neto, M.Sc. rosalvo.oliveira@univasf.edu.br 2 Representação

Leia mais

Implemente a função de remoção de uma chave na tabela hashing fechada em questão. void remover(tabela tabela, int n) {

Implemente a função de remoção de uma chave na tabela hashing fechada em questão. void remover(tabela tabela, int n) { Implemente a função de remoção de uma chave na tabela hashing fechada em questão. void remover(tabela tabela, int n) { } Tabelas de hash fechada: Exercício int posicao = buscar(tabela, n); if (posicao

Leia mais

Aprendizado de Máquina

Aprendizado de Máquina Aprendizado de Máquina Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Introdução 1 Introdução Aprendizado de Máquina Extração de conhecimento. Automatização de tarefas. Tomada de Decisões.

Leia mais

Natural Language Processing Dealing with unstructured data

Natural Language Processing Dealing with unstructured data Natural Language Processing Dealing with unstructured data Renata Vieira Joaquim Neto Rio de Janeiro - April, 219 Material em: https://bit.ly/2ygmyje Cronograma Tema: I Dia II Dia Contextualização WE Modelos

Leia mais

Consultas por Similaridade em Domínios de Dados Complexos

Consultas por Similaridade em Domínios de Dados Complexos Consultas por Similaridade em Domínios de Dados Complexos Guilherme Felipe Zabot Orientador: Profº Dr Caetano Traina Jr Roteiro Objetivo Introdução Dados Complexos Representação de Dados Complexos Extração

Leia mais

COMUNICAÇÃO DIGITAL INTRODUÇÃO À TEORIA DE INFORMAÇÃO

COMUNICAÇÃO DIGITAL INTRODUÇÃO À TEORIA DE INFORMAÇÃO COMUNICAÇÃO DIGITAL INTRODUÇÃO À TEORIA DE INFORMAÇÃO Evelio M. G. Fernández - 2011 Introdução à Teoria de Informação Em 1948, Claude Shannon publicou o trabalho A A Mathematical Theory of Communications.

Leia mais

textos documentos semi-estruturado

textos documentos semi-estruturado 1 Mineração de Textos Os estudos em Aprendizado de Máquina normalmente trabalham com dados estruturados Entretanto, uma grande quantidade de informação é armazenada em textos, que são dados semiestruturados

Leia mais