PALABRAS CLAVE: Snap!, BJC, AP CSP, CS0.
1. INTRODUCTION
Recent years have seen a thunderous revival of programming education, sparked by a growing demand for computationally skilled workforce and spearheaded by MIT’s visual Scratch language. In Scratch’s wake, a new class of so-called “blocks-based” programming editors has appeared, and visual coding has since evolved into the de-facto standard for introductory CS activities. Along with Scratch’s metaphor of stacking bricks, representing chunks of code into program-“towers” that are executed from top to bottom, a very traditional imperative style of programming has been established as quasi-best practice for introducing children and novices to CS.
At the same time, driven by the asynchronous nature of web programming and massive parallelization on the backend side to cope with “big data”, many professional text-based programming languages have been revamped to support functional programming techniques such as proper tail-calls and even lambda, which before were considered too exotic to become mainstream. The gap between what beginners are exposed to in visual blocks-based languages and what is required to express themselves in a professional modern programming language today is more than just syntax. The gap is also conceptual and calls for proficiency in paradigms.
2. A CHALLENGE
Frequently discussed among educators is how to foster the transition from visual to textual programming. Sometimes the proposed solutions suggest bi-modal code editing, being able to switch back and forth between blocks and text. While this might address the lesser issue of coping with textual syntax, it does not help with introducing concepts and paradigms unsupported by any one side, and in the worst case even impoverishes the beginner’s programming experience to the least common denominator of two programming languages.
On the other side of the spectrum, efforts are under way to broaden the scope and raise the ceiling of blocks-based programming. I will present one such project: Snap! Build Your Own Blocks. Snap! is a Scratch-like programming language that treats code blocks as first-class citizens instead of confining them to an editing modality. Embracing nested data structures and higher order functions, Snap! lets learners create arbitrary control structures and even custom programming languages with just blocks. Snap! has been developed for UC Berkeley’s introductory computer science course named “The Beauty and Joy of Computing”.
3. IN THIS TALK
I will share thoughts on the design of Snap! in a live-programmed excursion touching on a selection of powerful ideas from algorithms to artificial intelligence.
PONENCIAS
Análisis de sentimientos de noticias escritas usando un modelo basado en la red neuronal long short-term memory para determinar si las noticias positivas mejoran el estado de ánimo de las personas
Gustavo Adolfo Reyes-Paredes
[email protected] / Universidad de Lima, Perú
Recepción: 17-6-2019 / Aceptación: 8-8-2019
RESUMEN. Es un hecho que el paradigma de distribuir noticias negativas a la población es el más aceptado mundialmente. Una gran cantidad de investigaciones se han enfocado en establecer los efectos de este paradigma en la población y, en todos los casos, se ha demostrado que es dañino para la salud y el comportamiento de las personas. Por ello, se ha decidido demostrar que el paradigma opuesto, la distribución de noticias positivas, genera una mejora en la salud, en el comportamiento y en el estado de ánimo de la población. Para lograr este propósito, se desarrolló un modelo basado en la red neuronal long short-term memory para realizar el análisis de los sentimientos relacionados con las noticias escritas en español. El experimento consistió en determinar el estado de ánimo de las personas luego de haber leído noticias positivas.
PALABRAS CLAVE: aprendizaje de máquinas, análisis de sentimientos, red neuronal recurrente, long short-term memory, bienestar psicológico y social
Sentiment Analysis of Written News Using a Model Based on the Long Short-Term Memory Neural Network to Determine if Positive News Improve People’s Mood
ABSTRACT. It is a fact that the paradigm of distributing negative news to the population is the most accepted worldwide. A large amount of research has been done to determine the effects of this paradigm on the population and, in all cases, it has been shown to be harmful to the health and behavior of people. Therefore, this paper aims to demonstrate that the opposite paradigm, the distribution of positive news, generates an improvement in the health, behavior and mood of the population. To achieve this, a model based on the long short-term memory neural network has been developed in order to analyze sentiments caused by news written in Spanish. Moreover, an experiment was conducted to determine people’s mood after having read positive news.
KEYWORDS: machine learning, sentiment analysis, recurrent neural network, long short-term memory, psychological and social well-being
1. INTRODUCCIÓN
En la actualidad, el paradigma de difundir noticias negativas es el más aceptado, por ello la gran mayoría de los medios de comunicación las muestran a la población. Se ha demostrado que las personas se sienten atraídas hacia los eventos negativos en un nivel genético (Hatemi et al., 2009). Por ello, no es sorprendente que la prensa mundial siga el paradigma de difundir noticias negativas, ya que esto genera un mayor ingreso monetario.
Por otro lado, es de suma importancia mantener un balance emocional positivo; de no lograrse, ocasiona una gran cantidad de problemas de salud afectando la vida diaria de las personas. La incapacidad de poder alcanzar un balance emocional es un problema actual y creciente que repercute en todo el mundo (Fredrickson, 2001); agravándose aún más por la proliferación de noticias negativas en los medios de comunicación, debido a que estas afectan la salud mental de la población si se exponen constantemente a ellas (Johnston y Davey, 1997).
Para reducir estos problemas existe otro paradigma basado en la exposición a la población de noticias positivas que nos indica que el estado de ánimo de las personas mejora luego de estar en contacto con noticias positivas. Por lo tanto, para corroborar estas investigaciones se propone realizar un modelo basado en la red neuronal recurrente long short-term memory (LSTM) que tiene como objetivo clasificar noticias escritas en positivas o negativas y luego realizar un experimento para determinar si el estado de ánimo de las personas realmente mejora.
Para ello se realizará una serie de tareas, las cuales resumidas son las siguientes:
a) Recolectar una base de datos de noticias escritas en español.
b) Clasificar estas noticias utilizando el servicio de Google AutoML, esto sirve para el entrenamiento.
c) Transformar las noticias en vectores para que sirvan de input para el modelo.
d) Formular e implementar el modelo de redes neuronales long short-term memory.
e) Realizar la validación del modelo.
f) Realizar el experimento para determinar el estado de ánimo de las personas luego de leer las noticias.
2. METODOLOGÍA
2.1 Recolección y preparación de noticias
Se utilizó una librería del lenguaje de programación Python llamada BeautifulSoup para poder realizar un web scrapping de diferentes páginas web de noticias del Perú (RPP, El Comercio, La República y Exitosa)
Se escogió el título y el cuerpo de la noticia como input para el modelo, y se seleccionaron noticias entre el 12 de agosto del 2018 al 11 de septiembre del 2018