Blogia
urdinia

Vanguardia Científica

Autoanálisis de un "zibor"

Autoanálisis de un "zibor"

El procesador emocional es una parte funcional de nuestro sistema operativo muy importante.

La gran mayoria de la información recibida desde el exterior es registrada masivamente en una gran base de datos ubicada en lo que llamamos subconsciente. Esta información es analizada constantemente por el procesador emocional realizando una gran cantidad de cruce de datos, entre datos genéticos, consolidados y no consolidados mediante técnicas de aprendizaje u otros tipos de técnicas basadas en prueba y error. La estructura de la información almacenada puede llegar a ser tremendamente compleja y es en gran medida susceptible de ser eliminada a corto plazo si no se consolida.

Sin entrar en detalles de la estructura o modelo de datos; cada cierto tiempo las diversas consultas que ejecuta nuestro procesador emocional producen algún resultado más o menos intenso. La intensidad de ese resultado es una emoción, ya sea de un tipo o de otro. La intesidad y el tipo de las emociones son nuestros sentimientos primarios, que condicionan nuestros procesamientos posteriores, así como nuestros actos y decisiones. Muchas veces a esto lo llamamos corazonadas o intuiciones pero realmente nos llevan mucho más allá.

Nuestra manera de pensar y actuar es diferente en situaciones emocionales diferentes, tan simple como que una situación de temor se activan unos determinados Procesadores de Ciclo Unico para dar una respuesta más eficiente mientras que ante una situación de impotencia se activan otros procesadores de ciclo único totalmente diferentes para dar respuestas y actuar diferente.

Mientras no intervenga otra emoción más fuerte dichos PCUs no dejan de estar activados y es por ello que después de haber pasado una situación emocional, detectada por ejemplo como de temor, seguimos pensando y actuando como si la situación continuase. Si el número de veces que se da una situación emocional intensa por unas circunstancias similares es muy elevado, uno o varios PCUs pueden quedarse activados durante mucho tiempo y causarnos lo que llamamos traumas emocionales.

Las vivencias diarias, las emociones de diferentes tipos nos salvan de hacernos excesivamente rígidos en nuestro carácter, de condicionarnos en nuestra maleabilidad de pensar. Si no vivimos diversas emociones al cabo del día nos volvemos más pragmáticos, menos transigentes, dificultando así el aprendizaje, la innovación, la creatividad y la imaginación; convirtiéndonos en simples robots, sin alma.

web3.0

web3.0

Se habla de Web semántica o web 3.0 para denominar un nuevo escenario web en el cual ya no solo el usuario pueda leer y escribir en la web ( web 2.0 ) sino extraer la dimensión de profundidad; la dimensión del significado de lo que contiene. Dejémoslo ahí, ya que de intentar especificar más en detalle el término nos perderíamos en una discusión eterna de ambigüedades.

A lo largo de la historia los grandes filósofos se han preocupado de la semántica de las cosas a través de la dialéctica sin lograr ningún resultado claro y mucho menos definitivo. Sócrates dedicó prácticamente todos sus esfuerzos a ello, más aun, según su más importante discípulo, negaba la capacidad semántica del lenguaje humano por lo que jamás dejó texto alguno escrito. Yo estoy de acuerdo, aunque en mi caso algún texto escrito dejaré a la posteridad del olvido. Efectivamente, cada interlocutor va a entender diferentes cosas de lo que aquí puedo estar escribiendo, y eso que considero que tengo una gran virtud literaria. Obviamente no todo el mundo opinará así; más aun, mucha gente, más de lo que la humanidad se merece, ni siquiera logre entender la mitad de los cosas que escribo. Por tanto, si la semántica es propia del receptor, más que del emisor ... ¿ a qué "flipao" se le ocurriría pretender que una computadora, por muy "super" que sea, logre interpretar ni un 10% de este texto ?

