狠狠操夜夜甜|人妻在线中文字幕亚洲无码不卡av|一区二区欧美亚洲|日躁夜躁狠狠躁2001|亚洲,超碰,欧美|18AV成人电影|午夜成人免费在线|婷婷激情网深爱五月|色欲综合成人在线|在线美女搞黄大片

中企動力 > 頭條 > python項目學(xué)習(xí)

網(wǎng)站性能檢測評分

注:本網(wǎng)站頁面html檢測工具掃描網(wǎng)站中存在的基本問題,僅供參考。

python項目學(xué)習(xí)

2018年最火的5大Python開源項目,總有適合你的! 行業(yè)視頻課程

img

湯耗子

關(guān)注

前幾天看到一條新聞,說是高中生課程里面開設(shè)python課程了,這小孩子都來搶占市場了,這就是打了很多人的臉,特別是已經(jīng)畢業(yè)很多年或者正在學(xué)校的人,小孩子都作為標準的教材來學(xué)習(xí)了,作為過來人還有什么理由說學(xué)不好。讓自己做得多說的少最合適。

說到python現(xiàn)在處于風口期,相對來說入門也比較容易。在人工智能以及大數(shù)據(jù)分析上都具備很強的特性。

Python語言易學(xué)易學(xué),高效開發(fā)。Python語言開發(fā)的開源項目非常活躍。下面是五個最活躍的Python開源項目。

1)排名第一,當然是關(guān)于機器學(xué)習(xí)谷歌開源項目tensorflow,TensorFlow是一個對數(shù)值計算的數(shù)據(jù)流圖,對開源項目的統(tǒng)計,這個項目被宣布與一百萬星和叉,被廣泛應(yīng)用于機器學(xué)習(xí)和深度神經(jīng)網(wǎng)絡(luò)研究。

2)第二個地方是python的新燒瓶。燒瓶是一個小型的Python Web開發(fā)框架。它是基于WSGI工具箱和jinja2模板引擎,它可以配置和開發(fā)Python網(wǎng)站最靈活快速的。

3。)第三的地方是在Python Web方向的經(jīng)典Django,和Django Web框架,采用m-v-t設(shè)計模式。在Django,由于控制器接受用戶輸入部分由框架本身的處理,所以Django編程更側(cè)重于模型(模型)、模板(模板)和視圖(視圖)。小編推薦一個學(xué)Python的學(xué)習(xí)裙【五八八,零九零,九四二】,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學(xué)習(xí)!裙內(nèi)有很多干貨和技術(shù)分享使用Django,我們可以快速創(chuàng)建高質(zhì)量、易維護、數(shù)據(jù)庫驅(qū)動的Web服務(wù)程序,特別是與學(xué)生建立數(shù)據(jù)庫的操作不是很熟悉,寶。

4)是Python的成熟,功能齊全的排在功能測試框架pytest pytest測試框架第四,可以幫助你更好的編寫自動化測試程序,它可以適應(yīng)全功能測試,集成測試復(fù)雜,從簡單的單元測試,以及眾多的支持插件開發(fā)。

5)在數(shù)據(jù)收集工具Scrapy排名第五,Scrapy是一個優(yōu)秀的數(shù)據(jù)網(wǎng)絡(luò)爬蟲框架,用戶只需要定制幾個模塊的開發(fā)可以實現(xiàn)完美的網(wǎng)絡(luò)爬蟲容易,使用它來抓取網(wǎng)頁內(nèi)容的數(shù)據(jù)和各種圖像文件等非常方便;Scrapy還提供各種履帶式基礎(chǔ)的類型,如basespider和站點;Scrapy被廣泛應(yīng)用于數(shù)據(jù)挖掘、網(wǎng)絡(luò)監(jiān)控和自動測試等。

以上排名是基于代碼提交和叉活動的排名,只反映了開源代碼的流行,企業(yè)市場應(yīng)用不熱,注意差異,你必須根據(jù)自己的需要選擇適合你的項目的python開源框架和工具。

不管你是懷著什么目的,求職加薪,或者是興趣。首先你得準備吃苦的思想準備。學(xué)編程語言是枯燥的,得持之以恒。如果學(xué)python都是從入門到放棄,那么學(xué)其它東西會更難。

還需要有些自學(xué)能力,出現(xiàn)問題,自己嘗試解決。多加練習(xí),在練習(xí)和不斷挫折中理解和掌握,熟能生巧。

