Shaoxing Xinshan Science Technology Co., Ltd
You Are Here:Inicio > Noticias > Contenido
El diseño de la viruta resuelve el aprendizaje de la máquina, y así que son los expertos
Jul 06, 2017

El diseño de la viruta se encuentra con el aprendizaje automático, y también lo son los expertos


Aprendizaje de la máquina es caliente recientemente, mientras que el procesamiento de EDA y el tipo de datos de gran tamaño, pero en la consolidación de la tecnología de aprendizaje automático en las herramientas de EDA no han hecho mucho progreso.


Muchos problemas y soluciones de EDA son esencialmente estadísticos, lo que significa que el aprendizaje automático es naturalmente apropiado para EDA. Entonces, ¿por qué este campo es tan lento para abarcar otros campos tecnológicos como el aprendizaje automático y el reconocimiento visual y la búsqueda?


El vicepresidente de operaciones de tecnología de Solido Design Automation, Jeff Dyck, dijo: "usted puede sentir que es un problema de aprendizaje de máquina.Tenemos una gran cantidad de datos, pero podemos usar qué método para resolver estos problemas? Dicen que leer un libro de texto o aprender una lección será capaz de aplicar estos métodos a todos los problemas.Problemas de ingeniería que deben ser una perspectiva diferente.


Antes de ahondar en dónde se puede aplicar el aprendizaje automático, echemos un vistazo a algunos de los problemas.


Aprender desde el aprendizaje basado en reglas hasta el aprendizaje profundo


Primero clasificaremos estas técnicas. "En el sentido más amplio, todos estamos acostumbrados a las técnicas basadas en reglas (RBT) en el campo EDA". El director de ingeniería de Nvidia, Ting Ku, explicó que "el aprendizaje mecánico es en realidad un subconjunto de la RBT y el aprendizaje profundo es un subconjunto del aprendizaje de la máquina.La RBT es determinista, no involucra la base de datos, El aprendizaje de la máquina, en lugar de lo determinista, y ya que tienes que aprender de la experiencia, todavía puede implicar a la base de datos.Por lo tanto, el uso de la máquina de aprendizaje, también puede necesitar las características predefinidas, y esta es la diferencia entre el aprendizaje de máquina y profundidad Aprendizaje.Para el aprendizaje profundo, además de no predefinidos características, otros y el aprendizaje de la máquina.Por lo tanto, la pregunta: "características (característica) es qué?"


Una vez que tenga las características y almacenar suficientes datos, tiene que averiguar cómo usarlos. "Buscar todo el espacio de diseño es poco práctico". NetSpeed Systems, vicepresidente de marketing y desarrollo de negocios de Anush Mohandass, dijo: "debido a que el espacio es de naturaleza altamente no lineal, el tiempo de búsqueda aumentará exponencialmente con el alcance de la búsqueda. Problema de la experiencia similar se puede utilizar como datos de formación, para estudiar y predecir soluciones similares a los nuevos problemas) se puede utilizar para representar el enorme potencial ".


Existen muchos métodos de aprendizaje automático, que pueden ser divididos en aprendizaje supervisado, aprendizaje no supervisado y aprendizaje intensivo. La mayoría de las aplicaciones de EDA se centran en el aprendizaje supervisado. E3 Data Science de la CTO Eric Hall explicó: "Hay dos tipos de aprendizaje supervisado: la regresión (regresión) se puede utilizar para el cálculo numérico, queremos predecir y la clasificación (clasificación) se puede utilizar para predecir los resultados de múltiples resultados en una situación ¿Puede la máquina aprender algoritmos para resolver estos problemas tiene un montón de, pero nadie puede resolver todos los problemas por sí solos.


También tiene otros problemas, Hall añadió: "en la búsqueda de los no detectados a las características de un modelo no lineal, el rendimiento técnico de aprendizaje profundo es excelente, pero es una caja negra, y puede necesitar un largo tiempo de formación es difícil de explicar".

formación


El rendimiento de las técnicas de aprendizaje mecánico depende de los datos utilizados en su formación. "El aprendizaje de la máquina es un proceso iterativo", dijo Ku, "el algoritmo de aprendizaje de máquina basado en los datos de entrada tiene la salida correspondiente.Esta salida puede no ser correcta, por lo que también debe verificar.Después de la terminación, los datos están contenidos en una base de datos. Tiempo que debe comenzar a entrenar de nuevo (rertraining) .El ciclo continúa.En cierta medida, esperamos que este ciclo iterativo puede hacer que el modelo es bastante preciso, hacerlo cuando vi un nuevo caso para hacer buenas predicciones.