Se están haciendo grandes esfuerzos por imponer a las páginas web un lenguaje de metadatos estructurado que faciliten a los buscadores extraer el significado de lo que contienen. Leyendo a los impulsores de estos estándares; como XML, RDF, OML etc ... tengo la sensación de que cuanta más doctrina se aplica a la ingeniería más se nubla nuestra capacidad creativa y por tanto se pierde la verdadera esencia de ésta: el ingenio.

Estos estándares tienen un buen fundamento, sin duda, pero carecen de una de las claves más importantes que ha hecho posible que internet llegue a miles de millones de usuarios: la facilidad de uso. No me imagino a mi padre con sus 77 años, que ahora ya se atreve a dejar comentarios en blogs y foros, teniendo que definir un esquema XML, OML o de cualquier tipo estructurado por cada cosa que escribe por ahí. Tampoco me imagino a ninguno de mis amigos haciendo eso, ni siquiera a mí. Esto ya significa que el 99,9% de los contenidos web no tendrán profundidad, estarán fuera de la indebidamente denominada web semántica.

Otros caminos de investigación, seguramente menos dotados económicamente, van en dirección totalmente opuesta, pero desde el criterio lógico con un sentido de la orientación mucho más claro. Desde mi punto de vista, y desde la máxima de retroalimentación de la inteligencia artificial, lo lógico es que en cada búsqueda se cree o perfeccione el esquema de lo que se espera encontrar. Eso proporciona el dinamismo adecuado para el auto-aprendizaje del motor de búsqueda. Cada pequeña búsqueda, cada pequeña interacción con el usuario, se convierte en más inteligencia artificial; del mismo modo que ocurre en nuestro cerebro cuando interactuamos a través de los sentidos con el medio que nos rodea. Aunque en nuestro caso tenemos un componente de desarrollo exponencial ya que además de interactuar con el medio, lo hacemos con nuestros semejantes.

Mantengo una estrecha relación con este reto tecnológico; podría decir casi que estoy casado con él. Una empresa cercana a mí extrae información de la web focalizándola hacia "hitos" muy simples. Por ahora su sistema informático se basa en un motor de búsqueda inteligente semi-artesanal pero muy eficaz por el componente humano. Llevan años trabajando con diversas universidades de gran prestigio con el fin de lograr un procesador semántico de contenidos web; pero persiguen una meta inalcanzable ya que la semántica de un texto difiere en función del condicionante de lo que se espera encontrar: R<=f(Q)|k; donde R es el resultado esperado, Q la "query" o consulta lanzada y k el condicionante de la interpretación esperada. Por tanto, para una misma búsqueda podríamos encontrar un indeterminado número de respuestas si no acotamos el resultado al condicionante k.

El procedimiento correcto sería preguntar algo que condicione la interpretación, y para cada interpretación hay que definir un algoritmo "k". Quizá con un sistema experto, capaz de auto-modelarse, una herramienta tipo CASE pero más potente, podríamos lograr que el propio motor de búsqueda genere los algoritmos "k".  Si conseguimos esto, lo de la web semántica será un pequeño aperitivo en el camino hacia el logro de un auténtico oráculo. Esto a día de hoy me parece intentar pretender llegar a la luna con una catapulta. Hay otros pasos que dar antes, como por ejemplo aquello de lo que hablé en Neuromática; y otras muchas cosas importantes que están más a nuestro alcance. (*1)

Para cualquier programador con un mínimo intelectual resulta bastante sencillo realizar un procesador de interpretación de condicionantes ( un algoritmo k ) Si la pregunta que lanzo al buscador, por ejemplo, es del tipo: "Yogur Desnatado"|diferentes sabores; el buscador realizaría dos cosas diferentes. 1) buscar el intérprete o algoritmo k que se corresponda con "diferentes sabores" y 2) tratar mediante dicho algoritmo todos los textos de la web que estén relacionados directa o indirectamente con "yogur desnatado". Ambas tareas son relativamente fáciles para un motor de búsqueda o de indexación como puede ser Google. Pero este motor de búsqueda no se limitaría a buscar sino a procesar todas esas búsquedas. A nadie se le ocurriría la majadería de indexar todas las posibles respuestas en función del intérprete por tanto tenemos que procesar bajo demanda todos los resultados de la primera tarea. Irremediablemente cada cliente de este buscador tendría que ser una aplicación de procesamiento distribuido; de lo contrarío la computadora del motor de procesamiento de algoritmos k reventaría ( insisto, por muy "super" que sea ).