不要急躁,真正能為你所用的技能,不是一朝一夕速成的。真正能被你吸收的養(yǎng)分,不是別人嚼爛了給你。你自己體會到的知識,才會被你吸收,在大腦里停留許久。

10大Python開源項目推薦 行業(yè)視頻課程

img

Raymond

關(guān)注

▌Rank 1:Requests-HTML v0.9(7385 stars on Github,來自Kenneth Reitz)

該庫旨在盡可能簡單直觀地解析 HTML,僅支持 Python 3.6。

項目地址:https://github/kennethreitz/requests-html

▌Rank 2:PyTest v3.5(2453 stars on Github,來自Pytest-dev)

該項目是一個可擴展的 Python 框架,可以輕松編寫小型測試,支持更復(fù)雜的功能測試。

項目地址:https://github/pytest-dev/pytest

▌Rank 3:Lector(327 stars on Github,來自BasioMeusPuga)

基于 Qt 的電子書閱讀器

項目地址:https://github/BasioMeusPuga/Lector

▌Rank 4:Asciinema v2.0(5491 stars on Github,來自Asciinema)

Python 編寫的終端會話錄制器。

項目地址:https://github/asciinema/asciinema

▌Rank 5:Snips-nlu v0.13(1416 stars on Github,來自Snips)

Snips-nlu 是一個 Python 庫,可以解析用自然語言編寫的句子并提取結(jié)構(gòu)化信息。

項目地址:https://github/snipsco/snips-nlu

▌Rank 6:Black(1665 stars on Github,來自ukasz Langa)

Python 代碼格式化工具庫。

項目地址:https://github/ambv/black

▌Rank 7:Instagram-terminal-news-feed(690 stars on Github,來自Bill Cheng)

Instagram Terminal Feed

項目地址:https://github/billcccheng/instagram-terminal-news-feed

▌Rank 8:Makesite(481 stars on Github,來自Sunaina Pai)

適合 Python 工程師的簡單、輕量級靜態(tài)網(wǎng)站/博客生成器。

項目地址:https://github/sunainapai/makesite

▌Rank 9:Twitter-scraper(832 stars on Github,來自Kenneth Reitz)

Python 寫的 Twitter 爬蟲工具,無 API 流速限制,非常高效,可輕松獲取任何用戶的推文。

項目地址:https://github/kennethreitz/twitter-scraper

▌Rank 10:Fast-Pandas(667 stars on Github,來自M. Mansour)

Pandas 是為數(shù)據(jù)科學(xué)家和開發(fā)人員提供的最靈活、最強大的工具之一。開發(fā)者可通過幾種方式執(zhí)行特定的任務(wù)。Fast-Pandas 旨在針對這些情況下的不同可用方法進行基準測試。此外,在 numpy 和 pandas 中都有專門的功能部分。

項目地址:https://github/mm-mansour/Fast-Pandas

原文地址:https://medium.mybridge.co/python-top-10-open-source-of-the-month-v-apr-2018-9e91343756a

使用Python,創(chuàng)建你的第一個實用型入門機器學(xué)習(xí)項目(下) 推廣視頻課程

img

過潦

關(guān)注

注:本文分上、下兩部分,本章是教程的下半部分。

你可以通過下面的鏈接找到上半部分的教程內(nèi)容:

“使用Python,創(chuàng)建你的第一個實用型入門機器學(xué)習(xí)項目(上)”

https://toutiao/i6529328389931663875/

4. 可視化數(shù)據(jù)集

我們現(xiàn)在對數(shù)據(jù)有一個基本的想法,我們需要用一些可視化來擴展它。

我們要看看兩種類型的情節(jié):

使用單變量繪圖以更好地理解各個屬性

使用多變量繪圖以更好地理解各個屬性之間的關(guān)系

4.1 單變量情節(jié)

我們從一些單變量圖開始,即每個變量的圖。

鑒于輸入變量是數(shù)字,我們可以創(chuàng)建每個變量的箱-線圖。

# 箱-線圖

dataset.plot(kind='box', subplots=True, layout=(2,2), sharex=False, sharey=False)

plt.show()

這使我們對輸入屬性的分布有了更清晰的認識:

箱-線圖

我們還可以創(chuàng)建每個輸入變量的直方圖(即矩陣圖),以了解分布情況。

# 直方圖

dataset.hist()

plt.show()

看起來似乎兩個輸入變量有一個高斯分布,這點很有用,因為我們可以使用算法來驗證這種假設(shè)。

直方圖

4.2 多變量圖

現(xiàn)在我們可以看看變量之間的相互作用。

