Cognition">
Nothing Special   »   [go: up one dir, main page]

Lectura 4

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 10

4.

Inteligencia artificial
4.1Deep learning
4.1.1 Conceptos fundamentales
¿Qué es deep learning (aprendizaje profundo)?

Es un aspecto de inteligencia artificial que se encarga de simular


el enfoque de aprendizaje que los humanos utilizan para
obtener conocimientos sobre cualquier tipo de objeto en estudio.
A diferencia de los algoritmos tradicionales de machine learning
que son lineales, los algoritmos de aprendizaje profundo se
apilan en una jerarquía de alta complejidad y abstracción.

Por lo tanto, a partir del aprendizaje automático (machine


learning) se puede determinar si un objeto es o no, por ejemplo,
un auto. Mientras que en el aprendizaje profundo se pueden
determinar las características de ese objeto para saber que es
un auto o no, es decir, que con deep learning cada algoritmo en
la jerarquía aplica una transformación no lineal en su entrada y
en base a lo que aprende crea un modelo estadístico de salida,
que sigue esta misma lógica para todas las capas de la
jerarquía. (Blogthinkbig, 2018,
https://blogthinkbig.com/aprendizaje-profundo-inteligencia-
artificial

Este enfoque orientado en jerarquías surge de emular el funcionamiento de las


neuronas del cerebro humano, y recibe el nombre de neuronas artificiales. Al
utilizar una gran cantidad de jerarquías o capas, se lo denomina: aprendizaje
profundo (deep learning).

Con el objetivo de lograr un óptimo nivel de precesión de las predicciones, los


modelos de deep learning requieren acceso a grandes volúmenes de
información, estructurados y no estructurados, para poder ser utilizados como
entrenamiento y procesamiento que no sería posible sin la presencia de las
nuevas arquitecturas de big data.
Figura 1: Machine learning vs. deep learning

Fuente: [Imagen sin título sobre machine learning vs. deep learning], s.f.,
https://cdn.ttgtmedia.com/rms/onlineImages/what_is-traditional_vs_deep_learning_desktop.jpg

4.1.2 Arquitectura de una red neuronal


Una red neuronal es un conjunto de neuronas que se conectan entre sí por medio
de distintos conectores y están diferenciadas por distintas capas. Como se
muestra en la figura 2 existen tres tipos de capas:

1- Capa de entrada: es donde se encuentran todas las neuronas de


entradas, denominadas de esta forma porque es por donde se ingresan
los datos para que el algoritmo realice la predicción.
2- Capa oculta: se encuentran todas las capas entre la capa de entrada y
de salida, se denomina como oculta debido a que no tiene ninguna
relación de ingreso de datos o salida de información. Este tipo de capa
puede ser mayor a una y lleva al uso de la terminología deep.
3- Capa de salida: aquí se encuentran todas las neuronas que exponen los
resultados de la predicción del algoritmo.
Figura 2: Red neuronal

Fuente: [Imagen sin título sobre red neuronal], s.f.,


http://neuralnetworksanddeeplearning.com/images/tikz11.png

Perceptron
Para continuar con la arquitectura es necesario entender un poco más en detalle
sobre las neuronas. Cabe destacar que existen diversos tipos, una de ellas es
el perceptron que fue desarrollado en la década de 1950, pero hoy es más
común el uso de otro tipo de neurona artificial.

Este tipo de neurona puede recibir varias entradas binarias, es decir, valores 0
o 1 de cada entrada, y tiene como salida un solo resultado. Como muestra la
figura 4 tiene las entradas 𝑋1, 𝑋2y 𝑋3, que pueden aceptar valores binarios
como 0 y 1, y tiene una sola salida que es el resultado del algoritmo utilizado.
El perceptron recibe los valores de cada una de las entradas y, de acuerdo al
peso que tenga cada una, se realiza una sumatoria, el resultado es comparado
con un valor límite que si lo supera es 1 y en caso de no superarlo es 0.
Figura 3: Perceptron

Fuente: [Imagen sin título sobre Perceptron], s.f.,


http://neuralnetworksanddeeplearning.com/images/tikz0.png

Por ejemplo, se desea comprar un auto y el algoritmo debe decidir entre sí o


no realizar la compra, pero se debe tomar la decisión en base a tres factores:

 ¿El precio es barato?


 ¿Es de color negro?
 ¿Es de cuatro puertas?

La respuesta de cada uno de estas preguntas es binaria, es decir, si o no (0 o


1) y estaría representado por las variables de entradas 𝑋1, 𝑋2y 𝑋3. Donde si
el precio del auto es barato, el valor de 𝑋1 = 1, y en caso que no lo sea es
𝑋1 = 0, y así se sigue la misma lógica para el resto de los factores. Además
de la respuesta de cada una de las preguntas, se le puede agregar un peso
de importancia de cada una, por lo tanto, como el precio es importante para
comprar el auto se asignará un 𝑤1 = 6, mientras que para el resto de los
factores será un 2, porque tienen el mismo peso de importancia para nosotros.
Para finalizar, seleccionamos un valor límite de 5 para este perceptron.

De esta forma, al realizar la sumatoria de cada entrada por su peso de


importancia daría un resultado que es comparado con el valor límite, que en
este caso sería 5, si el resultado es mayor, la predicción es que debería
comprarse el auto, y si es menor el valor obtenido, entonces no debería
comprarse ese auto.

Sigmoide
Al igual que la neurona digital perceptron, la neurona sigmoide es otro tipo pero
con algunas mejoras con respecto a la anterior. En este caso, la neurona
sigmoide puede recibir entradas con valores que varían entre 0 y 1, es decir,
que ya no estaría bajo la presencia de ingresos binarios al algoritmo. Por lo
tanto, las variables de entrada 𝑋1, 𝑋2y 𝑋3 obtendrían valores entre 0 y 1, como
el 0.547. El concepto del uso de los pesos y el cálculo es similar a la perceptron
pero el valor límite en este caso es el 0.5, es decir, que si el resultado de la
sumatoria con respecto al peso de importancia es mayor a 0.5 entonces el
resultado de la neurona es 1, en caso contrario es 0.
Funcionamiento

Para un fácil entendimiento de cómo funciona una red neuronal se desarrollará


a continuación cómo clasificar por medio de una imagen los números escritos a
mano, al igual que hace un humano al leer cada uno de los dígitos. Por ejemplo,
en la figura 4 se puede observar un número 3, pero para un algoritmo de red
neuronal consiste en una serie de pasos para detectar qué número del 0 al 9
se observa.

Figura 4: Número en base a una imagen

Fuente: [Imagen sin título], s.f., https://1001freedownloads.s3.amazonaws.com/vector/thumb/64381/0-


9-Handwritten-5.png

Para comenzar, es necesario saber que para detectar qué número se muestra
en la imagen de 28 por 28 pixeles, se debe contar con 784 neuronas en la
capa de entrada, debido a que 28 × 28 = 784, y a cada neurona se le
asigna un pixel para su análisis. Luego, con una capa oculta de 𝑛 que se puede
asignar con diferentes valores, en este ejemplo será 𝑛 = 15 neuronas. Por
último, tendrá una capa de salida con 10 neuronas, una salida para cada
número posible entre 0 y 9, que se activará con un valor 1 el número que
corresponda en la predicción.

Cada una de las neuronas de entrada recibe un valor que varía entre 0 para
el color blanco, y 1 para el color negro, en donde los valores intermedios, entre
0 y 1 están determinado por escala de grises. Luego, las neuronas de la capa
oculta reciben el resultado de la capa de entrada para determinar en qué
lugares de la imagen esta un color cercano al negro o número cercano a 1 y
en cuáles no. Este resultado es luego la entrada a la capa de salida que
determina con un valor entre 0 y 1 a que dígito del 0 al 9 pertenece. Es decir,
que una de las neuronas de la capa de salida va a ser la seleccionada como
el dígito leído por el algoritmo en la imagen, en el ejemplo sería el número 3.
Figura 5: Red neuronal para detectar números

Fuente: [Imagen sin título sobre red neuronal para detectar números], s.f.,
http://neuralnetworksanddeeplearning.com/images/tikz12.png

4.1.3 Tipos y usos de deep learning


De acuerdo al tipo de campo estudiado, se pueden emplear distintos tipos de
arquitecturas de deep learning, ya se para reconocimiento automático de voz,
procesamiento de lenguaje natural, bioinformática, etc. Entre las más conocidas
están:

 Redes neuronales profundas.


 Redes convolucionales: son ideales para procesar datos visuales o
bidimensionales.
 Redes neuronales recurrentes: la conexión entre los nodos genera un ciclo
dirigido, pueden usar su memoria interna para realizar secuencias a partir
de sus entradas. Este tipo de red es ideal para tareas como el
reconocimiento de voz.

Hoy en día cada uno de estos tipos de redes neuronales son utilizados para
amplios campos que dan solución a problemas de deep learning, y la mayoría
de ellos ya forman parte de nuestra vida cotidiana. Entre estas se pueden
encontrar las siguientes:
 Reconocimiento de rostros: consiste en reconocer por medio de una imagen
el rostro de una persona, en algunos casos como Google Photos este tipo de
algoritmo tiene la capacidad de reconocer los rostros y detectar la
identidad de la persona, como así también determinar objetos y detectar
los lugares de donde fueron capturadas esas fotos.

Figura 6: Google Photos

Fuente: [Imagen sin título sobre Google Photos], s.f., https://assets.pcmag.com/media/images/546981-


google-photos-albums.jpg?thumb=y.

 Traducción automática: a partir de una palabra o conjunto de palabras, ya


sea en frases u oraciones, el algoritmo realiza la traducción de estas mismas
en un lenguaje determinado. Este tipo de algoritmo se ha mejorado de tal
manera que permite realizar traducciones de palabras que se encuentran
en una imagen y en real-time, como lo hace actualmente Google Translate.
 Detección de cáncer: existen ciertos modelos de aprendizaje profundo que
permiten detectar signos de cáncer de pulmón en radiografías, y realizan
una predicción de la imagen encontrada, en base a lo aprendido
previamente del cáncer de pulmón.
4.2 Computación cognitiva
4.2.1 Conceptos fundamentales
Cada vez existen más soluciones innovadoras basadas en computación
cognitiva, es una tecnología que está en emergencia y da valor a distintas áreas
de negocios, ya sea porque mejora la calidad de los servicios, la capacidad
para tomar decisiones, disminuye costos, u ofrece mejoras en la educación y en
los tratamientos médicos.

¿Qué es computación cognitiva? son todos aquellos algoritmos que tienen la


capacidad de percibir, comprender y actuar, es decir, que a partir de los
grandes volúmenes de información permite percibir en el mundo donde se
encuentra (contexto), analizar y comprender la información almacenada, tomar
decisiones y proporcionar una orientación en base al análisis realizado.

La llegada de los servicios en la nube al universo digital ha


supuesto una revolución, ya que permite crear servicios bajo una
sencilla API a la que cualquier cliente podrá acceder. De este
modo, hay muchos negocios que han ido introduciendo
paulatinamente el razonamiento en sus procesos de gestión y
filtrado de datos.

Ya existen APIs a las que se puede acceder y que constituyen


los denominados negocios cognitivos. Su modelo de rentabilidad
se basa en prestar servicios o asistencia a un tercero, aunque las
verdaderas posibilidades de desarrollo, como en el caso de la
tecnología incipiente que es, están todavía por llegar.

¿Es posible que en el futuro las decisiones se tomen basándose


en la suma del hombre y de la inteligencia artificial? Sin duda,
es así. La computación cognitiva es solo un primer paso para
emular el razonamiento humano, pero, una vez se logre un
sistema eficaz, no será necesario que las personas intervengan
en todas las decisiones. De este modo, se ahorrarán tiempo y
dinero; pero, sobre todo, se eliminará la falibilidad de un ser
humano ante un volumen de datos que, simplemente, no podría
procesar a tiempo. (Viewnext, 2018,
https://www.viewnext.com/en-que-consiste-la-computacion-
cognitiva/)

Actualmente, entre las empresas que trabajan en implementar este tipo de


solución se encuentra IBM con su producto IBM Watson, que es una plataforma
que tiene la capacidad de entender, razonar, aprender e interactuar. Este tipo
de plataforma puede ser utilizada en distintas formas y para cualquier tipo de
aplicación, desde la atención al cliente hasta la prevención del cáncer,
representado por medio de un robot o como un software en una computadora.
Es capaz de entender cualquier tipo de problema, siempre y cuando tenga la
cantidad de datos óptimos para aprender sobre el contexto a actuar. Algunas
de las soluciones están abiertas para cualquier tipo de persona, se utiliza por
medio de una API alojada en un sitio web, que permite realizar análisis de
sentimientos y de contexto a partir de un texto copiado por el usuario. Como el
ejemplo que se muestra a continuación en el siguiente link: https://natural-
language-understanding-
demo.ng.bluemix.net/?cm_mc_uid=68448957696215355533776&cm_mc_si
d_50200000=82652561551150851182&cm_mc_sid_52640000=776613
81551150851186

En el mismo se puede observar que se puede ingresar un texto o una URL que
contenga algún texto o artículo, como podría ser una nota en un diario digital,
un artículo de un blog o un e-mail. Una vez que se cuenta con un texto se permite
analizar el mismo y se generan una serie de respuestas brindadas por el
producto de Watson para análisis de lenguaje natural, entre los resultados se
puede observar:

 Sentiment: nos brinda como resultado si el texto tiene un sentimiento positivo,


negativo o neutro, y con qué grado es este sentimiento.
 Emotion: existen una serie de atributos y una barra que determina el valor
de cada uno, por ejemplo, se puede detectar el valor de enojo, de miedo,
tristeza, etc. dentro del texto analizado.
 Keywords: son las palabras más importantes dentro del texto y las ordena
según el valor de importancia según la interpretación de Watson.
 Entities: permite descifrar las distintas entidades que se encuentran en el
texto, ya sea personas, empresas, organizaciones, ciudades, etc.
 Categories: clasifica el contenido en un formato de jerarquía de acuerdo al
contenido del texto.
 Concepts: identifica conceptos que pueden o no estar dentro del texto pero
que se relacionan con su contenido.
Referencias
[Imagen sin título sobre machine learning vs. deep learning]. (s.f.). Recuperada
de https://cdn.ttgtmedia.com/rms/onlineImages/what_is-
traditional_vs_deep_learning_desktop.jpg

[Imagen sin título sobre red neuronal]. (s.f.). Recuperada de


http://neuralnetworksanddeeplearning.com/images/tikz11.png

[Imagen sin título sobre perceptron]. (s.f.). Recuperada de


http://neuralnetworksanddeeplearning.com/images/tikz0.png

[Imagen sin título sobre número en base a una imagen]. (s.f.). Recuperada
de https://1001freedownloads.s3.amazonaws.com/vector/thumb/64381/0-
9-Handwritten-5.png

[Imagen sin título sobre red neuronal para detectar números]. (s.f.).
Recuperada de
http://neuralnetworksanddeeplearning.com/images/tikz12.png

[Imagen sin título sobre Google Photos]. (s.f.). Recuperada de


https://assets.pcmag.com/media/images/546981-google-photos-
albums.jpg?thumb=y
Viewnext. (2018). En que consiste la computación cognitiva. Recuperado de
https://www.viewnext.com/en-que-consiste-la-computacion-cognitiva/

Blogthinkbig. (2018). Aprendizaje profundo en inteligencia artificial.


Recuperado de https://blogthinkbig.com/aprendizaje-profundo-inteligencia-
artificial

También podría gustarte