Para simplificar la escalabilidad y la mejora del motor distribuido, cada usuario podría aportar sus propios algoritmos k.  Si quiero hacer una búsqueda semántica puedo escribir un pequeño script en un lenguaje de programación simple y adaptado en lo posible al lenguaje humano, que me proporcione la interpretación k que quiero lograr. Dicho script estará asociado a una serie de palabras clave que determinen su usabilidad. Por ejemplo "diferentes sabores". Este sencillo script buscará en un texto web palabras relacionadas con el sabor y determinará la asociación de esas palabras con las claves de búsqueda de la primera parte, en el caso del ejemplo "yogur desnatado". Esta determinación nunca será exacta del todo, a esto se refería Sócrates, pero por lo menos se acercará bastante a lo que se pretende.

En definitiva; lo que necesita la web3.0 ( ya no me gusta el término web semántica ) son precisamente 3 cosas:

1)  Un nuevo buscador capaz de hacer estas dos tareas de búsqueda: buscar las palabras objeto y buscar el algoritmo de interpretación,

2)  un explorador web capaz de procesar de forma distribuida los algoritmos k,

y

3)  un lenguaje de programación ( o interprete ) "humanizado" para definir los algoritmos "k".

He profundizado más en el análisis de estos tres puntos, y a día de hoy llevo un desarrollo técnico bastante extenso del punto 2 y 3. No obstante, no es el objeto de este artículo, así que todo aquel osado colaborador que quiera aportar su granito de arena, ya sabe cómo ponerse en contacto conmigo ;^)

 

1*: Espero poder dedicarle unas líneas a esto en otra ocasión porque creo que sufrimos un mal endémico del que no somos conscientes. La ciencia y la tecnología humana se van a estancar si no se pone un poco de orden a las metas que queremos lograr. Debe haber un camino progresivo que actualmente no está nada claro. La mayor parte del I+D+i está fundamentado en obsesiones económicas que no van a ver ningún fruto si no se resuelven problemas más inmediatos que lamentablemente, a primera vista, no tienen ningún atractivo para los inversores.

Vida Inteligente

Vida Inteligente

Hay momentos en los que consciente o inconscientemente alimentas tu apego a la vida. En un mínimo lapso de tiempo sucede algo que te produce una reacción interna, instintiva, que hace que sientas (*1) que la vida es maravillosa.

 

¿Qué hay detrás de esa reacción lógico-físico-química?

Yo diría que el instinto de supervivencia que es probablemente el instinto más básico de todos ( exceptuando el de Sharon Stone ;P ). De aquí se puede deducir que un instinto evoluciona hacia otros, muriendo o no su precursor, por la misma ley y lógica que la teoría de la evolución de las especies de Darwing, y por una vía de herencia curiosamente individual pero asociada a la rama común de la evolución genético-física de las diferentes especies.

Estos días he estado trabajando intensamente en la implantación de un sistema informático en una clínica de radiodiagnóstico. La mayoría de la gente que entra a estos sitios vive momentos de incertidumbre y siente temor por su vida. Por esto, el lugar, aunque se intenta hacer lo más agradable posible, irremediablemente resulta lúgubre y denso. Y entre tanto aparato monstruoso, y entre tantas expresiones de mal trago, en medio de este apocalipsis, alguien me llama la atención especialmente por su belleza. Como un cálido rayo de luz que se abre paso en una triste lluviosa tarde de invierno, o como el primer amanecer del verano ártico. La misma esencia de la vida que brota en medio del áspero desierto; ese algo que surge de la nada, tanta belleza que duele. Una belleza tan imposible que hace soñar; que hace sentir que aunque solo sea por eso, por el sueño imposible, merece la pena vivir.

 

