{"cells":[{"metadata":{"_cell_guid":"c4071e93-6e35-4d3e-a7ee-27c21e517c90","_uuid":"ed40e4105d2417fb2017cbaf36c4ac793341919e","collapsed":true,"trusted":true},"cell_type":"code","source":"# This Python 3 environment comes with many helpful analytics libraries installed\n# It is defined by the kaggle/python docker image: https://github.com/kaggle/docker-python\n# For example, here's several helpful packages to load in \n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\nimport matplotlib.pyplot as plt\nimport seaborn as sns\n\n# Input data files are available in the \"../input/\" directory.\n# For example, running this (by clicking run or pressing Shift+Enter) will list the files in the input directory\n\nimport os\nprint(os.listdir(\"../input\"))\n\ndf = pd.read_csv(\"../input/avito-demand-prediction/train.csv\")\ntest = pd.read_csv(\"../input/avito-demand-prediction/test.csv\")\n# Any results you write to the current directory are saved as output.\n#아니면 도시별 평균값을 나눠서, 도시마다 평균값 자체를 attribute으로 해도 될듯. Or 평균값의 범위를 나누어도됨\n#그다음 test data에는 특정도시에 대해 그 값을 할당해 새 feature로 사용\n\ndf_sorted = df.sort_values(by = [\"image\"])\ntest_sorted = test.sort_values(by = [\"image\"])","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"c7fbfeaf-1022-4129-8d8a-660d78ee1987","_uuid":"ac256fa2c62f7ce149dff562c7a750dda1e9df5d","collapsed":true,"scrolled":false,"trusted":true},"cell_type":"code","source":"#Load image blurrness for train\n\n\ntr_1 = pd.read_csv(\"../input/train-data-image-blurrness/1.csv\")\ntr_2 = pd.read_csv(\"../input/train-data-image-blurrness/2.csv\")\ntr_3 = pd.read_csv(\"../input/train-data-image-blurrness/3.csv\")\ntr_4 = pd.read_csv(\"../input/train-data-image-blurrness/4.csv\")\ntr_5 = pd.read_csv(\"../input/train-data-image-blurrness/5.csv\")\ntr_6 = pd.read_csv(\"../input/train-data-image-blurrness/6.csv\")\ntr_7 = pd.read_csv(\"../input/train-data-image-blurrness/7.csv\")\ntr_8 = pd.read_csv(\"../input/train-data-image-blurrness/8.csv\")\ntr_9 = pd.read_csv(\"../input/train-data-image-blurrness/9.csv\")\ntr_10 = pd.read_csv(\"../input/train-data-image-blurrness/10.csv\")\ntr_11 = pd.read_csv(\"../input/train-data-image-blurrness/11(12_13.5).csv\")\ntr_12 = pd.read_csv(\"../input/train-data-image-blurrness/last.csv\")\n\nframes = [tr_1, tr_2, tr_3, tr_4, tr_5, tr_6, tr_7, tr_8, tr_9, tr_10, tr_11, tr_12]\nnew = pd.concat(frames)\nnew[\"File\"] = new[\"File\"].apply(lambda x : x.split(\"/\")[-1].split(\".\")[0])\nnew = new.sort_values(by = [\"File\"])\n\nscores = list(new[\"Score\"].values) + [-1] * (len(df)-len(new))\n\ndf_sorted[\"image_blurrness_score\"] = scores\n\ndf = df_sorted.sort_index()","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"ba44f006-7fd5-43ba-8fcf-70ce8978fedc","_uuid":"e6c01da4ad33885d854cfa31e3608786cfbcaa57","collapsed":true,"trusted":true},"cell_type":"code","source":"#For test\nte_1 = pd.read_csv(\"../input/image-blurrness-test/test_1.csv\")\nte_2 = pd.read_csv(\"../input/image-blurrness-test/test_2.csv\")\nte_3 = pd.read_csv(\"../input/image-blurrness-test/test_3.csv\")\nte_4 = pd.read_csv(\"../input/image-blurrness-test/test_4.csv\")\nte_5 = pd.read_csv(\"../input/image-blurrness-test/test_5.csv\")\n\nframes_te = [te_1, te_2, te_3, te_4, te_5]\nnew_te = pd.concat(frames_te)\nnew_te[\"File\"] = new_te[\"File\"].apply(lambda x : x.split(\"/\")[-1].split(\".\")[0])\nnew_te = new_te.sort_values(by = [\"File\"])\nscores_te = list(new_te[\"Score\"].values) + [-1] * (len(test)-len(new_te))\n\ntest_sorted[\"image_blurrness_score\"] = scores_te\ntest = test_sorted.sort_index()","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"f92a2ff7-f03b-44a7-a3b0-4809e57a84f2","_uuid":"4e486986a2e18943aa6cde6b90f69cad287105f8","collapsed":true,"trusted":true},"cell_type":"code","source":"df_train= df\ndf_test = test","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"f62cec03-b31a-44bb-bacc-e8726b9f75a0","_uuid":"fbabacc940fca71fd3a33e0185ceb95abfcb2659","collapsed":true,"trusted":true},"cell_type":"code","source":"#Copied this from others' kernel\n\nparent_category_name_map = {\"Личные вещи\" : \"Personal belongings\",\n                            \"Для дома и дачи\" : \"For the home and garden\",\n                            \"Бытовая электроника\" : \"Consumer electronics\",\n                            \"Недвижимость\" : \"Real estate\",\n                            \"Хобби и отдых\" : \"Hobbies & leisure\",\n                            \"Транспорт\" : \"Transport\",\n                            \"Услуги\" : \"Services\",\n                            \"Животные\" : \"Animals\",\n                            \"Для бизнеса\" : \"For business\"}\n\n","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"11442f0c-4efb-4508-addf-279a2e0d3f3f","_uuid":"083d208c3d02e443c9d7dfc7a15d80c4841d1845","collapsed":true,"trusted":true},"cell_type":"code","source":"\nregion_map = {\"Свердловская область\" : \"Sverdlovsk oblast\",\n            \"Самарская область\" : \"Samara oblast\",\n            \"Ростовская область\" : \"Rostov oblast\",\n            \"Татарстан\" : \"Tatarstan\",\n            \"Волгоградская область\" : \"Volgograd oblast\",\n            \"Нижегородская область\" : \"Nizhny Novgorod oblast\",\n            \"Пермский край\" : \"Perm Krai\",\n            \"Оренбургская область\" : \"Orenburg oblast\",\n            \"Ханты-Мансийский АО\" : \"Khanty-Mansi Autonomous Okrug\",\n            \"Тюменская область\" : \"Tyumen oblast\",\n            \"Башкортостан\" : \"Bashkortostan\",\n            \"Краснодарский край\" : \"Krasnodar Krai\",\n            \"Новосибирская область\" : \"Novosibirsk oblast\",\n            \"Омская область\" : \"Omsk oblast\",\n            \"Белгородская область\" : \"Belgorod oblast\",\n            \"Челябинская область\" : \"Chelyabinsk oblast\",\n            \"Воронежская область\" : \"Voronezh oblast\",\n            \"Кемеровская область\" : \"Kemerovo oblast\",\n            \"Саратовская область\" : \"Saratov oblast\",\n            \"Владимирская область\" : \"Vladimir oblast\",\n            \"Калининградская область\" : \"Kaliningrad oblast\",\n            \"Красноярский край\" : \"Krasnoyarsk Krai\",\n            \"Ярославская область\" : \"Yaroslavl oblast\",\n            \"Удмуртия\" : \"Udmurtia\",\n            \"Алтайский край\" : \"Altai Krai\",\n            \"Иркутская область\" : \"Irkutsk oblast\",\n            \"Ставропольский край\" : \"Stavropol Krai\",\n            \"Тульская область\" : \"Tula oblast\"}\n","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"f1cc19d8-46eb-4117-a303-cd6c8d2732a0","_uuid":"d1c13a5fde4852afc837727de59be426da235df5","collapsed":true,"trusted":true},"cell_type":"code","source":"\ncategory_map = {\"Одежда, обувь, аксессуары\":\"Clothing, shoes, accessories\",\n\"Детская одежда и обувь\":\"Children's clothing and shoes\",\n\"Товары для детей и игрушки\":\"Children's products and toys\",\n\"Квартиры\":\"Apartments\",\n\"Телефоны\":\"Phones\",\n\"Мебель и интерьер\":\"Furniture and interior\",\n\"Предложение услуг\":\"Offer services\",\n\"Автомобили\":\"Cars\",\n\"Ремонт и строительство\":\"Repair and construction\",\n\"Бытовая техника\":\"Appliances\",\n\"Товары для компьютера\":\"Products for computer\",\n\"Дома, дачи, коттеджи\":\"Houses, villas, cottages\",\n\"Красота и здоровье\":\"Health and beauty\",\n\"Аудио и видео\":\"Audio and video\",\n\"Спорт и отдых\":\"Sports and recreation\",\n\"Коллекционирование\":\"Collecting\",\n\"Оборудование для бизнеса\":\"Equipment for business\",\n\"Земельные участки\":\"Land\",\n\"Часы и украшения\":\"Watches and jewelry\",\n\"Книги и журналы\":\"Books and magazines\",\n\"Собаки\":\"Dogs\",\n\"Игры, приставки и программы\":\"Games, consoles and software\",\n\"Другие животные\":\"Other animals\",\n\"Велосипеды\":\"Bikes\",\n\"Ноутбуки\":\"Laptops\",\n\"Кошки\":\"Cats\",\n\"Грузовики и спецтехника\":\"Trucks and buses\",\n\"Посуда и товары для кухни\":\"Tableware and goods for kitchen\",\n\"Растения\":\"Plants\",\n\"Планшеты и электронные книги\":\"Tablets and e-books\",\n\"Товары для животных\":\"Pet products\",\n\"Комнаты\":\"Room\",\n\"Фототехника\":\"Photo\",\n\"Коммерческая недвижимость\":\"Commercial property\",\n\"Гаражи и машиноместа\":\"Garages and Parking spaces\",\n\"Музыкальные инструменты\":\"Musical instruments\",\n\"Оргтехника и расходники\":\"Office equipment and consumables\",\n\"Птицы\":\"Birds\",\n\"Продукты питания\":\"Food\",\n\"Мотоциклы и мототехника\":\"Motorcycles and bikes\",\n\"Настольные компьютеры\":\"Desktop computers\",\n\"Аквариум\":\"Aquarium\",\n\"Охота и рыбалка\":\"Hunting and fishing\",\n\"Билеты и путешествия\":\"Tickets and travel\",\n\"Водный транспорт\":\"Water transport\",\n\"Готовый бизнес\":\"Ready business\",\n\"Недвижимость за рубежом\":\"Property abroad\"}\n","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"16025faf-7f47-4c56-8937-197cbc12d1db","_uuid":"b62f4c5488d9ef8880d0bf8cfee748e0a53ca534","collapsed":true,"trusted":true},"cell_type":"code","source":"\nparams_top35_map = {'Женская одежда':\"Women's clothing\",\n                    'Для девочек':'For girls',\n                    'Для мальчиков':'For boys',\n                    'Продам':'Selling',\n                    'С пробегом':'With mileage',\n                    'Аксессуары':'Accessories',\n                    'Мужская одежда':\"Men's Clothing\",\n                    'Другое':'Other','Игрушки':'Toys',\n                    'Детские коляски':'Baby carriages', \n                    'Сдам':'Rent',\n                    'Ремонт, строительство':'Repair, construction',\n                    'Стройматериалы':'Building materials',\n                    'iPhone':'iPhone',\n                    'Кровати, диваны и кресла':'Beds, sofas and armchairs',\n                    'Инструменты':'Instruments',\n                    'Для кухни':'For kitchen',\n                    'Комплектующие':'Accessories',\n                    'Детская мебель':\"Children's furniture\",\n                    'Шкафы и комоды':'Cabinets and chests of drawers',\n                    'Приборы и аксессуары':'Devices and accessories',\n                    'Для дома':'For home',\n                    'Транспорт, перевозки':'Transport, transportation',\n                    'Товары для кормления':'Feeding products',\n                    'Samsung':'Samsung',\n                    'Сниму':'Hire',\n                    'Книги':'Books',\n                    'Телевизоры и проекторы':'Televisions and projectors',\n                    'Велосипеды и самокаты':'Bicycles and scooters',\n                    'Предметы интерьера, искусство':'Interior items, art',\n                    'Другая':'Other','Косметика':'Cosmetics',\n                    'Постельные принадлежности':'Bed dress',\n                    'С/х животные' :'Farm animals','Столы и стулья':'Tables and chairs'}\n","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"dd849840-5347-4837-8bc3-85d1e14063d7","_uuid":"e94a11237332b6d3ec3f76c3fe47a5a016d5f64a","collapsed":true,"trusted":true},"cell_type":"code","source":"df_train['region_en'] = df_train['region'].apply(lambda x : region_map[x])\ndf_train['parent_category_name_en'] = df_train['parent_category_name'].apply(lambda x : parent_category_name_map[x])\ndf_train['category_name_en'] = df_train['category_name'].apply(lambda x : category_map[x])\n\ndel df_train['region']\ndel df_train['parent_category_name']\ndel df_train['category_name']\n\ndf_train\n\ndf_test['region_en'] = df_test['region'].apply(lambda x : region_map[x])\ndf_test['parent_category_name_en'] = df_test['parent_category_name'].apply(lambda x : parent_category_name_map[x])\ndf_test['category_name_en'] = df_test['category_name'].apply(lambda x : category_map[x])\n\ndel df_test['region']\ndel df_test['parent_category_name']\ndel df_test['category_name']\ndf_test\n\ndf_train","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"94441b54-c2bb-4095-b023-8343fd2fbdba","_uuid":"62e7fe92351b734d836ebf51c73c87d2727644e2","collapsed":true,"trusted":true},"cell_type":"code","source":"regional = pd.read_csv(\"../input/regionaldata/regional.csv\", index_col = [0])\n\nrDense = regional[\"Density_of_region(km2)\"]\nrRural = regional[\"Rural_%\"]\nrTime_zone = regional[\"Time_zone\"]\nrPopulation = regional[\"Total_population\"]\nrUrban = regional[\"Urban%\"]\n\nreg_index = np.array([regional.index[i].lower() for i in range(len(regional))])\nrDense.index = reg_index\nrRural.index = reg_index\nrTime_zone.index = reg_index\nrPopulation.index = reg_index\nrUrban.index = reg_index\n\ndf_region = df_train[\"region_en\"]\n\nreg_dense = np.array([rDense[df_region[i].lower()] for i in range(len(df_train))])\nreg_rural = np.array([rRural[df_region[i].lower()] for i in range(len(df_train))])\nreg_Time_zone = np.array([rTime_zone[df_region[i].lower()] for i in range(len(df_train))])\nreg_Population = np.array([rPopulation[df_region[i].lower()] for i in range(len(df_train))])\nreg_Urban = np.array([rUrban[df_region[i].lower()] for i in range(len(df_train))])\n\ndf_train[\"reg_dense\"] = reg_dense\ndf_train[\"rural\"] = reg_rural\ndf_train[\"reg_Time_zone\"] = reg_Time_zone\ndf_train[\"reg_Population\"] = reg_Population\ndf_train[\"reg_Urban\"] = reg_Urban\n\ndf_train\n\nreg_dense = np.array([rDense[df_region[i].lower()] for i in range(len(df_test))])\nreg_rural = np.array([rRural[df_region[i].lower()] for i in range(len(df_test))])\nreg_Time_zone = np.array([rTime_zone[df_region[i].lower()] for i in range(len(df_test))])\nreg_Population = np.array([rPopulation[df_region[i].lower()] for i in range(len(df_test))])\nreg_Urban = np.array([rUrban[df_region[i].lower()] for i in range(len(df_test))])\n\ndf_test[\"reg_dense\"] = reg_dense\ndf_test[\"rural\"] = reg_rural\ndf_test[\"reg_Time_zone\"] = reg_Time_zone\ndf_test[\"reg_Population\"] = reg_Population\ndf_test[\"reg_Urban\"] = reg_Urban\n\ndf_train","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"3a5c2f66-75e2-4f9b-93c1-4b3fad13d370","_uuid":"bf7067b999e173eb2fe0e0faa7e06299f27b6106","collapsed":true,"scrolled":false,"trusted":true},"cell_type":"code","source":"#Cut out unimportant features\nnew_df_train = df_train.copy()\nnew_df_test = df_test.copy()\ndel new_df_test[\"image\"]\ndel new_df_train[\"image\"]\n\ndel new_df_test[\"activation_date\"]\ndel new_df_train[\"activation_date\"]\n#image 제외함","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"f1bd2836-87d4-449a-884c-7d708c0117c9","_uuid":"da518f05dd93c039bbe794a5999fda463f5ff352","collapsed":true,"trusted":true},"cell_type":"code","source":"#vectorize\nfrom nltk.corpus import stopwords\nfrom sklearn.feature_extraction.text import TfidfVectorizer,CountVectorizer\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.preprocessing import LabelEncoder\nfrom scipy.sparse import csr_matrix, hstack\nimport lightgbm as lgb\nimport gc\n\nstopWords_en = stopwords.words('english')\nstopWords_ru = stopwords.words('russian')\n\ntr =new_df_train.copy()\nte =new_df_test.copy()\n\ntri=tr.shape[0]\ny = tr.deal_probability.copy()\nlb=LabelEncoder()\nList_Var=['item_id', 'description']\n\ndef Concat_Text(df,Columns,Name):\n    df=df.copy()\n    df.loc[:,Columns].fillna(\" \",inplace=True)\n    df[Name]=df[Columns[0]].astype('str')\n    for col in Columns[1:]:\n        df[Name]=df[Name]+' '+df[col].astype('str')\n    return df\n\ndef Ratio_Words(df):\n    df=df.copy()\n    df['description']=df['description'].astype('str')\n    df['num_words_description']=df['description'].apply(lambda x:len(x.split()))\n    Unique_Words=df['description'].apply(lambda x: len(set(x.split())))\n    df['Ratio_Words_description']=Unique_Words/df['num_words_description']\n    return df\n\ndef Lenght_Columns(df,Columns):\n    df=df.copy()\n    Columns_Len=['len_'+s for s in Columns]\n    for col in Columns:\n        df[col]=df[col].astype('str')\n    for x,y in zip(Columns,Columns_Len):\n        df[y]=df[x].apply(len)\n    return df\n\n\n####\ntr_te=tr[tr.columns.difference([\"deal_probability\"])].append(te)\\\n     .pipe(Concat_Text,['city','param_1'],'txt1')\\\n     .pipe(Concat_Text,['title','description'],'txt2').pipe(Ratio_Words).pipe(Lenght_Columns,['title','description','param_1']).assign( category_name_en=lambda x: pd.Categorical(x['category_name_en']).codes,\n              parent_category_name_en=lambda x:pd.Categorical(x['parent_category_name_en']).codes,\n              region_en=lambda x:pd.Categorical(x['region_en']).codes, reg_Time_zone=lambda x:pd.Categorical(x['reg_Time_zone']).codes,\n              user_type=lambda x:pd.Categorical(x['user_type']).codes, image_top_1=lambda x:pd.Categorical(x['image_top_1']).codes,\n              param_1=lambda x:lb.fit_transform(x['param_1'].fillna('-1').astype('str')),\n            param_2=lambda x:lb.fit_transform(x['param_2'].fillna('-1').astype('str')), param_3=lambda x:lb.fit_transform(x['param_3'].fillna('-1').astype('str')),\n              user_id=lambda x:lb.fit_transform(x['user_id'].astype('str')), reg_dense=lambda x: np.log1p(x['reg_dense'].fillna(0)),\n              city=lambda x:lb.fit_transform(x['city'].astype('str')), rural=lambda x: np.log1p(x['rural'].fillna(0)),\n            reg_Urban=lambda x: np.log1p(x['reg_Urban'].fillna(0)),\n             price=lambda x: np.log1p(x['price'].fillna(0)), reg_Population=lambda x: np.log1p(x['reg_Population'].fillna(0)),\n             image_blurrness_score=lambda x: np.log1p(x['image_blurrness_score'].fillna(0)),\n             \n            title=lambda x: x['title'].astype('str')).drop(labels=List_Var,axis=1)\n\ntr_te.price.replace(to_replace=[np.inf, -np.inf,np.nan], value=-1,inplace=True)\ntr_te.reg_Population.replace(to_replace=[np.inf, -np.inf,np.nan], value=-1,inplace=True)\ntr_te.reg_Urban.replace(to_replace=[np.inf, -np.inf,np.nan], value=-1,inplace=True)\ntr_te.reg_dense.replace(to_replace=[np.inf, -np.inf,np.nan], value=-1,inplace=True)\ntr_te.rural.replace(to_replace=[np.inf, -np.inf,np.nan], value=-1,inplace=True)\ntr_te.image_blurrness_score.replace(to_replace=[np.inf, -np.inf,np.nan], value=-1,inplace=True)\n\ntr_te\n\n\n\n##\ndel tr,te\ngc.collect()\n\ntr_te.loc[:,'txt2']=tr_te.txt2.apply(lambda x:x.lower().replace(\"[^[:alpha:]]\",\" \").replace(\"\\\\s+\", \" \"))\n\nprint(\"Processing Text\")\nprint(\"Text 1\")\n\nvec1=CountVectorizer(ngram_range=(1,2),dtype=np.uint8,min_df=5, binary=True,max_features=3000) \nm_tfidf1=vec1.fit_transform(tr_te.txt1)\ntr_te.drop(labels=['txt1'],inplace=True,axis=1)\n\nprint(\"Text 2\")\n\nvec2=TfidfVectorizer(ngram_range=(1,2),stop_words=stopWords_ru,min_df=3,max_df=0.4,sublinear_tf=True,norm='l2',max_features=5500,dtype=np.uint8)\nm_tfidf2=vec2.fit_transform(tr_te.txt2)\ntr_te.drop(labels=['txt2'],inplace=True,axis=1)\n\nprint(\"Title\")\nvec3=CountVectorizer(ngram_range=(3,6),analyzer='char_wb',dtype=np.uint8,min_df=5, binary=True,max_features=2000) \nm_tfidf3=vec3.fit_transform(tr_te.title)\ntr_te.drop(labels=['title'],inplace=True,axis=1)\n\ndata  = hstack((tr_te.values,m_tfidf1,m_tfidf2,m_tfidf3)).tocsr()\n\nprint(data.shape)\ndel tr_te,m_tfidf1,m_tfidf2,m_tfidf3\ngc.collect()\n\ndtest=data[tri:]\nX=data[:tri]\n\ndel data\ngc.collect()\n\nX_train, X_valid, y_train, y_valid = train_test_split(X, y, test_size=0.15, random_state=23)\n\n","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"3e244f8c-3807-4be9-8b44-c79a4a52381a","_uuid":"40bd68ff3ccdfc72e2073cb2687e785625887112","collapsed":true,"scrolled":true,"trusted":true},"cell_type":"code","source":"#LGB\ndtrain =lgb.Dataset(data = X_train, label = y_train)\ndval =lgb.Dataset(data = X_valid, label = y_valid)\n\nDparam = {'objective' : 'regression',\n          'boosting_type': 'gbdt',\n          'metric' : 'rmse',\n          'nthread' : 4,\n          'shrinkage_rate':0.02,\n          'max_depth':18,\n          'min_child_weight': 8,\n          'bagging_fraction':0.75,\n          'feature_fraction':0.75,\n          'lambda_l1':0,\n          'lambda_l2':0,\n          'num_leaves':31, \n         'verbosity' : -1} \n\nprint(\"Training Model\")\nm_lgb=lgb.train(params=Dparam,train_set=dtrain,num_boost_round=40000, early_stopping_rounds=500, valid_sets=[dtrain,dval], verbose_eval=50,valid_names=['train','valid'])\n#하고서 0.03, 15000라운드 해보기\n\n#Plot\nfig, ax = plt.subplots(figsize=(10, 14))\nlgb.plot_importance(m_lgb, max_num_features=50, ax=ax)\nplt.title(\"Light GBM Feature Importance\")\n\n\nPred=m_lgb.predict(dtest)\nPred[Pred<0]=0\n#이것도 하지 말아보기 (0보내는거)\nPred[Pred>1]=1\n\n\nprint(\"Output Model\")\nLGB_text=pd.read_csv(\"../input/avito-demand-prediction/sample_submission.csv\")\nLGB_text['deal_probability']=Pred\nLGB_text.to_csv(\"no_Actdate.csv\", index=False)","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"name":"python","version":"3.6.5","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat":4,"nbformat_minor":1}