¿Quieres enseñar a tu máquina emojis? ?
Creé una red neuronal completamente en Swift. Esta es una demostración para demostrar lo que es posible resolver.
Usé el patio de recreo en macOS.
Creo en el código abierto, creo que para impulsar a la humanidad tienes que abrir el origen todas las cosas o/
Puedes ver el video de YouTube aquí
Utilicé este desafío para aprender más sobre las redes neuronales y el aprendizaje automático. Una red neuronal consta de capas, y cada capa tiene neuronas. Mi red tiene tres capas: una capa de entrada, una capa oculta y una capa de salida.
La entrada a mi red tiene 64 números binarios. Estas entradas están conectadas a las neuronas en la capa oculta. La capa oculta realiza algunos cálculos y pasa el resultado a la neurona de la capa de salida. Esto también realiza un cálculo y luego genera un 0 o un 1. La capa de entrada en realidad no hace nada, son solo marcadores de posición para el valor de entrada. Solo las neuronas en la capa oculta y la capa de salida realizan cálculos. Las neuronas de la capa de entrada están conectadas a las neuronas en la capa oculta. Del mismo modo, ambas neuronas de la capa oculta están conectadas a la capa de salida. Este tipo de capas se llaman completamente conectadas porque cada neurona está conectada a cada neurona en la siguiente capa. Cada conexión entre dos neuronas tiene un peso, que es solo un número. Estos pesos forman el cerebro de mi red. Para la función de activación en mi red, uso la función sigmoide.
Sigmoid es una función matemática. El sigmoide toma un número X y lo convierte en un valor entre 0 y 1. Eso es ideal para mis propósitos, ya que estoy tratando con números binarios. Esto convertirá una ecuación lineal en algo que no es lineal. Esto es importante porque sin esto, la red no podría aprender cosas interesantes.
Ya he mencionado que la entrada a esta red son 64 números binarios. Dimensionamiento la imagen dibujada a 8x8 píxeles, lo que hace 64 píxeles juntos. Reviso la imagen y verifico cada píxel si el píxel tiene un color rosa, agrego un 1 a mi matriz, de otro modo, agrego un 0. Al final tendré 64 números binarios que puedo agregar a mi capa de entrada.
Mi objetivo principal era hacer que la red neuronal y el aprendizaje automático sean más accesibles y divertidos. También para obtener más información sobre las potentes características de los parques infantiles y las redes neuronales.
@reffas_bilal
Vincent Esche
Por Harald Borgen
Matthijs Hollemans
Si te gusta este proyecto, ¿dejas una estrella? Aquí en Github y compártelo.
Estoy trabajando con @leomehlig en Luubra. Encontrarás más al respecto aquí
¿Todas las piezas están hechas a mano con mucho amor ❤️ y se envían por todo el mundo?
Este proyecto actualmente solo está trabajando en macOS. Hay un error en el iPad que ya envié el problema en el reportero de errores. Espero que Apple arregle esto pronto.
MIT License
Copyright (c) 2017 Luubra
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.