色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用更“時(shí)尚”的數(shù)據(jù)開啟機(jī)器學(xué)習(xí)的 Hello World 之門

Tensorflowers ? 來源:未知 ? 作者:李倩 ? 2018-06-13 11:08 ? 次閱讀

本期 AI Adventure 中,Yufeng 會(huì)帶領(lǐng)我們會(huì)按照之前分享的最佳實(shí)踐來試著完整走一遍機(jī)器學(xué)習(xí)的整個(gè)流程。工作量有點(diǎn)大,但是聰明的你應(yīng)該沒問題。

使用 MNIST 數(shù)據(jù)* 來訓(xùn)練模型常常被看作是機(jī)器學(xué)習(xí)界的「Hello World」例子(使用標(biāo)準(zhǔn)的 MNIST 數(shù)據(jù)訓(xùn)練手寫字符的識(shí)別模型),今天我們跟著 Yufeng 一起,使用更“時(shí)尚”的數(shù)據(jù)開啟機(jī)器學(xué)習(xí)的 Hello World 之門。

* 段注:MNIST 是一個(gè)手寫數(shù)字圖像的數(shù)據(jù)集,每幅圖像都由一個(gè)整數(shù)標(biāo)記。它主要用于機(jī)器學(xué)習(xí)算法的性能對(duì)標(biāo)。

“潮”起來的 Machine Learning

Zalando(來自德國的電子商務(wù)公司)決意要讓 MNIST 再“火”一把,前段時(shí)間 Zalando 旗下的研究部門發(fā)布了叫做 Fashion-MNIST 的一個(gè)數(shù)據(jù)集。這是一個(gè)和 MNIST 具有相同格式的數(shù)據(jù)集,唯一的不同在于手寫字符被替換成了服飾、鞋子、挎包等等內(nèi)容。它仍然有 10 個(gè)種類,圖像也仍然是 28x28 像素。

在 GitHub 查看更多對(duì)Fashion-MNIST數(shù)據(jù)集的介紹(中文):

https://github.com/zalandoresearch/fashion-mnist/blob/master/README.zh-CN.md

我們一起訓(xùn)練一個(gè)模型,然后用它來甄別所屬的服飾品類吧!

線性 Classifier

我們先從構(gòu)建一個(gè)線性的 classifier 開始,來看看怎么操作。同以往一樣,我們用 TensorFlow 的評(píng)估器框架(鏈接參見段后) 來簡化編程和維護(hù)。回憶一下,我們會(huì)經(jīng)歷加載數(shù)據(jù)、創(chuàng)建 classifier,然后運(yùn)行訓(xùn)練和評(píng)估等操作。另外還會(huì)用本地模型直接做一些預(yù)測(cè),官方文檔參考:

https://tensorflow.google.cn/get_started/get_started_for_beginners?hl=zh-CN

下面從創(chuàng)建模型開始,我們首先把數(shù)據(jù)集中的圖像從 28x28 的像素排布轉(zhuǎn)為 1x784 的形式,然后將之稱為特征列 pixels。此操作類似于 AIA 第三期:無需數(shù)學(xué)知識(shí),輕松搞定鳶尾花辨識(shí)模型中出現(xiàn)的 flower_features。

feature_columns = [ tf.feature_column.numeric_column( "pixels", shape=784)]classifier = tf.estimator.LinearClassifier( feature_columns=feature_columns, n_classes=10, model_dir=logdir)

下一步創(chuàng)建線性的 classifier。我們有 10 種品類需要做標(biāo)記,而不是之前鳶尾花案例中的三種。

要開始訓(xùn)練,我們需要配置數(shù)據(jù)集和輸入函數(shù)。TensorFlow 有內(nèi)置的函數(shù)接受一個(gè) NumPy 型的數(shù)組用于生成輸入函數(shù),此處我們就用它來簡化一下。

tf.estimator.inputs.numpy_input_fn( x={'pixels': X}, y=Y, batch_size=batch_size, num_epochs=epochs, shuffle=shuffle)DATA_SETS = input_data.read_data_sets( "/tmp/fashion-mnist")

接著用 input_data 模塊把數(shù)據(jù)集載入,將函數(shù)參數(shù)指向數(shù)據(jù)集下載的位置。