首先,我們來看看所有對屬性的散點圖, 這有助于發(fā)現(xiàn)輸入變量之間的結(jié)構(gòu)關(guān)系。

# 散點圖矩陣

scatter_matrix(dataset)

plt.show()

請注意一些屬性對的對角線分組,這表明高度相關(guān)性和可預(yù)測的關(guān)系。

散點圖矩陣

5 評估算法

現(xiàn)在是時候創(chuàng)建一些數(shù)據(jù)模型,并估計它們對未查看數(shù)據(jù)的準確性。

以下是我們將在此步驟中涵蓋的內(nèi)容:

分離出驗證數(shù)據(jù)集。

設(shè)置測試工具以使用10倍交叉驗證。

建立5種不同的模型來預(yù)測花朵測量的物種

選擇最好的模型。

5.1 創(chuàng)建一個驗證數(shù)據(jù)集

我們將使用統(tǒng)計方法來估計我們在看不見的數(shù)據(jù)上創(chuàng)建的模型的準確性, 我們還希望通過對實際看不見的數(shù)據(jù)進行評估,更準確地估計未見數(shù)據(jù)的最佳模型的準確性,我們需要知道我們創(chuàng)建的模型是好的。

也就是說,我們將阻止一些算法無法看到的數(shù)據(jù),我們將使用這些數(shù)據(jù)獲得第二個獨立的想法,即最佳模型實際可能有多準確。我們將加載的數(shù)據(jù)集分成兩部分,其中80%用于訓(xùn)練我們的模型,20%用作驗證數(shù)據(jù)集。

# 拆分驗證數(shù)據(jù)集

array=dataset.values

X=array[:,0:4]

Y=array[:,4]

validation_size=0.20

seed=7

X_train,X_validation,Y_train,Y_validation=model_selection.train_test_split(X,Y,test_size=validation_size,random_state=seed)

您現(xiàn)在已經(jīng)在X_train和Y_train中準備了用于準備模型的訓(xùn)練數(shù)據(jù)以及稍后可以使用的X_validation和Y_validation集。

5.2 測試

我們將使用10倍交叉驗證來估計準確性。

這將把我們的數(shù)據(jù)集分成10個部分,在9上進行訓(xùn)練并在1上進行測試,并對列車測試分組的所有組合進行重復(fù)。

#測試選項和評估指標

seed=7

scoring='accuracy'

我們正在使用“準確度”度量來評估模型。 這是正確預(yù)測的實例數(shù)量除以數(shù)據(jù)集中的實例總數(shù)乘以100得到的百分比(例如95%準確)的比率。 當我們運行構(gòu)建并接下來評估每個模型時,我們將使用評分變量。

5.3 構(gòu)建模型

我們不知道哪種算法在這個問題上很好,或者使用哪種配置。 我們從這些圖中得到一些想法,即某些類在某些維度上可以部分線性分離,所以我們期望通常會有很好的結(jié)果。

我們來評估6種不同的算法:

Logistic回歸(LR)

線性判別分析(LDA)

K-最近鄰居(KNN)。

分類和回歸樹(CART)。

高斯樸素貝葉斯(NB)。

支持向量機(SVM)。

這是簡單線性(LR和LDA),非線性(KNN,CART,NB和SVM)算法的良好混合。 我們在每次運行之前重置隨機數(shù)種子,以確保使用完全相同的數(shù)據(jù)拆分執(zhí)行每個算法的評估。 它確保結(jié)果可以直接比較。

讓我們來構(gòu)建和評估我們的五個模型:

# Spot Check Algorithms

models = []

models.append(('LR', LogisticRegression()))

models.append(('LDA', LinearDiscriminantAnalysis()))

models.append(('KNN', KNeighborsClassifier()))

models.append(('CART', DecisionTreeClassifier()))

models.append(('NB', GaussianNB()))

models.append(('SVM', SVC()))

# evaluate each model in turn

results = []

names = []

for name, model in models:

kfold = model_selection.KFold(n_splits=10, random_state=seed)

cv_results = model_selection.cross_val_score(model, X_train, Y_train, cv=kfold, scoring=scoring)

results.append(cv_results)

names.append(name)

msg = "%s: %f (%f)" % (name, cv_results.mean(), cv_results.std())

print(msg)

5.4 選擇最佳模型

我們現(xiàn)在有6個模型和準確度估計值。 我們需要將模型相互比較并選擇最準確的模型。

運行上面的例子,我們得到以下原始結(jié)果:

