Aprendizado de máquina e redes neurais - página 47

 

CS480/680 Aula 6: Redes soma-produto (Pranav Subramani)



CS480/680 Aula 6: Redes soma-produto (Pranav Subramani)

A palestra discute os conceitos de redes soma-produto (SPN), que são redes compostas de somas e produtos, usadas para modelagem probabilística tratável que produz tempos de execução não exponenciais e tem muitas aplicações, como interpretabilidade e fácil cálculo de densidade marginal. O vídeo também menciona o excelente desempenho do SPN com redes neurais convolucionais, seu potencial na construção de modelos generativos melhores quando combinados com modelos como GANs e codificadores de variação de água, e as áreas de pesquisa potenciais inexploradas para SPNs, incluindo robustez adversária, cenários de aprendizado por reforço e utilidades esperadas de modelagem em jogos. A garantia teórica de interpretação do modelo e a oportunidade de acadêmicos fazerem contribuições significativas na área de aprendizado de máquina também foram destacadas.

  • 00:00:00 Nesta seção, o palestrante discute a modelagem probabilística tratável usando algumas redes de produtos, que são redes compostas de somas e produtos - daí 'soma-produto' - e são uma maneira tratável de modelar a função de probabilidade de uma maneira que produza tempos de execução não exponenciais. Apesar de seu tamanho, os modelos de rede soma-produto são super úteis em termos de expressividade, interpretabilidade, fácil cálculo de densidade marginal, cálculo de consulta MAP e cálculo de probabilidade, além de mostrar excelente desempenho em combinação com redes neurais convolucionais. Esses modelos mostraram ser capazes de superar o estado da arte em cerca de 10% e podem ser combinados com outros modelos como Gans e codificadores de variação de água para criar melhores modelos generativos.

  • 00:05:00 Nesta seção, o palestrante discute as potenciais áreas de pesquisa para algumas redes de produtos (SPNs). O palestrante primeiro apresenta algumas propriedades éticas, que permitem a interpretação de modelos e conjuntos de dados como o "conjunto de dados da Anistia". Ao contrário das redes neurais, este modelo fornece uma garantia teórica que permite interpretar o que o modelo está fazendo até certo ponto. Algumas áreas de pesquisa em potencial para SPNs incluem a criação de recursos sobre a biblioteca primária para SPNs, robustez adversária, cenários de aprendizado por reforço com algumas redes de produto máximo e modelagem de utilidades esperadas em jogos. Essas áreas de pesquisa são praticamente inexploradas, oferecendo uma oportunidade para os acadêmicos fazerem contribuições significativas no campo do aprendizado de máquina.
 

CS480/680 Aula 6: EM e modelos de mistura (Guojun Zhang)



CS480/680 Aula 6: EM e modelos de mistura (Guojun Zhang)

Na aula 6 do CS480/680, o professor Guojun Zhang discute os fundamentos do aprendizado não supervisionado e agrupamento, com foco em modelos de mistura e seu uso em agrupamento de dados. A palestra gira em torno do algoritmo Expectation-Maximization e seus processos Estep e Mstep, bem como gradiente descendente como um método de otimização. O potencial projeto proposto envolve estudar como EM e gradiente descendente se comportam em modelos de mistura de aprendizagem, com o objetivo final de propor um algoritmo melhor para evitar mínimos locais ruins. Um conhecimento matemático é apontado como necessário para o projeto.

  • 00:00:00 Nesta seção, Cody apresenta os fundamentos do aprendizado e agrupamento não supervisionados e como eles se relacionam com modelos de mistura. Um modelo de mistura é uma maneira de descrever uma distribuição de probabilidade como uma combinação convexa de distribuições condicionais. Por exemplo, a mistura de distribuições gaussianas e a mistura de distribuições de Bernoulli podem ser usadas para agrupar dados. Para encontrar uma solução para modelos de mistura, precisamos formular uma função objetivo para minimizar. O algoritmo clássico para isso é o algoritmo Expectation-Maximization.

  • 00:05:00 Nesta seção, o palestrante fala sobre os processos Estep e Mstep que são usados para avaliar a distribuição a posteriori e maximizar a função q na otimização de modelos de mistura. A descida do gradiente é outro algoritmo de otimização que é discutido e observa-se que existem alguns clusters que podem não ser recuperados no processo de otimização. O potencial projeto proposto é estudar como EM e gradiente descendente se comportam em modelos de mistura de aprendizagem e se existe uma maneira de evitar mínimos locais ruins, com o objetivo final de propor um algoritmo melhor. O professor observa que um conhecimento matemático é necessário para este projeto.
 

CS480/680 Aula 6: Compressão de modelo para PNL (Ashutosh Adhikari)



CS480/680 Aula 6: Compressão de modelo para PNL (Ashutosh Adhikari)

Neste vídeo, o apresentador discute o conceito de compressão de modelo para NLP e os desafios de tempo de processamento e requisitos de memória à medida que o número e a profundidade das redes neurais profundas aumentam. As técnicas de compressão de modelo são categorizadas e o método mais antigo, corte e compartilhamento de parâmetros, é apresentado. O palestrante elabora ainda mais o conceito de um sistema aluno-professor para compressão de modelo em NLP e como a função objetiva é usada para comprimir um modelo maior em um modelo menor de aluno, mantendo a precisão. Por fim, destaca-se a importância potencial de comprimir modelos no contexto de trabalhos recentes sobre o desenvolvimento de modelos de PNL em larga escala.

  • 00:00:00 Nesta seção, o apresentador do vídeo discute a questão da compressão do modelo à medida que o número e a profundidade das redes neurais profundas aumentam, junto com seu tempo de processamento e requisitos de memória. O objetivo é reduzir o número de parâmetros necessários em redes neurais, mantendo a precisão e o conhecimento para permitir uma implantação mais rápida e eficiente em aplicativos online. As técnicas de compressão de modelos são categorizadas e o apresentador se aprofunda no método mais antigo: corte e compartilhamento de parâmetros, desenvolvido por Yann LeCun em 1990. A apresentação também aborda técnicas de corte de canal, que tiveram sucesso com redes neurais convolucionais em visão computacional, mas menos explorada com modelos de PNL. Por fim, o apresentador destaca a importância potencial de comprimir modelos no contexto de trabalhos recentes sobre o desenvolvimento de modelos de larga escala para tarefas de PNL.

  • 00:05:00 Nesta seção, o palestrante apresenta o conceito de um sistema aluno-professor para compressão de modelos em PNL. O modelo do professor é um modelo maior que é usado para extrair representações e compactar em um modelo menor do aluno. A função objetivo é usada para ajudar a rede do aluno a capturar todas as representações aprendidas pela rede do professor junto com o objetivo da classificação. Embora os métodos de poda e compartilhamento não tenham sido explorados em detalhes, os mecanismos de atenção e os transformadores serão abordados em palestras futuras. O palestrante observa que esses modelos enormes são basicamente transformadores no núcleo, aplicados repetidamente.
 

CS480/680 Aula 7: Mistura de Gaussianas



CS480/680 Aula 7: Mistura de Gaussianas

