优达机器学习:特征缩放

练习:最小值/最大值重缩放器编码

import numpy as np

def featureScaling(arr):
    arr = np.array(arr)
    max = np.max(arr)
    min = np.min(arr)
    res = []
    for item in arr:
        data = float(item-min)/(max-min)
        res.append(data)
    return res

# tests of your feature scaler--line below is input data
data = [115, 140, 175]
print featureScaling(data)

练习:需要重缩放的算法练习

  • 使用 RBF 核函数的 SVN
  • K-均值聚类

练习:缩放类型

  • MinMaxScaler

练习:计算重缩放特征

  • salary : 0.17962406631
  • stock : 0.0290205889347
import numpy as np
stocklist = []
for item in data_dict:
    stock = data_dict[item]['exercised_stock_options']
    if stock != 'NaN':
        stocklist.append( stock )

stocklist = np.array(stocklist)

print (1000000.0 - np.min(stocklist)) / (np.max(stocklist) - np.min(stocklist))

salarylist = []
for item in data_dict:
    salary = data_dict[item]['salary']
    if salary != 'NaN':
        salarylist.append( salary )

print (200000.0 - np.min(salarylist)) / (np.max(salarylist) - np.min(salarylist))

很奇怪的是,使用sklearn里面的MinMaxScaler的缩放率计算有误差,代码如下

import numpy as np
stocklist = []
for item in data_dict:
    stock = data_dict[item]['exercised_stock_options']
    if stock != 'NaN':
        stocklist.append( stock )

stocklist = np.array(stocklist)

from sklearn import preprocessing
min_max_scaler = preprocessing.MinMaxScaler()
min_max_scaler.fit_transform(stocklist)
print 1000000 * min_max_scaler.scale_

salarylist = []
for item in data_dict:
    salary = data_dict[item]['salary']
    if salary != 'NaN':
        salarylist.append( salary )

salarylist = np.array(salarylist)

min_max_scaler.fit_transform(salarylist)
print 200000 * min_max_scaler.scale_
print np.max(salarylist)
print np.min(salarylist)

练习:何时部署特征缩放

  • 重要
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值