


Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Apr 15, 2022 pm 06:24 PMArtikel ini membawakan anda pengetahuan yang berkaitan tentang python terutamanya ringkasan pembelajaran mesin dan perpustakaan pembelajaran mendalam. Mari kita lihat bersama-sama akan membantu Semua orang membantu.
Pembelajaran yang disyorkan: tutorial video python
Kata Pengantar
Pada masa ini, dengan The populariti kecerdasan buatan telah menarik perhatian banyak industri kepada kecerdasan buatan, dan juga telah membawa gelombang kegilaan pembelajaran kecerdasan buatan Walaupun prinsip di sebalik kecerdasan buatan tidak boleh diperkenalkan secara terperinci dalam artikel pendek, Seperti semua disiplin, kami tidak melakukannya. perlu "mencipta roda" dari awal Kita boleh membina model kecerdasan buatan dengan cepat dengan menggunakan rangka kerja kecerdasan buatan yang kaya untuk memulakan trend kecerdasan buatan.
Kecerdasan buatan merujuk kepada satu siri teknologi yang membolehkan mesin memproses maklumat seperti manusia pembelajaran mesin ialah proses menggunakan pengaturcaraan komputer untuk belajar daripada data sejarah dan meramalkan data baharu adalah berdasarkan otak biologi; Model komputer bagi struktur dan ciri pembelajaran mesin ialah subset pembelajaran mesin yang memproses sejumlah besar data tidak berstruktur seperti pertuturan manusia, teks dan imej. Oleh itu, konsep-konsep ini saling bergantung secara hierarki, dengan kecerdasan buatan sebagai istilah yang paling luas dan pembelajaran mendalam sebagai yang paling khusus: Mempunyai pemahaman awal tentang perpustakaan
untuk memilih perpustakaan yang boleh memenuhi keperluan anda untuk belajar, dan memberi penerangan ringkas dan pengenalan komprehensif kepada perpustakaan kecerdasan buatan yang lebih biasa pada masa ini.Python
1
ialah perpustakaan sambungan , yang menyokong sejumlah besar operasi tatasusunan dan matriks dimensi Selain itu, ia juga menyediakan sejumlah besar perpustakaan fungsi matematik untuk operasi tatasusunan. Lapisan bawah ditulis menggunakan , objek disimpan terus dalam tatasusunan dan bukannya penuding objek, jadi kecekapan operasinya jauh lebih tinggi daripada kod
. Kita boleh membandingkan kelajuan pengiraan nilai dosa senarai antara NumPy(Numerical Python)
dan menggunakan Python
dalam contoh: Numpy
C語言
純Python代
Daripada hasil larian berikut, anda boleh melihat bahawa menggunakan
perpustakaan Lebih pantas daripada kod yang ditulis dalam Python tulen: 純Python
Numpy庫
import?numpy?as?npimport?mathimport?randomimport?time start?=?time.time()for?i?in?range(10): ????list_1?=?list(range(1,10000)) ????for?j?in?range(len(list_1)): ????????list_1[j]?=?math.sin(list_1[j])print("使用純Python用時{}s".format(time.time()-start))start?=?time.time()for?i?in?range(10): ????list_1?=?np.array(np.arange(1,10000)) ????list_1?=?np.sin(list_1)print("使用Numpy用時{}s".format(time.time()-start))2 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Numpy
使用純Python用時0.017444372177124023s 使用Numpy用時0.001619577407836914sialah perpustakaan penglihatan komputer merentas platform yang boleh dijalankan. pada Linux, pada sistem pengendalian Windows dan Mac OS. Ia ringan dan cekap - ia terdiri daripada satu siri fungsi C dan sebilangan kecil kelas C Ia juga menyediakan antara muka
untuk melaksanakan banyak algoritma biasa dalam pemprosesan imej dan penglihatan komputer. Kod berikut cuba menggunakan beberapa penapis mudah, termasuk pelicinan imej, kabur Gaussian, dsb.:
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Python
Anda boleh merujuk kepada asas pemprosesan imej Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) ( transformasi dan denoising) untuk mengetahui lebih lanjut mengenai operasi pemprosesan imej Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan).
import?numpy?as?npimport?cv2?as?cvfrom?matplotlib?import?pyplot?as?plt img?=?cv.imread('h89817032p0.png')kernel?=?np.ones((5,5),np.float32)/25dst?=?cv.filter2D(img,-1,kernel)blur_1?=?cv.GaussianBlur(img,(5,5),0)blur_2?=?cv.bilateralFilter(img,9,75,75)plt.figure(figsize=(10,10))plt.subplot(221),plt.imshow(img[:,:,::-1]),plt.title('Original')plt.xticks([]),?plt.yticks([])plt.subplot(222),plt.imshow(dst[:,:,::-1]),plt.title('Averaging')plt.xticks([]),?plt.yticks([])plt.subplot(223),plt.imshow(blur_1[:,:,::-1]),plt.title('Gaussian')plt.xticks([]),?plt.yticks([])plt.subplot(224),plt.imshow(blur_1[:,:,::-1]),plt.title('Bilateral')plt.xticks([]),?plt.yticks([])plt.show()
3. Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
, yang memproses imej sebagai tatasusunan. Contohnya, anda boleh menggunakan
untuk menukar nisbah imej menyediakan fungsi seperti scikit-image
, scipy
dan numpy
. scikit-image
scikit-image
rescale
resize
downscale_local_mean
from?skimage?import?data,?color,?iofrom?skimage.transform?import?rescale,?resize,?downscale_local_mean image?=?color.rgb2gray(io.imread('h89817032p0.png'))image_rescaled?=?rescale(image,?0.25,?anti_aliasing=False)image_resized?=?resize(image,?(image.shape[0]?//?4,?image.shape[1]?//?4), ???????????????????????anti_aliasing=True)image_downscaled?=?downscale_local_mean(image,?(4,?3))plt.figure(figsize=(20,20))plt.subplot(221),plt.imshow(image,?cmap='gray'),plt.title('Original')plt.xticks([]),?plt.yticks([])plt.subplot(222),plt.imshow(image_rescaled,?cmap='gray'),plt.title('Rescaled')plt.xticks([]),?plt.yticks([])plt.subplot(223),plt.imshow(image_resized,?cmap='gray'),plt.title('Resized')plt.xticks([]),?plt.yticks([])plt.subplot(224),plt.imshow(image_downscaled,?cmap='gray'),plt.title('Downscaled')plt.xticks([]),?plt.yticks([])plt.show()
Pustaka standard ditangani, kerana sangat berkuasa, tetapi API sangat mudah dan mudah digunakan. Walau bagaimanapun, memandangkan PIL hanya menyokong
dan sedang rosak, sekumpulan sukarelawan mencipta versi yang serasi berdasarkan, bernama Python Imaging Library(PIL)
, yang menyokong Python
terbaharu dan Banyak ciri baharu telah ditambah, supaya kita boleh melangkau PIL
dan memasang serta menggunakan
secara langsung. Python 2.7
PIL
Pillow
5 BantalPython 3.x
PIL
Pillow
Gunakan
6、 SimpleCV
SimpleCV
是一個用于構(gòu)建計算機(jī)視覺應(yīng)用程序的開源框架。使用它,可以訪問高性能的計算機(jī)視覺庫,如 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan),而不必首先了解位深度、文件格式、顏色空間、緩沖區(qū)管理、特征值或矩陣等術(shù)語。但其對于 Python3 的支持很差很差,在 Python3.7 中使用如下代碼:
from?SimpleCV?import?Image,?Color,?Display#?load?an?image?from?imgurimg?=?Image('http://i.imgur.com/lfAeZ4n.png')#?use?a?keypoint?detector?to?find?areas?of?interestfeats?=?img.findKeypoints()#?draw?the?list?of?keypointsfeats.draw(color=Color.RED)#?show?the??resulting?image.?img.show()#?apply?the?stuff?we?found?to?the?image.output?=?img.applyLayers()#?save?the?results.output.save('juniperfeats.png')
會報如下錯誤,因此不建議在 Python3
中使用:
SyntaxError:?Missing?parentheses?in?call?to?'print'.?Did?you?mean?print('unit?test')?
7、 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
是一個快速計算機(jī)視覺算法庫,其構(gòu)建在 Numpy
之上,目前擁有超過100種圖像處理和計算機(jī)視覺功能,并在不斷增長。
使用 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
加載圖像,并對像素進(jìn)行操作:
import?numpy?as?npimport?mahotasimport?mahotas.demosfrom?mahotas.thresholding?import?soft_thresholdfrom?matplotlib?import?pyplot?as?pltfrom?os?import?path f?=?mahotas.demos.load('lena',?as_grey=True)f?=?f[128:,128:]plt.gray()#?Show?the?data:print("Fraction?of?zeros?in?original?image:?{0}".format(np.mean(f==0)))plt.imshow(f)plt.show()
8、 Ilastik
Ilastik
能夠給用戶提供良好的基于機(jī)器學(xué)習(xí)的生物信息圖像分析服務(wù),利用機(jī)器學(xué)習(xí)算法,輕松地分割,分類,跟蹤和計數(shù)細(xì)胞或其他實(shí)驗數(shù)據(jù)。大多數(shù)操作都是交互式的,并不需要機(jī)器學(xué)習(xí)專業(yè)知識??梢詤⒖糷ttps://www.ilastik.org/documentation/basics/installation.html進(jìn)行安裝使用。
9、 Scikit-learn
Scikit-learn
是針對 Python
編程語言的免費(fèi)軟件機(jī)器學(xué)習(xí)庫。它具有各種分類,回歸和聚類算法,包括支持向量機(jī),隨機(jī)森林,梯度提升,k均值和 DBSCAN 等多種機(jī)器學(xué)習(xí)算法。
使用Scikit-learn
實(shí)現(xiàn)Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
算法:
import?timeimport?numpy?as?npimport?matplotlib.pyplot?as?pltfrom?sklearn.cluster?import?MiniBatchPengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan),?Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)from?sklearn.metrics.pairwise?import?pairwise_distances_argminfrom?sklearn.datasets?import?make_blobs#?Generate?sample?datanp.random.seed(0)batch_size?=?45centers?=?[[1,?1],?[-1,?-1],?[1,?-1]]n_clusters?=?len(centers)X,?labels_true?=?make_blobs(n_samples=3000,?centers=centers,?cluster_std=0.7)#?Compute?clustering?with?Meansk_means?=?Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)(init='k-means++',?n_clusters=3,?n_init=10)t0?=?time.time()k_means.fit(X)t_batch?=?time.time()?-?t0#?Compute?clustering?with?MiniBatchPengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)mbk?=?MiniBatchPengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)(init='k-means++',?n_clusters=3,?batch_size=batch_size, ??????????????????????n_init=10,?max_no_improvement=10,?verbose=0)t0?=?time.time()mbk.fit(X)t_mini_batch?=?time.time()?-?t0#?Plot?resultfig?=?plt.figure(figsize=(8,?3))fig.subplots_adjust(left=0.02,?right=0.98,?bottom=0.05,?top=0.9)colors?=?['#4EACC5',?'#FF9C34',?'#4E9A06']#?We?want?to?have?the?same?colors?for?the?same?cluster?from?the#?MiniBatchPengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)?and?the?Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)?algorithm.?Let's?pair?the?cluster?centers?per#?closest?one.k_means_cluster_centers?=?k_means.cluster_centers_ order?=?pairwise_distances_argmin(k_means.cluster_centers_, ??????????????????????????????????mbk.cluster_centers_)mbk_means_cluster_centers?=?mbk.cluster_centers_[order]k_means_labels?=?pairwise_distances_argmin(X,?k_means_cluster_centers)mbk_means_labels?=?pairwise_distances_argmin(X,?mbk_means_cluster_centers)#?Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)for?k,?col?in?zip(range(n_clusters),?colors): ????my_members?=?k_means_labels?==?k ????cluster_center?=?k_means_cluster_centers[k] ????plt.plot(X[my_members,?0],?X[my_members,?1],?'w', ????????????markerfacecolor=col,?marker='.') ????plt.plot(cluster_center[0],?cluster_center[1],?'o',?markerfacecolor=col, ????????????markeredgecolor='k',?markersize=6)plt.title('Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)')plt.xticks(())plt.yticks(())plt.show()
10、 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
庫提供了許多用戶友好和高效的數(shù)值計算,如數(shù)值積分、插值、優(yōu)化、線性代數(shù)等。Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
庫定義了許多數(shù)學(xué)物理的特殊函數(shù),包括橢圓函數(shù)、貝塞爾函數(shù)、伽馬函數(shù)、貝塔函數(shù)、超幾何函數(shù)、拋物線圓柱函數(shù)等等。
from?scipy?import?specialimport?matplotlib.pyplot?as?pltimport?numpy?as?npdef?drumhead_height(n,?k,?distance,?angle,?t): ????kth_zero?=?special.jn_zeros(n,?k)[-1] ????return?np.cos(t)?*?np.cos(n*angle)?*?special.jn(n,?distance*kth_zero)theta?=?np.r_[0:2*np.pi:50j]radius?=?np.r_[0:1:50j]x?=?np.array([r?*?np.cos(theta)?for?r?in?radius])y?=?np.array([r?*?np.sin(theta)?for?r?in?radius])z?=?np.array([drumhead_height(1,?1,?r,?theta,?0.5)?for?r?in?radius])fig?=?plt.figure()ax?=?fig.add_axes(rect=(0,?0.05,?0.95,?0.95),?projection='3d')ax.plot_surface(x,?y,?z,?rstride=1,?cstride=1,?cmap='RdBu_r',?vmin=-0.5,?vmax=0.5)ax.set_xlabel('X')ax.set_ylabel('Y')ax.set_xticks(np.arange(-1,?1.1,?0.5))ax.set_yticks(np.arange(-1,?1.1,?0.5))ax.set_zlabel('Z')plt.show()
11、 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
是構(gòu)建Python程序以處理自然語言的庫。它為50多個語料庫和詞匯資源(如 WordNet
)提供了易于使用的接口,以及一套用于分類、分詞、詞干、標(biāo)記、解析和語義推理的文本處理庫、工業(yè)級自然語言處理 (Natural Language Processing, NLP)
庫的包裝器。
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)被稱為 “a wonderful tool for teaching, and working in, computational linguistics using Python”
。
import?nltkfrom?nltk.corpus?import?treebank#?首次使用需要下載nltk.download('punkt')nltk.download('averaged_perceptron_tagger')nltk.download('maxent_ne_chunker')nltk.download('words')nltk.download('treebank')sentence?=?"""At?eight?o'clock?on?Thursday?morning?Arthur?didn't?feel?very?good."""#?Tokenizetokens?=?nltk.word_tokenize(sentence)tagged?=?nltk.pos_tag(tokens)#?Identify?named?entitiesentities?=?nltk.chunk.ne_chunk(tagged)#?Display?a?parse?treet?=?treebank.parsed_sents('wsj_0001.mrg')[0]t.draw()
12、 spaCy
spaCy
是一個免費(fèi)的開源庫,用于 Python
中的高級 NLP。它可以用于構(gòu)建處理大量文本的應(yīng)用程序;也可以用來構(gòu)建信息提取或自然語言理解系統(tǒng),或者對文本進(jìn)行預(yù)處理以進(jìn)行深度學(xué)習(xí)。
??import?spacy ??texts?=?[ ??????"Net?income?was?$9.4?million?compared?to?the?prior?year?of?$2.7?million.", ??????"Revenue?exceeded?twelve?billion?dollars,?with?a?loss?of?$1b.", ??] ??nlp?=?spacy.load("en_core_web_sm") ??for?doc?in?nlp.pipe(texts,?disable=["tok2vec",?"tagger",?"parser",?"attribute_ruler",?"lemmatizer"]): ??????#?Do?something?with?the?doc?here ??????print([(ent.text,?ent.label_)?for?ent?in?doc.ents])
nlp.pipe
生成 Doc 對象,因此我們可以對它們進(jìn)行迭代并訪問命名實(shí)體預(yù)測:
[('$9.4?million',?'MONEY'),?('the?prior?year',?'DATE'),?('$2.7?million',?'MONEY')][('twelve?billion?dollars',?'MONEY'),?('1b',?'MONEY')]
13、 LibROSA
librosa
是一個用于音樂和音頻分析的 Python 庫,它提供了創(chuàng)建音樂信息檢索系統(tǒng)所必需的功能和函數(shù)。
#?Beat?tracking?exampleimport?librosa#?1.?Get?the?file?path?to?an?included?audio?examplefilename?=?librosa.example('nutcracker')#?2.?Load?the?audio?as?a?waveform?`y`#????Store?the?sampling?rate?as?`sr`y,?sr?=?librosa.load(filename)#?3.?Run?the?default?beat?trackertempo,?beat_frames?=?librosa.beat.beat_track(y=y,?sr=sr)print('Estimated?tempo:?{:.2f}?beats?per?minute'.format(tempo))#?4.?Convert?the?frame?indices?of?beat?events?into?timestampsbeat_times?=?librosa.frames_to_time(beat_frames,?sr=sr)
14、 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
是一個快速、強(qiáng)大、靈活且易于使用的開源數(shù)據(jù)分析和操作工具, Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
可以從各種文件格式比如 CSV、JSON、SQL、Microsoft Excel 導(dǎo)入數(shù)據(jù),可以對各種數(shù)據(jù)進(jìn)行運(yùn)算操作,比如歸并、再成形、選擇,還有數(shù)據(jù)清洗和數(shù)據(jù)加工特征。Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
廣泛應(yīng)用在學(xué)術(shù)、金融、統(tǒng)計學(xué)等各個數(shù)據(jù)分析領(lǐng)域。
import?matplotlib.pyplot?as?pltimport?pandas?as?pdimport?numpy?as?np ts?=?pd.Series(np.random.randn(1000),?index=pd.date_range("1/1/2000",?periods=1000))ts?=?ts.cumsum()df?=?pd.DataFrame(np.random.randn(1000,?4),?index=ts.index,?columns=list("ABCD"))df?=?df.cumsum()df.plot()plt.show()
15、 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
是Python的繪圖庫,它提供了一整套和 matlab
相似的命令 API,可以生成出版質(zhì)量級別的精美圖形,Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
使繪圖變得非常簡單,在易用性和性能間取得了優(yōu)異的平衡。
使用 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
繪制多曲線圖:
#?plot_multi_curve.pyimport?numpy?as?npimport?matplotlib.pyplot?as?plt x?=?np.linspace(0.1,?2?*?np.pi,?100)y_1?=?x y_2?=?np.square(x)y_3?=?np.log(x)y_4?=?np.sin(x)plt.plot(x,y_1)plt.plot(x,y_2)plt.plot(x,y_3)plt.plot(x,y_4)plt.show()
有關(guān)更多
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
繪圖的介紹可以參考此前博文———Python-Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)可視化。
16、 Seaborn
Seaborn
是在 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
的基礎(chǔ)上進(jìn)行了更高級的API封裝的Python數(shù)據(jù)可視化庫,從而使得作圖更加容易,應(yīng)該把 Seaborn
視為 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
的補(bǔ)充,而不是替代物。
import?Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)?as?snsimport?matplotlib.pyplot?as?plt sns.set_theme(style="ticks")df?=?sns.load_dataset("penguins")sns.pairplot(df,?hue="species")plt.show()
17、 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
是一個開源的數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)軟件,提供了一系列的數(shù)據(jù)探索、可視化、預(yù)處理以及建模組件。Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
擁有漂亮直觀的交互式用戶界面,非常適合新手進(jìn)行探索性數(shù)據(jù)分析和可視化展示;同時高級用戶也可以將其作為 Python
的一個編程模塊進(jìn)行數(shù)據(jù)操作和組件開發(fā)。
使用 pip
即可安裝 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
,好評~
$?pip?install?orange3
安裝完成后,在命令行輸入 orange-canvas
命令即可啟動 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
圖形界面:
$?orange-canvas
啟動完成后,即可看到 Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)
圖形界面,進(jìn)行各種操作。
18、 PyBrain
PyBrain
是 Python
的模塊化機(jī)器學(xué)習(xí)庫。它的目標(biāo)是為機(jī)器學(xué)習(xí)任務(wù)和各種預(yù)定義的環(huán)境提供靈活、易于使用且強(qiáng)大的算法來測試和比較算法。PyBrain
是 Python-Based Reinforcement Learning, Artificial Intelligence and Neural Network Library
的縮寫。
我們將利用一個簡單的例子來展示 PyBrain
的用法,構(gòu)建一個多層感知器 (Multi Layer Perceptron, MLP)。
首先,我們創(chuàng)建一個新的前饋網(wǎng)絡(luò)對象:
from?pybrain.structure?import?FeedForwardNetwork n?=?FeedForwardNetwork()
接下來,構(gòu)建輸入、隱藏和輸出層:
from?pybrain.structure?import?LinearLayer,?SigmoidLayer inLayer?=?LinearLayer(2)hiddenLayer?=?SigmoidLayer(3)outLayer?=?LinearLayer(1)
為了使用所構(gòu)建的層,必須將它們添加到網(wǎng)絡(luò)中:
n.addInputModule(inLayer)n.addModule(hiddenLayer)n.addOutputModule(outLayer)
可以添加多個輸入和輸出模塊。為了向前計算和反向誤差傳播,網(wǎng)絡(luò)必須知道哪些層是輸入、哪些層是輸出。
這就需要明確確定它們應(yīng)該如何連接。為此,我們使用最常見的連接類型,全連接層,由 FullConnection 類實(shí)現(xiàn):
from?pybrain.structure?import?FullConnection in_to_hidden?=?FullConnection(inLayer,?hiddenLayer)hidden_to_out?=?FullConnection(hiddenLayer,?outLayer)
與層一樣,我們必須明確地將它們添加到網(wǎng)絡(luò)中:
n.addConnection(in_to_hidden)n.addConnection(hidden_to_out)
所有元素現(xiàn)在都已準(zhǔn)備就位,最后,我們需要調(diào)用.sortModules()方法使MLP可用:
n.sortModules()
這個調(diào)用會執(zhí)行一些內(nèi)部初始化,這在使用網(wǎng)絡(luò)之前是必要的。
19、 Milk
MILK(MACHINE LEARNING TOOLKIT)
是 Python 語言的機(jī)器學(xué)習(xí)工具包。它主要是包含許多分類器比如 SVMS、K-NN、隨機(jī)森林以及決策樹中使用監(jiān)督分類法,它還可執(zhí)行特征選擇,可以形成不同的例如無監(jiān)督學(xué)習(xí)、密切關(guān)系傳播和由 MILK 支持的 K-means 聚類等分類系統(tǒng)。
使用 MILK
訓(xùn)練一個分類器:
import?numpy?as?npimport?milk features?=?np.random.rand(100,10)labels?=?np.zeros(100)features[50:]?+=?.5labels[50:]?=?1learner?=?milk.defaultclassifier()model?=?learner.train(features,?labels)#?Now?you?can?use?the?model?on?new?examples:example?=?np.random.rand(10)print(model.apply(example))example2?=?np.random.rand(10)example2?+=?.5print(model.apply(example2))
20、 TensorFlow
TensorFlow
是一個端到端開源機(jī)器學(xué)習(xí)平臺。它擁有一個全面而靈活的生態(tài)系統(tǒng),一般可以將其分為 TensorFlow1.x 和 TensorFlow2.x,TensorFlow1.x 與 TensorFlow2.x 的主要區(qū)別在于 TF1.x 使用靜態(tài)圖而 TF2.x 使用Eager Mode動態(tài)圖。
這里主要使用TensorFlow2.x作為示例,展示在 TensorFlow2.x 中構(gòu)建卷積神經(jīng)網(wǎng)絡(luò) (Convolutional Neural Network, CNN)。
import?tensorflow?as?tffrom?tensorflow.keras?import?datasets,?layers,?models#?數(shù)據(jù)加載(train_images,?train_labels),?(test_images,?test_labels)?=?datasets.cifar10.load_data()#?數(shù)據(jù)預(yù)處理train_images,?test_images?=?train_images?/?255.0,?test_images?/?255.0#?模型構(gòu)建model?=?models.Sequential()model.add(layers.Conv2D(32,?(3,?3),?activation='relu',?input_shape=(32,?32,?3)))model.add(layers.MaxPooling2D((2,?2)))model.add(layers.Conv2D(64,?(3,?3),?activation='relu'))model.add(layers.MaxPooling2D((2,?2)))model.add(layers.Conv2D(64,?(3,?3),?activation='relu'))model.add(layers.Flatten())model.add(layers.Dense(64,?activation='relu'))model.add(layers.Dense(10))#?模型編譯與訓(xùn)練model.compile(optimizer='adam', ??????????????loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True), ??????????????metrics=['accuracy'])history?=?model.fit(train_images,?train_labels,?epochs=10,? ????????????????????validation_data=(test_images,?test_labels))
想要了解更多Tensorflow2.x的示例,可以參考專欄 Tensorflow.
21、 PyTorch
PyTorch
的前身是 Torch,其底層和 Torch 框架一樣,但是使用 Python 重新寫了很多內(nèi)容,不僅更加靈活,支持動態(tài)圖,而且提供了 Python 接口。
#?導(dǎo)入庫import?torchfrom?torch?import?nnfrom?torch.utils.data?import?DataLoaderfrom?torchvision?import?datasetsfrom?torchvision.transforms?import?ToTensor,?Lambda,?Composeimport?matplotlib.pyplot?as?plt#?模型構(gòu)建device?=?"cuda"?if?torch.cuda.is_available()?else?"cpu"print("Using?{}?device".format(device))#?Define?modelclass?NeuralNetwork(nn.Module): ????def?__init__(self): ????????super(NeuralNetwork,?self).__init__() ????????self.flatten?=?nn.Flatten() ????????self.linear_relu_stack?=?nn.Sequential( ????????????nn.Linear(28*28,?512), ????????????nn.ReLU(), ????????????nn.Linear(512,?512), ????????????nn.ReLU(), ????????????nn.Linear(512,?10), ????????????nn.ReLU() ????????) ????def?forward(self,?x): ????????x?=?self.flatten(x) ????????logits?=?self.linear_relu_stack(x) ????????return?logits model?=?NeuralNetwork().to(device)#?損失函數(shù)和優(yōu)化器loss_fn?=?nn.CrossEntropyLoss()optimizer?=?torch.optim.SGD(model.parameters(),?lr=1e-3)#?模型訓(xùn)練def?train(dataloader,?model,?loss_fn,?optimizer): ????size?=?len(dataloader.dataset) ????for?batch,?(X,?y)?in?enumerate(dataloader): ????????X,?y?=?X.to(device),?y.to(device) ????????#?Compute?prediction?error ????????pred?=?model(X) ????????loss?=?loss_fn(pred,?y) ????????#?Backpropagation ????????optimizer.zero_grad() ????????loss.backward() ????????optimizer.step() ????????if?batch?%?100?==?0: ????????????loss,?current?=?loss.item(),?batch?*?len(X) ????????????print(f"loss:?{loss:>7f}??[{current:>5d}/{size:>5d}]")
22、 Theano
Theano
是一個 Python 庫,它允許定義、優(yōu)化和有效地計算涉及多維數(shù)組的數(shù)學(xué)表達(dá)式,建在 NumPy 之上。
在 Theano
中實(shí)現(xiàn)計算雅可比矩陣:
import?theanoimport?theano.tensor?as?T x?=?T.dvector('x')y?=?x?**?2J,?updates?=?theano.scan(lambda?i,?y,x?:?T.grad(y[i],?x),?sequences=T.arange(y.shape[0]),?non_sequences=[y,x])f?=?theano.function([x],?J,?updates=updates)f([4,?4])
23、 Keras
Keras
是一個用 Python 編寫的高級神經(jīng)網(wǎng)絡(luò) API,它能夠以 TensorFlow, CNTK, 或者 Theano 作為后端運(yùn)行。Keras 的開發(fā)重點(diǎn)是支持快速的實(shí)驗,能夠以最小的時延把想法轉(zhuǎn)換為實(shí)驗結(jié)果。
from?keras.models?import?Sequentialfrom?keras.layers?import?Dense#?模型構(gòu)建model?=?Sequential()model.add(Dense(units=64,?activation='relu',?input_dim=100))model.add(Dense(units=10,?activation='softmax'))#?模型編譯與訓(xùn)練model.compile(loss='categorical_crossentropy', ??????????????optimizer='sgd', ??????????????metrics=['accuracy'])model.fit(x_train,?y_train,?epochs=5,?batch_size=32)
24、 Caffe
在 Caffe2 官方網(wǎng)站上,這樣說道:Caffe2
現(xiàn)在是 PyTorch
的一部分。雖然這些 api 將繼續(xù)工作,但鼓勵使用 PyTorch api。
25、 MXNet
MXNet
是一款設(shè)計為效率和靈活性的深度學(xué)習(xí)框架。它允許混合符號編程和命令式編程,從而最大限度提高效率和生產(chǎn)力。
使用 MXNet
構(gòu)建手寫數(shù)字識別模型:
import?mxnet?as?mxfrom?mxnet?import?gluonfrom?mxnet.gluon?import?nnfrom?mxnet?import?autograd?as?agimport?mxnet.ndarray?as?F#?數(shù)據(jù)加載mnist?=?mx.test_utils.get_mnist()batch_size?=?100train_data?=?mx.io.NDArrayIter(mnist['train_data'],?mnist['train_label'],?batch_size,?shuffle=True)val_data?=?mx.io.NDArrayIter(mnist['test_data'],?mnist['test_label'],?batch_size)#?CNN模型class?Net(gluon.Block): ????def?__init__(self,?**kwargs): ????????super(Net,?self).__init__(**kwargs) ????????self.conv1?=?nn.Conv2D(20,?kernel_size=(5,5)) ????????self.pool1?=?nn.MaxPool2D(pool_size=(2,2),?strides?=?(2,2)) ????????self.conv2?=?nn.Conv2D(50,?kernel_size=(5,5)) ????????self.pool2?=?nn.MaxPool2D(pool_size=(2,2),?strides?=?(2,2)) ????????self.fc1?=?nn.Dense(500) ????????self.fc2?=?nn.Dense(10) ????def?forward(self,?x): ????????x?=?self.pool1(F.tanh(self.conv1(x))) ????????x?=?self.pool2(F.tanh(self.conv2(x))) ????????#?0?means?copy?over?size?from?corresponding?dimension. ????????#?-1?means?infer?size?from?the?rest?of?dimensions. ????????x?=?x.reshape((0,?-1)) ????????x?=?F.tanh(self.fc1(x)) ????????x?=?F.tanh(self.fc2(x)) ????????return?x net?=?Net()#?初始化與優(yōu)化器定義#?set?the?context?on?GPU?is?available?otherwise?CPUctx?=?[mx.gpu()?if?mx.test_utils.list_gpus()?else?mx.cpu()]net.initialize(mx.init.Xavier(magnitude=2.24),?ctx=ctx)trainer?=?gluon.Trainer(net.collect_params(),?'sgd',?{'learning_rate':?0.03})#?模型訓(xùn)練#?Use?Accuracy?as?the?evaluation?metric.metric?=?mx.metric.Accuracy()softmax_cross_entropy_loss?=?gluon.loss.SoftmaxCrossEntropyLoss()for?i?in?range(epoch): ????#?Reset?the?train?data?iterator. ????train_data.reset() ????for?batch?in?train_data: ????????data?=?gluon.utils.split_and_load(batch.data[0],?ctx_list=ctx,?batch_axis=0) ????????label?=?gluon.utils.split_and_load(batch.label[0],?ctx_list=ctx,?batch_axis=0) ????????outputs?=?[] ????????#?Inside?training?scope ????????with?ag.record(): ????????????for?x,?y?in?zip(data,?label): ????????????????z?=?net(x) ????????????????#?Computes?softmax?cross?entropy?loss. ????????????????loss?=?softmax_cross_entropy_loss(z,?y) ????????????????#?Backpropogate?the?error?for?one?iteration. ????????????????loss.backward() ????????????????outputs.append(z) ????????metric.update(label,?outputs) ????????trainer.step(batch.data[0].shape[0]) ????#?Gets?the?evaluation?result. ????name,?acc?=?metric.get() ????#?Reset?evaluation?result?to?initial?state. ????metric.reset() ????print('training?acc?at?epoch?%d:?%s=%f'%(i,?name,?acc))
26、 PaddlePaddle
飛槳 (PaddlePaddle)
以百度多年的深度學(xué)習(xí)技術(shù)研究和業(yè)務(wù)應(yīng)用為基礎(chǔ),集深度學(xué)習(xí)核心訓(xùn)練和推理框架、基礎(chǔ)模型庫、端到端開發(fā)套件、豐富的工具組件于一體。是中國首個自主研發(fā)、功能完備、開源開放的產(chǎn)業(yè)級深度學(xué)習(xí)平臺。
使用 PaddlePaddle
實(shí)現(xiàn) LeNtet5
:
#?導(dǎo)入需要的包import?paddleimport?numpy?as?npfrom?paddle.nn?import?Conv2D,?MaxPool2D,?Linear##?組網(wǎng)import?paddle.nn.functional?as?F#?定義?LeNet?網(wǎng)絡(luò)結(jié)構(gòu)class?LeNet(paddle.nn.Layer): ????def?__init__(self,?num_classes=1): ????????super(LeNet,?self).__init__() ????????#?創(chuàng)建卷積和池化層 ????????#?創(chuàng)建第1個卷積層 ????????self.conv1?=?Conv2D(in_channels=1,?out_channels=6,?kernel_size=5) ????????self.max_pool1?=?MaxPool2D(kernel_size=2,?stride=2) ????????#?尺寸的邏輯:池化層未改變通道數(shù);當(dāng)前通道數(shù)為6 ????????#?創(chuàng)建第2個卷積層 ????????self.conv2?=?Conv2D(in_channels=6,?out_channels=16,?kernel_size=5) ????????self.max_pool2?=?MaxPool2D(kernel_size=2,?stride=2) ????????#?創(chuàng)建第3個卷積層 ????????self.conv3?=?Conv2D(in_channels=16,?out_channels=120,?kernel_size=4) ????????#?尺寸的邏輯:輸入層將數(shù)據(jù)拉平[B,C,H,W]?->?[B,C*H*W] ????????#?輸入size是[28,28],經(jīng)過三次卷積和兩次池化之后,C*H*W等于120 ????????self.fc1?=?Linear(in_features=120,?out_features=64) ????????#?創(chuàng)建全連接層,第一個全連接層的輸出神經(jīng)元個數(shù)為64,?第二個全連接層輸出神經(jīng)元個數(shù)為分類標(biāo)簽的類別數(shù) ????????self.fc2?=?Linear(in_features=64,?out_features=num_classes) ????#?網(wǎng)絡(luò)的前向計算過程 ????def?forward(self,?x): ????????x?=?self.conv1(x) ????????#?每個卷積層使用Sigmoid激活函數(shù),后面跟著一個2x2的池化 ????????x?=?F.sigmoid(x) ????????x?=?self.max_pool1(x) ????????x?=?F.sigmoid(x) ????????x?=?self.conv2(x) ????????x?=?self.max_pool2(x) ????????x?=?self.conv3(x) ????????#?尺寸的邏輯:輸入層將數(shù)據(jù)拉平[B,C,H,W]?->?[B,C*H*W] ????????x?=?paddle.reshape(x,?[x.shape[0],?-1]) ????????x?=?self.fc1(x) ????????x?=?F.sigmoid(x) ????????x?=?self.fc2(x) ????????return?x
27、 CNTK
CNTK(Cognitive Toolkit)
是一個深度學(xué)習(xí)工具包,通過有向圖將神經(jīng)網(wǎng)絡(luò)描述為一系列計算步驟。在這個有向圖中,葉節(jié)點(diǎn)表示輸入值或網(wǎng)絡(luò)參數(shù),而其他節(jié)點(diǎn)表示對其輸入的矩陣運(yùn)算。CNTK
可以輕松地實(shí)現(xiàn)和組合流行的模型類型,如 CNN
等。CNTK
用網(wǎng)絡(luò)描述語言 (network description language, NDL)
描述一個神經(jīng)網(wǎng)絡(luò)。 簡單的說,要描述輸入的 feature,輸入的 label,一些參數(shù),參數(shù)和輸入之間的計算關(guān)系,以及目標(biāo)節(jié)點(diǎn)是什么。
NDLNetworkBuilder=[ ???? ????run=ndlLR ???? ????ndlLR=[ ??????#?sample?and?label?dimensions ??????SDim=$dimension$ ??????LDim=1 ???? ??????features=Input(SDim,?1) ??????labels=Input(LDim,?1) ???? ??????#?parameters?to?learn ??????B0?=?Parameter(4)? ??????W0?=?Parameter(4,?SDim) ?????? ?????? ??????B?=?Parameter(LDim) ??????W?=?Parameter(LDim,?4) ???? ??????#?operations ??????t0?=?Times(W0,?features) ??????z0?=?Plus(t0,?B0) ??????s0?=?Sigmoid(z0)??? ?????? ??????t?=?Times(W,?s0) ??????z?=?Plus(t,?B) ??????s?=?Sigmoid(z)???? ???? ??????LR?=?Logistic(labels,?s) ??????EP?=?SquareError(labels,?s) ???? ??????#?root?nodes ??????FeatureNodes=(features) ??????LabelNodes=(labels) ??????CriteriaNodes=(LR) ??????EvalNodes=(EP) ??????OutputNodes=(s,t,z,s0,W0) ????]??? ??]
總結(jié)與分類
python 常用機(jī)器學(xué)習(xí)及深度學(xué)習(xí)庫總結(jié)
庫名 | 官方網(wǎng)站 | 簡介 |
---|---|---|
NumPy | http://www.numpy.org/ | 提供對大型多維陣列的支持,NumPy是計算機(jī)視覺中的一個關(guān)鍵庫,因為圖像可以表示為多維數(shù)組,將圖像表示為NumPy數(shù)組有許多優(yōu)點(diǎn) |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://opencv.org/ | 開源的計算機(jī)視覺庫 |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https:// scikit-image.org/ | 圖像處理算法的集合,由scikit-image操作的圖像只能是NumPy數(shù)組 |
Python Imaging Library(PIL) | http://www.pythonware.com/products/pil/ | 圖像處理庫,提供強(qiáng)大的圖像處理和圖形功能 |
Pillow | https://pillow.readthedocs.io/ | PIL的一個分支 |
SimpleCV | http://simplecv.org/ | 計算機(jī)視覺框架,提供了處理圖像處理的關(guān)鍵功能 |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://mahotas.readthedocs.io/ | 提供了用于圖像處理和計算機(jī)視覺的一組函數(shù),它最初是為生物圖像信息學(xué)而設(shè)計的;但是,現(xiàn)在它在其他領(lǐng)域也發(fā)揮了重要作用,它完全基于numpy數(shù)組作為其數(shù)據(jù)類型 |
Ilastik | http://ilastik.org/ | 用戶友好且簡單的交互式圖像分割、分類和分析工具 |
Scikit-learn | http://scikit-learn.org/ | 機(jī)器學(xué)習(xí)庫,具有各種分類、回歸和聚類算法 |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://www.scipy.org/ | 科學(xué)和技術(shù)計算庫 |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://www.nltk.org/ | 處理自然語言數(shù)據(jù)的庫和程序 |
spaCy | https://spacy.io/ | 開源軟件庫,用于Python中的高級自然語言處理 |
LibROSA | https://librosa.github.io/librosa/ | 用于音樂和音頻處理的庫 |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://pandas.pydata.org/ | 構(gòu)建在NumPy之上的庫,提供高級數(shù)據(jù)計算工具和易于使用的數(shù)據(jù)結(jié)構(gòu) |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://matplotlib.org | 繪圖庫,它提供了一整套和 matlab 相似的命令 API,可以生成所需的出版質(zhì)量級別的圖形 |
Seaborn | https://Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan).pydata.org/ | 是建立在Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)之上的繪圖庫 |
Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) | https://orange.biolab.si/ | 面向新手和專家的開源機(jī)器學(xué)習(xí)和數(shù)據(jù)可視化工具包 |
PyBrain | http://pybrain.org/ | 機(jī)器學(xué)習(xí)庫,為機(jī)器學(xué)習(xí)提供易于使用的最新算法 |
Milk | http://luispedro.org/software/milk/ | 機(jī)器學(xué)習(xí)工具箱,主要用于監(jiān)督學(xué)習(xí)中的多分類問題 |
TensorFlow | https://www.tensorflow.org/ | 開源的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)庫 |
PyTorch | https://pytorch.org/ | 開源的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)庫 |
Theano | http://deeplearning.net/software/theano/ | 用于快速數(shù)學(xué)表達(dá)式、求值和計算的庫,已編譯為可在CPU和GPU架構(gòu)上運(yùn)行 |
Keras | https://keras.io/ | 高級深度學(xué)習(xí)庫,可以在 TensorFlow、CNTK、Theano 或 Microsoft Cognitive Toolkit 之上運(yùn)行 |
Caffe2 | https://caffe2.ai/ | Caffe2 是一個兼具表現(xiàn)力、速度和模塊性的深度學(xué)習(xí)框架,是 Caffe 的實(shí)驗性重構(gòu),能以更靈活的方式組織計算 |
MXNet | https://mxnet.apache.org/ | 設(shè)計為效率和靈活性的深度學(xué)習(xí)框架,允許混合符號編程和命令式編程 |
PaddlePaddle | https://www.paddlepaddle.org.cn | 以百度多年的深度學(xué)習(xí)技術(shù)研究和業(yè)務(wù)應(yīng)用為基礎(chǔ),集深度學(xué)習(xí)核心訓(xùn)練和推理框架、基礎(chǔ)模型庫、端到端開發(fā)套件、豐富的工具組件于一體 |
CNTK | https://cntk.ai/ | 深度學(xué)習(xí)工具包,通過有向圖將神經(jīng)網(wǎng)絡(luò)描述為一系列計算步驟。在這個有向圖中,葉節(jié)點(diǎn)表示輸入值或網(wǎng)絡(luò)參數(shù),而其他節(jié)點(diǎn)表示對其輸入的矩陣運(yùn)算 |
Klasifikasi
Perpustakaan ini boleh dikelaskan mengikut kegunaan utamanya:
類別 | 庫 |
---|---|
圖像處理 | NumPy、Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)、scikit image、PIL、Pillow、SimpleCV、Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)、ilastik |
文本處理 | Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)、spaCy、NumPy、scikit learn、PyTorch |
音頻處理 | LibROSA |
機(jī)器學(xué)習(xí) | pandas, scikit-learn, Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan), PyBrain, Milk |
數(shù)據(jù)查看 | Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan)、Seaborn、scikit-learn、Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) |
深度學(xué)習(xí) | TensorFlow、Pytorch、Theano、Keras、Caffe2、MXNet、PaddlePaddle、CNTK |
科學(xué)計算 | Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan) |
Pembelajaran yang disyorkan: tutorial video python
Atas ialah kandungan terperinci Pengenalan kepada pembelajaran mesin yang biasa digunakan dan perpustakaan pembelajaran mendalam dalam python (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Untuk merealisasikan pembetulan ralat teks dan pengoptimuman sintaks dengan AI, anda perlu mengikuti langkah -langkah berikut: 1. Pilih model AI atau API yang sesuai, seperti Baidu, Tencent API atau perpustakaan NLP sumber terbuka; 2. Panggil API melalui curl atau Guzzle PHP dan memproses hasil pulangan; 3. Maklumat pembetulan ralat paparan dalam aplikasi dan membenarkan pengguna memilih sama ada untuk mengadopsinya; 4. Gunakan php-l dan php_codesniffer untuk pengesanan sintaks dan pengoptimuman kod; 5. Secara berterusan mengumpul maklum balas dan mengemas kini model atau peraturan untuk meningkatkan kesannya. Apabila memilih AIAPI, fokus pada menilai ketepatan, kelajuan tindak balas, harga dan sokongan untuk PHP. Pengoptimuman kod harus mengikuti spesifikasi PSR, gunakan cache yang munasabah, elakkan pertanyaan bulat, mengkaji semula kod secara berkala, dan gunakan x

Gunakan sendi Seaborn untuk dengan cepat menggambarkan hubungan dan pengedaran antara dua pembolehubah; 2. 3. Tambah garis regresi dan maklumat ketumpatan kepada jenis = "reg", dan gabungkan marginal_kws untuk menetapkan gaya plot tepi; 4. Apabila jumlah data besar, disarankan untuk menggunakan "hex"

Senarai rentetan boleh digabungkan dengan kaedah Join (), seperti '' .join (kata) untuk mendapatkan "HelloWorldFrompython"; 2. Senarai nombor mesti ditukar kepada rentetan dengan peta (str, nombor) atau [str (x) forxinnumbers] sebelum menyertai; 3. Mana -mana senarai jenis boleh ditukar secara langsung kepada rentetan dengan kurungan dan petikan, sesuai untuk debugging; 4. Format tersuai boleh dilaksanakan oleh ekspresi penjana yang digabungkan dengan gabungan (), seperti '|' .join (f "[{item}]" foriteminitems) output "[a] | [a]

Pasang PYODBC: Gunakan perintah PipinstallPyoDBC untuk memasang perpustakaan; 2. Sambungkan SQLServer: Gunakan rentetan sambungan yang mengandungi pemacu, pelayan, pangkalan data, uid/pwd atau aman 3. Semak pemacu yang dipasang: Jalankan pyodbc.drivers () dan tapis nama pemacu yang mengandungi 'SQLServer' untuk memastikan nama pemacu yang betul digunakan seperti 'ODBCDriver17 untuk SQLServer'; 4. Parameter utama rentetan sambungan

pandas.melt () digunakan untuk menukar data format yang luas ke dalam format yang panjang. Jawapannya adalah untuk menentukan nama lajur baru dengan menentukan id_vars mengekalkan lajur pengenalan, nilai -nilai pilihan lajur untuk dicairkan, var_name dan value_name, 1.id_vars = 'nama' bermaksud bahawa lajur nama tetap tidak berubah, 2.value_vars = ['math', 'bahasa Inggeris' Nama, 4.value_name = 'Score' menetapkan nama lajur baru nilai asal, dan akhirnya menghasilkan tiga lajur termasuk nama, subjek dan skor.

Pythoncanbeoptimizedformemory-boundoperationsbyreducingoverheadthroughgenerators, efisiendataStructures, danManagingObjectlifetimes.first, useGeneratorsInsteadofListStoprocesslargedataSetSoneiteMatime, mengelakkan muat turun muat turun, coose

Pertama, tentukan borang hubungan yang mengandungi nama, peti mel dan medan mesej; 2. Dalam pandangan, penyerahan borang diproses dengan menilai permintaan pos, dan selepas pengesahan diluluskan, dibersihkan_data diperoleh dan respons dikembalikan, jika tidak, borang kosong akan diberikan; 3. Dalam templat, gunakan {{form.as_p}} untuk menjadikan medan dan tambah {%csrf_token%} untuk mencegah serangan CSRF; 4. Konfigurasi penghalaan URL ke titik / kenalan / ke paparan contac_view; Gunakan ModelForm untuk mengaitkan model secara langsung untuk mencapai storan data. Djangoforms melaksanakan pemprosesan bersepadu pengesahan data, rendering dan ralat HTML, yang sesuai untuk perkembangan cepat fungsi bentuk selamat.

Pengenalan kepada arbitraj statistik statistik adalah kaedah perdagangan yang menangkap ketidakcocokan harga dalam pasaran kewangan berdasarkan model matematik. Falsafah terasnya berasal dari regresi min, iaitu, harga aset boleh menyimpang dari trend jangka panjang dalam jangka pendek, tetapi akhirnya akan kembali ke purata sejarah mereka. Peniaga menggunakan kaedah statistik untuk menganalisis korelasi antara aset dan mencari portfolio yang biasanya berubah serentak. Apabila hubungan harga aset -aset ini tidak dapat disimpulkan, peluang arbitraj timbul. Dalam pasaran cryptocurrency, arbitraj statistik terutamanya lazim, terutamanya disebabkan oleh ketidakcekapan dan turun naik drastik pasaran itu sendiri. Tidak seperti pasaran kewangan tradisional, kriptografi beroperasi sepanjang masa dan harga mereka sangat terdedah kepada berita, sentimen media sosial dan peningkatan teknologi. Turun naik harga yang berterusan ini kerap mencipta kecenderungan harga dan memberikan arbitrageurs dengan
