Keras多层感知机预测泰坦尼克号旅客生存概率

import urllib.request
import os
import numpy as np
import pandas as pd
from sklearn import preprocessing
from keras.models import Sequential
from keras.layers import Dense, Dropout

#下载数据集
url="http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataSets/titanic3.xls"
filepath="data/titanic3.xls"
if not os.path.isfile(filepath):
    result=urllib.request.urlretrieve(url,filepath)
    print('downloaded:',result)

#导入数据
all_df = pd.read_excel(filepath)
#将有关联的数据导入
cols = ['survived','name','pclass','sex','age','sibsp','parch','fare','embarked']
all_df=all_df[cols]

#分训练集和测试集
msk = np.random.rand(len(all_df))<0.8
train_df = all_df[msk]
test_df = all_df[~msk]

print('total:',len(all_df),
     'train:',len(train_df),
     'test:',len(test_df))

#函数:数据处理
def PreprocessData(raw_df):
    #去掉name字段
    df = raw
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,您的问题是如何不使用Keras实现泰坦尼克号旅客生存概率预测。下面我将给出一个使用Python和Scikit-learn库的简单示例,具体实现如下: 首先,我们需要加载泰坦尼克号数据集,可以使用Scikit-learn库提供的load_breast_cancer()函数进行加载。然后,我们可以对数据进行处理,包括数据清洗、特征工程等。具体来说,我们可以对缺失数据进行填充,对分类变量进行独热编码等。 接着,我们可以使用Scikit-learn库提供的模型训练函数,如逻辑回归、决策树等,对数据进行训练。在训练过程中,我们可以使用交叉验证等方法对模型进行评估和调优。 最后,我们可以使用训练好的模型对新的数据进行预测,以得到旅客生存概率。 下面是一个简单的示例代码: ```python from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split from sklearn.preprocessing import OneHotEncoder from sklearn.linear_model import LogisticRegression # 加载数据集 data = load_breast_cancer() # 数据预处理 X = data.data y = data.target X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) enc = OneHotEncoder() X_train = enc.fit_transform(X_train) X_test = enc.transform(X_test) # 模型训练 model = LogisticRegression() model.fit(X_train, y_train) # 模型评估 score = model.score(X_test, y_test) print("Accuracy:", score) # 预测新数据 new_data = [[14.0, 12.0, 5.0, 3.0, 2.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0]] new_data = enc.transform(new_data) pred = model.predict_proba(new_data) print("Survival probability:", pred[0][1]) ``` 在上面的代码中,我们使用逻辑回归模型对数据进行训练和预测。在预测新数据时,我们使用predict_proba()函数来得到旅客生存概率
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值