The 1st place solution for KDD Cup 2019 AutoML Track
Requirements: Cython with C compiler.
clone or download autosmart package, run
python setup.py install
import auto_smart
info = auto_smart.read_info("data")
train_data,train_label = auto_smart.read_train("data",info)
test_data = auto_smart.read_test("data",info)
auto_smart.train_and_predict(train_data,train_label,info,test_data)
This page describes the datasets that our system can deal with.
Each dataset is split into two subsets, namely the training set and the testing set.
Both sets have:
Each table file is a CSV file that stores a table (main or related), with '\t' as the delimiter. The first row indicates the names of features, a.k.a 'schema', and the following rows are the records.
The type of each feature can be found in the info dictionary that will be introduced soon.
There are 4 types of features, indicated by "cat", "num", "multi-cat", and "time", respectively:
The label file is associated only with the main table in the training set. It is a CSV file that contains only one column, with the first row as the header and the remaining indicating labels associated with instances in the main table.
Important information about each dataset is stored in a python dictionary structure named as info, which acts as an input of this system. Generally,you need to manually generate the dictionary information info.json file. Here we give details about info.
Descriptions of the keys in info:
time_budget: time budget for this dataset (sec).
time_col: the column name of the primary timestamp; Each dataset has one unique time_col; time_col is definitely contained in the main table, but not necessarily in a related table;
start_time: DEPRECATED.
tables: a dictionary that stores information about tables. Each key indicates a table, and its corresponding value is a dictionary that indicates the type of each column in this table. Two kinds of keys are contained in tables:
relations: a list that stores table relations in the dataset. Each relation can be represented as an ordered table pair (table_A, table_B), a key column key that appears in both tables and acts as the pivot of table joining, and a relation type type. Different relation types will be introduced shortly.
Four table relations are considered in this system:
DeepBlueAI: 1229991666@qq.com