La naturaleza de una estrella

Etiquetas

, , , , , , , , , , , , ,

La ciencia nos cuenta que la naturaleza de una estrella de nieve o, más comúnmente conocida, como copo de nieve es inherente a la propia vida.

Es la expresión mínima que el ojo humano puede ver donde se vea el nacimiento de la vida.

Una estrella de nieve está formada por agua que, libremente, se mueve y en ese movimiento genera una forma. Podríamos pensar que el agua es libre, su brillo es mágico y su textura frágil.

“Yo personalmente, descubrí una estrella de nieve por primera vez ahora hace tres años, era invierno y la sensación que me produjo me erizó la piel.

Sentí la libertad del agua, vi su brillo con mis propios ojos y noté cómo su textura se rompía en mis dedos.”

Descubrir cosas por primera vez es inexplicable, se lo recomiendo a todo el mundo.

Es empezar de nuevo, es sentir, es descubrir, es cambiar, es ser libre, es vivir. No nos conformemos con pasar por este mundo y atrevámonos a sentir libremente.

Como se atrevió a nacer esa estrella de nieve en nuestra mano por primera vez.

Como se aman los enamorados en invierno.

Como suenan las palabras dulces, cuando llega el frío.

Como se quieren los hermanos, los padres e hijos y los amigos.

Sólo en invierno pasa eso, así que disfrutemos de la vida.

 

Anuncios

La libertad en el Siglo XXI

Etiquetas

, , , , , , , , , , , , , ,

Anoche estuve viendo una serie en un canal de televisión local, donde un profesor de filosofía ponía contra las cuerdas a un estudiante de instituto.

La conversación se basaba en la teoría de la dialéctica de Georg Wilhelm Friedrich Hegel, la cuál expone que proponiendo una tesis y escuchando su antítesis, se llega a la síntesis y se logra la libertad de pensamiento, la libertad.

También expuso la teoría de la dialéctica del amo y el esclavo, donde ambos buscan la libertad y ambos luchan a muerte. El amo busca dominar el esclavo y el esclavo busca ser libre. Esta dialéctica consiste en no dejarse vencer, seas amo o esclavo.

250px-Hegel_portrait_by_Schlesinger_1831

Georg Wilhelm Friedrich Hegel

(Stuttgart, 27 de agosto de 1770–Berlín 14 de noviembre de 1831)

La dialéctica que propone Hegel es considerada la madre de la lógica actual y sostiene que la dialéctica es una progresión en la que cada movimiento sucesivo surge como solución de las contradicciones inherentes al movimiento anterior.

Sostiene que el pensamiento humano debe llegar a la síntesis, pero para ello debe pasar por dos etapas que entran en contraposición, la tesis y la antítesis.

Por ejemplo, vosotros que escribís un blog os voy a explicar la forma en que escribo yo mis textos y veréis que escribir es un modo de dialéctica y se puede lograr la libertad de pensamiento con éste.

¿Cómo escribo un texto?

  • Inicialmente, tengo una idea para un tema.
  • Seguidamente, desarrollo el tema y me planteo dudas.
  • Finalmente, corrijo errores y resumo.

Vintage typewriter and old books

Si habéis hecho algún curso de escritura creativa, veréis que es necesario un orden y tener las ideas claras para escribir.

Escribir es aprender, escribir es lograr la libertad de pensamiento.

Ser yo mismo

Etiquetas

, , , , , , , , , ,

¿Cómo decirlo todo en pocas palabras?

Imposible, se presenta imposible,

pero lo intentaré …

Cuando te esfuerzas tanto que las piedras parecen montañas,

cuando amas tanto que los vacíos son demasiado dolorosos,

cuando estás cansado de ti mismo,

cuando estás cansado del resto,

cuando no sabes quién tiene el problema.

Las-5-heridas-que-impiden...

Cuando no eres libre y quieres serlo,

de verdad que quieres ser,

ser esa ave que vuela libre,

lejos de las preocupaciones,

lejos de seres queridos también,

lejos de todo y, tranquilamente,

mirarme al espejo y

reconocerme,

saber quién soy,

saber qué quiero,

y no querer saber tanto,

no querer ser tan listo,

más bien, ser yo mismo.

El “Deep Learning”: separado en módulos

Etiquetas

, , , , , , , , , , , , , , ,

Mi proyecto myyme va cogiendo forma.

3f5ddff95fea41eba41b7a73ca8ea502

Después de definir ¿el porqué del DL? y ¿el cómo? ahora vamos a entrar en detalle en el proyecto y sus módulos.

Why-Deep-Learning-1024x742

Separemos en módulos:

