[{'role': 'system', 'content': "You are an expert in machine learning and your task is to classify code snippets into one of the following categories: ['helper_functions', 'load_data', 'data_exploration', 'data_preprocessing', 'evaluation', 'modelling', 'prediction', 'result_visualization', 'save_results', 'comment_only']."}, {'role': 'user', 'content': "Identify the single most appropriate category to which the provided code belongs. Provide your response as a single category label without any additional information, commentary, or personal opinions.\\nPython Code:from keras.wrappers.scikit_learn import KerasClassifier\nfrom keras.models import Sequential\nfrom keras.layers.core import Dense, Dropout, Flatten, Activation\nfrom keras.layers.convolutional import Convolution2D, ZeroPadding2D, MaxPooling2D\nfrom keras import optimizers\nfrom keras.preprocessing.image import ImageDataGenerator\nfrom sklearn.model_selection import train_test_split\nfrom keras.optimizers import SGD\nfrom keras import backend as K\nK.set_image_dim_ordering('th')\nK.set_floatx('float32')\nimport pandas as pd\nimport numpy as np\nnp.random.seed(17)\nx_train,x_val_train,y_train,y_val_train = train_test_split(train_data,train_target,test_size=0.3, random_state=17)\ndef create_model(opt_='adadelta'):\nmodel = Sequential()\nmodel.add(Convolution2D(4, 3, 3, activation='relu', dim_ordering='th', input_shape=(3, 300, 300))) #use input_shape=(3, 64, 64)\nmodel.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2), dim_ordering='th'))\nmodel.add(Convolution2D(8, 3, 3, activation='relu', dim_ordering='th'))\nmodel.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2), dim_ordering='th'))\nmodel.add(Dropout(0.2))\nmodel.add(Flatten())\nmodel.add(Dense(12, activation='tanh'))\nmodel.add(Dropout(0.1))\nmodel.add(Dense(3, activation='softmax'))\nmodel.compile(optimizer=opt_, loss='sparse_categorical_crossentropy', metrics=['accuracy'])\nreturn model\ndatagen = ImageDataGenerator(rotation_range=0.3, zoom_range=0.3)\ndatagen.fit(train_data)\nmodel = create_model()\nprint(x_train.shape)\nprint(y_train.shape)\nmodel.fit_generator(datagen.flow(x_train,y_train, batch_size=15, shuffle=True), nb_epoch=50, samples_per_epoch=len(x_train), verbose=2, validation_data=(x_val_train, y_val_train))\npred = model.predict_proba(test_data)\ndf = pd.DataFrame(pred, columns=['Type_1','Type_2','Type_3'])\ndf['image_name'] = test_id\ndf.to_csv('submission_300.csv', index=False)\nprint(cpu_count())"}, {'role': 'assistant', 'content': 'modelling'}]