Hé ahí la fuente de mi inspiración para esta reflexión. La belleza de esa joven (*2), que aun siendo imposible e inalcanzable me permite soñar y divagar para darme cuenta de lo maravillosa que es la vida. Ya advertí en Primeros Pasos ( http://urdinia.blogia.com/temas/primeros-pasos.php ) que soy un romanticón empedernido, pero este caso me ha llevado a una conclusión teórica muy interesante. La aplicación de la teoría de la evolución de las especies a la evolución de los sentimientos y por ende a la evolución de las reacciones instintivas y por consiguiente del mismo reactivo neuronal de los pensamientos; lo que aceleraría exponencialmente la complejidad de las redes neurológicas llegando a formarse un cerebro complejo, tanto como el humano.

 

De demostrarse esta teoría revolucionaría la neurología ( y otras ciencias apasionantes ) ya que pondría de manifiesto que nuestro cerebro es un dispositivo programable mínimo y en blanco ( aunque predispuesto físicamente ) que va creciendo en complejidad por las reacciones instintivas que trae de fábrica ( la BIOS ). Las emociones, sensaciones y respuestas del entorno a nuestras solicitudes instintivas durante los primeros años de nuestra vida forman el entramado neuronal básico que define la complejidad de nuestros pensamientos. Por tanto, la genética solo sería una predisposición a la evolución psicológica, y en cambio las experiencias infantiles, coincidiendo con muchos psiquiatras, la verdadera clave de la psique de un individuo; y los instintos la verdadera clave de la vida inteligente.

Esto, además, despejaría una de las incógnitas más controvertidas de la formula de Drake; haciendo que las posibilidades de vida inteligente ( fi ) dentro de ( neà100k ) elementos finitos de vida,  sean muy altas ( 0,9 ) en un lapso de tiempo tan amplio como la vida de nuestro planeta y más aun en la edad del universo. Estaríamos hablando de unos 100 mil lugares ( no solo planetas ) de nuestra propia galaxia que podrían albergar no ya solo vida sino también vida inteligente.

 

Ahora la pregunta que me planteo es: ¿qué instinto difiere entre el hombre y el animal para que nos haga seres más inteligentes? Probablemente sea una combinación de varios instintos bien compatibilizados, y aunque la respuesta no está a mi alcance aún, apostaría a que el instinto más básico de todos, el de supervivencia lo hemos evolucionado a un conjunto de instintos más complejos, con más reacciones neuronales de causa-efecto, como es el caso del instinto de amor. No obstante, aunque el conjunto de instintos en general para todos los humanos es muy parecido, no todo individuo tiene el mismo conjunto de instintos exactamente. Igual que un individuo hereda los ojos de su padre y la boca de su madre, hereda el instinto "X" de su madre y el "Z" de su padre. Probablemente, inconscientemente buscamos en nuestras parejas ( durante el proceso de reconocimiento mutuo ) ese componente instintivo complementario o de refuerzo, que mantiene viva la llama de la evolución humana.

Sin menoscabo de todas las ciencias, podríamos hablar de una nueva ciencia, la ciencia por excelencia que permite denominar a éstas: la ciencia de la inteligencia.

 

1:  En este caso sentir y pensar es lo mismo no obstante este tema lo debatiré más extensamente en otro artículo porque según mi teoría sentir y pensar parten del mismo activador neuronal.

 

2:  Por ciento, muchas gracias por ser mi fuente de inspiración para esta reflexión ;)

Neuromática

Neuromática

