Você está na página 1de 33

Por que e como usar o gráfico de Bland-Altman para

testes A / B | Python + código

Originalmente usado na área médica para comparar 2


medições fornecidas por dois instrumentos diferentes,
o artigo mostra por que e como aplicá-lo ao teste A / B -
Um estudo sobre a função do pyCompare blandAltman
| Versão do pyCompare: pyCompare == 1.5.1

Foto de Alex Block no Unsplash

Índice
1. Por que usar o gráfico de Bland-Altman
2. Os dados usados
3. Como o gráfico de Bland-Altman é construído
4. Como interpretar o gráfico de Bland-Altman para o teste A / B
5. Conclusão
6. Referências

O gráfico de Bland-Altman vem da indústria médica para comparar a medida de dois instrumentos. O primeiro
objetivo de John Martin Bland & Douglas Altman era responder a esta pergunta:

Os dois métodos de medição concordam suficientemente? - DG ALTMAN e JM BLAND [1] 


Se for o caso, significa que se você tem dois instrumentos onde um é o estado da arte com custo elevado e o
segundo é 10 vezes mais barato, os resultados obtidos pelo método mais barato são comparáveis ​aos de
referência e poderiam ser substituído com uma precisão suficiente? Por exemplo, a frequência cardíaca
fornecida por um relógio conectado de $ 20 é suficientemente precisa como resultado de um
eletrocardiograma? O segundo objetivo era produzir um método em que os resultados fossem facilmente
compreensíveis para não estatísticos .

Em análises, o teste A / B (também conhecido como Champion-Challenger) é uma metodologia comum de teste
para comparar os resultados de uma nova ação / um novo tratamento / um novo design / ... na população_A
para a população_B tendo a ação atual. Assim que tivermos os resultados do teste, eles devem ser analisados ​
e apresentados a uma equipe de decisão composta em sua maioria por não estatísticos. É por isso que o
gráfico de Bland-Altman é relevante, pois irá comparar os resultados do teste A / B em um gráfico com todas as
medidas estatísticas exibidas de uma forma compreensível.

Em seu artigo, eles também mostraram porque o coeficiente de correlação, o teste estatístico de comparação
de médias e a regressão são inadequados para decidir sobre a concordância de duas medidas que seriam
em nosso caso de teste A / B para decidir sobre o poder do desafiante comparado ao do campeão.

Os dados usados
Para este artigo, usarei um conjunto de dados disponível no Kaggle (proveniente de um projeto DataCamp)
chamado “Teste A / B de jogos móveis com Cookie Cats”. O link está na parte de referências [2].

Cookie Cats é um popular jogo de quebra-cabeça móvel em que, conforme o jogador avança nos níveis, ele
encontrará “portões” que o obrigarão a esperar algum tempo antes de continuar a jogar ou fazer uma compra.
Em tal indústria, a retenção é uma das principais métricas e a equipe responsável pelo jogo veria o impacto se
o primeiro portão fosse movido do nível 30 para o nível 40 na retenção em 7 dias. Para ver o comportamento de
tal movimento, eles fizeram um teste A / B e nos forneceram o conjunto de dados desses resultados. Veremos
como o gráfico de Bland-Altman responderá à seguinte pergunta: “Como analisar os resultados A / B no nível
de retenção em 7 dias quando o tempo de espera passa do nível 30 para o nível 40?”

O conjunto de dados é composto por 90.189 linhas onde temos o id único do jogador, a versão do teste A / B
(tempo de espera em gate_30 / gate_40), a soma das rodadas do jogo, retenção_1 é um booleano que diz se o
jogador voltou no dia seguinte e a retenção_7 é um booleano que diz se o player voltou após 7 dias. Para ter os
dados relevantes para responder à nossa pergunta, é necessário fazer algumas limpezas. Eu apenas vou
manter o cliente com uma retenção_1 = Verdadeiro (porque se retenção_1 = Falso, retenção_7 também é
Falso), um número de rodadas de jogo ≥ 30 (porque se eles não forem até 30, eles não serão afetados pelo
portão) e um número de rodadas de jogo <170 (porque se considerarmos a duração de um jogo = 5 minutos, se
um jogador jogar 2 horas por dia durante 7 dias, ele jogará 120 * 7/5 = 168 jogos. Um número maior seria
considerado um uso anormal). Após este filtro, o conjunto de dados é composto por 20.471 linhas conforme
Figura 1 abaixo. Além disso, o conjunto de dados é igualmente balanceado entre gate_30 e gate_40.

Figura 1. Conjunto de dados CookieCats

Como é construído o gráfico de Bland-Altman



Veremos nesta seção como adaptar o gráfico de Bland-Altman original para aplicá-lo a um teste A / B. Em
primeiro lugar, vou explicar como o gráfico é construído em sua versão original [1], [2] e, em seguida, explicarei
como construí-lo com nossos dados de testes A / B.

Devido ao gráfico original de Bland-Altman comparar a medição de 2 instrumentos, eles têm o mesmo
comprimento por design. Por exemplo, com a medição da frequência cardíaca entre o relógio de conexão de $
20 e o eletrocardiograma, a medição é feita ao mesmo tempo com as mesmas condições que levam a ter o
mesmo número de medições para os 2 métodos. Portanto, podemos representar a linha de cada conjunto de
dados como uma experiência, como no exemplo da Figura 2 abaixo.

Figura 2. Medida do instrumento por experiência

É aqui que encontramos o primeiro “ponto de dor”. Um teste A / B é considerado uma experiência única
enquanto, como vimos acima, precisamos de várias experiências para construir o enredo. Para contornar essa
limitação, criaremos a partir do teste A / B várias amostras bootstrapped com comprimentos iguais e
diferentes.