En muchos casos, los datos pueden provenir de diseños anteriores, pero ¿es suficiente? Solido Dyck dijo: "imaginar, si hay 2000 trabajar en paralelo la simulación de SPICE para resolver un chip que nunca habíamos visto un nunca han visto un problema de proceso de fabricación.La información que podemos reunir algunas prácticas del pasado y utiliza esta información para modelar, Pero también tenemos datos en tiempo real, es un aprendizaje en tiempo real y construimos el modelo en tiempo real ".


Hay muchos otros problemas con el aprendizaje en tiempo real. "Si hay un problema con la transmisión de datos o una respuesta equivocada a un modelo contaminante, es necesario filtrarlo o ajustarlo, y es muy difícil". "Necesitamos recuperación y reparación automáticas", agregó. "Cuando algo va mal, tienes que ser capaz de depurar los datos."


Pero la depuración de sistemas de aprendizaje de máquinas es un área relativamente desconocida. Las técnicas de verificación, si las hay, son escasas.


Hay otros tipos de aprendizaje involucrados con el proceso de EDA. "Tenemos que ser capaces de atravesar el proceso de diseño para adquirir conocimiento", dijo Sorin Dobre, director técnico senior de Qualcomm, "EDA tiene una oportunidad muy buena, la supervisión y las soluciones de aprendizaje automatizado sin supervisión pueden extenderse a la optimización de procesos de diseño, el diseño Optimización de flujo) Tenemos 20 años de experiencia de ingenieros superiores para garantizar el diseño de alta calidad, pero también tenemos que ayudar a que el diseñador acaba de comenzar.No podemos esperar cinco años para jugar plenamente su productividad.


Incluso para los diseñadores experimentados, este trabajo es cada vez más difícil. "En el pasado, los arquitectos diseñaron la interconexión (interconexión) basándose en su experiencia, y tomaron decisiones clave de diseño sobre la topología y las opciones de cableado basadas en su intuición". NetSpeed Mohandass dijo, "pero, este método no se aplica a los requisitos de un muy heterogéneo sistemas heterogéneos.Debido a la complejidad de la interacción entre múltiples piezas de dispositivo, para diseñar una especie de cerca de lo óptimo, y capaz de trabajar, el Buen rendimiento, también se considera la interconexión de todos los casos es prácticamente imposible ".


El conjunto de datos


Plunify CEO Harnhua Ng dijo: "para obtener un buen conjunto de datos puede ser difícil.La capacidad de aprendizaje de estas herramientas puede garantizar que cuando el equipo de ingeniería para utilizarlos más base de datos de aprendizaje se convertirá en más inteligente, aumentando el tiempo de ejecución del diseño.


Así que sólo aquellos que ya tienen grandes conjuntos de datos pueden utilizar estas tecnologías? ¿O EDA puede proporcionar capacitación inicial? "Para muchas aplicaciones de aprendizaje de máquina en el campo EDA, la selección y entrenamiento de parámetros relacionados con el algoritmo debe hacerse completamente en el entorno informático del cliente de diseño o de la fábrica". La cadencia del distinguido ingeniero David White dijo que "en estas aplicaciones, la tarea más difícil es crear un método de automatización de formación y validación, hacer su puede garantizar el algoritmo en el objetivo funciona como se espera en la tecnología de silicio.En algunos casos, más avanzada y más complicada máquina El método de aprendizaje puede proporcionar una mayor precisión, pero para proporcionar apoyo en este ámbito es el más difícil.En el proceso de desarrollo, la gente necesita de acuerdo a la precisión requerida y el número de datos de capacitación disponibles y otras restricciones relacionadas con el apoyo y el modelo para sopesar la El algoritmo apropiado y la elección de la arquitectura ".


Suena difícil, y lo es. "EDA problema de alta dimensión, la interacción de alto orden, discontinuidad y no lineal, necesidad de diseño experimental de tecnología avanzada, estudio avanzado, inteligencia de cribado y filtrado y la supervisión de la infraestructura de referencia (muy infraestructura)". "Además, el problema de la EDA y la alta tasa de flujo y el archivo de datos de masa, para optimizar el flujo del analizador (streaming parser), puede ser paralelizado algoritmo, gestión de clúster eficiente y escalable, la automatización Recuperación y reparación, y gran depuración de datos ".