La problemática de buscar un subconjunto de bits dispuestos en una manera concreta dentro de un conjunto dado a priori puede parecer algo sencillo de abordar hasta que hablamos de cantidades importantes de patrones y de datos, o cuando los patrones de búsqueda puede ser infinitos al tratarse de una función de transformación. Cuando buscamos, por ejemplo, una palabra en un documento de texto, tenemos un solo patrón de búsqueda, la palabra en sí; pero cuando buscamos en una foto tomada de la realidad, por ejemplo, algo que se parezca a un jarrón, las posibilidades son infinitas, aun en el caso que conozcamos a la perfección el jarrón. Nuestro cerebro tiene una gran capacidad para realizar esta tarea, no obstante, se confunde en cantidad de veces. Se confunde por la relación entre la Inhibición Latente (IL) de nuestra imaginación con la velocidad de procesar dicha información; que se traduce en una abstracción de la mayoría de las cosas que componen un objeto. En definitiva, comprimimos la información que vemos y distinguimos solo los aspectos más peculiares de los objetos. En el caso del jarrón, en un cerebro con IL normal, tenemos registrada una forma parecida a una pera pero mas grande con una abertura amplia en su parte superior, más bien alargada con decoraciones insignificantes y motivos coloridos sobre un fondo blanco brillante. Por supuesto nuestro cerebro siempre la registra de pie y entera, a no ser que estemos en un trastero o en una excavación arqueológica. ¿Como es capaz nuestro cerebro de hacer algo tan difícil como rastrear una imagen ( lo que vemos ) en décimas de segundo para localizar algo tan variable como lo que acabamos de describir? Un supercomputador tardaría varios minutos en analizar todas las formas de una imagen comparando  las innumerables posibilidades que da esta descripción. Nuestro cerebro no es más rápido que un superordenador así que la respuesta está en que utiliza un algoritmo mucho más eficaz de lo que hasta ahora hemos sido capaces de idear.

Hay muchas personas que no tiene esta capacidad tan evidente; no son capaces, por ejemplo, de identificar en qué parte del campo de fútbol esta transcurriendo una jugada. Esto casi siempre va asociado a una alta Inhibición Latente. En su cerebro están  registrados demasiados detalles (alta IL) y su cerebro tarda tanto en comparar todos esos detalles que no es capaz de procesar la información que recibe que al mismo tiempo es más de la habitual por la ( alta IL ) y se acaba desbordado. A estas personas generalmente no les gusta el fútbol televisado, aunque probablemente sí disfruten del partido en el campo de juego. Los niños suelen tener una alta IL ( algo necesario para el aprendizaje ) y a la mayoría de ellos no les gusta ver un partido por la tele, aunque sí jugarlo. Una baja IL en un niño puede ser preocupante cuando no muestra interés por las cosas ya que eso indicaría que la cantidad de informaciones abstraídas no producen ningún resultado aprovechable, en cambio un niño con baja IL ( gran capacidad de procesar estímulos exteriores abstrayendo detalles no esenciales ) que demuestre interés, emoción o agrado por las cosas aprendidas poseerá un gran potencial intelectual. Entonces, la clave claramente reside en la abstracción de la información registrada. Pero esta abstracción debe haber pasado por un destilador inteligente que ha almacenado sólo los rasgos más importantes que lo definen. Lo más maravilloso de todo este embrollo es la manera en la que almacenos todas las posibles variantes. Nuestras neuronas son pequeños procesadores compuestos de miles de transistores básicos. Realmente su funcionamiento es prácticamente igual, una señal eléctrica estimula una función que activa varias interconexiones con otras neuronas. Son como los transistores internos de un procesador pero con una magnifica diferencia. Nuestras neuronas se pueden reordenar y recomponer formando circuitos lógicos a medida de las necesidades de cada momento. La arquitectura interna, a nivel de registro, de un procesador típico es totalmente estática. Los circuitos lógicos formados por minúsculos transistores están interconectados de una manera concreta e inalterable para que produzcan resultados algorítmicos básicos en uno o en pocos ciclos de reloj. Luego los algoritmos más complejos se dividen en estas operaciones básicas procesándose en cascada, secuencial o recursiva hasta que se obtiene el resultado final. Hace tiempo que se demostró que cualquier algoritmo, por complejo que parezca puede transformarse en un circuito lógico combinacional formado por N transistores básicos. VHDL es un lenguaje de programación de PLDs, que hace algo parecido no obstante no se consume un único ciclo de reloj sino varios para determinados algoritmos ya que el número de transistores que contiene un PLC es limitado.