Geramos 300 inteiros aleatórios não únicos entre 200 e 1.000. Esses inteiros representarão o comprimento de
cada amostra bootstrapped e, para beneficiar as propriedades estatísticas do bootstrap, cada inteiro aleatório
não único é duplicado 50 vezes. Esses números são usados ​para ter uma diversidade de amostra, mas é
arbitrário e o comprimento depende do tamanho do conjunto de dados original. Essas 15.000 (300 * 50)
amostras bootstrapped com um comprimento entre 200 e 2.000 são obtidas por uma amostragem aleatória
com uma substituição do conjunto de dados original e são concatenadas. Ele pode ser representado como
Figura3.


Figura 3. Construção de conjunto de dados bootstrapped

O código a seguir cria o conjunto de dados inicializado a partir dos dados originais (tenha cuidado, pode levar
tempo porque o conjunto de dados inicializado tem um comprimento de 9.184.350 linhas {alterando o
random_state, teríamos em média (((200 + 1.000) / 2) * 300 * 50 = 9.000.000 linhas} ).

1 db = db[['version', 'retention_1', 'retention_7']]


2 nbr_sample = 300
3 length_sample = []
4 for i in range(nbr_sample):
5 value = np.random.RandomState(893717398+i).randint(200, 1000)
6 length_sample.append(value)
7
8 length_sample = list(np.repeat(length_sample, 50))
9
10 db_bootstrapped = pd.DataFrame()
11 for i in range(len(length_sample)):
12 tmp = db.sample(n=length_sample[i], random_state=893717398+i, replace=True)
13 tmp['n_sample'] = i
14 tmp['n_sample_2'] = length_sample[i]
15 tmp = pd.DataFrame(tmp)
16 db_bootstrapped = db_bootstrapped.append(tmp)
17 del(tmp)

BA_plot.py
(https://gist.github.com/gllmjclmnt/07f003ac2e80f6c104d3feae7247d2d4#file-ba_plot-py)
hosted with ❤ by
github.com/gllmjclmnt/07f003ac2e80f6c104d3feae7247d2d4/raw/e6763530853d229e1a9d0a4727ad21b31a8ebf10/BA_plot.py)
GitHub (https://github.com)

Em seguida, agrupamos por n_sample (o id de cada 15.000 amostras bootstrapped), n_sample_2 (o


comprimento de cada amostra bootstrapped) e versão para ter a soma da retenção do jogador em 7 dias por
gates como na Figura 4.

1 db=db.groupby(['n_sample','n_sample_2','version'])['retention_7'].sum()

t.github.com/gllmjclmnt/3ceb51a7c4aff5f5bfb9ea611ca784ae/raw/63a70fbaf396cc5c988c02495be2bbd8d19d2eae/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/3ceb51a7c4aff5f5bfb9ea611ca784ae#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)

Figure4. Conjunto de dados bootstrapped após groupby

Podemos ler esta saída como: a amostra bootstrapped n ° 0 / 14.999 é composta por 564 linhas onde 98
jogadores ainda estão jogando em 7 dias com tempo de espera no gate_30, enquanto 105 jogadores ainda
estão jogando 7 dias com tempo de espera no gate_40 .

Em seguida, usamos uma propriedade estatística do boostrap dizendo que a média de uma amostra de
bootstrap é um bom estimador da verdadeira média de uma distribuição . Fazemos um grupo por
n_sample_2 e versão a fim de ter para cada comprimento de amostra única o número médio de retenção do
jogador a 7 dias por gates como na Figura 5.

1 db=db.groupby(['n_sample_2','version']).mean()

ithub.com/gllmjclmnt/e9dd827c0d05d2eedeb494fe6cca6188/raw/572dc595b00aea854d05bb5fee7efdb38befc1e2/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/e9dd827c0d05d2eedeb494fe6cca6188#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)


Figure5. Número médio de jogadores ainda jogando em 7 dias para cada duração de amostra única e por gates

Podemos ler esta saída como: quando a amostra tem 200 linhas, há em média 34,60 jogadores que ainda
estão jogando 7 dias com tempo de espera no gate_30, enquanto 34,38 jogadores ainda estão jogando 7 dias
com tempo de espera no gate_40.

Em seguida, desempilhamos o banco de dados para ter o conjunto de dados em um formato mais claro como o
da Figura 6.

1 db = db.unstack()

github.com/gllmjclmnt/38664ae48743cf5990d2482f8321930b/raw/8ff34b581639dde7a9a167ac64a0ba0f545ecae3/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/38664ae48743cf5990d2482f8321930b#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)

Figura 6. Versão desempilhada do conjunto de dados

Nesta fase temos todas as informações necessárias para construir o gráfico de Bland-Altman e a representação
do conjunto de dados é a mesma da Figura 2 acima.

O gráfico de Bland-Altman é composto por 2 eixos. O eixo x é a média dos dois métodos a serem
comparados . Assim é para cada linha: (gate_30i + gate_40i) / 2 ||| O eixo dos y é a diferença entre o
método A e método B . Assim é para cada linha: (gate_30i - gate_40i) ||| E aqui está o segundo “ponto 
problemático” que temos. Ao manter o eixo y como está, o aumento do tamanho das amostras aumentará a
variabilidade das diferenças. Como resultado, a medida estatística que obteremos posteriormente será
ponderada pelas maiores amostras. Para contornar esta limitação, vamos representar o eixo y em
porcentagem [3]. Para fazer isso, o cálculo de y é para cada linha: ((gate_30i - gate_40i) * 100 / ((gate_30i +
gate_40i) / 2) ||| O conjunto de dados se parece com a Figura7.

1 db['x'] = ((db['gate_30'] + db['gate_40'])/2)


2 db['y'] = ((db['gate_30'] - db['gate_40'])*100)/((db['gate_30'] + db['gate_40'])/2)

github.com/gllmjclmnt/03b9bf5d689771d293f814ba8ec6c95c/raw/56063ae59fec4b90856108edb0f8b13e38482a63/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/03b9bf5d689771d293f814ba8ec6c95c#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)

Figure7. eixo x e y

Temos que verificar se o eixo y está normalmente distribuído para confiar no intervalo de confiança que será
exibido. Você pode avaliá-lo usando o teste de shapiro-wilk ou pelo menos com um histograma. Se a
distribuição não for Normal, você pode fazer uma transformação, como uma transformação logarítmica. No
nosso caso, considero a distribuição Normal.

1 db['y'].hist(bins=30)

github.com/gllmjclmnt/bbad41edc079ce8024a0fcfae64c52d8/raw/e8be7533e74604ba49d168968004893ec130f05f/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/bbad41edc079ce8024a0fcfae64c52d8#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)


Figura 8. Histograma do eixo y

O Bland-Altman é composto por 3 linhas (ver Figura 9):

os valores médios de y
o limite superior de y do intervalo de confiança (aqui em 95% dado o 1,96)
o limite inferior de y do intervalo de confiança (em 95%)

1 print('Mean of y: '+ str(db['y'].mean()))


2 print('Upper-bound at 95%: ' + str(db['y'].mean() + 1.96*db['y'].std()))
3 print('Lower-bound at 95%: ' + str(db['y'].mean() - 1.96*db['y'].std()))

github.com/gllmjclmnt/ce68f7432326d2ee726e8ab1f0633277/raw/d80e6904f19254ada821867f1be809cd7759f05d/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/ce68f7432326d2ee726e8ab1f0633277#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)

Figure9. Valores do gráfico de Bland-Altman

1 pyCompare.blandAltman(db['gate_30'], db['gate_40'], percentage=True,


2 title='A/B test analysis ||| gate_30 / gate_40')

st.github.com/gllmjclmnt/99948f559dd810f7eecf23f5addcffed/raw/536a66006506828f86c4b6cfea4ec7001ecd9119/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/99948f559dd810f7eecf23f5addcffed#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)

É necessário primeiro o método A (o campeão) e depois o método B (o desafiante). Então, se porcentagem =


True , ele fará automaticamente o cálculo que fizemos acima. Existem alguns outros parâmetros que
discutiremos mais tarde.

Como interpretar o gráfico de Bland-Altman


para o teste A / B
Aqui estamos ! Aqui está a figura do gráfico de Bland-Altman para o teste A / B gerado pelo código acima:


Figure10. Gráfico de Bland-Altman aplicado ao teste A / B

Em primeiro lugar, a média e o intervalo de confiança da média (faixa azul claro) são diferentes de 0 (maior em
nosso caso). O que significa que o nível de retenção (denominado viés no artigo original) de gate_30 e
gate_40 são significativamente diferentes . Devido a 2,93> 0, significa que A> B <-> Campeão> Desafiador
e, como resultado, um período de espera no gate_30 fornece uma retenção maior do que um período de espera
no gate_40.

As duas barras de salmão representam o intervalo de confiança de 95% (denominado limite de concordância no
artigo original), dizendo que estamos convencidos de que 95% dos valores estarão entre [-0,78%; 6,63%] .
Em nosso exemplo, isso é muito poderoso porque podemos dizer que a retenção de gate_30 será quase
sempre maior que a de gate_40.

Como você pode ver, existem 2 valores acima da faixa salmão superior e 4 abaixo da inferior, que é 6/300 =
0,02 <0,05, portanto, devido a estarmos certos de que 95% dos valores estão dentro dos 2 limites, 5% pode
estar acima ou abaixo e no nosso caso representa 2%, então é perfeitamente normal;)

No pacote pyCompare existe o parâmetro limitOfAgreement que visa alterar os limites da confiança. Aqui, uma
questão relevante seria: “Em qual porcentagem posso ter certeza de que a retenção de gate_30 será sempre
maior do que a de gate_40?” Para responder a esta pergunta, o limite inferior tem que ser igual a 0 , então
temos que encontrar o valor certo para ter 0, como podemos ver no código abaixo que fornece a Figura 11:

1 pyCompare.blandAltman(db['gate_30'], db['gate_40'], percentage=True,


2 title='A/B test analysis ||| gate_30 / gate_40',
3 limitOfAgreement=1.55)

t.github.com/gllmjclmnt/275270149b73efe5b1afc831e19080e0/raw/cd30c7d33b2d36f88c7e5dca0ea45fc0108f25da/BA_plot.py)
BA_plot.py
(https://gist.github.com/gllmjclmnt/275270149b73efe5b1afc831e19080e0#file-ba_plot-py)
hosted with ❤ by
GitHub (https://github.com)


Figure11. Saída ao alterar o parâmetro limitOfAgreement

Vemos que quando limitOfAgreement = 1,55 , o limite é quase igual a 0. Então, temos que verificar na tabela de
distribuição Normal o valor em 1,55 que é 0,9394, então temos certeza em ((1–0,9394) * 2) * 100 = 87,88% que
a retenção do gate_30 será sempre maior que a do gate_40

Um último ponto a acrescentar é que qualquer que seja o valor médio da amostra, eles são uniformemente
representados no gráfico, o que significa que a interpretação que estamos fazendo é generalizada, seja
qual for o tamanho da amostra . Na verdade, se tivéssemos visto uma espécie de representação cônica dos
valores, poderíamos concluir que o tamanho da amostra tem impacto nos resultados, portanto, não podemos
ter uma interpretação válida.

Conclusão
Vimos por que pode ser relevante usar o gráfico de Bland-Altman para ter uma visão sobre os resultados de um
teste A / B em um gráfico simples, como criar o gráfico a partir de um teste A / B e como interpretá-lo . Isso só
funciona em caso de normalidade da diferença porém será necessário transformar os dados.

Além disso, eu verifiquei o App e os gates parecem estar no gate_40 enquanto provamos que a retenção em 7
dias foi melhor em 30. Nesse caso, isso mostra que a retenção talvez não seja a melhor métrica a seguir em
comparação com a lucratividade!

Referências
[1] DG Altman e JM Bland, Measurement in Medicine: the Analysis of Method Comparison Studies, The
Statistician 32 (1983) 307-317

[2] https://projects.datacamp.com/projects/184 (https://projects.datacamp.com/projects/184) OU


https://www.kaggle.com/yufengsui/mobile-games-ab-testing (https://www.kaggle.com/yufengsui/mobile-games-
ab-testing)


[3] DG Altman e JM Bland, métodos estatísticos para avaliar a concordância entre dois métodos de medição
clínica, The Lancet 327 (1986) 307–310

[4] D. Giavarina, Understanding Bland Altman analysis, Biochemia Medica 25 (2015) 141–151


Japanese (https://ichi.pro/a-b-tesuto-ni-bland-altman-purotto-o-shiyosuru-riyu-to-hoho-python-ko-do-132427484283746)
Spanish (https://ichi.pro/es/por-que-y-como-utilizar-el-grafico-de-bland-altman-para-las-pruebas-a-b-python-codigo-132427484283746)
German (https://ichi.pro/de/warum-und-wie-wird-das-bland-altman-diagramm-fur-a-b-tests-verwendet-python-code-132427484283746)
French (https://ichi.pro/fr/pourquoi-et-comment-utiliser-le-trace-de-bland-altman-pour-les-tests-a-b-python-code-132427484283746)
Thai (https://ichi.pro/th/thami-laea-withi-chi-phaenphaph-bland-altman-sahrab-kar-thdsxb-a-b-rhas-python-132427484283746)
Portuguese (https://ichi.pro/pt/por-que-e-como-usar-o-grafico-de-bland-altman-para-testes-a-b-python-codigo-132427484283746)
Russian (https://ichi.pro/ru/pocemu-i-kak-ispol-zovat-grafik-blanda-al-tmana-dla-a-b-testirovania-python-kod-132427484283746)
Vietnamese (https://ichi.pro/vi/tai-sao-cach-su-dung-am-muu-bland-altman-cho-thu-nghiem-a-b-python-ma-132427484283746)
Italian (https://ichi.pro/it/perche-e-come-utilizzare-il-grafico-di-bland-altman-per-i-test-a-b-python-codice-132427484283746)
Korean (https://ichi.pro/ko/a-b-teseuteue-bland-altman-peullos-eul-sayonghaneun-iyu-mich-bangbeob-python-kodeu-132427484283746)
Turkish (https://ichi.pro/tr/a-b-testi-icin-bland-altman-grafigi-neden-ve-nasil-kullanilir-python-kodu-132427484283746)
Indonesian (https://ichi.pro/id/mengapa-bagaimana-menggunakan-plot-bland-altman-untuk-pengujian-a-b-python-kode-132427484283746)
Polish (https://ichi.pro/pl/dlaczego-i-jak-uzywac-wykresu-blanda-altmana-do-testow-a-b-kod-python-132427484283746)
Hindi (https://ichi.pro/hi/a-b-testinga-ke-li-e-bland-altman-plota-ka-upayoga-kyom-aura-kaise-karem-payathana-koda-132427484283746)

Suggested posts
Como todo aprendizado de Como definir o efeito mínimo
máquina se torna aprendizado detectável em testes AB
por reforço (https://ichi.pro/pt/como-definir-
(https://ichi.pro/pt/como-todo- o-efeito-minimo-detectavel-em-
aprendizado-de-maquina-se- testes-ab-279310178987373)
torna-aprendizado-por-reforco- Desmistificando o parâmetro de teste AB
7630109292703) mais evasivo
Eu defendo por que as pessoas que treinam
iterativamente qualquer modelo devem
aprender algumas preocupações centrais do
aprendizado por reforço.

(https://ichi.pro/pt/como-definir-o-efeito-minimo-
detectavel-em-testes-ab-279310178987373)

“Qual tamanho mínimo de efeito detectável devemos


usar para este teste?” Determinar um valor de efeito
(https://ichi.pro/pt/como-todo-aprendizado-de- mínimo detectável (MDE) é uma das partes mais
maquina-se-torna-aprendizado-por-reforco-
7630109292703) 
Exercício de reflexão Considere estes exemplos de complicadas sempre que configurar um teste AB com
um problema de ML que tem efeitos ao longo do equipes de produto. Existe muita confusão sobre o
tempo em seus modelos. Esta função dependente do que esse termo significa.
tempo de aprendizagem por reforço é onde a maioria
das “peças centrais” (abaixo) irão emergir.

Related posts
Incompatível: o problema de fazer um arquivo de forma de retorno de
distrito eleitoral nacional (https://ichi.pro/pt/incompativel-o-
problema-de-fazer-um-arquivo-de-forma-de-retorno-de-distrito-
eleitoral-nacional-277174168059796)

(https://ichi.pro/pt/incompativel-o-problema-de-fazer-um-arquivo-de-forma-de-retorno-de-distrito-eleitoral-
nacional-277174168059796)

Escrito por Jesse Clark, um pesquisador graduado no Laboratório de Eleições do MIT e um Ph.D.

Predição hiperlocal da qualidade do ar usando aprendizado de


máquina (https://ichi.pro/pt/predicao-hiperlocal-da-qualidade-do-
ar-usando-aprendizado-de-maquina-260835076971121)
Introdução


(https://ichi.pro/pt/predicao-hiperlocal-da-qualidade-do-ar-usando-aprendizado-de-maquina-260835076971121)

Predição da qualidade do ar em Oakland, CA usando dados disponíveis publicamente Quando o Google e a


EDF divulgaram seu estudo sobre o mapeamento da poluição do ar em Oakland, os resultados deste estudo
ganharam muita atenção. Os dados que eles divulgaram foram um dos primeiros conjuntos de dados que
mostraram como a qualidade do ar variava por quarteirões da cidade em East e West Oakland.

Uma estrutura para interpretar o valor econômico realizado de


projetos de ciência de dados (https://ichi.pro/pt/uma-estrutura-para-
interpretar-o-valor-economico-realizado-de-projetos-de-ciencia-de-
dados-99616731430857)
Parte I: NPV, IRR, PI


(https://ichi.pro/pt/uma-estrutura-para-interpretar-o-valor-economico-realizado-de-projetos-de-ciencia-de-dados-
99616731430857)

Escrito com Daniel Fleck e David Lubert O primeiro blog de nossa série se concentrará na utilização do valor
presente líquido (NPV), da taxa interna de retorno (IRR) e do índice de lucratividade (PI) para avaliar um projeto
de ciência de dados de forma adequada. Também discutiremos como a utilização de uma metodologia de
ciência de dados pode refinar ainda mais as entradas dessas mesmas métricas econômicas para desenvolver
avaliações de alta qualidade.

Matemática essencial para ciência de dados: base e mudança de base


(https://ichi.pro/pt/matematica-essencial-para-ciencia-de-dados-
base-e-mudanca-de-base-272331583312995)

(https://ichi.pro/pt/matematica-essencial-para-ciencia-de-dados-base-e-mudanca-de-base-272331583312995)

Compreender o conceito de álgebra linear de base útil para decomposição automática e SVD Neste artigo, você
aprenderá sobre o conceito de base, que é uma maneira interessante de compreender métodos de fatoração
de matriz como decomposição automática ou decomposição de valor singular (SVD). Definições A base é um
sistema de coordenadas usado para descrever espaços vetoriais (conjuntos de vetores).

MORE COOL STUFF



3 das receitas de sobremesa de maçã imperdíveis da Ree Drummond
'Pioneer Woman' (https://snews.pro/pt/p/3-das-receitas-de-
sobremesa-de-maca-imperdiveis-da-ree-drummond-pioneer-
woman-15653528)

(https://snews.pro/pt/p/3-das-receitas-de-sobremesa-de-maca-imperdiveis-da-ree-drummond-pioneer-woman-
15653528)

Prepare-se com maçãs com o lanche simples e delicioso da estrela do Food Network, Ree Drummond, e as
receitas de sobremesas da 'Mulher Pioneira', estrelando as frutas da estação.

 2021-10-24.


Sneak Peek de 'The Bold and the Beautiful': Deacon e Sheila unem-se
contra a esperança - quem tem um aliado em Steffy
(https://snews.pro/pt/p/sneak-peek-de-the-bold-and-the-beautiful-
deacon-e-sheila-unem-se-contra-a-esperanca-quem-tem-um-aliado-
15656584)

(https://snews.pro/pt/p/sneak-peek-de-the-bold-and-the-beautiful-deacon-e-sheila-unem-se-contra-a-esperanca-
quem-tem-um-aliado-15656584)

O 'The Bold and the Beautiful' desta semana apresenta uma equipe de proporções épicas - uma que a maioria
dos fãs nunca viu chegando em seus sonhos mais selvagens.

 2021-10-24.


Meghan McCain reage ao fato de Donald Trump chamá-la de
'valentão' após o livro 'The View' Tell-All Book
(https://snews.pro/pt/p/meghan-mccain-reage-ao-fato-de-donald-
trump-chama-la-de-valentao-apos-o-livro-the-view-tell-all-book-
15657043)

(https://snews.pro/pt/p/meghan-mccain-reage-ao-fato-de-donald-trump-chama-la-de-valentao-apos-o-livro-the-
view-tell-all-book-15657043)

Meghan McCain está dando suas opiniões sobre as críticas de Donald Trump depois de lançar seu audiolivro
detalhando o ambiente de trabalho em 'The View'.

 2021-10-24.


Drake responsabiliza Justin Bieber por perder todas as 10 melhores
músicas da lista das 100 melhores da Billboard
(https://snews.pro/pt/p/drake-responsabiliza-justin-bieber-por-
perder-todas-as-10-melhores-musicas-da-lista-das-100-melhores-da-
billboard-15645198)

(https://snews.pro/pt/p/drake-responsabiliza-justin-bieber-por-perder-todas-as-10-melhores-musicas-da-lista-
das-100-melhores-da-billboard-15645198)

Drake quase estabeleceu um recorde do Top 100 da Billboard com Certified Lover Boy, mas foi impedido de
obter todas as 10 músicas de Justin Beiber.

 2021-10-23.


Plásticos vão superar o carvão nas emissões de carbono dos EUA,
mostra estudo (https://ihow.pro/pt/p/plasticos-vao-superar-o-
carvao-nas-emissoes-de-carbono-dos-eua-mostra-
estudo/TlEQH9UVHN-ckE7x5UvcgJ6hwR0_BSKGzqnz0SpqTvw)

(https://ihow.pro/pt/p/plasticos-vao-superar-o-carvao-nas-emissoes-de-carbono-dos-eua-mostra-
estudo/TlEQH9UVHN-ckE7x5UvcgJ6hwR0_BSKGzqnz0SpqTvw)

Um novo relatório divulgado pela Beyond Plastics sugere que os plásticos liberarão mais emissões de gases de
efeito estufa do que as usinas de carvão nos EUA até 2030.

 2021-10-29.


O Coiling Dragon Cliff Skywalk se apega a uma montanha em uma
lasca de vidro (https://ihow.pro/pt/p/o-coiling-dragon-cliff-skywalk-
se-apega-a-uma-montanha-em-uma-lasca-de-
vidro/_HMn3c04mKOoiI-MsPoEIpIcYwXGlNgIr3pysez8uN8)

(https://ihow.pro/pt/p/o-coiling-dragon-cliff-skywalk-se-apega-a-uma-montanha-em-uma-lasca-de-
vidro/_HMn3c04mKOoiI-MsPoEIpIcYwXGlNgIr3pysez8uN8)

Feito de vidro, o angustiante Coiling Dragon Cliff Skywalk testará a coragem de qualquer pessoa corajosa o
suficiente para desafiar suas alturas.

 2021-10-29.


Cruzando o desfiladeiro de Darién, uma selva sem lei que divide a
rodovia pan-americana (https://ihow.pro/pt/p/cruzando-o-
desfiladeiro-de-darien-uma-selva-sem-lei-que-divide-a-rodovia-pan-
americana/JnIfwooGG7PCKc6B69Hq4w)

(https://ihow.pro/pt/p/cruzando-o-desfiladeiro-de-darien-uma-selva-sem-lei-que-divide-a-rodovia-pan-
americana/JnIfwooGG7PCKc6B69Hq4w)

Todas as estradas da Rodovia Pan-Americana terminam em Darién Gap, uma densa selva que separa o
Panamá da Colômbia. O que torna o trekking nesta área tão perigoso?

 2021-10-29.


O que bilhões de ajuda dos EUA conseguiram no Afeganistão: 5
perguntas respondidas (https://ihow.pro/pt/p/o-que-bilhoes-de-
ajuda-dos-eua-conseguiram-no-afeganistao-5-perguntas-
respondidas/6YAoa0yTIbwLSL6Ej_0ROXm5OlBNVYqLH4k0rJqiVEw)

(https://ihow.pro/pt/p/o-que-bilhoes-de-ajuda-dos-eua-conseguiram-no-afeganistao-5-perguntas-
respondidas/6YAoa0yTIbwLSL6Ej_0ROXm5OlBNVYqLH4k0rJqiVEw)

Cerca de US $ 150 bilhões em ajuda não militar norte-americana fluíram para o Afeganistão de 2001 a 2020,
mas o que exatamente foi realizado naquela época com essa quantia de dinheiro?

 2021-10-27.


O infame estalar de dedos de Thanos em Avengers: Infinity War agora
tem um nome oficial (https://upost.info/pt/o-infame-estalar-de-
dedos-de-thanos-em-avengers-infinity-war-agora-tem-um-nome-
oficial-31383330393331323532)

(https://upost.info/pt/o-infame-estalar-de-dedos-de-thanos-em-avengers-infinity-war-agora-tem-um-nome-oficial-
31383330393331323532)

O estalar de dedos de Thanos em Avengers: Infinity War é um daqueles momentos absolutamente definidores,
e não apenas para o filme, mas para todo o Universo Marvel. Era lógico pensar que os habitantes da Terra
dariam algum nome a este incidente.

 2021-11-02 22:48.


Ucrânia é apenas o começo: bem-vindo à era das guerras das
sombras (https://upost.info/pt/ucrania-e-apenas-o-comeco-bem-
vindo-a-era-das-guerras-das-sombras-31363931303733363437)

(https://upost.info/pt/ucrania-e-apenas-o-comeco-bem-vindo-a-era-das-guerras-das-sombras-
31363931303733363437)

Ficou confuso sobre o que está acontecendo entre a Rússia e a Ucrânia? Você não está sozinho. E esse é
mais ou menos o ponto - este conflito serve como um estudo de caso na eficácia da guerra sombria e "híbrida",
que é difícil de entender de fora.

 2021-11-02 22:46.


Ler sobre casamentos feministas é exaustivo
(https://upost.info/pt/ler-sobre-casamentos-feministas-e-exaustivo-
31373736373832393932)

(https://upost.info/pt/ler-sobre-casamentos-feministas-e-exaustivo-31373736373832393932)

O New York Times se concentrou em outro casamento feminista e, embora o casal pareça genuinamente
adorável e apaixonado, falar sobre como infundir poder feminino em seu casamento está me sobrecarregando.
Christen Conger realmente contribuiu para I Thee Dread em 2013, explicando por que ela como uma pessoa
solteira, não precisava do equivalente a uma cerimônia de casamento para uma pessoa solteira, o que deve ter
sido um medo fugaz três anos atrás.

 2021-11-02 22:44.


Por US $ 24.995, este kit personalizado Hummer H1 pode provar que
às vezes é suficiente? (https://upost.info/pt/por-us-24-995-este-kit-
personalizado-hummer-h1-pode-provar-que-as-vezes-e-suficiente-
31373934393132313835)

(https://upost.info/pt/por-us-24-995-este-kit-personalizado-hummer-h1-pode-provar-que-as-vezes-e-suficiente-
31373934393132313835)

Moderação em todas as coisas obviamente não é o lema da homenagem a Preço Agradável ou Tubo de Racha
H1 de hoje. Vamos ver se essa besta de seis portas baseada em Suburban tem um preço tão excessivo quanto.

 2021-11-02 22:41.


Juiz na Espanha concede custódia conjunta de casal de seu cachorro,
Panda, em decisão rara (https://knews.vip/pt/p/juiz-na-espanha-
concede-custodia-conjunta-de-casal-de-seu-cachorro-panda-em-
decisao-
rara/oC01EAwUO1MOmrFGCCjJhA2qZzaL0volNgReXdwGry95o9IQej5TV
pciXNOeLMT39JvvFK4ENz8ANakam3c8l-
sHYDNGe9ENtXpvs89Y6FZ_5BJOm1)

(https://knews.vip/pt/p/juiz-na-espanha-concede-custodia-conjunta-de-casal-de-seu-cachorro-panda-em-
decisao-rara/oC01EAwUO1MOmrFGCCjJhA2qZzaL0volNgReXdwGry95o9IQej5TV4P1mFeZmusK_k-
pciXNOeLMT39JvvFK4ENz8ANakam3c8l-sHYDNGe9ENtXpvs89Y6FZ_5BJOm1)

Um casal separado na Espanha teria recebido a guarda conjunta de seu cachorro, Panda, em uma rara decisão
judicial no início deste mês.

 2021-10-29.


Missouri High School escolhe um estudante do sexo masculino para
ser a rainha do baile pela primeira vez
(https://knews.vip/pt/p/missouri-high-school-escolhe-um-estudante-
do-sexo-masculino-para-ser-a-rainha-do-baile-pela-primeira-
vez/Z55E9-bNryx2Fc5WFIWQdRAMWo60vYeissQCWU_DLIkm-
xjWUNQGfa-
FYemRY29lPMBJR84Cw0OqZ3LAdqr9QGc6b2WzzwU0bUXPZP6g-
cmjySkWdgiPpe5eZ8WT_XYq)

(https://knews.vip/pt/p/missouri-high-school-escolhe-um-estudante-do-sexo-masculino-para-ser-a-rainha-do-
baile-pela-primeira-vez/Z55E9-bNryx2Fc5WFIWQdRAMWo60vYeissQCWU_DLIkm-xjWUNQGfa-
FYemRY29lPMBJR84Cw0OqZ3LAdqr9QGc6b2WzzwU0bUXPZP6g-cmjySkWdgiPpe5eZ8WT_XYq)

Zachary Willmore fez história na Rock Bridge High School em Columbia, Missouri esta semana, por ser o
primeiro aluno a ser coroado Rainha do Baile

 2021-10-29.


Executivo de hospital que disse que foi demitido por ser um homem
branco recebeu US $ 10 milhões pelo júri: 'Decepcionado', diz a
empresa (https://knews.vip/pt/p/executivo-de-hospital-que-disse-
que-foi-demitido-por-ser-um-homem-branco-recebeu-us-10-
milhoes-pelo-juri-
decepcionad/QokuT3DcVFpSgimco9p__nV7gFTipq5OktdH5hCE32K3CIJ
4vlMnVhvVCCUh45HCSjNfwy79z188B_XWilAvzlKLytjhXgq-SR-Bx21XM)

(https://knews.vip/pt/p/executivo-de-hospital-que-disse-que-foi-demitido-por-ser-um-homem-branco-recebeu-us-
10-milhoes-pelo-juri-
decepcionad/QokuT3DcVFpSgimco9p__nV7gFTipq5OktdH5hCE32K3CIJ_OJet4L8D_5dofJJ2QB5VWFMk58ykFe
4vlMnVhvVCCUh45HCSjNfwy79z188B_XWilAvzlKLytjhXgq-SR-Bx21XM)

David Duvall processou a Novant Health, Inc., em 2019, depois de dizer que a empresa o demitiu "sem aviso e
sem explicação" por causa de sua raça e sexo

 2021-10-29.


Brooke Shields relembra controvérsia "ridícula" sobre seus anúncios
da Calvin Klein dos anos 80: "Eu fui ingênua"
(https://knews.vip/pt/p/brooke-shields-relembra-controversia-
ridicula-sobre-seus-anuncios-da-calvin-klein-dos-anos-80-eu-fui-
ingenua/jAPI7ERWpNR2IiUVw3v0zCQ5rHORlgp7_2K-
fCmVD0z_ISbu6dJZH_tIfavl6t2AuByDWAhsBo71oGjJaDW5-
EoPRSwaiw-byFASEELkGQo)

(https://knews.vip/pt/p/brooke-shields-relembra-controversia-ridicula-sobre-seus-anuncios-da-calvin-klein-dos-
anos-80-eu-fui-ingenua/jAPI7ERWpNR2IiUVw3v0zCQ5rHORlgp7_2K-
fCmVD0z_ISbu6dJZH_tIfavl6t2AuByDWAhsBo71oGjJaDW5-EoPRSwaiw-byFASEELkGQo)

Brooke Shields recentemente refletiu sobre sua campanha de jeans Calvin Klein de 1980, que causou um
grande alvoroço sobre a percepção de uma insinuação sexual na performance da garota de 15 anos de idade.

 2021-10-29.

Quais são algumas fotos raras que nunca vimos? (https://iquestion.pro/pt/p/quais-sao-algumas-fotos-raras-que-


nunca-vimos/u6PxD6iD5KpyQ3zeoMJ7DSgQtuL3sgujJuDr-
Brhc6iAKbJnnsQT4I7AQNcJhbixWXL3iutKL00wgwFhgKpkig)

Qual é a foto mais inadequada que você já viu? (https://iquestion.pro/pt/p/qual-e-a-foto-mais-inadequada-que-


voce-ja-
viu/vntKeEzZZpiHXgmc1djf8zfLlZmCWc1hhVqX5CC2_S1xpo7Ea93HChMVCEzEyawJhZyPHK36QJAW3NOezW

Quais são as fotos mais assustadoras que você já viu? (https://iquestion.pro/pt/p/quais-sao-as-fotos-mais-
assustadoras-que-voce-ja-viu/mlgP2x65GoCcS9fBUUAOP0dpRXIgzexnziOlX4llFvJU_t1P15uj_oT8yvfvBoZY)

Qual é a imagem mais emocionante que você já viu? (https://iquestion.pro/pt/p/qual-e-a-imagem-mais-


emocionante-que-voce-ja-viu/vntKeEzZZpiHXgmc1djf889TirmwYlEP_W4NWkDs-
DBLXVSCN0RBlP9LoHCGLxN4BlwW9rFjQuX-183bwmFalA)

Quais são algumas das fotos mais perturbadoras que você já viu? (https://iquestion.pro/pt/p/quais-sao-
algumas-das-fotos-mais-perturbadoras-que-voce-ja-
viu/zWL5OktQ0r175FBTMHgyzOBxkKjOssLiK2sexiPlCTSVOCzehB3NAfEDZlXmaxpcSTUYqNpN4gRnSjwZjxddZ

Qual é a foto mais interessante que você já viu? (https://iquestion.pro/pt/p/qual-e-a-foto-mais-interessante-que-


voce-ja-
viu/vntKeEzZZpiHXgmc1djf88JTxz8WwFgmkQsd2MxdCLYdl9OfKb37OwVnOLZMQyXDTmgylVzHtKhhjjFsYISSnA

Quais são as raras fotos que nunca vimos na Índia? (https://iquestion.pro/pt/p/quais-sao-as-raras-fotos-que-


nunca-vimos-na-india/6b6PnEc0TWA6Iy1iY5_7gyxz-
xp1Pf5DDD_mKtz4c923PGxBfQH9DlyVgamqWokShDYRkeVsmXK9WvtrRJTMvQ)

Qual é a melhor foto que você já viu? (https://iquestion.pro/pt/p/qual-e-a-melhor-foto-que-voce-ja-


viu/KPKh4uJyC1doDxypV0bBT_Riq_RuigAgFn-9TGm_StTrY9gXrcVPuGw7ywQ7P9iG)

Qual é a foto de animal mais deslumbrante que você já viu? (https://iquestion.pro/pt/p/qual-e-a-foto-de-animal-


mais-deslumbrante-que-voce-ja-
viu/s2_Ci9mfu599XSX9YisL3uAk1YwrPnC2qa9uKkX_ZbdCWDMdjbuOw5pmBRxQ9JG4gA3GQgYtYK25WKfKBK

Quais são as fotos mais felizes que você já viu? (https://iquestion.pro/pt/p/quais-sao-as-fotos-mais-felizes-que-


voce-ja-viu/uqsiw6WuS7mWlFuGtkg3quCzc0DI8SkyDHuzZgJYfryxJ8R4pEs7sjnOfg4qoAQD)

1 O que são bombas de Ellerman e como podemos identificá-las? (https://isolution.pro/pt/q/as13042457/o-


que-sao-bombas-de-ellerman-e-como-podemos-identifica-las)

1 Efeito de Wilson: Quão “profundas” são as manchas solares? (https://isolution.pro/pt/q/as13041809/efeito-


de-wilson-quao-profundas-sao-as-manchas-solares)

6 Em relação a um orientador de doutorado rejeitando aluno devido a problemas de saúde


(https://isolution.pro/pt/q/ac13164134/em-relacao-a-um-orientador-de-doutorado-rejeitando-aluno-devido-
a-problemas-de-saude)

1 Regex_search c ++ (https://isolution.pro/pt/q/so79410989/regex-search-c)

1 “
$\Sigma_1^1$-Peano aritmética ”- fixa $\mathbb{N}$? (https://isolution.pro/pt/q/ma17033004/sigma-1-1-
peano-aritmetica-fixa-mathbb-n)

2 Qual é a matriz do logaritmo do operador derivado (


$\ln D$)? Qual é o papel desse operador em vários
campos da matemática? (https://isolution.pro/pt/q/mf13380533/qual-e-a-matriz-do-logaritmo-do-operador-
derivado-ln-d-qual-e-o-papel-desse-operador-em-varios-campos)

3 Uso de uma palavra hebraica incomum para "brilhou" em Êxodo


(https://isolution.pro/pt/q/he13052866/uso-de-uma-palavra-hebraica-incomum-para-brilhou-em-exodo)

6 A lua tem a velocidade certa para não bater na Terra ou escapar para o espaço. Quais são as hipóteses?
(https://isolution.pro/pt/q/as13038925/a-lua-tem-a-velocidade-certa-para-nao-bater-na-terra-ou-escapar-
para-o-espaco-quais-sao-as-hipoteses)

5 A História da Moda de Lobisomem, Parte 1: os anos 2000 (https://isolution.pro/pt/q/wb13193008/a-


historia-da-moda-de-lobisomem-parte-1-os-anos-2000)

1 “Eles não incorrem em culpa e morrem” (https://isolution.pro/pt/q/he13052839/eles-nao-incorrem-em-


culpa-e-morrem)

Languages
Japanese (https://ichi.pro/) Spanish (https://ichi.pro/es) German (https://ichi.pro/de)
French (https://ichi.pro/fr) Thai (https://ichi.pro/th) Portuguese (https://ichi.pro/pt)
Russian (https://ichi.pro/ru) Vietnamese (https://ichi.pro/vi) Italian (https://ichi.pro/it)
Korean (https://ichi.pro/ko) Turkish (https://ichi.pro/tr) Indonesian (https://ichi.pro/id)
Polish (https://ichi.pro/pl) Hindi (https://ichi.pro/hi)

2020 - 2021 ICHI.PRO (https://ichi.pro/)

Você também pode gostar