然后通過調(diào)用 classifier.train() 把 classifier、輸入函數(shù)和數(shù)據(jù)集都結(jié)合起來。

classifier.train( input_fn=train_input_fn, steps=num_steps)accuracy_score = classifier.evaluate( input_fn=eval_input_fn)['accuracy']

最終,我們進(jìn)行一次評(píng)估來看看模型表現(xiàn)如何。使用經(jīng)典 MNIST 數(shù)據(jù)集時(shí),此模型常常得到 91% 左右的準(zhǔn)確度。然后,由于時(shí)尚版 MNIST 有更復(fù)雜的數(shù)據(jù)集,所以只得到了略高于 80% 的精確度,甚至有時(shí)更低一些。

怎樣才能改善呢?如 AIA第六期:通過深度神經(jīng)網(wǎng)絡(luò)再識(shí) Estimator 中提到的那樣進(jìn)行就好了。

轉(zhuǎn)為深度模型

切換到 DNNClassifier 就是換一行代碼的功夫,現(xiàn)在重新開始訓(xùn)練,然后評(píng)估看看是否深度模型會(huì)比線性的好一些。

classifier = tf.estimator.DNNClassifier( feature_columns=feature_columns, n_classes=10, hidden_units=[100, 75, 50], model_dir=logdir )

正如第五期:通過 TensorBoard 將模型可視化 中討論的那樣,我們應(yīng)當(dāng)用 TensorBoard 來橫向并且比較一下兩個(gè)模型。

tensorboard --logdir=models/fashion_mnist/

瀏覽器打開 http://localhost:6006

TensorBoard

看看 Tensorboard,似乎深度模型并沒有比線性模型好到哪里去!這很可能是對(duì)超參數(shù)的微調(diào)不到位導(dǎo)致的,參見 AIA 第二期:機(jī)器學(xué)習(xí)常見的七個(gè)步驟。

o4YBAFsgiveAZCzQAAE6-rwk87E803.png

看起來好像是要一路飆到底…

也許是我們的模型需要更大一些來容納如此搞復(fù)雜度的模型?抑或訓(xùn)練應(yīng)該更少一些?我們來試試看。經(jīng)過屢次調(diào)試微參數(shù),模型的失真度突破性降低了,并且比線性模型得到的精度更高。

o4YBAFsgiveAOFtzAAEELJSTnDw830.png

深度模型(藍(lán)色對(duì)比線性的紅色線)的失真度保持較低狀態(tài)

達(dá)到這一精度之前在訓(xùn)練中多了些步驟,但是最終得到更高精度又使得這些付出非常值得。

由圖可見線性模型的平緩期來得比深度網(wǎng)絡(luò)要早。這是由于深度模型復(fù)雜度更高,它們需要的訓(xùn)練時(shí)間更長。

此時(shí),模型差不多滿足我們的要求了。我們可以將其導(dǎo)出,然后產(chǎn)生一個(gè)可伸縮的時(shí)尚版 MNIST classifier API。至于如何導(dǎo)出,可以參照第四期中給出的詳細(xì)步驟。

預(yù)測(cè)

我們快速回顧一下用評(píng)估器做預(yù)測(cè)的方法。很大程度上,它就像是我們訓(xùn)練和評(píng)估的方式;這也是評(píng)估器(框架)的極大優(yōu)勢(shì)——通用一致的函數(shù)接口。

X = DATA_SETS.test.images[5000:5005]predict_input_fn = tf.estimator.inputs.numpy_input_fn( x={'pixels': X}, batch_size=1, num_epochs=1, shuffle=False)predictions = classifier.predict( input_fn=predict_input_fn)

注意我們這次把 batch_size 指定為 1,num_epochs 指定為 1,shuffle 值為 false。這是因?yàn)槲覀兿胍粗樞蛞粋€(gè)一個(gè)的預(yù)測(cè),一次在所有數(shù)據(jù)上進(jìn)行預(yù)測(cè)。我從評(píng)估所用數(shù)據(jù)集中間挑選了 5 幅圖像用于預(yù)測(cè)。