Nuestro cerebro tiene varias decenas de miles de millones de neuronas compuesta cada una de ellas de entre 10.000 y 100.000 dendritas y otro tantos axones que hacen las funciones de transistores básicos de entrada y salida respectivamente interconectándose con otras neuronas. En total la capacidad de un cerebro humano (con riesgo de quedarme muy corto) podría equivaler a entre 100 Terabits  y 10 Petabits ( 10 mil billones de interconexiones ) Estas neuronas pueden ser destinadas además de a procesar ( como en un procesador de un PC )  a guardar datos ( por ejemplo un número de teléfono), a almacenar algoritmos secuenciales ( por ejemplo un procedimiento de suma ) o a guardar estructuras de circuitos combinacionales de respuesta inmediata o de un sólo ciclo: Procesos de Ciclo Único (PCUs). Lo más interesante de éstos es que están comprimidos de tal manera que en nuestro cerebro pueden almacenarse millones; muchos podemos acabar olvidándolos, borrados por no ser usados  o sustituidos por otros más eficaces.  Miles de estos PCUs están en funcionamiento mientras lees esto, combinados entre sí de tal manera que en un solo ciclo procesemos informaciones que con algoritmos secuenciales podríamos tardar horas.

Cuando necesitamos usar un PCU este se descomprime y se incorpora al área de procesamiento AP; nuestro procesador central. El AP esta formado por tantas neuronas como sean necesarias, generalmente las neuronas que forman el AP son las más activas y a la vez las más protegidas, las neuronas más internas de nuestro encéfalo. Cuando se carga un PCU se transforman las conexiones neuronales (dendritas) de nuestro AP, como superponiendo o agregando funcionalidades a los PCUs ya activos y sacrificando las PCUs menos utilizados. El proceso es el mismo que reprogramar un PLC pero evitando en la medida de lo posible que otras funcionalidades del  PLC se eliminen.

Cuando aprendemos  algo nuevo, realmente lo que hemos conseguido es crear un PCU en nuestro área de procesamiento, en principio comprendemos algo muy abstracto un PCU con funciones muy básicas apoyado en un algoritmo secuencial ( raramente recursivo ), y a medida que lo usamos lo vamos perfeccionando, convirtiéndolo en la medida de lo necesario en un PCU o en una secuencia de ellos. Como ejemplo para ilustrar esto podemos utilizar el proceso de aprendizaje de lectura.  Al principio nos cuesta identificar las letras, luego vamos abstrayendo la información y formamos un PCU que identifique un gran espectro de formas caligráficas. Cualquier cosa que sea curva y no esté completamente cerrada por la derecha la identificamos como una "C"; pero este razonamiento no se produce en nuestro cerebro cuando ya hemos aprendido; existe un PCU ( prácticamente permanente al de unas horas de haber aprendido las letras del abecedario ) que en base a un patrón identifica cada una de las letras que conocemos en un solo ciclo. Realmente, al año de haber comenzado a leer, nuestro cerebro ya ha creado un PCU para identificar cualquier caligrafía de cada una de las 10.000 palabras más habituales de nuestro vocabulario, de tal manera que identificar una palabra nos lleve tan solo un ciclo.

La informática ha estudiado el cerebro para simular la efectividad de su fundamento electro-físico, e incluso de mejorarlo en algunos casos, pero no ha profundizado lo suficiente en su capacidad de flexibilizar su morfología, de alterar la topología de la red de transistores para producir respuestas más rápidas a funciones habituales. Lo más curioso de todo, es que no es una técnica excesivamente complicada y ni mucho menos está lejos del alcance de nuestras capacidades. Eso sí, los riesgos para la humanidad que puede desentrañar una máquina capaz de crecer en inteligencia y efectividad por sí misma ( y por que no, también en capacidad ) son impredecibles y más dignos de argumentos de series fantásticas que de debate.