Nesta palestra sobre mistura de gaussianas, o palestrante explica como o modelo pode ser utilizado para classificação construindo uma distribuição a priori para cada classe, o que possibilita a construção de um modelo probabilístico utilizando o teorema de Bayes para estimar a probabilidade de uma classe para um determinado ponto de dados. A palestra também aborda o processo de cálculo da probabilidade de um ponto de dados pertencer a uma determinada classe e como isso é usado para determinar a previsão da classe. As notas de aula exploram a relação entre a função softmax e a distribuição de arco máximo e como a forma e os limites do gaussiano são determinados pela matriz de covariância. Finalmente, a palestra detalha o processo de aprendizado de máxima verossimilhança e como ele pode ser usado para estimar a média e a matriz de covariância para uma mistura de modelo gaussiano.

  • 00:00:00 Nesta seção, o palestrante discute o uso de misturas de gaussianas para classificação, que é um modelo estatístico da família dos modelos generativos. Eles explicam como as distribuições gaussianas são usadas para modelar imprecisão e ruído em dados, que podem ser usados para simular a criação de um conjunto de dados para aplicativos como geração de texto e imagem. A palestra fornece um exemplo de regressão linear e como ela também pode ser convertida em um modelo generativo por meio do uso de distribuições gaussianas.

  • 00:05:00 Nesta seção, o palestrante discute a possibilidade de gerar imagens semelhantes de pessoas por meio de um modelo que possa gerar dados semelhantes ao conjunto de treinamento. O professor usa a regressão linear como exemplo e depois passa para a classificação, onde é construída uma distribuição a priori para cada turma. Com base nessa ideia, um modelo probabilístico pode ser construído usando o teorema de Bayes para estimar a probabilidade da classe para um determinado ponto de dados. A palestra enfatiza que não se trata de aprendizado bayesiano, mas sim de inferência bayesiana.

  • 00:10:00 Nesta seção, o instrutor discute as suposições feitas no modelo de mistura de gaussianos e como usar a inferência bayesiana para calcular a probabilidade posterior de uma classe. O modelo assume que existe um número finito de classes categóricas, que podem ser representadas por meio de uma distribuição multinomial. A distribuição condicional de classe é assumida como uma distribuição Gaussiana com a mesma matriz de covariância para cada classe. A verossimilhança é um produto da distribuição condicional a priori e de classe, que pode ser simplificada cancelando o primeiro termo que não depende da classe. Essa simplificação é possível devido à suposição da mesma matriz de covariância para todas as classes, embora nem sempre seja válida em geral.

  • 00:15:00 Nesta seção, o palestrante explica como o posterior pode ser expresso como uma função sigmóide logística, que é particularmente popular em redes neurais, pois aceita qualquer número real e produz uma saída entre 0 e 1. Eles derivam a expressão para o posterior e mostre que ele pode ser expresso como W(transpor)X + W_0 onde W é o coeficiente de x e W_0 é a parte constante que não depende de X. A função logística tem uma definição particular e é usada para produzir uma saída que pode ser interpretada como uma probabilidade.

  • 00:20:00 Nesta seção, o palestrante discute o uso da função logística no contexto de misturas de gaussianas. A função logística é usada para espremer a saída entre 0 e 1, e sua definição particular pode ser obtida tratando os coeficientes de X como parâmetros e a parte constante como W zero. A média e a matriz de covariância, bem como as probabilidades de classe, podem ser combinadas para fornecer os parâmetros desejados. Isso ajuda a calcular a probabilidade posterior de um ponto de dados pertencente a uma classe específica. O palestrante também explica o uso de condicionais de classe, representados por distribuições gaussianas, para encontrar as probabilidades de classe dos pontos de dados. Esses condicionais de classe podem ter formatos de sino diferentes, e o posterior teria uma probabilidade maior para a classe que corresponde ao ponto de dados.

  • 00:25:00 Nesta seção do vídeo, o palestrante explica como a probabilidade de um ponto de dados pertencer a uma determinada classe é calculada para uma mistura de modelos gaussianos. Se as médias das duas gaussianas forem diferentes e assumirmos que têm a mesma matriz de covariância, dependendo da localização do ponto, naturalmente terá maior probabilidade de pertencer à classe cuja gaussiana tem uma média mais próxima do ponto. Uma fórmula é fornecida para as distribuições condicionais de classe e, uma vez calculada a posteriori, uma previsão de classe pode ser feita com base na probabilidade dessa classe ser maior que 0,5. O palestrante também mostra os limites entre as duas classes, o que é interessante ao fazer previsões.

  • 00:30:00 Nesta seção, a palestra explora o limite de classe do uso de misturas de gaussianos e como o limite se parece, assumindo que existem dois gaussianos e eles têm a mesma matriz de covariância. O limite ocorre na probabilidade em que cada classe é a mesma (0,5). Isso simplifica para W transpor X bar = 0, o que significa que o separador é linear. Este é um modelo simples e um separador linear, e é usado quando há duas classes. Quando há mais de duas classes, a mesma computação é feita, e o resultado é a função softmax, que também é comumente usada em redes neurais e tem suas raízes na mistura de computações gaussianas.

  • 00:35:00 Nesta seção, o palestrante explica a relação entre a função softmax e a distribuição arc max e por que ela é chamada de softmax. A distribuição arc max atribui probabilidade um para o classificador com o valor mais alto e zero para todas as outras classes, enquanto a função softmax fornece uma versão mais suave disso atribuindo probabilidades diferentes de zero a todas as classes. A função exponencial surge ao considerar misturas de gaussianas e calcular a distribuição posterior para múltiplas classes. Os limites das diferentes classes também podem ser mostrados na distribuição posterior. As notas de aula explicam que a função softmax é amplamente utilizada em redes neurais para determinar a classe de saída.

  • 00:40:00 Nesta seção, o palestrante explica como a forma e os limites do gaussiano são determinados pela matriz de covariância e como isso afeta a separação de classes. Usando diferentes matrizes de covariância, limites não lineares podem ser criados, enquanto o uso da mesma resultará em limites lineares. O palestrante também discute como estimar as potências do modelo de mistura de gaussianos, ou seja, pi, mu 1, mu 2 e sigma, que representam a probabilidade de cada classe, a média dos gaussianos e a matriz de covariância de ruído, respectivamente. Para isso, utiliza-se o método da máxima verossimilhança.

  • 00:45:00 Nesta seção, o palestrante explica o processo de aprendizado de máxima verossimilhança onde o problema principal é encontrar as potências do modelo que maximizam a verossimilhança dos dados. Para resolver este problema de otimização, o professor pega o logaritmo da expressão para simplificá-la. A expressão resultante parece complicada, mas na verdade é boa e tem uma forma côncava com um único ótimo global. Esse método permite a combinação de condicionais de classe para as duas classes em uma expressão usando rótulos convenientes para as classes de 0 e 1.

  • 00:50:00 Nesta seção da palestra, o palestrante discute como a maximização da função log-verossimilhança corresponde a uma função côncava, que pode ser otimizada para obter a média amostral e média empírica dos dados para cada classe em um mistura do modelo gaussiano. A probabilidade de cada classe pode ser estimada tomando a fração de dados pertencente a essa classe, que é uma abordagem intuitiva que é confirmada pelo princípio da máxima verossimilhança. Da mesma forma, a média das entradas para cada classe pode ser estimada tomando a soma de todos os pontos de dados e dividindo-a pelo número de pontos naquela classe. Essas estimativas fornecem uma justificativa formal para a abordagem intuitiva para estimar esses parâmetros.

  • 00:55:00 Nesta seção, o palestrante discute o processo de estimativa da média e da matriz de covariância para uma mistura de modelo gaussiano usando aprendizado de máxima verossimilhança. Os dados de saída de destino são fornecidos e a função de verossimilhança é maximizada para determinar os valores corretos para a média e a matriz de covariância. Ao estimar a matriz de covariância, é feita uma combinação linear das matrizes de covariância empíricas para cada classe, que é ponderada pelo número de pontos de dados pertencentes a cada classe. O palestrante esclarece que, embora a inferência bayesiana e o aprendizado de máxima verossimilhança sejam usados nesse processo, a primeira parte da discussão não foi o aprendizado, mas sim a inferência usando o teorema de Bayes.

  • 01:00:00 Nesta seção, o palestrante explica que a parte de aprendizado de máquina da mistura de gaussianos envolve a determinação das potências necessárias para cada recurso no modelo gaussiano. Eles usam o aprendizado de máxima verossimilhança para fazer isso, mas o aprendizado bayesiano também é possível. No entanto, a palestra abordará apenas o aprendizado de máxima verossimilhança. O palestrante conclui a seção e afirma que a próxima aula abordará uma extensão desse tópico para classificação.
 

CS480/680 Aula 8: Regressão logística e modelos lineares generalizados



CS480/680 Aula 8: Regressão logística e modelos lineares generalizados

Esta primeira parte da palestra sobre "CS480/680: Regressão Logística e Modelos Lineares Generalizados" apresenta a ideia da família exponencial de distribuições e sua relação com a regressão logística, uma poderosa técnica utilizada para problemas de classificação. A palestra explica que a regressão logística visa ajustar a melhor função logística que modela a posterior para um determinado conjunto de dados, e para problemas com poucas dimensões e pesos, o método de Newton pode ser usado para encontrar o mínimo da função objetivo, que é uma função convexa função. O instrutor também destaca a importância da regressão logística em sistemas de recomendação e colocação de anúncios, onde a simplicidade e eficiência da técnica a tornam ideal para fazer recomendações personalizadas com base nas características e comportamentos do usuário.