我選擇這 5 幅的原因不僅僅是因?yàn)樗鼈冊(cè)谡虚g,還因?yàn)檫@些模型中有兩個(gè)是不正確的。兩個(gè)都應(yīng)該是襯衫,但卻被模型認(rèn)為第三個(gè)是包而第五個(gè)是大衣。由此,僅僅考慮圖像的紋理變化這個(gè)因素,你能看到這些樣本比起手寫數(shù)字來說是多么有挑戰(zhàn)性。

后續(xù)步驟

你可以在這個(gè) Gist(鏈接在段后)上看到本次分享中所用來訓(xùn)練和生成圖像的代碼。你的模型表現(xiàn)如何?你所最終采用的參數(shù)又是什么樣的?在評(píng)論當(dāng)中分享一下吧!

https://gist.github.com/yufengg/2b2fd4b81b72f0f9c7b710fa87077145

精彩提要

后續(xù)的幾期將會(huì)著眼于機(jī)器學(xué)習(xí)生態(tài)的工具,從而幫助你創(chuàng)建自己的操作流程和工具鏈。與此同時(shí)也會(huì)展示更多可以用來解決機(jī)器學(xué)習(xí)問題的模型體系結(jié)構(gòu)。我非常期待能在后面的分享中繼續(xù)為你分析解答!在那之前,不要忘了多使用機(jī)器學(xué)習(xí)!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 線性
    +關(guān)注

    關(guān)注

    0

    文章

    199

    瀏覽量

    25164
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8422

    瀏覽量

    132712
  • 數(shù)據(jù)集
    +關(guān)注

    關(guān)注

    4

    文章

    1208

    瀏覽量

    24719

原文標(biāo)題:AIA 系列實(shí)戰(zhàn)篇 | 機(jī)器學(xué)習(xí)的「時(shí)尚版」Hello World

