Qual é a diferença entre paralelismo de modelos e paralelismo de dados?
'Paralelismo de dados' e 'paralelismo de modelos' são formas diferentes de distribuir um algoritmo. Estes são frequentemente usados no contexto de algoritmos de aprendizagem de máquinas que usam descidas de gradientes estocásticos para aprender alguns parâmetros do modelo, o que basicamente significa que:
- O algoritmo está a tentar estimar alguns parâmetros a partir dos dados dados fornecidos.
- Parametros são estimados minimizando o gradiente contra alguma função de perda.algoritmo distribui os dados entre os vários núcleos.>li>li> Cada núcleo tenta independentemente estimar o(s) mesmo(s)parâmetro(s)li>li>Cores então trocam a(s) estimativa(s) uns com os outros para chegar à estimativa certa para o passo.algoritmo envia os mesmos dados para todos os núcleos.
- Cada núcleo é responsável por estimar o(s) parâmetro(s)
- Li>Cores então trocam a(s) sua(s) estimativa(s) uns com os outros para chegar à estimativa certa para todos os parâmetros.
A abordagem paralela aos dados é útil quando há menor número de nós no cluster e o número de parâmetros a serem estimados é pequeno, enquanto a abordagem paralela aos modelos é útil na condição oposta.
Para mais detalhes, por favor leia estes dois excelentes posts de Tim Dettmers.
Artigos semelhantes
- Qual é a diferença entre os vários modelos de Saregama Carvaan (se houver) e qual é o melhor modelo?
- Qual é a diferença entre os modelos PS4 Pro: CUH-7115, CUH-7116 e CUH-7106?
- Qual é a diferença entre o ECMWF, GFS e outros modelos de previsão do tempo?
- Qual é a diferença entre uma base de dados tradicional e uma base de dados moderna?