A palestra também aborda o tema da regressão logística e modelos lineares generalizados. O instrutor discute as limitações do método de Newton para regressão logística, como a questão do overfitting causado por pesos grandes arbitrários e problemas de singularidade na matriz Hessiana. Para evitar overfitting, a regularização é sugerida. O instrutor apresenta modelos lineares generalizados (GLMs) que podem ser usados para trabalhar com separadores não lineares de forma eficiente. Os GLMs envolvem o mapeamento das entradas para um novo espaço onde a regressão linear e a classificação podem ser feitas de maneira não linear, desde que o mapeamento seja não linear. A palestra também cobre funções básicas e seus tipos que podem ser usados para realizar regressão não linear e classificação.

  • 00:00:00 Nesta seção do vídeo, a palestra discute as limitações do modelo estatístico para classificação baseado em misturas de gaussianas, que assume uma distribuição gaussiana. Para lidar com essa limitação, eles introduziram uma ampla classe de distribuições conhecida como família exponencial, levando ao desenvolvimento de uma técnica poderosa e flexível chamada regressão logística. A palestra desenha no quadro para ilustrar misturas de gaussianas e explica que esse método é adequado quando os dados formam aglomerados de uma determinada forma. No entanto, se os dados não tiverem essa forma, a suposição de uma distribuição Gaussiana precisa ser relaxada. A palestra apresenta a ideia da família exponencial de distribuições e explica sua importância no desenvolvimento da regressão logística.

  • 00:05:00 Nesta seção, o palestrante discute a Família Exponencial, que inclui muitas distribuições famosas, como Bernoulli, Poisson e Gamma. A família é chamada exponencial porque a função de densidade do produto tem um exponencial e o expoente tem um termo linear em teta, alguns termos em X e outros termos em teta e X. A chave para as diferentes distribuições na família são as funções precisas T de X, a de teta e B de X. A beleza dessa família é que qualquer distribuição nela pode ser reescrita na forma de uma função logística sigmoide. Esta característica permite ao locutor introduzir modelos discriminativos probabilísticos, onde se pretende estimar diretamente os parâmetros da função logística, em vez de fazer suposições sobre os dados serem perturbados com algum ruído e estimar os parâmetros da distribuição associada.

  • 00:10:00 Nesta seção, aprendemos sobre regressão logística, que é uma técnica usada para ajustar ou encontrar a melhor função logística que modela a posteriori para um determinado conjunto de dados. A posterior segue a distribuição softmax sempre que houver várias classes. Gostaríamos de encontrar o W que maximiza o posterior dado alguns dados. Este problema de otimização é convertido em um problema de minimização pela introdução de um sinal negativo. O objetivo é encontrar o melhor W que garanta que a probabilidade da classe Y correta seja a mais alta possível para a maioria dos pontos de dados.

  • 00:15:00 Nesta seção, o instrutor discute a regressão logística e como ela pode ser usada para problemas de classificação. O objetivo é encontrar o W que minimize o subjetivo, mas é importante observar que, embora essa técnica seja chamada de regressão logística, na verdade é um problema de classificação. Porém, a ideia é que a regressão logística é uma forma de regressão porque estamos tentando estimar a probabilidade posterior da classe dado X, que é um valor numérico. O instrutor explica que é necessário um método iterativo para resolver esse problema de otimização, pois não há como isolar a variável na expressão de forma fechada.

  • 00:20:00 Nesta seção da palestra, o instrutor discute como lidar com a equação não linear na regressão logística. A função objetivo da regressão logística se mostra uma função convexa, tornando mais fácil encontrar o ótimo global. O instrutor explica que métodos iterativos, como gradiente descendente ou método de Newton, podem ser usados para encontrar o mínimo da função objetivo. Embora a descida do gradiente possa ser usada, ela não é eficiente e é difícil determinar o tamanho correto do degrau. O método de Newton é muito mais rápido e requer menos etapas, tornando-o uma escolha popular para otimização.

  • 00:25:00 Nesta seção da palestra, o palestrante discute um método chamado método de Newton para regressão logística, que é uma melhoria em relação ao gradiente descendente. O método de Newton envolve começar com uma suposição inicial para W e então subtrair de W o inverso do Hessian vezes o gradiente da última função. Esse método envolve essencialmente três mínimos quadrados ponderados iterados e aproxima o objetivo com uma função quadrática em vez de uma linha, permitindo uma melhor aproximação da curva e uma convergência mais rápida. A beleza desse método é que cada vez que uma função quadrática é aproximada, o mínimo pode ser resolvido de forma otimizada na forma fechada, eliminando a necessidade de calcular um comprimento de passo.

  • 00:30:00 Nesta seção, o palestrante apresenta o método de Newton, que é um método de otimização de segunda ordem que aproxima uma função com uma quadrática em cada etapa, encontra o mínimo dessa curva quadrática e reajusta a função. Isso é diferente da descida do gradiente, que envolve a minimização de uma função quadrática. O método de Newton pode ser muito mais rápido e preciso, pois a função quadrática ajusta a curva melhor do que uma regressão linear geral, mas requer o cálculo do Hessian, que inclui todas as derivadas de segunda ordem e pode ser caro em problemas de alta dimensão. Portanto, é mais adequado para problemas com poucas dimensões e pesos.

  • 00:35:00 Nesta seção, o instrutor explica o raciocínio por trás da aproximação da complicada função não linear da regressão logística com uma função quadrática usando o método de Newton. Embora a descida do gradiente seja mais barata, aproximar com uma função quadrática é um ajuste melhor, permitindo passos melhores. Também é computacionalmente factível encontrar o mínimo de uma função quadrática. Não é garantido que o método de Newton encontre o ótimo global para objetivos não convexos, mas como a função da regressão logística é convexa, existe um único ótimo global e o método de Newton pode começar em qualquer lugar. A principal coisa que precisa ser calculada para aplicar o método de Newton é o Hessian, que pode ser obtido por meio de uma derivação resultando em uma expressão envolvendo o conjunto de dados com uma linha de uns e uma matriz diagonal de Sigmas.

  • 00:40:00 Nesta seção, o instrutor discute a regressão logística e sua importância como técnica de aprendizado de máquina, principalmente para sistemas de recomendação e posicionamento de anúncios. A regressão logística é usada para fazer recomendações aos usuários, como recomendações de produtos ou recomendações de anúncios. A ideia é mostrar anúncios com alta probabilidade de serem clicados pelo usuário, e isso pode ser modelado como um problema de classificação. O instrutor também apresenta a estrutura do Hessian e como obtê-lo usando a fórmula, que é importante para programar a regressão logística e aplicar o método de Newton. Embora alguns alunos possam achar a matemática complicada, é essencial entender esses métodos para ver como eles surgem e por que funcionam.

  • 00:45:00 Nesta seção, o conceito de regressão logística é explicado como um método para fazer recomendações aos usuários, como produtos ou aplicativos, com base em suas características e comportamentos. A regressão logística costuma ser usada para esses tipos de problemas porque é simples, flexível e eficiente de implementar, com previsões baseadas no cálculo de um produto escalar. Exemplos de recursos que podem ser levados em consideração para fazer recomendações incluem se determinados aplicativos já foram baixados e instalados, idade, sexo, localização e qualquer outra informação relevante que a empresa ou smartphone tenha sobre o usuário.

  • 00:50:00 Nesta seção, o palestrante explica como a regressão logística pode ser usada para problemas de classificação com duas classes, onde a probabilidade de um evento ocorrer é maior ou igual a 0,5. Se houver várias classes, uma distribuição softmax pode ser usada, com um vetor W para cada classe K. O palestrante destaca que a regressão logística torna a previsão simples, pois envolve apenas o cálculo de um produto escalar, e isso pode ser feito de forma eficiente explorando a esparsidade e paralisando parte da computação.

  • 00:55:00 Nesta seção, o palestrante discute a eficiência da regressão logística e como ela pode ser executada em dispositivos com poucos recursos, explorando a dispersão e paralelizando a computação. O cálculo do produto escalar pode ignorar entradas zero, tornando os vetores longos contendo milhões de entradas mais rápidos para calcular. O modelo de aprendizado também pode ser paralelizado com uma GPU, o que é ideal para sistemas como sistemas de recomendação que exigem previsões rápidas e escaláveis. Além disso, expandir os recursos é fácil e requer apenas dimensionamento em vez de redesenhar tudo.

  • 01:00:00 Nesta seção, o professor discute as limitações do método de Newton para regressão logística e a questão do overfitting. Embora o método de Newton seja uma técnica de otimização rápida, não é escalável para grandes conjuntos de dados e milhões de recursos. A regressão logística tende a se ajustar facilmente devido à sua otimização convexa, que encontra o ótimo global que se ajusta muito bem aos dados. O overfitting pode causar singularidades na matriz Hessiana, impossibilitando a aplicação do método de Newton. A função sigmóide da regressão logística vai de zero a um, mas nunca atinge um assintoticamente, portanto, para atingir uma probabilidade próxima a um, a transposição W da barra X deve ser arbitrariamente grande, o que resulta em overfitting.

  • 01:05:00 Nesta seção, o palestrante discute a questão do overfitting em modelos de regressão logística. Eles explicam que quando W transpõe X barra vai para o infinito, a magnitude de W também vai para o infinito, o que pode resultar em pesos se tornando arbitrariamente grandes. Além disso, o Hessian tenderá a zero devido à função sigmoide, dificultando a aplicação do método de Newton porque o cálculo do inverso do Hessian não será possível numericamente. Para evitar overfitting, o palestrante sugere o uso de regularização, onde um termo de penalidade é adicionado para minimizar a magnitude dos pesos. Isso também ajuda a evitar problemas de singularidade.

  • 01:10:00 Nesta seção do vídeo, o instrutor discute como evitar o overfitting em regressão logística e modelos lineares generalizados adicionando um termo de penalidade usando o método de Newton. No entanto, uma limitação da regressão logística é que o limite entre as classes é sempre linear. Para superar essa limitação e trabalhar com separadores não lineares, o instrutor apresenta modelos lineares generalizados, que envolvem o mapeamento das entradas para um novo espaço onde a regressão linear e a classificação podem ser feitas de maneira não linear, desde que o mapeamento seja não linear. linear. Essa abordagem simples permite que a generalização de modelos lineares funcione em configurações não lineares e serve como base para os métodos do kernel que são abordados posteriormente no curso.

  • 01:15:00 Nesta seção, o palestrante discute como aproximar uma função usando regressão não linear e modelos lineares generalizados. A ideia é mapear os dados do espaço original para um novo espaço, usando uma função de mapeamento denotada por Phi, que mapeia cada entrada X em um novo recurso. A função de mapeamento denota uma função de base que pode capturar não linearidades definindo um mapeamento que permitirá ao usuário mover de qualquer espaço original para um novo espaço, tornando-o não linear. O objetivo é encontrar coeficientes como pesos para obter a melhor função e esse espaço de hipótese. Por fim, usando essa técnica, podemos realizar regressão linear ou classificação enquanto capturamos implicitamente as não linearidades no espaço original.

  • 01:20:00 Nesta seção, o instrutor explica como usar regressão logística e modelos lineares generalizados para classificar pontos de dados. O processo envolve mapear o espaço de entrada em um espaço de dimensão superior usando funções de base e, em seguida, procurar o hiperplano ideal para separar os dados nessa dimensão superior. O instrutor destaca que é necessário conhecimento prévio sobre o possível espaço de funções para escolher funções de base apropriadas, mas existem técnicas disponíveis para aprender funções de base. Além disso, o instrutor explica como os pesos no modelo definem o vetor normal ao hiperplano.

  • 01:25:00 Nesta seção, o palestrante discute as funções de base e seus tipos, que podem ser usadas para regressão logística e modelos lineares generalizados. O palestrante primeiro introduz funções de base polinomial, pois elas podem ser usadas para expandir funções polinomiais tomando todas as potências de X até um certo grau. O palestrante apresenta então dois exemplos de funções de base não lineares: funções gaussianas e funções sigmóides. As funções de base gaussiana podem ser usadas alterando mu e s, onde mu indica a posição da saliência no eixo x e s mostra a largura da saliência. As funções sigmoides são funções não lineares, mas não distribuições de probabilidade e podem ser usadas com Sigma hat aplicado a X menos mu J dividido por s como a função base. Outras funções não lineares que podem ser usadas como funções de base incluem wavelets, senos e cossenos.

  • 01:30:00 Nesta seção da palestra, o palestrante discute como generalizar modelos lineares para executar implicitamente regressão e classificação não linear. Ao substituir a variável de entrada X por Phi de X, que é a entrada em um novo espaço, várias funções não lineares podem ser utilizadas. A função Phi pode ser aplicada a diferentes partes da entrada original X e pode ser usada para capturar a função subjacente usando um conjunto de funções de base, como polinômios ou gaussianos. Isso conclui o tópico, que fornece uma compreensão fundamental da regressão logística não linear e dos modelos lineares generalizados.
 

CS480/680 Aula 9: Perceptrons e redes neurais de camada única



CS480/680 Aula 9: Perceptrons e redes neurais de camada única

Esta palestra apresenta redes neurais com foco no tipo elementar, o perceptron, que produz um separador linear para classificação. A palestra explora como os pesos são usados para calcular uma combinação linear de entradas que passam por uma função de ativação para produzir saídas, e como diferentes pesos podem ser usados para aproximar portas lógicas como portas AND, OR e NOT. O palestrante discute a rede neural feedforward e como o algoritmo de aprendizado perceptron é usado para classificação binária e como a descida de gradiente pode otimizar pesos. As limitações do uso de uma linha para separar os dados são discutidas e a função de ativação sigmóide logística é apresentada como uma possível solução, com foco em como os pesos podem ser treinados usando a função de ativação sigmóide logística.

