建模雜談系列14 建模流程1 從資料開始

2021-10-08 21:13:10 字數 1870 閱讀 1632

探索建模的流程和處理步驟。

從資料/檔案的角度看,在整個建模過程中會發生什麼:

2 檔案和變數的命名

3 持久化(檔案儲存、資料庫)

4 引數的產生和管理

5 過程檔案的產生和管理

6 模型的產生和管理

7 報告檔案

從資料表開始

在乙個專案空間下,表的原始字段應該是固定含義的。

例如name如果表示名字,那麼這個專案下所有的name(哪怕分成多批次刪上傳的原始字段)都應該是乙個意思。

而且多次上傳的字段最好也是一致的(否則如果某個字段某次才加入,那麼從整體看缺失率是比較高,那麼就不一定可用了)

假設這個專案是乙個物件:class project, 下面把對應的部分以偽碼的形式加進去。

從資料庫,資料表,表頭和資料這樣幾個概念模擬:我們正在做的乙個整體專案(資料庫級),我們可以取名為project1;我們現在處理的部分(資料表級),我們取名為table1。剩下的就是表頭和資料了,問題也從這裡開始。

通常的表頭是五花八門的,這對於書寫和演算法的處理是乙個麻煩。所以拿到資料表之後,第一件事就是把表頭的所有字段對映掉,用x1~xn來替代所有的列。

當然這個字典(colname_dict)以及反字典(inv_colname_dict)要放著隨時備查,中間過程和輸入結果都用得到。

結果:(反)列名字典

self.colname_dict = {}

self.inv_colname_dict = {}

一旦我們知道了乙個表有n列,下乙個目標就是明白這些列是什麼型別的。這步不僅僅是知道變數是字元還是數值,是否有缺失,我們要盡量識別更複雜的型別。或許先把變數都轉成字元,再使用正則判斷是乙個比較好的方法,以下先較粗糙的識別幾類(當然,可能會有錯)。

1.1.2.1 id(主鍵類)

目前先定下強規則是,不重不漏的變數(且不可被數值化)

self.id_cols =

1.1.2.2 離散類

離散類可進一步分為有序離散和無序離散。這兩者對於後續的處理是有差別的。

目前定下的強規則是,如果是數值型的(且屬性值個數<20),那麼認為是有序離散;如果是文字型的,帶數字的認為是有序的,否則是無序的。

1.1.2.3 連續型

如果變數都進行離散化,連續型則是屬於可變的(切分方式可以改變)有序離散型。

目前定下的強規則是,如果可數值化並且屬性值個數》=20

1.1.2.4 日期型

日期型是一種特殊的型別,既有離散變數的特徵,也有連續變數的特徵。事實上在應用時也非常重要。如果標記為日期型,那麼就不會參與計算(而是用於分類、篩選)

假設拿到了一匹資料,大約1900條的樣子,22個變數,從這裡開始。

class

xman()

:def

__init__

(self, prjname, tbname, df)

: self.prjname = prjname

self.tbname = tbname

self.rows, self.cols = df.shape

# 建立可被dict的屬性 dict(instance)

# 對應字典鍵值

defkeys

(self)

:return

['prjname'

,'tbname'

,'rows'

,'cols'

]# 對應字典取值 dict['key']

def__getitem__

(self, item)

:return

getattr

(self, item)

未完待續 …

建模雜談系列2 建模過程(邏輯回歸)

以邏輯回歸為例,簡述一次建模過程的流程。0公式0 的梳理。對於一般的監督學習而言,目標是首先要確認的。在這步甚至可以保留多個可能的目標變數 但是在每次建模中只使用乙個 當變數的缺失比例較高時,可以考慮直接棄用變數。缺失的問題是比較麻煩的 可能是由於客戶不願意錄入 錄入了但是儲存失敗甚至是取數時的失誤...

建模雜談系列7 資料處理標準流程

資料處理尚未有統一的標準流程,這裡只是提出一種實現可能。無論是資料分析或者建模,首先是要累積一定的資料,不然沒有統計性。所以自然而然地,分析模式下我們習慣了進行批處理。而在開始應用的時候通常是單條過來的,並且要經過一系列變換才能使用。從原始資料 表資料 開始,處理流程如下 進行元資料分析,生成基礎資...

建模雜談系列22 AI Squad 續

接著建模雜談系列10 ai squad討論ai團隊的構建,本次討論的基礎假設是 人的服務不可靠 由於人生活在社會中,除了本身的生物週期 生老病死 之外,社會環境的變化也會極大的影響到人的態度,進而影響到服務和合作。例如,a原來是個特別積極的員工,後來發現薪資跟不上,就特別消極。這個時候站在資本家的角...