Mohandass da un ejemplo de un conjunto de datos necesarios para el diseño de la interconexión. "La perfecta estrategia de interconexión depende de números muy grandes de parámetros SoC, incluyendo el diseño (floorplan), el cableado, los recursos disponibles, los requisitos de conexión, la dependencia del nivel de protocolo, el reloj, las características del arte (como el retardo, el consumo de energía y las limitaciones de ancho de banda y delay) Y así sucesivamente.El número de diferentes dimensiones de la estrategia de diseño de espacio se puede aumentar a los cientos de, esto creará un gran espacio de diseño.


infraestructura


Hay varias dimensiones a este problema. Sinopsys, vicepresidente y CIO Hasmukh Ranjan dijo: "aprendizaje de la máquina se puede utilizar en EDA, pero con el fin de maximizar los beneficios de la máquina de aprendizaje en sí, debe utilizarse en ambas herramientas deben estar alrededor de estas herramientas utilizadas en el proceso de diseño.


Dobre de Qualcomm está de acuerdo en que "no hay necesidad de tener todo en la herramienta EDA. Puede utilizar una solución de aprendizaje independiente para manejar las herramientas existentes".


IC the Manage, vicepresidente ejecutivo de Shiv Sikand, ofrece un ejemplo: "analizando el flujo antes de (billar) miles de millones de puntos de datos, podemos predecir la vulnerabilidad y diseñar la complejidad, los recursos humanos, la influencia del certificado y calcular el rendimiento De los clústeres de servidores de proyectos actuales.Al identificar el cuello de botella en el diseño de semiconductor proporciona previdencia podemos predecir e identificar el retraso potencial ".


También es posible que debamos revisar la infraestructura de nuestras herramientas de ejecución. "También debemos considerar el almacenamiento inteligente", agregó Sikand: "a través del análisis del flujo de datos asociado con las operaciones de archivo, las técnicas de aprendizaje de la máquina, como la agrupación y el análisis de regresión para mejorar continuamente la red P2P y la gestión de caché, Rendimiento de la aplicación ".


Dobre equipo está muy familiarizado con estos problemas: "Tenemos contener decenas de miles de CPU de la granja de computación.Al ver la necesidad de verificar el número de diseño al mismo tiempo, ¿cómo hacer de una manera que es una especie de uso óptimo De estos recursos y la explosión de los recursos necesarios Esto necesita la gestión de los datos ¿Cómo hacer frente en el espacio de diseño y de manera efectiva en la fundición de datos tanto y extraer el conocimiento de diseño siguiente y la información necesaria para reducir el ciclo de aprendizaje?


La máquina que ejecutará el algoritmo de aprendizaje de la máquina añade otra dimensión. "El aprendizaje automático reducirá el tiempo de diseño y simulación a través de algoritmos complejos existentes". Sachin, director asociado de Mercados y Mercados Garg, dijo: "Las herramientas de EDA pueden adoptar decisiones inteligentes para adoptar o avanzar, pero necesitamos un mejor hardware (CPU + GPU) para ejecutar algoritmos de aprendizaje de máquinas complejas para hacerlo más eficiente. La generación actual después de la generación de GPU puede proporcionar la carga de la computación paralela con gran expansión para acelerar y un excelente rendimiento ".


Cadence of White está de acuerdo: "el progreso en el campo de la arquitectura de computación paralela a gran escala basada en la suposición de optimización y validación (la optimización y la verificación basadas en lo que ocurre) abre la puerta para explorar el espacio de diseño de manera efectiva y la fusión de Las decisiones más potenciales ".


Campo de aplicación


El éxito depende de la capacidad de definir el conjunto correcto de características. "Para considerar el diseño de la desviación del proceso (variación), por ejemplo," Ku dijo: "si desea modelar una función de densidad de probabilidad, es necesario atribuir (atributo) Características (característica) es capaz de distinguir una cosa con otra Para las personas, puede es el color del cabello, la altura, el género.Para considerar el diseño de las características de la desviación del proceso podría ser Ángulo PVT, cambiar los algoritmos y los componentes definidos de una variable aleatoria Así es algo importante para un problema específico. "


Podemos ver una gran desviación del proceso en el proceso de 10nm y m. "Es importante que la planta genere nuevos esfuerzos tecnológicos". Dobre dijo, "incluso si está en el ámbito digital, también necesita elementos de la biblioteca como diseño analógico.Usted debe cruzar múltiples ángulo de proceso para verificar este diseño.¿Cómo usted en la ausencia de los recursos necesarios circunstancias extraordinarias para lograr alta calidad "El aprendizaje de la máquina puede ser 10 veces la productividad, reducir las semanas de tiempo de medición y reducir el desperdicio de recursos.En el reconocimiento conduce a un modelo de calidad inferior, el aprendizaje de la máquina es un método eficaz.Vemos el enorme potencial, puede traer beneficios económicos.


