初識機器學習(一) Kaggle下的測試學習

2021-09-12 19:15:02 字數 2230 閱讀 5379

新手上路,自然是橫衝直撞。雖然英語不咋樣,還是選擇在kaggle上面跟隨學習。在對python有一些基礎的了解後,便開始直接從比賽中磨練自己。點開kaggle裡learn提供的一些教程,跟隨教程邁出第一步。

教程中提供了乙個關於墨爾本房價**的事例來輔助學習。

假設你家裡要買房,目前某地正在建一些房子,手頭也就那麼多鈔票,總要對房價有乙個大概的估計。

而你手頭只有一些這座城市裡往年的一些房子資訊(比如路段、房間數、房子大小、幾個臥室、幾個廁所…)這樣子問題就來了,究竟該如何根據這些已知的資料進行有效的**呢?這當然不能用簡簡單單的「我估摸著」這種話來敷衍,於是會了幾行**的你就找到了機器學習作為工具。

開始高大上的工作之前,我們得彙總這些資訊,將它們匯集成乙個**,輸出為csv檔案。

這裡我們就需要用到pandas裡的read_csv方法了

import pandas as pd

data =

'./melb_data.csv'

home_data = pd.read_csv(data)

home_data.columns#顯示所有的列

這裡我的引入方法是由於放在當前工作目錄下,所以直接使用相對位址,一般來說匯入應用../input/這裡常用的是pandas下的pd.head()pd.describe()方法

pd.head()預設顯示資料的前五行,當然在括號裡輸入其他數字就可以顯示頭幾行了。與之對應,有pd.tail()顯示資料尾部幾行,預設五行

pd.describe()則是顯示資料和、平均值、標準差、最小值、25%、50%、75%、最大值的統計資料,是資料分析和缺失值處理時不錯的工具

y = home_data.price

use_columns =

['rooms'

,'bedroom2'

,'bathroom'

,'landsize'

]#採用這幾列作為資料分析需要的列

x = home_data[use_columns]

#將需要的資料列名為x

x.describe(

)#統計選取列的資訊

剛剛入門,先不弄資料探勘和缺失值處理的東西。

上面**中我們已經定義了x和y,就像函式裡一樣,x是輸入,y是輸出,也就是我們現在需要的的**值。

在這裡我們採用比較入門的決策樹模型,這些機器學習模型都需要從乙個庫sklearn裡引入。(這裡給出官網)

from sklearn.tree import decisiontreeregressor

model_1 = decisiontreeregressor(random_state =1)

model_1.fit(x,y)

#訓練模型

經過這一步的訓練,我們建立的模型已經有它基本的智慧型了,接下來就可以進行結果的**了。

predictions = model_1.predict(x.head())

print

(predictions)

為了看看我們花了這麼久搞定的第乙個模型到底幾斤幾兩,我們把正確的值輸出對比一下

#輸出正確的資料對比一下

然而,現實總是這樣,當你希望的小火苗剛剛公升騰,他就突然一盆涼水…

為什麼會偏差這麼大呢?顯然,回想一下我們做了些什麼,首先x就只選了部分資料,然後呢,鐵著頭就把資料往樹裡扔,沒有做任何處理。那人家模型當然也不幹了,好啊,扔一堆廢品進來,那我也吐一堆廢品出去好了。這就涉及到資料分析和處理的知識了,這也是機器學習問題裡比較核心的問題,如何輸入優秀的資料讓自己的模型更加靈敏。

機器學習 初識機器學習

1.什麼是機器學習?對於機器學習到現在都還沒有統一的定義,但是,通過乙個例子和較權威的定義來理解機器學習,最後附上我個人對機器學習的理解 2.監督學習 1 監督學習基本思想 我們資料集中的每個樣本都有相應的 正確答案 即每個樣本都是真實值,再根據這些樣本作出 舉乙個房價預售的例子來說明 eg 下面圖...

初識機器學習

學機器學習已經大半年了,現在才發現自己是初識機器學習。一開始學機器學習,真的以為它是個機器,學會了就可以拿來用,或是拿來改進。現在才明白,學機器學習的方法不僅要弄明白理論基礎和演算法思路,還要明白演算法的脈絡,它的每一步都是為什麼這麼做,掌握演算法背後的真正的思想,才能融會貫通,針對不同的問題提出不...

初識機器學習

機器學習 資料 資料 做為輸入 輸出 找到最合適的演算法公式 機器學習的分類 有批量 batch 數量的情況下可應用 監督式學習 知道輸入與輸出 半監督式學習是 知道輸入與部分輸出 無監督式學習 不知道輸出 對應著聚類 clustering 對於機器學習的輸出 1.有明確的分類 是 否 並且是用一條...