# A Block-Based Interactive Programming Environment for Large-Scale Machine Learning Education
## 1 Introduction  
Block-based programming languages and their environments, such as Scratch [1, 2], are widely used for primary and secondary school programming education. These programming languages are often used for the purpose of fostering students' computational thinking skills [3, 4, 5, 6]. Recently, many approaches that teach machine learning to young students using block-based programming languages have been devised. Two of the most popular machine learning educational environments are Machine Learning for Kids [7] and Cognimates [8]. Using these environments, students can create various types of programs, including machine learning applications that classify text or images.  
However, it is difficult for students to train large-scale data using the existing environments for machine learning education. For example, when using Machine Learning for Kids, students cannot train a machine learning model on more than 100 images. As another example, when using Cognimates, students cannot train the model on more than 20 images for each class. Considering that the MNIST [9] and CIFAR-100 [10] datasets have 60,000 and 50,000 training samples, respectively, the existing block-based programming environments allow students to use relatively scant data as they train the model. Although students can recognize the importance of \"more data\" even with a small number of data samples [11, 12, 13], if students can experience training on a large number of data samples, they will understand this importance more clearly.  
In this paper, we present a novel block-based programming environment in which primary and secondary school students can train machine learning models on their own large-scale data. First, we redefine the Tooee [14] block interfaces, after which we implement effective blocks that (1) make it easy for students to train machine learning models basedon large-scale data and that (2) produce immediate results whenever students click on our machine learning blocks.  
The rest of this paper is organized as follows: In Section 2, we introduce a machine learning educational environment for primary and secondary education using block-based programming languages. In Section 3, we propose a novel environment for machine learning education that allows young students to train large-scale data and present example applications for training text and image data based on our environment. Section 4 summarizes the survey results obtained through four crash courses conducted for teachers and pre-service teachers. Finally, we conclude the paper in Section 5.  
Our research questions are as follows:  
* Research Question 1 (easiness): Can primary and secondary school students (K-12 students) easily train a machine learning model based on a large amount of data (more than 10,000 training examples) with the blocks we propose in this paper?
* Research Question 2 (interestingness): Can primary and secondary school students (K-12 students) be interested in training a machine learning model based on a large amount of data (more than 10,000 training examples) with the blocks we propose in this paper?
* Research Question 3 (importance): Is it important for primary and secondary school students (K-12 students) to gain experience in implementing machine learning applications trained on a lot of data?