EDA está tratando de resolver el problema. "Con el diseño de nodos avanzados, nuevas tecnologías de silicio y requisitos de validación adicionales traen mayor incertidumbre, aumentando así el riesgo potencial". White dice que "en el proceso de diseño tradicional, el diseño y la disposición de los datos anteriores no será utilizado eficazmente para ayudar a guiar el diseño siguiente.El progreso del método de análisis nos permite comprobar (minería) antes del diseño de los datos y la tendencia , Y utilizarlo en las primeras etapas del proceso de diseño para guiar las decisiones de diseño.El mismo método se puede utilizar para encontrar y ofrecer formación y desarrollo para impulsar el motor de aprendizaje de la máquina (contexto) .El fondo de esta solución es probable que La necesidad de utilizar una gran cantidad de datos y componentes de cientos de aprendizaje de la máquina, que tendrá que gestionar y validación.Una vez que los datos se colocan en el fondo apropiado, el aprendizaje automático puede ser utilizado para obtener el comportamiento complejo de análisis (por ejemplo, Parasitarias, eléctricas, validación), y alta precisión, alta velocidad ".


Hay otras áreas de diseño que pueden ayudar. Hall dijo: "Podemos usarlo para la estimación de la memoria o la estimación del poder lógico o la estimación secuencial, lo que reduciría la incertidumbre y complementaría el trabajo humano, con el fin de crear productos más competitivos".


Otra área donde está emergiendo una solución es el enrutamiento. "En el contexto del diseño de interconexión, el primer paso es identificar la combinación de estrategias de diseño en cada dimensión, lo que puede conducir a una buena solución para un gran número de diferentes diseños SoC". "El siguiente paso es usar esta información para aprender los patrones y predecir qué combinaciones de estrategia probablemente conducirá a un buen diseño", dijo Mohandass.


Se pueden aplicar técnicas similares al cableado FPGA. "El diseño complejo de FPGA con tiempos complejos y problemas de cierre de rendimiento es un buen candidato para las herramientas basadas en técnicas de aprendizaje automático". Plunify Ng dijo, agregando que "las herramientas de aprendizaje de la máquina para compilar los resultados de análisis en el pasado, se puede predecir en el billón de posibilidades los parámetros óptimos de integración / diseño y el cableado y la ubicación del tejido. Para inferir qué herramientas para un diseño óptimo parámetros, con el fin de extraer información de los datos para mejorar la calidad de los resultados ".


El resultado de la confianza


Pero en comparación con otras aplicaciones de aprendizaje automático, el diseño se enfrenta a más obstáculos. "Si existe el riesgo de que un esquema sea demasiado radical o demasiado conservador, la gente no lo adoptará". Dyck explicó que "las herramientas de aprendizaje mecánico son un gran estimador, no se puede pedir a la gente que confíe en él, así que necesitamos ser capaces de aclarar la precisión de la tecnología de modelado." Esta tecnología tiene muy poco - hay que inventarlos. Método, se puede encontrar gradualmente los campos relacionados, y estos son a menudo el peor lado.Para mostrar que puede causar el fracaso del chip , y proporciona una visión clara en el área.Por este modo usted estará en estas áreas directamente. El dominio del problema es muy importante ".


Dyck también observó que la EDA se enfrenta a otro obstáculo: "si no puede probar que la respuesta es correcta, no la aceptará. De modo que necesita diseñar para validar el algoritmo. Que cuando usted da una respuesta, usted puede demostrarla en la época de la corrida está a la derecha. "


conclusión


El aprendizaje automático ha comenzado a penetrar en la EDA y en los procesos de diseño. "El aprendizaje automático ha comenzado a desempeñar un papel importante en la EDA", dijo Gupta. "También tiene la oportunidad de proporcionar revoluciones tecnológicas disruptivas para resolver problemas de semiconductores".


Pero nosotros aún tenemos un largo camino por seguir. Ku dijo: "hoy vemos es la punta del iceberg.Esperamos que el futuro EDA puede dejar de proporcionar datos.Los datos son muy buenos, por supuesto, pero realmente necesitamos es una decisión.Usted necesita hacer es añadir una capa entre Los datos y la toma de decisiones, el algoritmo de la máquina puede aprender datos para entender cómo debe tomar la decisión.EDA es perfecto para la posición de trabajo.


Si desea mantener la confianza, hay pequeños pasos. "La inteligencia artificial y el aprendizaje automático pueden ser un lugar único para una empresa, pero el uso de la inteligencia artificial no debe reducir la precisión del algoritmo", dice Ranjan de Synopsys.