基于pytorch的logistic回归二元分类(使用UCI成年人收入数据集)

这篇博客介绍了如何使用PyTorch进行Logistic回归二元分类,具体应用在UCI成年人收入数据集上。首先,博主展示了数据预处理的步骤,包括将非数值字符串转换为数值类型。接着,详细描述了数据的归一化处理和随机打乱顺序,以及训练集和测试集的划分。最后,博主搭建了一个简单的线性网络模型,并分享了训练过程及达到0.82准确率的结果。源代码可在提供的GitHub链接中找到。
摘要由CSDN通过智能技术生成

学了几天深度学习,于是做了一个小demo来实践了一下,基于UCI的收入数据集进行训练,输入个人的信息来预测其收入是否>50K美金。数据格式如下:
Example:
input:25, Private, 226802, 11th, 7, Never-married, Machine-op-inspct, Own-child, Black, Male, 0, 0, 40, United-States
output:<=50K.

数据预处理

由于数据中含有字符串,不方便训练,需要先对数据进行预处理转换成数值类型,首先遍历每一个非int型的列,将每个字符串加入一个set,之后将所有的字符串对应上不同数值,放入一个dict。
然后将data中所有的字符串换成对应的数值,处理程序如下:

data = pd.read_csv('../data/adult.data', header=None)

row = data[0:1]
d = {
   }
for index in row:
    temp = row[index]
    if temp.dtype != int:
        keys = list(set(data[index]))
        values = range(len(keys))
        d.update(dict(zip(keys, values)))
        # print(dict(zip(keys, values)))
        # for index_col in data[index].keys():
        #     data.loc[index_col, index] = d[data[index][index_col]]

data = data.applymap(lambda x: d[x] if type(x) != int else x)
data.to_csv('../data/PreProcess_adult.data', header=None, index=None)
d.update(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值