Esta palestra sobre Perceptrons e redes neurais de camada única aborda o uso de funções logísticas de ativação sigmoide para minimizar o erro quadrado e a introdução da taxa de aprendizado como um parâmetro crucial na descida de gradiente sequencial. O palestrante também demonstra como as redes neurais com várias camadas podem ser compostas para aproximar qualquer função arbitrariamente usando funções de retenção de lixo e como a retropropagação pode ser usada para treinar uma rede para aprender funções arbitrárias. O instrutor enfatiza a versatilidade e eficiência das redes neurais, citando seu uso generalizado na solução de vários problemas, como reconhecimento de fala, visão computacional, tradução automática e incorporação de palavras.

  • 00:00:00 Nesta seção da palestra, o foco é uma breve introdução às redes neurais, com ênfase particular no perceptron, que é um tipo elementar de rede neural que não possui camadas ocultas. Ele produz um separador linear para classificação e desempenha um papel crucial na história das redes neurais. Mais tarde, formas mais complexas de redes neurais tornam-se mais generalizadas. A palestra também aborda como o cérebro funciona e como ele pode ser emulado por meio da computação. Enquanto o cérebro é composto por neurônios, o computador funciona por meio de portas lógicas que se comunicam por meio de um sinal elétrico, o que torna a computação sequencial. No entanto, os sinais do cérebro se propagam paralelamente, tornando-o mais robusto.

  • 00:05:00 Nesta seção, o palestrante discute a fragilidade dos computadores em comparação com o cérebro humano e como as redes neurais tentam emular a organização do cérebro. As redes neurais consistem em nós chamados de unidades, que correspondem aos neurônios em uma rede neural real, e links que correspondem às sinapses. A computação é feita através de sinais numéricos, que são transmitidos entre as unidades. O objetivo é ativar os neurônios quando o padrão correto é inserido, permitindo uma computação mais robusta que pode lidar com a exclusão de alguns neurônios usando técnicas de regularização. A inspiração para redes neurais vem da organização e propagação de sinais químicos em redes neurais biológicas reais.

  • 00:10:00 Nesta seção, o palestrante explica como os pesos são usados em redes neurais para calcular uma combinação linear de entradas e produzir um novo sinal. Este novo sinal é então passado por uma função de ativação, que aplica alguma não linearidade para produzir a saída. Cada nó da rede recebe entradas, redimensiona-as com pesos e aplica a função de ativação para produzir uma saída que é então repassada para os próximos nós da rede. O palestrante enfatiza que os pesos são cruciais para o comportamento da rede e podem ser ajustados durante o aprendizado para melhorar o desempenho.

  • 00:15:00 Nesta seção, o palestrante discute como as unidades em uma rede neural calculam uma função não linear de uma combinação linear das entradas com base nos pesos atribuídos a cada entrada. As próprias entradas podem ser nós anteriores que passaram por uma função de ativação não linear. Em vez de criar funções básicas para mapear entradas para um novo espaço, as redes neurais permitem que parte da rede aprenda como remapear as entradas para um novo espaço. Funções de ativação não lineares são necessárias para tornar a rede mais expressiva, e o palestrante explica dois exemplos populares de tais funções: a função de ativação de limite e a função sigmoide.

  • 00:20:00 Nesta seção da palestra, o professor discute o uso de funções de ativação em redes neurais, especificamente a função de retenção de lixo e a função sigmoide. Ele explica que, embora a função de retenção de lixo seja útil para gerar 0s e 1s, ela não é suave e contínua, o que pode dificultar o uso com métodos baseados em gradiente. A função sigmóide é uma versão suave da função de retenção de lixo e tem a mesma forma, mas pode ser ajustada em inclinação. O professor então explora o projeto de unidades em redes neurais que podem emular portas básicas como as portas AND, OR e NOT. Ele demonstra um exemplo de unidade com função de acionamento de lixeiras que pode emular a porta NAND e questiona se é possível criar alguns pesos para permitir uma saída que corresponda ao final das entradas.

  • 00:25:00 Nesta seção, o palestrante discute como diferentes pesos podem ser usados em uma rede neural perceptron para emular portas lógicas, como as portas end, or e not. Ajustando os pesos usados no perceptron, a rede neural pode ser projetada para produzir a saída da tabela de verdade desejada para cada uma dessas portas. O palestrante fornece exemplos de diferentes pesos que podem ser usados para emular cada uma das portas lógicas, incluindo pesos para a porta final, ou porta, e não porta.

  • 00:30:00 Nesta seção, o palestrante discute duas grandes classes de redes: redes neurais feed-forward, que consistem em um gráfico direcionado de nós que fluem em uma direção; e redes neurais recorrentes, que são de natureza cíclica e são úteis para lidar com entradas de comprimentos variados, tornando-as populares no processamento de linguagem natural. O palestrante se concentra em redes neurais feed-forward e desenha um exemplo simples com duas unidades de entrada, uma camada oculta com duas unidades e uma unidade de saída. Ao alterar os pesos das conexões entre as camadas, eles explicam que é possível emular o fim, ou e as unidades do nó, permitindo a aproximação de qualquer função booleana.

  • 00:35:00 Nesta seção, o palestrante explica o conceito de um perceptron, que é essencialmente uma rede neural feedforward simples de camada única usada para classificação binária. O algoritmo para treinar um perceptron é discutido, onde cada unidade de saída é treinada separadamente, percorrendo o conjunto de dados para cada par XY e ajustando os pesos com base em se a saída produzida está correta ou não. A palestra também discute o uso da representação matricial para pesos em redes neurais.

  • 00:40:00 Nesta seção, o professor explica o algoritmo de aprendizado perceptron que é usado para lidar com unidades que passam por uma função de limite. O algoritmo aplica uma regra muito simples em que, se o cálculo da rede estiver correto, os pesos podem ser mantidos os mesmos, mas se a saída estiver incorreta, os ajustes devem ser feitos simplesmente adicionando a entrada X aos pesos ou subtraindo-a , dependendo da saída. O objetivo é aumentar a combinação linear de entradas e pesos se a saída for positiva ou diminuí-la se for negativa para que o perceptron calcule uma saída que esteja mais próxima da resposta correta. A chave é aproveitar o fato de que a função de retenção de lixo retorna 1 quando a combinação linear é positiva e 0 quando é negativa.

  • 00:45:00 Nesta seção, o palestrante discute o uso de gradiente descendente para otimizar os pesos de um algoritmo perceptron. Uma função de perda é definida como o erro de classificação incorreta, onde para cada ponto de dados X e Y, é considerado classificado incorretamente quando o produto de YW transposto X é negativo. Espera-se que um ponto seja positivo se pertencer à classe 1 e negativo se pertencer à classe -1. Os pontos mal classificados são somados para obter um objetivo que pode ser minimizado. O gradiente é então calculado em relação ao objetivo de dar um passo na direção oposta do gradiente para otimização.

  • 00:50:00 Nesta seção da palestra sobre perceptrons e redes neurais de camada única, o professor discute o uso de gradiente descendente com processamento sequencial para atualizar pesos no algoritmo perceptron. O algoritmo depende de dados linearmente separáveis para eventualmente classificar corretamente todas as instâncias de treinamento. Um teorema é apresentado afirmando que o algoritmo de aprendizado do perceptron de limiar convergirá se e somente se os dados forem linearmente separáveis. A seção termina com uma explicação e visualização de dados linearmente separáveis versus dados não linearmente separáveis.

  • 00:55:00 Nesta seção da palestra, o professor discute as limitações de tentar separar um conjunto de dados com uma linha e apresenta a possibilidade de usar uma função de ativação sigmoide logística em vez da função de ativação de limite. O sigmóide logístico pode ser não linear, mas ainda produz um separador linear no ponto onde a probabilidade é 0,5 para cada classe. Portanto, usar o sigmóide logístico ainda nos dá um separador linear e um espaço de hipótese que é o mesmo que a regressão logística. O professor então aborda a questão de como treinar os pesos do perceptron com a função de ativação sigmoide logística.

  • 01:00:00 Nesta seção, o palestrante discute a abordagem para definir um objetivo e minimizar o erro quadrado em perceptrons com funções de ativação sigmoide logística. Eles explicam que o algoritmo para máxima verossimilhança é essencialmente o mesmo que a regressão logística, enquanto minimizar o erro quadrado requer encontrar o gradiente e dar passos na direção dele. Eles também introduzem a ideia de usar uma taxa de aprendizado para definir o tamanho do passo na descida do gradiente sequencial e mencionam que é um parâmetro crítico que muitas vezes precisa ser ajustado. O palestrante sugere que tomar medidas em relação a mini-lotes de pontos de dados ou apenas um ponto de dados é comum na prática.

  • 01:05:00 Nesta seção, o palestrante explica como redes neurais com múltiplas camadas podem aproximar arbitrariamente qualquer função. Ao compor neurônios diferentes, ele demonstra a criação de uma crista 2D adicionando duas unidades sigmoides paralelas com inclinações opostas e, em seguida, mostra como duas cristas podem ser compostas para formar uma protuberância quando se cruzam perpendicularmente. Essa técnica permite a criação de classificadores que podem atribuir pontos a uma classe em uma pequena região e a outra classe em qualquer outro lugar. O palestrante ilustra a rede correspondente, que inclui quatro unidades sigmóides e uma crista com a função de ativação de identidade.

  • 01:10:00 Nesta seção da palestra sobre Perceptrons e redes neurais de camada única, o professor discute a construção de saliências usando funções de retenção de lixo ou sigmóides, e como eles podem ser colocados lado a lado e adicionados para aproximar qualquer curva de forma arbitrária . Ele explica que essa abordagem pode ser usada para regressão e é possível treinar uma rede neural para aprender uma função arbitrária usando algoritmos como backpropagation. Backpropagation é essencialmente uma forma de gradiente descendente que explora a estrutura da rede para calcular todas as derivadas parciais simultaneamente.

  • 01:15:00 Nesta seção, o instrutor explica como derivadas parciais para todos os pesos em uma rede neural podem ser obtidas simultaneamente em um número constante de passagens pela rede usando o algoritmo de retropropagação. O instrutor enfatiza que as redes neurais ganharam grande popularidade devido à sua versatilidade e poder na resolução de vários problemas, como reconhecimento de fala e visão computacional. O estado da arte em tradução automática e incorporação de palavras também emprega redes neurais, e sua popularidade se deve em parte à sua eficiência.
 

CS480/680 Aula 10: Redes neurais multicamadas e retropropagação



CS480/680 Aula 10: Redes neurais multicamadas e retropropagação

Esta palestra sobre redes neurais multicamadas e retropropagação explica as limitações dos modelos lineares e a necessidade de modelos não lineares, como redes neurais multicamadas. O palestrante discute as diferentes funções de ativação que podem ser usadas em redes neurais e como elas permitem funções de base não lineares. A palestra continua explicando como o algoritmo de retropropagação é usado para calcular o gradiente do erro em relação a cada peso em uma rede neural. Ferramentas de diferenciação automática também são discutidas como uma forma de calcular eficientemente os deltas e gradientes em uma rede neural. No geral, a palestra enfatiza a flexibilidade e o poder das redes neurais em aproximar uma ampla gama de funções.