LR: 0.966667 (0.040825)

LDA: 0.975000 (0.038188)

KNN: 0.983333 (0.033333)

CART: 0.975000 (0.038188)

NB: 0.975000 (0.053359)

SVM: 0.991667 (0.025000)

我們可以看到,它看起來像KNN具有最大的估計準確性。

我們還可以創(chuàng)建模型評估結(jié)果的圖表,并比較每個模型的差異和平均準確度。 每種算法都有一組準確性度量,因為每種算法都進行了10次評估(10次交叉驗證)。

# 算法比較

fig = plt.figure()

fig.suptitle('Algorithm Comparison')

ax = fig.add_subplot(111)

plt.boxplot(results)

ax.set_xticklabels(names)

plt.show()

您可以看到盒子和線須塊在范圍的頂部被壓扁,許多樣品達到100%的準確度。

算法比較

6 預(yù)測

KNN算法是我們測試的最精確的模型。 現(xiàn)在我們想要了解我們驗證集上模型的準確性。

這將使我們對最佳模型的準確性進行獨立的最終檢查。 為了防止在訓(xùn)練過程中發(fā)生故障(如過度訓(xùn)練集或數(shù)據(jù)泄漏),保留驗證集非常有用。 兩者都會導(dǎo)致過于樂觀的結(jié)果。

我們可以直接在驗證集上運行KNN模型,并將結(jié)果匯總為最終準確度分數(shù),混淆矩陣和分類報告。

# 在驗證數(shù)據(jù)集上做預(yù)測

knn = KNeighborsClassifier()

knn.fit(X_train, Y_train)

predictions = knn.predict(X_validation)

print(accuracy_score(Y_validation, predictions))

print(confusion_matrix(Y_validation, predictions))

print(classification_report(Y_validation, predictions))

我們可以看到準確度為0.9或90%。 混淆矩陣提供了三個錯誤的指示。 最后,分類報告按精度,召回率,f1分數(shù)和支持顯示出色的結(jié)果(授予驗證數(shù)據(jù)集很?。┨峁┟總€類的分類。

6 你可以使用Python進行機器學(xué)習(xí)

通過上面的教程,這將需要109到20分鐘,最多!你就可以對機器學(xué)習(xí)有個比較全面的了解!

你不需要了解一切。 (至少不是現(xiàn)在)你的目標是貫穿教程的端到端并得到結(jié)果。你不需要了解第一遍的所有內(nèi)容。當你走的時候列出你的問題。大量使用Python中的幫助(“FunctionName”)幫助語法來了解您正在使用的所有功能。

你不需要知道算法是如何工作的。了解限制和如何配置機器學(xué)習(xí)算法是很重要的。但是關(guān)于算法的學(xué)習(xí)可能會晚一些。您需要在很長一段時間內(nèi)慢慢建立這種算法知識。今天,首先要讓平臺變得舒適。

你不需要成為一名Python程序員。如果你是新手,Python語言的語法可以是直觀的。就像其他語言一樣,關(guān)注函數(shù)調(diào)用(例如function())和賦值(例如a =“b”)。這會讓你獲得最大的成就。你是一名開發(fā)人員,你知道如何快速掌握一門語言的基礎(chǔ)知識。剛開始,稍后再深入細節(jié)。

你不需要成為機器學(xué)習(xí)專家。您可以稍后了解各種算法的優(yōu)點和局限性,并且您可以稍后閱讀大量文章,以了解機器學(xué)習(xí)項目的步驟以及使用交叉驗證評估準確性的重要性。

機器學(xué)習(xí)項目中的其他步驟如何?我們沒有涵蓋機器學(xué)習(xí)項目中的所有步驟,因為這是您的第一個項目,我們需要關(guān)注關(guān)鍵步驟。即,加載數(shù)據(jù),查看數(shù)據(jù),評估一些算法并做出一些預(yù)測。

結(jié)束語

在這篇文章中,你逐步發(fā)現(xiàn)了如何用Python完成你的第一個機器學(xué)習(xí)項目。

您發(fā)現(xiàn)從加載數(shù)據(jù)到做出預(yù)測完成一個小型的端到端項目是熟悉新平臺的最佳途徑。

下一步

你是否練習(xí)了本教程所有步驟?

列出你遇到的問題,發(fā)布在下面的評論中,我們可以一起探討。

關(guān)注我的頭條,分享知識!

img

在線咨詢

建站在線咨詢

img

微信咨詢

掃一掃添加
動力姐姐微信

img
img

TOP