目測是autonorm.py中l(wèi)in 17 normdataset=zeros(shape(dataset)) 這一句 shape(dataset)返回的是元組,但是zeros( args )需要的是整形參數(shù),做個類型轉(zhuǎn)換就ok了
隆子網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、自適應網(wǎng)站建設等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)從2013年創(chuàng)立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選創(chuàng)新互聯(lián)。
數(shù)據(jù)歸一化方法有兩種形式,一種是把數(shù)變?yōu)椋?,1)之間的小數(shù),一種是把有量綱表達式變?yōu)闊o量綱表達式。1、把數(shù)變?yōu)椋?,1)之間的小數(shù)主要是為了數(shù)據(jù)處理方便提出來的,把數(shù)據(jù)映射到0~1范圍之內(nèi)處理,更加便捷快速,應該歸到數(shù)字信號處理范疇之內(nèi)。2、是把有量綱表達式變?yōu)闊o量綱表達式歸一化是一種簡化計算的方式,即將有量綱的表達式,經(jīng)過變換,化為無量綱的表達式,成為純量。
1)線性歸一化
這種歸一化比較適用在數(shù)值比較集中的情況,缺陷就是如果max和min不穩(wěn)定,很容易使得歸一化結果不穩(wěn)定,使得后續(xù)的效果不穩(wěn)定,實際使用中可以用經(jīng)驗常量來代替max和min。
2)標準差標準化
經(jīng)過處理的數(shù)據(jù)符合標準正態(tài)分布,即均值為0,標準差為1。
3)非線性歸一化
經(jīng)常用在數(shù)據(jù)分化較大的場景,有些數(shù)值大,有些很小。通過一些數(shù)學函數(shù),將原始值進行映射。該方法包括log、指數(shù)、反正切等。需要根據(jù)數(shù)據(jù)分布的情況,決定非線性函數(shù)的曲線。
log函數(shù):x = lg(x)/lg(max)
反正切函數(shù):x = atan(x)*2/pi
Python實現(xiàn)
線性歸一化
定義數(shù)組:x = numpy.array(x)
獲取二維數(shù)組列方向的最大值:x.max(axis = 0)
獲取二維數(shù)組列方向的最小值:x.min(axis = 0)
對二維數(shù)組進行線性歸一化:
def max_min_normalization(data_value, data_col_max_values, data_col_min_values):
""" Data normalization using max value and min value
Args:
data_value: The data to be normalized
data_col_max_values: The maximum value of data's columns
data_col_min_values: The minimum value of data's columns
"""
data_shape = data_value.shape
data_rows = data_shape[0]
data_cols = data_shape[1]
for i in xrange(0, data_rows, 1):
for j in xrange(0, data_cols, 1):
data_value[i][j] = \
(data_value[i][j] - data_col_min_values[j]) / \
(data_col_max_values[j] - data_col_min_values[j])
標準差歸一化
定義數(shù)組:x = numpy.array(x)
獲取二維數(shù)組列方向的均值:x.mean(axis = 0)
獲取二維數(shù)組列方向的標準差:x.std(axis = 0)
對二維數(shù)組進行標準差歸一化:
def standard_deviation_normalization(data_value, data_col_means,
data_col_standard_deviation):
""" Data normalization using standard deviation
Args:
data_value: The data to be normalized
data_col_means: The means of data's columns
data_col_standard_deviation: The variance of data's columns
"""
data_shape = data_value.shape
data_rows = data_shape[0]
data_cols = data_shape[1]
for i in xrange(0, data_rows, 1):
for j in xrange(0, data_cols, 1):
data_value[i][j] = \
(data_value[i][j] - data_col_means[j]) / \
data_col_standard_deviation[j]
非線性歸一化(以lg為例)
定義數(shù)組:x = numpy.array(x)
獲取二維數(shù)組列方向的最大值:x.max(axis=0)
獲取二維數(shù)組每個元素的lg值:numpy.log10(x)
獲取二維數(shù)組列方向的最大值的lg值:numpy.log10(x.max(axis=0))
對二維數(shù)組使用lg進行非線性歸一化:
def nonlinearity_normalization_lg(data_value_after_lg,
data_col_max_values_after_lg):
""" Data normalization using lg
Args:
data_value_after_lg: The data to be normalized
data_col_max_values_after_lg: The maximum value of data's columns
"""
data_shape = data_value_after_lg.shape
data_rows = data_shape[0]
data_cols = data_shape[1]
for i in xrange(0, data_rows, 1):
for j in xrange(0, data_cols, 1):
data_value_after_lg[i][j] = \
data_value_after_lg[i][j] / data_col_max_values_after_lg[j]
本文題目:python反歸一化函數(shù),matlab反歸一化函數(shù)
瀏覽地址:http://jinyejixie.com/article8/dssdeop.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供自適應網(wǎng)站、微信公眾號、品牌網(wǎng)站建設、小程序開發(fā)、定制網(wǎng)站、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)