En lógica , inferencia estadística y aprendizaje supervisado , la transducción o inferencia transductiva es el razonamiento de casos específicos (de entrenamiento) observados a casos específicos (de prueba). Por el contrario, la inducción es un razonamiento desde los casos de entrenamiento observados hasta las reglas generales, que luego se aplican a los casos de prueba. La distinción es más interesante en los casos en los que las predicciones del modelo transductivo no son alcanzables por ningún modelo inductivo. Tenga en cuenta que esto se debe a la inferencia transductiva en diferentes conjuntos de pruebas que producen predicciones mutuamente inconsistentes.
La transducción fue introducida por Vladimir Vapnik en la década de 1990, motivado por su opinión de que la transducción es preferible a la inducción ya que, según él, la inducción requiere resolver un problema más general (inferir una función) antes de resolver un problema más específico (calcular salidas para nuevos casos). ): "Al resolver un problema de interés, no resuelva un problema más general como paso intermedio. Intente obtener la respuesta que realmente necesita, pero no una más general". [1] Una observación similar había sido hecha anteriormente por Bertrand Russell : "llegaremos a la conclusión de que Sócrates es mortal con un mayor acercamiento a la certeza si hacemos nuestro argumento puramente inductivo que si tomamos el camino de 'todos los hombres son mortales' y luego usar la deducción "(Russell 1912, capítulo VII).
Un ejemplo de aprendizaje que no es inductivo sería el caso de la clasificación binaria, donde las entradas tienden a agruparse en dos grupos. Un gran conjunto de entradas de prueba puede ayudar a encontrar los conglomerados, proporcionando así información útil sobre las etiquetas de clasificación. Las mismas predicciones no se podrían obtener de un modelo que induzca una función basada únicamente en los casos de entrenamiento. Algunas personas pueden llamar a esto un ejemplo del aprendizaje semi-supervisado estrechamente relacionado , ya que la motivación de Vapnik es bastante diferente. Un ejemplo de un algoritmo en esta categoría es la máquina de vectores de soporte transductivo (TSVM).
Una tercera motivación posible que conduce a la transducción surge de la necesidad de aproximación. Si la inferencia exacta es prohibitiva desde el punto de vista computacional, al menos se puede intentar asegurarse de que las aproximaciones sean buenas en las entradas de prueba. En este caso, las entradas de la prueba podrían provenir de una distribución arbitraria (no necesariamente relacionada con la distribución de las entradas de entrenamiento), lo que no estaría permitido en el aprendizaje semi-supervisado. Un ejemplo de un algoritmo que cae en esta categoría es la Máquina de Comité Bayesiano (BCM).
Problema de ejemplo
El siguiente problema de ejemplo contrasta algunas de las propiedades únicas de la transducción con la inducción.
Se proporciona una colección de puntos, de modo que algunos de los puntos están etiquetados (A, B o C), pero la mayoría de los puntos no están etiquetados (?). El objetivo es predecir las etiquetas adecuadas para todos los puntos no etiquetados.
El enfoque inductivo para resolver este problema es usar los puntos etiquetados para entrenar un algoritmo de aprendizaje supervisado y luego hacer que prediga etiquetas para todos los puntos no etiquetados. Sin embargo, con este problema, el algoritmo de aprendizaje supervisado solo tendrá cinco puntos etiquetados para usar como base para construir un modelo predictivo. Sin duda, será difícil construir un modelo que capture la estructura de estos datos. Por ejemplo, si se usa un algoritmo de vecino más cercano, los puntos cercanos al medio se etiquetarán como "A" o "C", aunque sea evidente que pertenecen al mismo grupo que el punto etiquetado como "B".
La transducción tiene la ventaja de poder considerar todos los puntos, no solo los puntos etiquetados, mientras se realiza la tarea de etiquetado. En este caso, los algoritmos transductivos etiquetarían los puntos no etiquetados de acuerdo con los grupos a los que pertenecen naturalmente. Los puntos en el medio, por lo tanto, probablemente estarían etiquetados como "B", porque están empaquetados muy cerca de ese grupo.
Una ventaja de la transducción es que puede hacer mejores predicciones con menos puntos etiquetados, porque utiliza las rupturas naturales que se encuentran en los puntos no etiquetados. Una desventaja de la transducción es que no crea un modelo predictivo. Si se agrega un punto previamente desconocido al conjunto, sería necesario repetir todo el algoritmo transductivo con todos los puntos para predecir una etiqueta. Esto puede resultar computacionalmente costoso si los datos están disponibles de forma incremental en una secuencia. Además, esto podría hacer que las predicciones de algunos de los puntos anteriores cambien (lo que puede ser bueno o malo, según la aplicación). Un algoritmo de aprendizaje supervisado, por otro lado, puede etiquetar nuevos puntos instantáneamente, con muy poco costo computacional.
Algoritmos de transducción
Los algoritmos de transducción se pueden dividir ampliamente en dos categorías: aquellos que buscan asignar etiquetas discretas a puntos no etiquetados y aquellos que buscan hacer regresión de etiquetas continuas para puntos no etiquetados. Los algoritmos que buscan predecir etiquetas discretas tienden a derivarse agregando supervisión parcial a un algoritmo de agrupamiento . Se pueden utilizar dos clases de algoritmos: agrupamiento plano y agrupamiento jerárquico. Estos últimos pueden subdividirse en dos categorías: los que se agrupan por partición y los que se agrupan por aglomeración. Los algoritmos que buscan predecir etiquetas continuas tienden a derivarse agregando supervisión parcial a un algoritmo de aprendizaje múltiple .
Partición de transducción
La transducción de particiones se puede considerar como una transducción de arriba hacia abajo. Es una extensión semi-supervisada de la agrupación en clústeres basada en particiones. Normalmente se realiza de la siguiente manera:
Considere el conjunto de todos los puntos como una gran partición.Mientras que cualquier partición P contiene dos puntos con etiquetas en conflicto: Divida P en particiones más pequeñas.Para cada partición P: Asigne la misma etiqueta a todos los puntos en P.
Por supuesto, con este algoritmo se podría utilizar cualquier técnica de partición razonable. Los esquemas de partición de corte mínimo de flujo máximo son muy populares para este propósito.
Transducción aglomerativa
La transducción aglomerativa se puede considerar como una transducción ascendente. Es una extensión semi-supervisada de la agrupación aglomerativa. Normalmente se realiza de la siguiente manera:
Calcule las distancias por pares, D, entre todos los puntos.Clasifique D en orden ascendente.Considere que cada punto es un grupo de tamaño 1.Para cada par de puntos {a, b} en D: Si (a no tiene etiqueta) o (b no tiene etiqueta) o (ayb tienen la misma etiqueta) Fusiona los dos grupos que contienen ay b. Etiquete todos los puntos del clúster combinado con la misma etiqueta.
Transducción múltiple
La transducción basada en el aprendizaje múltiple es todavía un campo de investigación muy joven.
Ver también
Referencias
- ^ Vapnik, Vladimir (2006). "Estimación de dependencias basada en datos empíricos" . Ciencias de la información y estadística : 477. doi : 10.1007 / 0-387-34239-7 . ISSN 1613-9011 .
enlaces externos
- A Gammerman, V. Vovk, V. Vapnik (1998). " Aprendizaje por transducción ". Una explicación temprana del aprendizaje transductivo.
- " Una discusión sobre el aprendizaje semi-supervisado y la transducción ", Capítulo 25 de Aprendizaje semi-supervisado, Olivier Chapelle, Bernhard Schölkopf y Alexander Zien, eds. (2006). Prensa del MIT. Una discusión sobre la diferencia entre SSL y transducción.
- Waffles es una biblioteca C ++ de código abierto de algoritmos de aprendizaje automático, incluidos los algoritmos de transducción, también Waffles .
- SVMlight es un paquete SVM de uso general que incluye la opción SVM transductiva.