文章出處:【微信號(hào):tensorflowers,微信公眾號(hào):Tensorflowers】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    微雪Arduino系列教程五:Hello World

    某程序員退休后決定練習(xí)書法,于是重金購買文房四寶。一日,飯后突生雅興,一番研墨擬紙,并點(diǎn)上上好檀香。定神片刻,潑墨揮毫,鄭重地寫下一行字:hello world!在我們學(xué)習(xí)C語言是,經(jīng)典的入門程序
    發(fā)表于 04-27 19:51

    機(jī)器向“時(shí)尚達(dá)人”學(xué)習(xí)的技巧概述

    如何讓機(jī)器向“時(shí)尚達(dá)人”學(xué)習(xí)?阿里做了個(gè)“實(shí)用”的圖像數(shù)據(jù)
    發(fā)表于 09-16 13:41

    Android開發(fā)之“hello World”的實(shí)現(xiàn)

    按照慣例,同時(shí)也是為了更好地引導(dǎo)讀者進(jìn)入精彩的Android世界,我們接下來要實(shí)現(xiàn)一個(gè)簡單的“hello World”例子。
    發(fā)表于 08-24 11:20 ?5560次閱讀
    Android開發(fā)之“<b class='flag-5'>hello</b> <b class='flag-5'>World</b>”的實(shí)現(xiàn)

    NB3000_Hello_World

    NB3000 Hello World,好東西,喜歡的朋友可以下載來學(xué)習(xí)
    發(fā)表于 02-18 16:38 ?0次下載

    Hello_World.Constraint

    Hello World,好東西,喜歡的朋友可以下載來學(xué)習(xí)
    發(fā)表于 02-22 15:52 ?0次下載

    MICROCHIP MINUTES 4 - HELLO WORLD

    歡迎觀看MICROCHIP MINUTES之MPLAB? X IDE系列短片。在本視頻中,我們將編譯HELLO WORLD應(yīng)用程序。本視頻使用PICDEM? Curiosity開發(fā)板及開發(fā)板上的PIC16F1619單片機(jī)。
    的頭像 發(fā)表于 06-07 05:46 ?2906次閱讀

    米爾科技Linux簡單Hello World應(yīng)用程序的教程

    以下為米爾科技工程師在使用DS-5過程中總結(jié)的經(jīng)驗(yàn)步驟,一個(gè)簡單的實(shí)用Hello World工程。
    的頭像 發(fā)表于 11-21 17:02 ?1401次閱讀
    米爾科技Linux簡單<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>應(yīng)用程序的教程

    如何用多種編程語言寫“Hello,World!”程序

    用 50 種編程語言寫“Hello,World!”程序
    的頭像 發(fā)表于 01-09 13:49 ?3981次閱讀

    教你如何搭建淺層神經(jīng)網(wǎng)絡(luò)&quot;Hello world&quot;

    作為圖像識(shí)別與機(jī)器視覺界的 "hello world!" ,MNIST ("Modified National Institute of Standards and Technology")
    的頭像 發(fā)表于 12-10 18:35 ?941次閱讀

    基于Nios 的 hello world

    基于Nios || 的 hello world一、Qsys二、Nios ||介紹三、利用Niso ||實(shí)現(xiàn)hello world(一)硬件設(shè)計(jì)(二)軟件設(shè)計(jì)(三)下載硬件和軟件一、Qs
    發(fā)表于 11-30 17:36 ?9次下載
    基于Nios  的 <b class='flag-5'>hello</b> <b class='flag-5'>world</b>

    HELLO WORLD!

    HELLO WORLD
    發(fā)表于 12-03 16:21 ?8次下載
    <b class='flag-5'>HELLO</b> <b class='flag-5'>WORLD</b>!

    STM32開發(fā)入門(二)——Hello World

    STM32開發(fā)入門(二)——Hello World
    發(fā)表于 12-07 18:51 ?11次下載
    STM32開發(fā)入門(二)——<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>

    ZYNQ學(xué)習(xí)筆記_ZYNQ簡介和Hello World

    ZYNQ學(xué)習(xí)筆記_ZYNQ簡介和Hello WorldZYNQ介紹PS和PL的連接ZYNQ開發(fā)工具鏈在PS端編寫Hello World程序ZYNQ介紹ZYNQ-7000系列是基于Xil
    發(fā)表于 12-22 19:11 ?10次下載
    ZYNQ<b class='flag-5'>學(xué)習(xí)</b>筆記_ZYNQ簡介和<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>

    Zynq上使用Vitis的雙ARM Hello World

    電子發(fā)燒友網(wǎng)站提供《Zynq上使用Vitis的雙ARM Hello World.zip》資料免費(fèi)下載
    發(fā)表于 12-14 10:15 ?3次下載
    Zynq上使用Vitis的雙ARM <b class='flag-5'>Hello</b> <b class='flag-5'>World</b>

    如何在鴻蒙開發(fā)板上輸出Hello World

    HarmonyOS 開發(fā)快速入門:鴻蒙開發(fā)板上輸出 Hello World
    的頭像 發(fā)表于 01-15 16:03 ?1587次閱讀
    主站蜘蛛池模板: 亚洲国产精品特色大片观看| 久久人妻无码毛片A片麻豆| AV久久久囯产果冻传媒| 99精品视频在线观看re| 草比比过程图| 国产精品看高国产精品不卡| FREE性丰满白嫩白嫩的HD| 一本之道高清在线3线观看| 伊人久久精品99热超碰| 91亚洲精品| 竹菊精品久久久久久久99蜜桃| 97视频精品| 《乳色吐息》无删减版在线观看 | 成人18视频在线| 99国产小视频| 大睾丸内射老师| 超碰caoporon最新视频| 国产精品国产三级国产AV麻豆| 黄页网站免费视频大全9| 麻豆狠色伊人亚洲综合网站| 热九九99香蕉精品品| 欧美zzzoooxxx| 免费人成网站永久| 美女被爽cao免费漫画| 日本69色视频在线观看| 学校女性奴sm训练调教| 亚洲 欧美 视频 手机在线| 中国xxxxx| 纯肉小黄文高H| 九色终合九色综合88| 啪啪漫画无遮挡全彩h同人| 亚洲电影不卡| 伊人电院网| xxx粗大长欧美| 精品国产露脸久久AV麻豆| 久久99r66热这里有精品| 欧美国产精品主播一区| 久久综合久久伊人| 色老99九久精品偷偷鲁| 在线视频 国产 日韩 欧美| 港台三级大全|