A “Lista de queimadores” – Meu sistema simples baseado em papel para tarefas

Jake Knapp Segue 31 de ago de 2017 · 4 min ler

Nota: Nada a ver com o Burning Man.

Cara, eu odeio listas de coisas a fazer. Verificar as tarefas concluídas é bom, mas o brilho da realização encobre uma verdade desagradável: a maioria das tarefas são apenas reações às prioridades de outras pessoas, não às minhas. E não importa quantas tarefas eu finalize, nunca termino – mais tarefas estão sempre esperando para tomar o lugar delas. As listas de tarefas apenas perpetuam o sentimento de “falta de acabamento” que persegue a vida moderna. read more

Sete hábitos de saúde que você pode usar para construir energia e fazer mais todos os dias

John Zeratsky Segue 20 de jul de 2018 · 11 min ler Foto de Andrew Small no Unsplash

Estou escrevendo isso em uma manhã de sexta-feira. Ontem à noite, fiquei um pouco tarde demais. Eu não dormi o suficiente. Eu bebi demais. Eu até comi sobremesa depois do jantar. Na noite anterior, fiz exatamente a mesma coisa. Não é grande coisa, mas estou me sentindo cansado e um pouco de ressaca. read more

Sem distração é uma vantagem competitiva

Eu serei honesto com você. Por melhor que seja para mim, não acho que você vá experimentar um telefone sem distrações. E eu entendi. Parece loucura remover a funcionalidade de nossos telefones, especialmente quando todos crescemos acostumados à conectividade ininterrupta na última década. read more

Permanecendo fiel a si mesmo (enquanto o mundo continua girando)

Pete Long Seg, Julho 24 · 10 min ler

Quando acordo, todas as manhãs, me sento na cama, estico os braços para expor minha envergadura completa e solto um grande bocejo de ole. Soa familiar? Eu basicamente interpreto a cena de abertura para uma média rom-com bem-estar em meados dos anos 2000. Cue uma música pop-rock com um gancho cativante, estou certo ?! read more

A habilidade que você precisa para investir como um novo gerente de pessoas

Como investir além de habilidades técnicas para ser um bom líder

Brian Early Seg. 23 de jul · 5 min ler

Como um jovem gerente começando, eu achava que ser tecnicamente proficiente no meu cargo anterior me levaria a ser um ótimo gerente. Este é um erro comum que novos gerentes cometem e você está neste grupo se você já teve algum dos seguintes pensamentos. read more

Sendo um programador melhor do que esta manhã – alguns aspectos para se concentrar em

Martin Schindler Segue 23 de jul · 8 min ler

Como você deve saber, existe um monte de linguagens de programação fracamente tipadas como PHP, Perl ou JavaScript. Mesmo que possa haver toneladas e toneladas de perguntas e respostas para falar sobre esse assunto, este artigo não trata de tipografia forte ou fraca, conversão de tipo implícita ou explícita ou qualquer coisa assim. read more

Desbloqueie seus pontos cegos auditivos com este quebra-cabeça

Oscar Trimboli Segue 16 de jul · 11 min ler

O custo de NÃO ouvir em sua organização significa que os projetos estão atrasados e acima do orçamento, os clientes escolhem sua concorrência e a grande equipe sai porque seus gerentes não estão ouvindo. Não ouvir pode significar uma perda de participação de mercado ou você pode atrair o interesse da mídia ou dos reguladores. read more

Pode usar o Blockchain transformar AI?

Antes havia blockchain, havia Inteligência Artificial (AI)

· 6 min ler

A tecnologia lockchain é frequentemente apontada como o prenúncio da quarta revolução, é saudada pelo seu imenso potencial de transformar negócios em todo o mundo. Outra tecnologia bastante disruptiva dos tempos modernos é Inteligência Artificial ou IA. read more

Aprendizagem de Tic-Tac-Toe e Reforço

Segue · 13 min ler

Tic-tac-toe (ou zeros e cruzes) é um jogo simples. Dado que dois jogadores ('X' e 'O') estão alternando turnos em uma grade de 3×3, qual jogador pode ser o primeiro a reivindicar três quadrados em uma única linha, coluna ou diagonal?

Quanto aos jogos, o tic-tac-toe não é muito interessante. Com jogo perfeito, sempre termina em empate. Além disso, existem apenas 26.830 jogos únicos, então o espaço de busca é pequeno o suficiente para que possa ser resolvido sem recorrer a técnicas de aprendizagem profunda.

Ao mesmo tempo, os jogos simples costumam ser a melhor maneira de aprender como a aprendizagem profunda funciona. Você não precisa de um modelo complexo para obter bons resultados, e você não ficará atolado na complexidade do jogo em si. Vamos ver como alguém pode ensinar uma rede neural profunda (DNN) a jogar tic-tac-toe.

O Notebook Jupyter está aqui se você quiser o código completo para os exemplos a seguir.

Redes Neurais Profundas

excelentes introduções para redes neurais profundas, então não vou entrar em muitos detalhes. Mas aqui está uma atualização.

Fundamentalmente, uma rede neural profunda é sobre correspondência de padrões. Ele consiste em várias camadas de nós empilhadas umas sobre as outras. Cada nó recebe entrada de um ou mais nós na camada anterior. Depois de aplicar uma função, ela envia sua saída para um ou mais nós na próxima camada. Seus dados de treinamento são passados como entrada para a camada superior e sua classificação é medida em relação à saída da camada inferior.

Usando uma técnica chamada de propagação reversa, as pilhas de nós atualizam seus pesos até que as saídas da camada inferior estejam muito próximas da classificação desejada para cada parte dos dados de treinamento. Para evitar o overfitting, é necessário treinar com muitos dados e também reservar um conjunto de dados de teste que o modelo não tenha visto durante o treinamento.

Em nosso modelo DNN para jogar tic-tac-toe, os dados de treinamento são estados de tabuleiro individuais, e a classificação é a probabilidade de ganhar 'X', 'O' ou um empate. Uma vez treinados, podemos passar ao nosso modelo uma série de movimentos possíveis, depois escolher o movimento que provavelmente resultará no resultado desejado.

Por exemplo, se "X" estiver em movimento, queremos escolher um lance que resulte em uma vitória "X". No entanto, também queremos ser sensíveis sobre se uma vitória para 'X' parece improvável, caso em que devemos jogar por um empate. Um empate é preferível a um adversário vencedor.

O ambiente do jogo

Uma maneira de adquirir dados de treinamento é simulá-lo. Antes de podermos criar um simulador de jogos, temos que construir um ambiente no qual o nosso simulador possa rodar. Felizmente, para o tic-tac-toe isso é relativamente simples.

Precisamos de uma função para inicializar uma nova placa:

 def initBoard (): 
board = [
[0, 0, 0]
[0, 0, 0]
[0, 0, 0]
]
placa de retorno

E uma função para obter uma lista de movimentos válidos para uma determinada prancha:

def getMoves (quadro):
move = []
para eu na faixa (len (placa)):
para j na faixa (len (placa [i])):
se placa [i] [j] == 0:
move.append ((i, j))
movimentos de retorno
read more