Módulo File Generator: El objetivo de este módulo es generar ficheros por temática y añadirle frases a los ficheros, que serán los datos de entrenamiento usados en el módulo de Deep Learning.

Módulo Deep Learning (Mi Learning Machine): El objetivo de este módulo es usar Word2Vec de deeplearning4j y entrenar y ejecutar el sistema. De momento el sistema consiste en encontrar las palabras más cercanas a la palabra dada, pero el Deep Learning a usar debe cambiar para cumplir con los requerimientos funcionales.

Módulo Calling To Internet: El objetivo de este módulo es llamar a internet mediante google y devolver el contenido sobre un tema, que más tarde se pueda separar en frases para añadirlas a nuestros datos de entrenamiento mediante el módulo File Generator.

Módulo How Do You Learn: El objetivo de este módulo es hacer el CRUD (siglas que vienen a decir Create, Read, Update and Delete) de usuarios, robots, conceptos, conceptos relacionados y tags de conceptos.

Proyecto Front-end myyme: Este proyecto es lo que ve el usuario final y donde podemos interaccionar con los otros cuatro módulos. De momento, myyme solo tiene integrado el módulo How Do You Learn, pero pronto tendrá integrados los cuatro módulos mediante llamadas a los Web Services Rest de Spring Boot. Quedará pendiente implementar el Spring Security para aportar seguridad en la comunicación entre la aplicación front-end y los diferentes módulos.

¡Queda aún mucho por hacer…

Getting_started_with_Deep_Learning

… pero con esfuerzo lo lograremos!

Estoy buscando colaboradores que tengan nociones de Git, Java, Spring-Boot, DeepLearning y Angular4. No es necesario saber de todo, muchas cosas se irán aprendiendo sobre la marcha. Con que tengas nociones será suficiente.

¡Si crees que puedes ser tú o conoces a alguien que pueda interesarle! ¡Contáctame!

 

El “Deep Learning”: ejemplo práctico

Etiquetas

, , , , , , , , , , , ,

Este fin de semana, que empezaba el viernes por la tarde, me he puesto manos a la obra y os he hecho este ejemplo práctico de un DL (“Deep Learning”), llamado más genéricamente AL (“Automatic Learning”).

terminator-3---rise-of-the-machines-screenshot

Consiste en:

Dado un fichero definido previamente que contiene muchas frases, tantas como seamos capaces de generar, el sistema se entrena y se ejecuta, para buscar las palabras más cercanas a una palabra dada.

· Cuando ejecutamos el proceso executeLM: proceso ; éste nos devolverá las 10 palabras más cercanas a la palabra “day”, ordenadas por proximidad.

· Cuando ejecutamos el proceso trainLM: proceso ; éste entrenará el sistema con la palabra “day” y nos devolverás las 10 palabras más cercanas a esta palabra, ordenadas también por proximidad.

AAEAAQAAAAAAAA1aAAAAJDNiNWQ2YWNhLWNjY2QtNDQ2Yi1iNDhiLWNjNmFiNTI1OWRmZQ

Si os fijáis en la llamada, veréis que se le pasan varios parámetros:

· word: palabra a buscar o a entrenar.

· theme: tema del fichero a cargar.

El objetivo es:

· Con estos parámetros, cargar un fichero de entre muchos que tendré en el servidor. El cuál contendrá las frases sobre el tema que deseo entrenar o que deseo usar. De esta forma, tendré un fichero por temática que desee investigar.

· Para ello, deberé generar otro servicio que cree ficheros para cada temática y que añada las frases que desee como contenido.

· Este sería el circuito de entradas y salidas del sistema, donde “Datos de Entrenamiento” sería el fichero de frases, “Variables de entrada” sería la palabra que queremos buscar o entrenar y “Salida” serían las 10 palabras más próximas:

Sistema-Experto

La resolución será:

· Que podré decirle a mi robot que introduzca palabras y encuentre similitudes con otras palabras diferenciadas por temáticas.

· Para crear vuestro robot, podéis acceder a la siguiente página: myyme ; donde podréis dar de alta un usuario y crear tantos robots como queráis. De momento, solo podréis añadir los conceptos y sus relaciones manualmente. Pero pronto, podréis decir a los robots que se entrenen.

large-icon

Es un trabajo que estoy haciendo en mis ratos libres y que hago con mucha ilusión. Espero que os guste la idea y toda opinión o sugerencia será bienvenida.

El “Deep Learning”: Una nueva carrera

Etiquetas

, , , , , , , , , , , , ,

El “Deep Learning” o el Aprendizaje Profundo son un conjunto de algoritmos de clase aprendizaje automático que intentan modelar abstracciones de alto nivel en datos usando arquitecturas compuestas por transformaciones no lineales múltiples.