O palestrante neste vídeo discute questões de otimização de redes neurais, como convergência lenta, otimização local, otimização não convexa e overfitting. Para superar a convergência lenta, técnicas como regularização e dropout podem ser usadas. Além disso, o palestrante explica o comportamento da descida do gradiente para otimização, destacando a necessidade de otimizar o tamanho do passo para melhorar sua eficiência. O algoritmo DES grant é proposto como uma solução, que ajusta a taxa de aprendizado de cada dimensão separadamente. O palestrante também apresenta o RMSProp, uma média móvel ponderada de gradientes anteriores. Por fim, o palestrante discute Adam, que envolve obter uma média móvel ponderada do próprio gradiente, e mostra que ele supera outras técnicas, como SGD Nesterov.

  • 00:00:00 Nesta seção, o palestrante fornece uma rápida recapitulação da regressão linear e três modelos para classificação linear. No entanto, o problema com esses modelos é que eles ainda nos fornecem um separador linear. Assim, a palestra desloca a discussão para modelos não lineares e apresenta a necessidade de redes neurais multicamadas.

  • 00:05:00 Nesta seção, o instrutor revisa modelos lineares, incluindo o perceptron e sua função de ativação de limiar, e a função de ativação sigmoide. O instrutor explica que os modelos lineares podem ser estendidos para modelos não lineares para acomodar funções que não são linhas retas, mas sim curvas. Para conseguir isso, é introduzida a regressão não linear, que usa uma função de mapeamento, Phi de X, para deslocar os dados para um novo espaço. O instrutor também apresenta redes neurais multicamadas, que fornecem funções de base adaptativa para regressão não linear e, em seguida, as relaciona de volta ao modelo de regressão linear generalizada. Por fim, o instrutor discute a classificação não linear generalizada.

  • 00:10:00 Nesta seção da palestra, o palestrante discute como trabalhar com modelos não lineares irrestritos. O problema com os modelos lineares com funções de base que vimos até agora é que temos que escolher as funções de base a priori e podemos não ter conhecimento de domínio suficiente para fazer isso. A solução é escolher funções de base que dependam dos dados e permitam um número muito grande, ou mesmo infinito, de funções de base sem pagar um preço. Essa ideia foi inicialmente a abordagem nos métodos do kernel e foi o conjunto dominante de técnicas até por volta de 2010.

  • 00:15:00 Nesta seção, o vídeo discute a introdução de redes neurais multicamadas no aprendizado profundo, o que levou a muitos dos sucessos que vemos no aprendizado profundo hoje. Especificamente, o vídeo se concentra em uma rede neural de duas camadas com nós totalmente conectados, com cada conexão tendo um peso que pode ser representado em uma matriz. As unidades ocultas e as unidades de saída são calculadas usando a função de ativação e combinações lineares, com cada camada tendo seu próprio conjunto de pesos. Ao ajustar os poderes dentro das funções básicas, é possível adaptá-los e variá-los com base nos conjuntos de treinamento, levando a um modelo de aprendizado profundo mais bem-sucedido.

  • 00:20:00 Nesta seção da palestra, o professor explica como as redes neurais são funções essencialmente matemáticas compostas por múltiplas camadas e pesos. Eles usam funções de ativação, como sigmoide ou tangente hiperbólica, para adicionar não linearidade. Essas funções de ativação podem atuar como funções de base para a próxima camada e podem ser usadas em regressão não linear. Usando funções de ativação não lineares na primeira camada e uma função de identidade na camada de saída, uma rede neural pode ser representada como uma combinação linear de funções de base não lineares.

  • 00:25:00 Nesta seção, o palestrante discute redes neurais de duas camadas para classificação e regressão não linear. A fórmula matemática para a rede neural de duas camadas envolve unidades ocultas com uma função de ativação sigmoide e unidades de saída com a função de ativação de identidade. O sigma atua como uma função de base não linear que é parametrizada por alguns pesos, permitindo que as funções de base se adaptem à medida que o modelo é treinado. Essa abordagem é a principal diferença entre regressão não linear e linear. Da mesma forma, para classificação, o palestrante mostra como a mesma fórmula se aplica calculando funções de base não lineares por meio da primeira camada.

  • 00:30:00 Nesta seção, o palestrante explica como as redes neurais multicamadas são diferentes da regressão logística, apesar de terem uma interpretação semelhante. A rede neural permite funções de base mais adaptativas usando pesos que são atualizados durante o treinamento. A não linearidade vem do uso de uma função Sigma, que pode ser substituída por outras funções como a Gaussiana ou a função 10h. A rede neural pode ser usada tanto para classificação quanto para regressão ajustando a função de ativação. O palestrante também menciona que múltiplas classes podem ser utilizadas na rede, substituindo a função Sigma por outra função adequada.

  • 00:35:00 Nesta seção, a palestra discute a otimização de pesos para redes neurais multicamadas, que inclui tanto os pesos da combinação linear quanto os pesos que definem as funções de base não linear. O algoritmo mais popular para otimização é a minimização de erros, que compara a saída da rede neural com um alvo e calcula a diferença. A propagação reversa é um algoritmo popular que permite que os erros sejam calculados e propagados de volta pela rede para calcular um gradiente em relação a cada peso. O gradiente é usado para calcular o algoritmo de atualização para otimizar os pesos. O algoritmo de retropropagação é calculado manualmente, mas pacotes como Tensor Flow e PyTorch oferecem ferramentas para diferenciação automática.

  • 00:40:00 Nesta seção, o palestrante explica o algoritmo de retropropagação usado para calcular o gradiente ou derivada parcial do erro em relação a cada peso em uma rede neural. O algoritmo é dividido em duas fases: uma fase direta onde a saída da rede é calculada com base nas entradas e uma fase reversa onde Delta, uma medida de erro, é retropropagado para calcular a derivada parcial do erro em relação a cada peso. A derivada parcial é calculada em duas etapas usando a regra da cadeia para derivada parcial e Delta J e Zi. O palestrante ilustra o algoritmo com uma rede totalmente conectada que consiste em duas entradas, duas unidades ocultas e duas unidades de saída e mostra como o algoritmo calcula a saída de cada unidade e retropropaga os erros.

  • 00:45:00 Nesta seção do vídeo, o palestrante discute como obter derivadas parciais em redes neurais multicamadas usando o algoritmo de retropropagação. O palestrante explica que começando na camada de saída, pode-se calcular a derivada parcial do erro em relação a cada unidade de saída J usando uma fórmula recursiva que depende dos deltas das unidades de saída. O palestrante então demonstra um exemplo simples de uso da fase de avanço e retrocesso para calcular a saída de unidades ocultas e de saída em uma rede neural.

  • 00:50:00 Nesta seção, o palestrante explica como calcular os deltas e gradientes em uma rede neural e como as ferramentas de diferenciação automática podem ajudar a fazer isso com eficiência. Eles fornecem equações para calcular os deltas para camadas ocultas e camadas de saída e mostram como usá-las para calcular gradientes. O palestrante enfatiza que as ferramentas de diferenciação automática podem economizar tempo e esforço na computação manual de gradientes ao trabalhar com diferentes arquiteturas e funções. A seção termina com exemplos de como, com apenas três unidades ocultas, uma rede neural pode aproximar funções arbitrárias como x ao quadrado, valor absoluto de x e seno de x.

  • 00:55:00 Nesta seção, o palestrante discute a capacidade das redes neurais de aproximar diferentes funções. A rede pode convergir para funções de base não lineares que podem aproximar funções suaves, como funções quadráticas e seno, muito bem. No entanto, para funções não suaves, como a função absoluta, a rede neural se esforça para aproximá-la sem unidades ocultas suficientes. No entanto, mesmo para funções descontínuas como a função degrau, a rede ainda pode fornecer uma aproximação razoável. O palestrante passa então para a discussão sobre a otimização de redes neurais, que envolve o cálculo do gradiente usando a diferenciação automática e realizando a descida estocástica do gradiente. Embora esta seja uma técnica de otimização geral, a convergência pode ser lenta sem métodos de otimização adicionais.

  • 01:00:00 Nesta seção, o palestrante discute os problemas que podem surgir na otimização de redes neurais, incluindo convergência lenta, otimização local, otimização não convexa e overfitting. A convergência lenta pode ser superada por meio de técnicas como regularização e abandono. Para ilustrar o conceito de convergência lenta, o professor desenha uma superfície em forma de bola representando a função de erro. A descida do gradiente pode convergir lentamente ao começar fora do mínimo global, e técnicas modernas, como impulso e taxas de aprendizado adaptativo, podem acelerar a convergência.

  • 01:05:00 Nesta seção, o palestrante discute o comportamento da descida do gradiente para otimização. A direção do gradiente é geralmente perpendicular à linha de contorno, e o problema de dar um passo em sua direção é que pode ultrapassar o mínimo. Por outro lado, se o gradiente for pequeno, pode ser necessário dar muitos passos pequenos para chegar ao mínimo. Portanto, existem regiões onde passos maiores devem ser dados e regiões onde passos menores são mais apropriados. Esse comportamento destaca a necessidade de otimizar o tamanho das etapas para melhorar a eficiência da descida do gradiente.

  • 01:10:00 Nesta seção, o palestrante discute os possíveis problemas de depender do tamanho do gradiente para determinar o tamanho do passo em uma rede neural. Como o tamanho do gradiente pode não ser consistente em diferentes dimensões, uma solução proposta pelo algoritmo DES grant é ajustar a taxa de aprendizado de cada dimensão separadamente, tomando a soma do quadrado dos gradientes vistos até agora e dividindo o tamanho do passo pela raiz quadrada desse valor. Isso permite ajustes no tamanho do passo de acordo com a magnitude do gradiente em cada dimensão. No entanto, a taxa de aprendizado pode diminuir muito rapidamente em alguns aplicativos, dificultando o progresso.

  • 01:15:00 Nesta seção, o palestrante discute os problemas com a descida do gradiente em redes neurais e como o ajuste da taxa de aprendizado pode ajudar na descida estocástica do gradiente. O palestrante introduz o conceito de "dimensão" em uma rede neural, onde existe uma dimensão por peso. Eles explicam o problema do acúmulo de grandes somas e a necessidade de reduzir o tamanho dessas etapas. O palestrante sugere uma solução para esse problema com a introdução de rmsprop, que é uma média móvel ponderada dos gradientes anteriores com um decaimento exponencial que esquece os gradientes mais antigos. No entanto, esse método não é perfeito e o falante reconhece suas limitações.

  • 01:20:00 Nesta seção, o palestrante discute a questão de um gradiente sem momento em uma região onde é estável, levando à necessidade de uma forma de aumentar o tamanho do passo quando a direção é a mesma. Isso leva a uma versão da heurística conhecida como Adam, que envolve pegar uma média móvel ponderada do próprio gradiente e armazená-la em sT. Ao fazer a atualização, ao invés de dar um passo na ação e gradiente, dá-se um passo na ação dessa média móvel. A técnica é uma heurística, que foi publicada no ICLR em 2015, e a principal diferença de suas antecessoras é que ela vem com algumas teorias e provas de convergência sobre suas propriedades. No entanto, quando foi publicado, houve problemas com algumas das provas, o que levou a modificações feitas com mais provas para chegar a algo mais baseado em princípios.

  • 01:25:00 Nesta seção, o palestrante explica o trade-off entre dar alguns passos bons e pagar um preço alto por cada passo ou dar muitos passos pequenos rapidamente que não são passos muito bons, mas no geral ainda acabam mais próximo do mínimo. Ele também discute técnicas de otimização que não escalam bem, como técnicas de otimização de segunda ordem, como a técnica de Newton. Na prática, as heurísticas tendem a funcionar bem, apesar da falta de boa teoria. O palestrante fornece comparações empíricas entre Adam e outras técnicas, como SGD Nesterov, e mostra que Adam tende a ter um desempenho muito bom.
 

