python 神經(jīng)網(wǎng)絡(luò)

import pandas;

from pandas import read_csv;

data = read_csv(

'D:\\PDM\\4.5\\data.csv',

encoding='utf8'

)

data = data.dropna()

dummyColumns = [

'Gender', 'Home Ownership', 'Internet Connection', 'Marital Status',

'Movie Selector', 'Prerec Format', 'TV Signal']

for column in dummyColumns:

data[column]=data[column].astype('category')

dummiesData = pandas.get_dummies(

data,

columns=dummyColumns,

prefix=dummyColumns,

prefix_sep=" ",

drop_first=True

)

"""

博士后? ? Post-Doc

博士? ? ? Doctorate

碩士? ? ? Master's Degree

學(xué)士? ? ? Bachelor's Degree

副學(xué)士? ? Associate's Degree

專業(yè)院校? Some College

職業(yè)學(xué)校? Trade School

高中? ? ? High School

小學(xué)? ? ? Grade School

"""

educationLevelDict = {

'Post-Doc': 9,

'Doctorate': 8,

'Master\'s Degree': 7,

'Bachelor\'s Degree': 6,

'Associate\'s Degree': 5,

'Some College': 4,

'Trade School': 3,

'High School': 2,

'Grade School': 1

}

dummiesData['Education Level Map'] = dummiesData['Education Level'].map(educationLevelDict)

freqMap = {

'Never': 0,

'Rarely': 1,

'Monthly': 2,

'Weekly': 3,

'Daily': 4

}

dummiesData['PPV Freq Map'] = dummiesData['PPV Freq'].map(freqMap)

dummiesData['Theater Freq Map'] = dummiesData['Theater Freq'].map(freqMap)

dummiesData['TV Movie Freq Map'] = dummiesData['TV Movie Freq'].map(freqMap)

dummiesData['Prerec Buying Freq Map'] = dummiesData['Prerec Buying Freq'].map(freqMap)

dummiesData['Prerec Renting Freq Map'] = dummiesData['Prerec Renting Freq'].map(freqMap)

dummiesData['Prerec Viewing Freq Map'] = dummiesData['Prerec Viewing Freq'].map(freqMap)

dummiesSelect = [

'Age', 'Num Bathrooms', 'Num Bedrooms', 'Num Cars', 'Num Children', 'Num TVs',

'Education Level Map', 'PPV Freq Map', 'Theater Freq Map', 'TV Movie Freq Map',

'Prerec Buying Freq Map', 'Prerec Renting Freq Map', 'Prerec Viewing Freq Map',

'Gender Male',

'Internet Connection DSL', 'Internet Connection Dial-Up',

'Internet Connection IDSN', 'Internet Connection No Internet Connection',

'Internet Connection Other',

'Marital Status Married', 'Marital Status Never Married',

'Marital Status Other', 'Marital Status Separated',

'Movie Selector Me', 'Movie Selector Other', 'Movie Selector Spouse/Partner',

'Prerec Format DVD', 'Prerec Format Laserdisk', 'Prerec Format Other',

'Prerec Format VHS', 'Prerec Format Video CD',

'TV Signal Analog antennae', 'TV Signal Cable',

'TV Signal Digital Satellite', 'TV Signal Don\'t watch TV'

]

inputData = dummiesData[dummiesSelect]

outputData = dummiesData[['Home Ownership Rent']]

from sklearn.neural_network import MLPClassifier

for l in range(1, 11):

ANNModel = MLPClassifier(

activation='relu',

hidden_layer_sizes=l

)

ANNModel.fit(inputData, outputData)

score = ANNModel.score(inputData, outputData)

print(str(l) + ", " + str(score))

newData = read_csv(

'D:\\PDM\\4.4\\newData.csv',

encoding='utf8'

)

for column in dummyColumns:

newData[column] = newData[column].astype(

'category',

categories=data[column].cat.categories

)

newData = newData.dropna()

newData['Education Level Map'] = newData['Education Level'].map(educationLevelDict)

newData['PPV Freq Map'] = newData['PPV Freq'].map(freqMap)

newData['Theater Freq Map'] = newData['Theater Freq'].map(freqMap)

newData['TV Movie Freq Map'] = newData['TV Movie Freq'].map(freqMap)

newData['Prerec Buying Freq Map'] = newData['Prerec Buying Freq'].map(freqMap)

newData['Prerec Renting Freq Map'] = newData['Prerec Renting Freq'].map(freqMap)

newData['Prerec Viewing Freq Map'] = newData['Prerec Viewing Freq'].map(freqMap)

dummiesNewData = pandas.get_dummies(

newData,

columns=dummyColumns,

prefix=dummyColumns,

prefix_sep=" ",

drop_first=True

)

inputNewData = dummiesNewData[dummiesSelect]

ANNModel.predict(inputData)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容