descarga

Las actuales aplicaciones en casos reales son: el reconocimiento de imágenes, por ejemplo, la detección de caras en una foto o la clasificación de tipo de animal de una foto. También se usa en el reconocimiento automático del habla, reconocimiento de señales de audio y otras aplicaciones.

Consiste en:

· A partir de mucha información almacenada, poder definir un patrón que dada una entrada, en este caso una fotografía, se pueda definir una salida, como puede ser una descripción o una definición.

Deep-Neural-Network-What-is-Deep-Learning-Edureka

En lenguaje Java, existe una potente plataforma llamada TensorFlow, que está dando de qué hablar.  En ella podrás definir tu propio sistema de DL (Deep Learning) y qué transformaciones quieres realizar. Es también la plataforma que usa Google para sus proyectos e investigaciones en el Machine Learning.

El secreto y el objetivo de estas investigaciones es:

· Conseguir definir patrones que resuelvan casos de uso concretos, para así definir un comportamiento que conecte estos diferentes módulos.

· Detrás de todo ello no hay otra cosa que la ansiada IA (Inteligencia Artificial).

inteligencia-artificial-iao-1-638

Es la carrera de la IA, como años atrás hubo la carrera hacia la Luna o la carrera por conseguir el primer PC (Personal Computer) o conseguir el primer SmartPhone.

¿A quién no le gustan las carreras? ¡Lograr la emoción de cruzar la meta el primero!

¡A ver si por primera vez un español se avanza al resto y sorprende al mundo entero!

La importancia del SSL o el TLS

Etiquetas

, , , , , , , , , , , , , , , ,

Si tenemos un servidor o queremos tenerlo, tarde o temprano nos encontraremos con la necesidad de poder acceder a nuestras aplicaciones desplegadas en el servidor en protocolo seguro (HTTPS). El protocolo que tiene todo servidor, por defecto, es el HTTP.

HTTPS-940x529

Empezaremos a investigar y veremos que los protocolos seguros HTTPS requieren de la instalación y configuración de un SSL (versión anterior y más económica) o TLS (versió nueva, aunque más cara).

En mi caso, instalé un SSL en mi servidor y ahora ya cuento con la entrada segura al servidor mediante protocolo HTTPS.

Definiciones:

SSL: Estas siglas significan “Secure Sockets Layer“, en inglés, y consiste en un protocolo seguro para establecer comunicaciones seguras por internet.

TLS: Estas siglas significan “Transport Layer Security“, en inglés, y consiste en lo mismo que el SSL, solo que es un protocolo más nuevo y más seguro.

HTTPS: Estas siglas significan “Hypertext Transfer Protocol Secure“, en inglés, y consiste en un protocolo de aplicación basado en el protocolo HTTP, destinado a la transferencia segura de datos de Hipertexto, es decir, es la versión segura de HTTP.

http_vs_https

Objetivo:

Si configuramos un SSL o TLS en nuestro servidor, podremos acceder a nuestras aplicaciones o webs mediante HTTPS, por ejemplo, podremos acceder a la ruta https://davidmartinezros.com. Anteriormente a la instalación, solo se podía acceder a la dirección http://davidmartinezros.com.

Mi objetivo era poder hacer funcionar los “Service Workers”, para poder convertir mi página web en “Progressive Web App”. Y para eso debía ser una conexión segura (HTTPS).

Detalles a comentar:

Como veis, la tendencia te obliga a seguir una pautas, como es el caso de tener un SSL o TLS, como es usar tecnología puntera como es el caso de Angular 4 y, también, a gastarse algo de dinero para llegar a ello. Como es el caso de comprar un servidor, un dominio y, ahora, un certificado, que caduca en un año y me ha costado 59 euros.

Por lo tanto, estar a la última cuesta dinero y dedicarle mucho tiempo libre, que podrías dedicarlo a tomar cervezas con los amigos o en mirar las mus-arañas.

Ventajas de tener ilusión:

Debemos ser conscientes, que gracias a nuestra ilusión podemos llegar donde estamos llegando y debemos tener presente que eso cuenta a nuestro favor. De otra forma, no podríamos lograr los retos que nos planteamos.

Los resultados cuesta que lleguen y hay días que piensas: “¿Porqué me esfuerzo tanto? ¿Tiene algún sentido?”

Pero consiguiendo pequeños retos, te nutres de la ilusión de lograr objetivos y que, todo lo que has creado, vaya cogiendo forma.

Ahora mismo, mi página web está valorada en 547,5 dólares y, si te comparas con otros proyectos informáticos, ves que estás un paso por delante. Miras otros, en cambio, y ves que estás a años luz.

¡A seguir creciendo!