CS480/680 Aula 11: Métodos do Kernel



CS480/680 Aula 11: Métodos do Kernel

Nesta palestra, o conceito de métodos kernel é apresentado como uma forma de escalar modelos lineares generalizados mapeando dados de um espaço para um novo espaço usando uma função não linear. O dual trick ou kernel trick é explicado como uma técnica que permite trabalhar em espaços de alta dimensão sem pagar custos adicionais, levando ao uso de uma função kernel que calcula o produto escalar de pares de pontos no novo espaço. Vários métodos para construir kernels são discutidos, incluindo os kernels polinomiais e gaussianos, que podem ser usados para medir similaridade entre pontos de dados e são úteis em tarefas de classificação. Regras para compor kernels também são introduzidas para construir novos kernels que podem controlar sua complexidade. A palestra enfatiza a importância de escolher funções que tenham correspondência com Phi transposta Phi, pois a matriz gram deve ser positiva semidefinida e ter autovalores maiores ou iguais a zero.

Nesta palestra sobre métodos de kernel, o palestrante define kernels como funções semidefinidas positivas que podem ser decompostas em uma matriz multiplicada por sua transposta. Vários tipos de kernels, como polinomial e gaussiano, e suas aplicações são discutidas para comparar diferentes tipos de dados, como strings, conjuntos e gráficos. O palestrante também explica como os núcleos de substring podem calcular rapidamente a similaridade entre palavras aumentando o comprimento das substrings e usando programação dinâmica. Além disso, as máquinas de vetores de suporte mostraram-se eficazes na classificação de documentos usando artigos de notícias da Reuters.

  • 00:00:00 Nesta seção, o palestrante apresenta métodos de kernel, que são úteis para escalar modelos lineares generalizados. Uma rápida recapitulação das semelhanças e diferenças entre modelos lineares generalizados e redes neurais é fornecida, destacando que funções de base não lineares fixas são usadas em modelos lineares e que a otimização tende a ser mais fácil e tipicamente convexa, enquanto funções de base adaptativas são usadas em redes neurais , e a otimização tende a ser mais difícil. A introdução do kernel levará a um truque que evitará pagar um preço pelo espaço maior ao trabalhar com modelos que envolvem mapeamentos não lineares.

  • 00:05:00 Nesta seção, o palestrante explica a evolução dos paradigmas de aprendizado de máquina, destacando como o espaço limitado de hipóteses não era uma preocupação significativa quando a quantidade de dados não era grande. No entanto, a era das redes neurais a partir de 2009 trouxe muitos dados e poder computacional, tornando essencial ter um espaço de hipóteses mais rico. O palestrante apresenta o dual trick ou kernel trick, uma técnica computacional que permite trabalhar em espaços de alta dimensão sem pagar custos adicionais, mapeando dados em um novo espaço usando funções não lineares. Ele explica como esse truque, junto com uma função kernel, nos permite considerar um número grande ou infinito de funções de base, sem ter que calculá-las explicitamente.

  • 00:10:00 Nesta seção, o palestrante se concentra nos métodos de kernel, que visam calcular o produto escalar entre pares de pontos em um novo espaço e encontrar maneiras de reduzir muito o custo de calcular esses produtos escalares para melhor escalonamento de algoritmos. Portanto, os produtos escalares são renomeados como funções kernel e, se pudermos determinar as saídas desses kernels para cada par de pontos, não precisamos calcular o espaço de recursos subjacente definido por Phi de X, que é a chave para definir kernels que são rápidos de avaliar e não requerem cálculo em relação a Phi de X. A regressão linear é usada como exemplo, e o palestrante mostra que W é realmente uma combinação linear dos pontos de dados, que são coeficientes vezes Phi de X n, e substitui W por outra expressão, Phi vezes A, onde Phi é a matriz de todos os pontos no novo espaço.

  • 00:15:00 Nesta seção, o palestrante apresenta o conceito de métodos de kernel, que envolve o mapeamento de dados de um espaço para um novo espaço usando uma função de mapeamento. Ele mostra como a otimização de um problema de regressão linear no novo espaço pode ser feita usando os coeficientes (a) de uma combinação linear dos pontos mapeados em vez da matriz de ponderação (W). Isso leva ao uso de uma função kernel que calcula o produto escalar de pares de pontos no novo espaço, que é definido como a matriz Gram. O resultado é uma forma alternativa de encontrar a solução para o problema de regressão otimizando os coeficientes usando a função kernel.

  • 00:20:00 Nesta seção, o palestrante discute como fazer previsões usando a solução no espaço dual, o que resulta em uma complexidade de computação diferente do espaço primal. No espaço primal, a complexidade depende do número de funções de base, mas no espaço dual, depende da quantidade de dados, permitindo espaços de alta dimensão sem aumento de complexidade. A chave é calcular a função de kernel sem fazer referência aos pontos no novo espaço, e há várias maneiras de definir funções de kernel que correspondem implicitamente a produtos escalares. É importante escolher funções que tenham correspondência com Phi transposta Phi, pois a matriz gram deve ser positiva semidefinida e ter autovalores maiores ou iguais a zero. O palestrante fornece um exemplo de como definir um kernel diretamente e, em seguida, descobrir o mapeamento correspondente.

  • 00:25:00 Nesta seção, o palestrante define uma função kernel como o produto escalar de dois vetores no espaço original ao quadrado. A questão levantada é se esta é uma função kernel válida que pode ser computada sem se referir a Phi, a função de transformação do espaço. Ao expandir a função, o professor é capaz de definir o mapeamento de Phi sem computá-lo explicitamente e chegar a uma função kernel válida com funções básicas. Embora as funções de kernel normalmente sejam calculadas primeiro definindo Phi e, em seguida, conduzindo um produto escalar, esse método permite o cálculo direto da função de kernel no espaço original.

  • 00:30:00 Nesta seção, o palestrante discute o método de construção de kernels. A ideia é construir novos kernels que possam controlar sua complexidade e garantir que ela não dependa do novo espaço. O palestrante explica dez regras para compor kernels para fazer novos kernels válidos e, se uma função não for um kernel válido, existem blocos básicos de construção que podem ajudar a compô-los para obter kernels mais complexos. A palestra ainda apresenta kernels comuns usados na prática, como o kernel polinomial, onde o produto escalar no espaço original é elevado a alguma potência, resultando no espaço de recursos como todos os produtos de grau M das entradas em X. A palestra continuará sobre a discussão do kernel gaussiano na próxima aula.

  • 00:35:00 Nesta seção, o palestrante explica que para obter flexibilidade em modelos de regressão ou classificação sem pagar um preço computacional, é necessária alta dimensionalidade, o que pode ser um problema. Para evitar esse problema, são usados kernels, que especificam uma função que nos informa o produto escalar entre pares de pontos no novo espaço. O kernel polinomial é então introduzido como um kernel comum, que leva o produto escalar no espaço original elevado a uma potência M. O palestrante fornece um exemplo concreto do kernel em um espaço 2D e o expande para demonstrar o produto escalar correspondente em um espaço 3D.

  • 00:40:00 Nesta seção, o palestrante explica os métodos do kernel que são usados para converter implicitamente o espaço de entrada em um espaço de dimensão superior onde as classes podem ser linearmente separáveis, mesmo que não estejam no espaço original. A palestra explica como esse método generaliza para uma potência M arbitrariamente alta, onde cria novos recursos que são essencialmente todas as combinações de M recursos possíveis. No entanto, isso levará a um espaço de demanda exponencialmente grande, o que seria computacionalmente impossível para imagens. Para contornar isso, uma constante C pode ser adicionada ao kernel para considerar todos os recursos de graus até M.

  • 00:45:00 Nesta seção, o conceito de kernel polinomial e gaussiano foi explicado. O kernel polinomial é usado para calcular o produto escalar de dois vetores e pode medir a similaridade entre dois pontos de dados até o grau dois. Por outro lado, o kernel gaussiano é denotado por uma fórmula que calcula a similaridade entre dois pontos de dados e é um kernel popular usado em aprendizado de máquina. Kernels são essencialmente um atalho para calcular o produto escalar em um novo espaço e podem ser interpretados como uma medida de similaridade entre pontos de dados que é útil em tarefas de classificação.

  • 00:50:00 Nesta seção, o palestrante explica como o kernel gaussiano pode ser visto como uma medida de similaridade entre dois pontos, com valor alto se os pontos forem idênticos e valor baixo se estiverem distantes. No entanto, provar que o kernel gaussiano é um kernel válido é um desafio, pois o espaço de recursos é infinito. Em vez disso, o palestrante usa as regras da aula anterior para justificar a validade do kernel, especificamente a regra número quatro, que afirma que tomar a exponencial de um kernel resulta em outro kernel válido e examina ainda mais as outras regras para expressar o kernel Gaussiano como uma combinação de kernels válidos.

  • 00:55:00 Nesta seção do vídeo, o palestrante demonstra o uso de várias regras para mostrar que K de XX primo, que é igual a e elevado a menos X menos X Prime dividido por 2 Sigma ao quadrado, é um kernel válido . O professor expande X menos X linha e separa os termos em diferentes exponenciais antes de usar as regras 1, 2, 4 e 8 para mostrar que é um kernel válido. As regras usadas incluem substituir a pela matriz de identidade e mostrar que X transpõe X primo dividido por Sigma ao quadrado e e para o X transpõe X primo dividido por Sigma ao quadrado são kernels válidos.

  • 01:00:00 Nesta seção, o palestrante explica que kernels são funções semidefinidas positivas, que podem ser decompostas em uma matriz vezes sua transposta. Ele também explica que usar um kernel polinomial, por exemplo, exigiria a construção de todos os monômios até certo grau, resultando em dimensionalidade exponencial. No entanto, trabalhando diretamente com o kernel, basta calcular a similaridade entre cada par de pontos de dados, tornando-o mais eficiente computacionalmente. Também é discutido o kernel gaussiano, que possui um espaço de recursos infinito, tornando-o poderoso na representação de funções arbitrárias. Além disso, o palestrante observa que, embora os kernels sejam definidos em relação a vetores, eles também podem ser aplicados a outros tipos de objetos, como conjuntos, strings ou gráficos.

  • 01:05:00 Nesta seção, o palestrante discute a ideia de mapear strings e documentos usando métodos do kernel. A técnica envolve a definição de um kernel que mede a semelhança entre dois documentos ou strings como a soma ponderada de todas as substrings não contíguas que aparecem em ambos os documentos. No entanto, enumerar todos esses recursos pode consumir muito tempo e consumir muitos recursos, que é onde os kernels não vetoriais entram em ação. Esses kernels são úteis ao comparar documentos que podem conter palavras novas ou inventadas e podem mapear cada string ou documento em um novo espaço de recursos correspondente a se a string contém uma substring específica.

  • 01:10:00 Nesta seção, o palestrante explica o conceito de substring kernel, que é usado para determinar a semelhança entre duas palavras. O kernel da substring recebe um valor lambda, elevado a uma potência que representa o comprimento da substring, que é menor para correspondências mais importantes e maior para as menos importantes. O kernel pode computar eficientemente produtos escalares em espaços de características, que consistem em substrings de vários comprimentos que estão presentes em duas palavras. Para calcular esses kernels de forma eficiente, o artigo propõe aumentar gradualmente o comprimento das substrings usando programação dinâmica. Isso permite a computação de tempo linear dos kernels, que de outra forma seria exponencial.

  • 01:15:00 Nesta seção, o palestrante discute como máquinas de vetores de suporte podem ser usadas com kernels para trabalhar em um espaço muito mais rico. O palestrante cita um paper que realiza a classificação de documentos usando notícias da Reuters e mostra os resultados usando essa técnica. A abordagem pode ser bastante poderosa e será discutida com mais detalhes na próxima aula.
 

