機器學習是從資料中自動分析獲得規律(模型),並利用規律對未知資料進行**
資料處理:首先將所有資料放在一起,然後將其順序打亂。由於順序不是判斷酒水的依據,我們並不期望順序影響到模型學習到的內容。換言之,我們判斷一種酒是紅的還是啤的,並不需要知道前一種或是接下來有什麼酒出現。
這時,可以著手繪出視覺化的資料分析結果,這些分析圖將有助於你發現不同變數之間的潛在相關性,並且能幫你發現是否有資料失衡。比如,假若我們的資料中大量結果都表現出啤酒的特徵,那麼模型大多數時候都遇到了啤酒,所以它的推測也將傾向於啤酒。但是真實世界中,模型需要判斷的啤酒和紅酒的量很有可能是相同的,假若它按照訓練的結果得出的大部分都是啤酒,那麼它有不少時候都得出了錯誤的結論。
我們還需要將資料分成兩部分。第一部分用於訓練模型,它們將佔全部資料中的絕大多數。另一部分則是用於評估模型的判斷能力的。顯然我們不希望用於訓練的資料被拿來檢測模型,因為這些資料很可能被模型給直接記住了,答案脫口而出。這就好像你在考試裡總不會出現平時的作業原題那樣。
有時我們得到的資料需要一些其他形式的調整和操作,比如去重、規範化和糾錯等等,這些都需要在資料準備的過程當中完成。 而我們的這個問答系統訓練用的資料並不需要進一步操作,所以現在進入下一環節。
特徵工程是將原始資料轉換為更好地代表**模型的潛在問題的特徵的過程,從而提高了對未知資料的模型準確性 直接影響模型的**結果
建立乙個基於python3的虛擬環境(可以在你自己已有的虛擬環境中):
mkvirtualenv –p /usr/bin/python3.5 ml3
在ubuntu的虛擬環境當中執行以下命令
pip3 install scikit-learn
然後通過匯入命令檢視是否可以使用:
import sklearn
特徵抽取針對非連續型資料
特徵抽取對文字等進行特徵值化
注:特徵值化是為了計算機更好的去理解資料
作用:對字典資料進行特徵值化
類:sklearn.feature_extraction.dictvectorizer
dictvectorizer.fit_transform(x)
x:字典或者包含字典的迭代器
返回值:返回sparse矩陣(稀疏矩陣)
dictvectorizer.inverse_transform(x)
x:array陣列或者sparse矩陣
返回值:轉換之前資料格式
dictvectorizer.get_feature_names()
返回類別名稱
dictvectorizer.transform(x) 和fit方法
按照原先的標準轉換
文字特徵抽取
作用:對文字資料進行特徵值化
類:sklearn.feature_extraction.text.countvectorizer
countvectorizer(max_df=1.0,min_df=1,…)
返回詞頻矩陣
countvectorizer.fit_transform(x,y)
x:文字或者包含文字字串的可迭代物件
返回值:返回sparse矩陣
countvectorizer.inverse_transform(x)
x:array陣列或者sparse矩陣
返回值:轉換之前資料格式
countvectorizer.get_feature_names()
返回值:單詞列表
準備句子,利用jieba.cut進行分詞
例項化countvectorizer
將分詞結果變成字串當作fit_transform的輸入值
tf-idf作用:用以評估一字詞對於乙個檔案集或乙個語料庫中的其中乙份檔案的重要程度。
通過特定的統計方法(數學方法)將資料轉換成演算法要求的資料
機器學習和人工智慧
機械人和人工智慧這個領域確實已進入了瓶頸階段,因為現在的存在的各種人工智慧和機器裝置,都是人工程式設計控制的,再精密的動作都是在按照人工方式模擬下進行的,因此已經進入誤區。試想下 我們生下來就被遺傳了1 1 2的計算功能嗎?一生下來就能有意識的抬起手臂嗎?而目前再簡單的人工智慧都可以完成,但這僅僅侷...
人工智慧與機器學習
現如今,人工智慧與機器學習受到了各行各業的廣泛關注,大眾對其態度不一。但是人工智慧與機器學習對不同的人來說其代表的東西並不相同。通常人工智慧與機器學習會引起人們的恐懼與不確定性,因此一些專家對這兩個術語相關的風險表示擔憂。事實上,人工智慧與機器學習已經成為了我們日常生活中不可分割的一部分,即使在有些...
人工智慧之機器學習
系統環境 win10,python3.7 pip install jupyter出現successfully installed jupyter 等表示安裝好啦 接下來執行一下吧 在命令提示符中輸入jupyter notebook,回車就可以了 這時就可以用jupyter notebook進行 編輯...