CS480/680 Aula 13: Máquinas de vetores de suporte



CS480/680 Aula 13: Máquinas de vetores de suporte

Esta palestra é uma introdução ao suporte a máquinas vetoriais (SVMs) como um tipo de método de kernel usado para classificação. Os SVMs ainda são populares para problemas com poucos dados e são considerados esparsos, pois podem trabalhar com um subconjunto dos dados e ignorar o resto. O palestrante explica o conceito de vetores de suporte, que são os pontos de dados mais próximos do limite de decisão e o exemplo visual de SVMs encontrando um separador linear para separar classes enquanto maximizam a margem. As diferenças entre SVMs e perceptrons são discutidas, com SVMs empregando um separador linear de margem máxima exclusivo e sendo menos propensos a overfitting. O problema de otimização para SVMs pode ser reescrito usando o Lagrangeano, resultando em um problema equivalente sem restrições. A solução obtida do Lagrangeano pode ser substituída de volta para obter uma expressão que envolve a função kernel, levando a uma otimização de problema dual. Os benefícios de trabalhar no espaço dual com uma função kernel que calcula a similaridade entre pares de pontos de dados também são explicados. Os SVMs calculam o grau de similaridade entre um ponto de consulta e todos os vetores de suporte para determinar os mais semelhantes, e a discussão também gira em torno do número de vetores de suporte e como isso afeta a classificação dos pontos.

Este vídeo discute o conceito de máquinas de vetores de suporte (SVMs) na categorização de texto, onde os documentos são representados como vetores de contagem de palavras. Os SVMs são eficazes em minimizar a perda de pior caso, tornando o classificador adequado para qualquer amostra possível, mesmo para conjuntos de dados diferentes. Os pesquisadores usaram SVMs com representação dupla e mapeamento de kernel para mapear dados em um espaço dimensional ainda maior, sem perder a precisão ou sacrificar a escalabilidade. A palestra também aborda o uso de SVMs na recuperação de documentos relevantes de um conjunto de dados e equilíbrio entre precisão e recuperação. O vídeo termina com uma discussão sobre a capacidade dos SVMs de fornecer separadores lineares ou não lineares para dados e os desafios associados à classificação multiclasse e dados não linearmente separáveis.

  • 00:00:00 Nesta seção, o palestrante apresenta máquinas de vetores de suporte (SVMs), que são um tipo de método de kernel usado para classificação. Historicamente, os SVMs eram a técnica de classificação mais importante e popular no aprendizado de máquina até as redes neurais assumirem o controle após 2010. No entanto, os SVMs ainda funcionam bem para problemas com poucos dados e são considerados esparsos, pois podem trabalhar com um subconjunto dos dados e ignorar o descansar. O palestrante fornece um exemplo visual de duas classes de dados e como os SVMs encontram um separador linear para separar essas classes enquanto maximizam a margem, que é a menor distância até o ponto mais próximo em cada classe.\

  • 00:05:00 Nesta seção, o conceito de vetores de suporte em máquinas de vetores de suporte (SVMs) é explicado. Os vetores de suporte são pontos de dados importantes que estão mais próximos do limite de decisão e determinam essencialmente para onde o separador linear irá. O separador linear final em SVMs, que maximiza a distância, também chamada de margem, para os pontos de dados mais próximos, é obtido resolvendo um problema de otimização. A intuição por trás da maximização da margem é garantir que os pontos de dados, que podem ser ruidosos, não sejam classificados erroneamente pelo limite de decisão.

  • 00:10:00 Nesta seção, o conceito de margem máxima em máquinas de vetor de suporte (SVMs) é explicado para obter uma melhor classificação. Uma margem máxima garante que a classificação seja mais robusta ao ruído e possa generalizar melhor para exemplos futuros. A distância de um ponto ao separador é calculada usando o produto escalar entre o vetor de peso e o vetor de recurso para esse ponto de dados, que é então normalizado para fornecer a margem máxima. A fórmula para calcular a distância de qualquer ponto ao separador também é fornecida e o objetivo que está sendo otimizado em SVMs é discutido. É destacado que existe uma única linha que possui uma margem máxima e, portanto, quaisquer duas linhas iguais em margem não são a linha de margem máxima.

  • 00:15:00 Nesta seção, as diferenças entre máquinas de vetores de suporte (SVMs) e perceptrons são discutidas. Os perceptrons encontram um separador linear, mas esse separador depende dos valores iniciais usados para a inicialização dos pesos. Os perceptrons também usam uma regra de atualização simples para treinamento e contam com a inversão de rótulos para medir a distância entre o separador linear e os pontos de dados. Em contraste, os SVMs usam um problema de otimização quadrática para encontrar o separador linear de margem máxima, que é menos dependente da inicialização. SVMs também introduzem o conceito de folga para permitir a classificação de margem suave e têm um truque de kernel para classificação não linear. No geral, os SVMs têm maior precisão de classificação em comparação com os perceptrons.

  • 00:20:00 Nesta seção, o palestrante compara perceptrons padrão com máquinas de vetor de suporte (SVMs). Enquanto o primeiro carece de robustez e pode superajustar rapidamente, o último usa um separador linear de margem máxima exclusivo e é menos propenso a superajuste. Os SVMs são otimizados por meio da otimização quadrática convexa para minimizar os pesos, sob a restrição de que todos os pontos de dados estejam a pelo menos uma unidade de distância do separador linear. Embora essa otimização possa parecer complexa, na verdade é muito fácil executá-la computacionalmente com muitos pacotes de otimização disponíveis.

  • 00:25:00 Nesta seção, o palestrante apresenta um problema de otimização mais conveniente para máquinas de vetores de suporte, onde a distância entre os pontos é fixada em pelo menos um e a escala de W é minimizada. O palestrante demonstra que esse problema é equivalente ao problema de otimização anterior. Esta nova formulação permite uma representação dual, onde as computações no novo espaço de características podem ser feitas em termos de produtos escalares que podem ser substituídos por uma função kernel, similar ao que foi feito com processos gaussianos.

  • 00:30:00 Nesta seção, o palestrante explica como o problema de otimização para máquinas de vetores de suporte pode ser reescrito usando o Lagrangeano, resultando em um problema equivalente sem restrições. Este novo objetivo inclui um termo de penalidade para cada restrição violada, que é dependente de uma nova variável a que é necessariamente positiva e maior que zero quando ocorre uma violação. Definindo esta variável a para maximizar o mínimo do Lagrangeano, o novo problema é matematicamente equivalente ao problema original com restrições. Essa técnica ajuda a simplificar o processo de otimização e torná-lo mais eficiente.

  • 00:35:00 Nesta seção, o palestrante discute o uso de termos de penalidade e restrições em problemas de otimização para máquinas de vetores de suporte. Eles explicam que a restrição que limita a distância entre os pontos pode ser substituída por um termo de penalidade, que é otimizado pela escolha de um coeficiente. Este problema de otimização, no entanto, resulta em um problema de máximo que não é fácil de resolver. Para resolver isso, o palestrante descreve como calcular o problema de minimização interna de forma fechada, chegando a uma solução onde W é uma combinação linear de pontos de dados no novo espaço de recursos. Os coeficientes diferentes de zero, que são os vetores de suporte, determinam o valor de W.

  • 00:40:00 Nesta seção, o palestrante explica como a solução obtida do Lagrangiano pode ser substituída de volta para obter uma expressão que envolve a função kernel. Esta função de kernel nos permite trabalhar em um espaço de alta dimensão sem nos preocupar com a dimensionalidade, pois podemos calcular a função de kernel diretamente entre cada par de pontos. Isso leva a uma otimização de problema duplo, onde otimizamos um conjunto diferente de variáveis para obter os coeficientes. A maioria desses coeficientes acabará sendo zero, tornando o problema de otimização esparso e reduzindo a complexidade computacional. Uma vez que temos os coeficientes, podemos usá-los para classificar os pontos de dados tomando o produto escalar das feições e dos coeficientes, com um resultado positivo ou negativo correspondente a diferentes classes.

  • 00:45:00 Nesta seção, o instrutor explica o conceito de máquinas de vetores de suporte (SVMs) em um caso linearmente separável. Eles mostram que um separador linear em um espaço bidimensional pode ser representado por um produto escalar de um vetor normal e os recursos de entrada. Os pontos no separador linear correspondem ao produto escalar sendo igual a 0. Eles então explicam os benefícios de trabalhar no espaço dual, que envolve substituir os pesos por uma função kernel que calcula a similaridade entre pares de pontos de dados. A soma resultante depende apenas do número de vetores de suporte e permite a classificação com base no seno da combinação linear de kernels entre o ponto de consulta e todos os pontos do conjunto de dados.

  • 00:50:00 Nesta seção, o palestrante explica que o algoritmo SVM calcula o grau de similaridade entre um ponto de consulta e todos os vetores de suporte para determinar os mais semelhantes. A classe desses vetores de suporte mais semelhantes "votará" para a classe prevista do ponto de consulta. Isso é semelhante a uma abordagem ponderada do vizinho mais próximo, com os pesos ditados pela função kernel. No entanto, o número de vetores de suporte pode não ser necessariamente igual para cada classe, podendo variar de acordo com a dimensionalidade do espaço.

  • 00:55:00 Nesta seção, a discussão gira em torno do número de vetores de suporte e como isso afeta a classificação dos pontos. Apesar de ter mais vetores de suporte em uma classe, o número de vetores de suporte não influencia na propensão a classificar pontos naquela classe. A razão para isso é que todo vetor de suporte contribui para a soma, seja positivo ou negativo, indicando se um ponto pertence à mesma classe do vetor de suporte. Além disso, as máquinas de vetores de suporte são conhecidas por generalizar bem e são menos propensas a overfitting, pois maximizar a margem é equivalente a minimizar um limite superior na perda de pior caso para qualquer distribuição de entrada subjacente.

  • 01:00:00 Nesta seção da palestra, o palestrante explica o conceito de máquinas de vetores de suporte e como elas funcionam na categorização de texto. As máquinas de vetores de suporte são eficazes para minimizar a perda de pior caso e garantir que o classificador seja bom em relação a qualquer amostra possível que possa corresponder a diferentes conjuntos de dados. A palestra fornece um estudo de caso de categorização de texto onde os classificadores são treinados com um arquivo de artigos de notícias que já foram classificados. Uma abordagem popular era transformar cada documento em um vetor de contagem de palavras usando o modelo de espaço vetorial, onde a ordem das palavras é ignorada e um vetor é criado com o comprimento do dicionário. Essa abordagem ajudou a automatizar a categorização de artigos e melhorar a escalabilidade.

  • 01:05:00 Nesta seção da palestra, o professor explica como os documentos podem ser representados como vetores de alta dimensão, com cada característica correspondendo a uma palavra no dicionário do documento. Embora seja natural tentar reduzir a dimensionalidade desses vetores por meio da extração de características, isso pode levar à perda de informações, pois a maioria das palavras carrega algum nível de relevância. Para resolver esse problema, os pesquisadores usaram máquinas de vetor de suporte com representação dupla e mapeamento de kernel para mapear os dados para um espaço dimensional ainda maior. Essa abordagem é bem dimensionada com o número de dimensões, tornando-a uma ferramenta útil para analisar dados de alta dimensão.

  • 01:10:00 Nesta seção, o palestrante discute o uso de máquinas de vetores de suporte na recuperação de documentos de um conjunto de dados. Precisão e recuperação são medidas usadas para estimar a porcentagem de documentos relevantes recuperados e a porcentagem de documentos relevantes no conjunto de dados, respectivamente. O objetivo é equilibrar precisão e revocação, e as máquinas de vetores de suporte foram consideradas o melhor algoritmo para essa finalidade. Eles conseguiram manter todos os recursos e mapeá-los em um espaço dimensional superior sem perder a precisão ou sacrificar a escalabilidade. O número de vetores de suporte necessários em um espaço dimensional maior pode aumentar, mas não há custo adicional associado ao trabalho nesse espaço.

  • 01:15:00 Nesta seção, aprenderemos sobre máquinas de vetor de suporte (SVMs) e como elas podem nos fornecer um separador linear ou não linear para nossos dados. Os SVMs usam um hiperplano único para maximizar uma margem para uma boa generalização, e podemos usar a otimização quadrática convexa para garantir a otimização global. No entanto, há duas questões importantes a serem abordadas: podemos fazer classificação multiclasse e o que faremos se nossos dados não forem linearmente separáveis? O próximo conjunto de slides abordará essas questões.
 

CS480/680 Aula 14: Máquinas de vetores de suporte (continuação)



CS480/680 Aula 14: Máquinas de vetores de suporte (continuação)

Esta seção da palestra é focada no tratamento de dados não linearmente separáveis e classes sobrepostas ao usar máquinas de vetor de suporte (SVMs), introduzindo variáveis de folga e considerando uma margem flexível. O palestrante explica como as variáveis de folga permitem que os pontos dentro da margem sejam classificados sem introduzir um erro de classificação. Um termo de penalidade é adicionado ao problema de otimização para regular o uso de variáveis de folga, controladas pelo peso C, que ajusta o trade-off entre minimização de erros e complexidade do modelo. O palestrante também discute diferentes abordagens para o uso de SVMs para problemas de classificação multiclasse, incluindo um contra todos, comparação pareada e classificação contínua, sendo esta última a abordagem de fato para SVMs com várias classes. Adicionalmente, é introduzido o conceito de margem multiclasse, que envolve um buffer em torno do separador linear, definido pela diferença de vetores de peso para cada par de classes.

  • 00:00:00 Nesta seção, o palestrante discute como lidar com dados não linearmente separáveis e classes sobrepostas ao usar máquinas de vetores de suporte (SVMs). A solução é introduzir variáveis de folga e considerar o que é conhecido como margem suave, o que relaxa a suposição de que todos os pontos devem estar a pelo menos uma unidade de distância do separador. As variáveis Slack permitem que a margem seja menor que um, de modo que mesmo os pontos dentro da margem possam ser classificados sem introduzir um erro de classificação.

  • 00:05:00 Nesta seção, o conceito de margem flexível é introduzido como uma forma de permitir pontos mal classificados e pontos dentro da margem, introduzindo variáveis de folga. Um termo de penalidade também é adicionado ao problema de otimização para regular o uso de variáveis de folga e garantir que a penalidade variável de folga seja minimizada. Isso é controlado pelo peso C, que também controla a compensação entre a minimização de erros e a complexidade do modelo. A soma das variáveis de folga é geralmente um limite superior no número de erros de classificação. O peso C pode ser pensado como um coeficiente de regularização que ajusta a compensação entre minimização de erro e complexidade do modelo, e quando C vai para o infinito, o classificador de margem rígida original é recuperado.

  • 00:10:00 Nesta seção, o palestrante continua a discutir máquinas de vetores de suporte e como lidar com erros de classificação e outliers. As margens suaves podem lidar com pequenos erros de classificação, mas ainda são sensíveis a valores discrepantes. Os vetores de suporte corresponderão às restrições ativas que possuem igualdade, enquanto aquelas com desigualdade não são ativas se a distância já for maior que um, ou seja, todas as variáveis de folga seriam zero. O palestrante também aborda como estender máquinas de vetores de suporte para trabalhar com várias classes, onde historicamente três abordagens foram consideradas, sendo uma delas “uma contra todas”, onde cada máquina de vetores de suporte faria a distinção entre uma classe e todas as outras classes.

  • 00:15:00 Nesta seção da palestra, o palestrante explica diferentes abordagens para usar máquinas de vetores de suporte para classificar dados com várias classes. A primeira abordagem, um contra todos, envolve o treinamento de uma máquina de vetores de suporte para cada classe versus o resto, mas pode levar a conflitos na classificação. A segunda abordagem, comparação pairwise, requer o treinamento de máquinas de vetores de suporte para cada par de classes, o que pode ser computacionalmente caro. A terceira abordagem, classificação contínua, treina uma única máquina de vetor de suporte para retornar um valor contínuo para classes de classificação com base nesses valores. O palestrante ilustra essas abordagens usando exemplos e conclui que a comparação pairwise não é ideal devido ao seu custo computacional, deixando um contra todos como o menos favorável e a classificação contínua como a abordagem de fato para usar máquinas de vetores de suporte com várias classes.

  • 00:20:00 Nesta seção, o palestrante discute diferentes abordagens para o uso de máquinas de vetores de suporte para problemas de classificação multiclasse. Eles explicam como o uso de vários separadores lineares para distinguir entre diferentes classes leva a pontos ambíguos e descrevem uma abordagem alternativa, a classificação contínua. A ideia por trás dessa abordagem é usar vetores de peso separados para cada classe e comparar a magnitude dos produtos escalares dos dados de entrada com o vetor peso de cada classe, selecionando a classe com o maior produto escalar. Essa abordagem generaliza o conceito de margem para comparar os produtos escalares de diferentes classes e garante que a classe correta tenha um produto escalar maior do que todas as classes incorretas em pelo menos um.

  • 00:25:00 Nesta seção da palestra, o apresentador explica o conceito de margem multiclasse em Support Vector Machines (SVMs). A margem multiclasse corresponde a ter um buffer ao redor do separador linear, que é definido pela diferença de vetores de peso para cada par de classes. O problema de otimização permanece o mesmo dos SVMs binários, com apenas as restrições sendo substituídas. Com classes sobrepostas e classes múltiplas, variáveis de folga e um termo de penalidade podem ser introduzidos para lidar com a classificação multiclasse com uma margem suave. O SVM multiclasse agora é uma formulação geral que funciona com várias classes e classes sobrepostas.