国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

利用一點機器學習來加速你的網站

開發 前端 機器學習
最近,我發現自己對 web 性能的定義可能太狹隘了,從用戶的角度上來說,這些只是 web 性能中的一些小插曲。所以我打開了我經常去的網站,嘗試了所有的用戶可能的操作,并記錄操作所花費的時間。(我們需要一些用戶操作時光軸工具),之后,我發現了一個可行的提升性能的方案。

在生活中,我有 73% 的時間在考慮 web 性能-在低配手機上達到 60 FPS、 有序加載資源、離線緩存任何能緩存的資源。還有一些其他的優化。

最近,我發現自己對 web 性能的定義可能太狹隘了,從用戶的角度上來說,這些只是 web 性能中的一些小插曲。

所以我打開了我經常去的網站,嘗試了所有的用戶可能的操作,并記錄操作所花費的時間。(我們需要一些用戶操作時光軸工具)

之后,我發現了一個可行的提升性能的方案。

下面的文章內容聚焦在某個具體網站的具體操作步驟。但是我覺得這個解決方案(嗯,沒錯!就是機器學習)可以應用到很多其他類型的網站上去。

問題,如何才能節約時間

這個網站,用于賣家出售沒用的東西,買家通過購買這些東西來淘一些有價值的東西。

當賣家要在網站上出售東西時候,要先選擇分類, 再選擇對應的模版,然后填寫細節信息,預覽,最后發布。

然而第一步 — 選擇分類 — 就把我帶進了一條彎路

首先,一共有674個類別,我根本不知道我你破舊的皮劃艇屬于哪個類別( Steve Krug 說的好, 不要讓用戶去思考 )

第二步,即使我知道商品所屬的類別 — 子類別 — 子子類別,我也要至少花費12秒的時間。

如果我跟你說,我能把你的頁面的加載時間減少12秒,你一定覺得我瘋了。那么為什么不在一些別的地方來節約這12秒呢。

正如凱撒大帝所說,時間很寶貴的呢。

我一直認為用戶無知是福。我如果把商品的標題、描述、價格放到機器學習的模型里面,系統應該能自動計算出商品所屬的分類。

這樣子用戶選類別的時間就能省下來了。他們就可以開心的把這些時間拿來去 reddit 找 DIY 的雙層床了。

機器學習-你不該逃避它,你要去擁抱它

一開始的時候,我對機器學習一點概念都沒有。我是在游戲 AI ,以及 Alpha 狗戰勝人類頂級圍棋棋手之后才有所了解的。

因此我打算開始去了解它,下面的幾步一個小時都不需要。

  1. Google 搜索 'machine learning'
  2. 查看大量的關于機器學習的文章
  3. 發現了亞馬遜發布的 機器學習 相關的服務
  4. 我開始意識到我不需要知道太多的關于機器學習的東西
  5. 嗯。好開心

(作者注: 因為沒有去系統的學習機器學習,所以文章的一些專業術語可能被亂用。。)

一個簡單的實現流程

亞馬遜發布了他的機器學習文檔 。如果你不是對這個文檔很感興趣,打算花5個小時去閱讀,那么就來看下我寫的一些總結吧。

整理如下:

  • 獲取一些 CSV 數據文件,每行都是一個商品項(^_^我的皮劃艇),列名是標題、描述、價格、所屬分類。
  • 把數據傳送到亞馬遜的 AWS S3 bucket 里面
  • 用數據去訓練機器。這樣子,這個小小云機器人就能通過商品的標題,描述和價格去預測他的分類了。
  • 在前端頁面上,寫一些代碼,獲取用戶輸入的 標題/描述/價格,發給這個云機器人,經過計算,就能向預測這個商品所屬的分類了。

實戰模擬

下面是我寫的一個表單,模擬了賣家發布信息的幾個關鍵流程。

下面的結果一定會讓你對機器學習保持興趣。你只要相信我,建議類別是由深度學習模擬預測出來的。

讓我們去賣一個冰箱

利用一點機器學習來加速你的網站

再來試一下賣個水族館:

利用一點機器學習來加速你的網站

這個云機器人居然能識別出水族館!

當我看到這個結果的時候,手舞足蹈,是不是棒棒噠?

(我偷偷的告訴你我是怎么實現的:React, Redux, JQuery, Mox, RxJs, BlueBird, Bootstrap, Sass, Compass, NodeJs, Express, Loadsh。項目是使用 webpack 打包。最后生成的文件在1M左右)

嗯。不 BB 了。開始講正經事。

一開始為了拿到機器學習用的數據。我也是想破了頭。我大概需要10K條數據。后來是在一個當地的交易網站上面發現有這些數據。看了一下 URL 和 DOM 結構之后,我用 Google Scraper 插件提取了一些數據。導出成 CSV 文件。在這些數據上我大概花費了四個小時。將近整個項目時間的一半了。

數據整理好之后,上傳到了 Amazon S3 上,配置了一下機器學習的參數,設置了數據模型。整個學習的 CPU 耗時才3分鐘。

界面上還有一個實時預測功能,所以我打算用一些參數測試一下。

利用一點機器學習來加速你的網站

嗯。還挺好用的。

為了不在瀏覽器里面暴露出我的 Amazon API ,所以我把 API 放到了 Node 服務器上。

后臺代碼(Node)

使用方式很簡單。接口參數為 modelId, 服務器返回一個 prediction :

 

  1. const AWS = require('aws-sdk');  
  2. const machineLearning = new AWS.MachineLearning();  
  3. const params = {  
  4. MLModelId: 'some-model-id' 
  5. PredictEndpoint: 'some-endpoint' 
  6. Record: {},  
  7. };  
  8. machineLearning.predict(params, (err, prediction) => { // we have a prediction!}); 

這里參數用大寫字母開頭,本來打算改掉的。后來想想還是算了。

Record, 是一個JSON對象。屬性值是(title, description, price)

我不想只提供一些代碼片段。為了幫助大家更好的理解。我把所有的服務端代碼都貼上來了。

server.js:

 

  1. const express = require('express'); 
  2. const bodyParser = require('body-parser'); 
  3. const AWS = require('aws-sdk'); 
  4. const app = express(); 
  5. app.use(express.static('public')); 
  6. app.use(bodyParser.json());  
  7. AWS.config.loadFromPath('./private/aws-credentials.json'); 
  8. const machineLearning = new AWS.MachineLearning();  
  9. app.post('/predict', (req, res) => {  const params = { 
  10.     MLModelId: 'my-model-id'
  11.     PredictEndpoint: 'https://realtime.machinelearning.us-east-1.amazonaws.com'
  12.     Record: req.body, 
  13.   };  
  14.   machineLearning.predict(params, (err, data) => {    if (err) { 
  15.       console.log(err); 
  16.     } else { 
  17.       res.json({ category: data.Prediction.predictedLabel }); 
  18.     } 
  19.   }); 
  20. });  
  21. app.listen(8080); 

aws-credentials.json:

 

  1.   "accessKeyId""my-access-key-id"
  2.   "secretAccessKey""shhh-secret-squirrel",  "region""us-east-1" 

(在.gitignore 中忽略 /private 文件夾)

上面就是所有的后臺代碼。

前端代碼

表單里面的代碼功能比較簡單。

  • 監聽幾個輸入框的 blur 事件
  • 讀取表單里面的字段值
  • POST 給 API 端
  • 把 API 端返回的 prediction 顯示在頁面上

 

  1. (function() { 
  2.   const titleEl = document.getElementById('title-input'); 
  3.   const descriptionEl = document.getElementById('desc-input'); 
  4.   const priceEl = document.getElementById('price-input'); 
  5.   const catSuggestionsEl = document.getElementById('cat-suggestions'); 
  6.   const catSuggestionEl = document.getElementById('suggested-category'); 
  7.    function predictCategory() {     
  8.     const fetchOptions = { 
  9.       method: 'POST'
  10.       headers: {        'Content-Type''application/json'
  11.       }, 
  12.       body: JSON.stringify({ 
  13.         title: titleEl.value, 
  14.         description: descriptionEl.value, 
  15.         price: priceEl.value, 
  16.       }) 
  17.     };  
  18.     fetch('/predict', fetchOptions) 
  19.       .then(response => response.json()) 
  20.       .then(prediction => { 
  21.         catSuggestionEl.textContent = prediction.category; 
  22.         catSuggestionsEl.style.display = 'block'
  23.       }); 
  24.   }  
  25.   document.querySelectorAll('.user-input').forEach(el => { 
  26.     el.addEventListener('blur', predictCategory); 
  27.   }); 
  28. })(); 

上面就是全部的前端代碼了。

啊啊啊……云服務還要收費呢

別忙著收起你的帽子,魔術表演怎么可能是免費呢。

我上面用到的 model 數據(10K行/4列)有6.3MB. 云端在等待接受請求的時候,消耗了6.3MB的內存。這些資源的開銷是每小時0.0001刀。或者每年8刀。 我在手套上面花的錢都比它多。

每次進行 prediction 的時候,也要0.0001刀。所有就不要隨隨便便就調用這個 API 了。

雖然目前不僅僅是 Amazon 提供了這個服務,但是我還是沒有找到另外兩個大廠家的價目表。

Google 有 TensorFlow , 但是我看了一下 入門教程 就跑了。

Microsoft 有 Machine Learning offering , 但是IE6還是讓我有點耿耿于懷 (可能不久后,Amazon 和 Microsoft 之間會有一場大戰吧)。

一些總結

或許只是我感到有些許驚訝(我還記得當我意識到‘news’是‘new’的復數的時候),我認為這些都十分讓人驚訝。它允許像你我這樣的普通人(對發展影響的程度較小的人)在機器學習中進行挖掘,可能會促成那些用戶很大的改進。

下一步在哪?

上面的例子顯然是進行過設計的,并且,我承認,我省略了一些話題。

如果我可以的話,我應該列出所有問題,但要是你自己去做你自己發現問題那也是很有趣的。

因此,去做吧,如果你取得了一些成功,我將樂于在評論中看到它們。

責任編輯:未麗燕 來源: 開源中國翻譯文章
相關推薦

2013-10-30 09:37:19

LinuxLinux命令

2010-05-20 15:29:43

優化IIS

2009-09-14 20:17:05

并行LINQ

2016-01-06 09:49:59

青云/SDN

2015-12-08 16:14:04

2009-09-14 16:00:51

LINQ基本操作LINQ

2011-01-13 14:38:00

JavascriptCSSWeb

2018-11-15 09:00:00

機器學習人工智能數據中心

2009-08-13 17:52:13

C#構造函數

2009-08-27 17:50:09

interface接口

2009-09-09 10:53:25

C# MessageB

2019-10-17 09:57:08

Python設計電腦

2020-12-22 09:58:45

機器學習工業運營工業傳感器

2021-09-17 08:04:28

Hooks函數組件架構

2018-11-26 11:57:33

NVIDIARAPIDSGPU

2019-11-28 14:07:46

技術架構代碼

2019-06-17 06:18:27

邊緣計算物聯網霧計算

2009-06-17 14:36:02

學習Java心得

2009-08-28 16:30:24

C#線程

2009-08-14 11:29:28

C#創建Windows
點贊
收藏

51CTO技術棧公眾號

欧美日韩亚洲一区三区| 精品国偷自产国产一区| 91av网站在线播放| 偷拍自拍在线看| 亚洲男帅同性gay1069| 国产女教师bbwbbwbbw| 国模吧视频一区| 国产a级全部精品| 久久精品xxxxx| 亚洲精品wwwww| 黄色在线视频网站| 欧美午夜女人视频在线| 国产91福利| 欧美激情一区二区三区全黄| 青青视频免费在线观看| 蓝色福利精品导航| 日本一区视频在线观看| 亚洲高清网站| 成人午夜电影在线播放| 欧美色综合网| 国产一区在线观| 日韩视频三区| 免费99视频| 丝袜脚交一区二区| 欧美人与物videos另类| 99在线精品视频在线观看| 91久久伊人青青碰碰婷婷| 免费yellow网站| 久久久九九九九| 无码人妻h动漫| 波多野结衣中文字幕一区| 欧美激情va永久在线播放| 精品免费av一区二区三区| 亚洲精品在线91| av资源亚洲| 这里精品视频免费| yy6080久久伦理一区二区| 精品国偷自产在线视频| 中文成人激情娱乐网| 国语自产精品视频在线看| 精品在线91| 国产 高清 精品 在线 a| 免费在线亚洲欧美| 国产午夜精品视频一区二区三区| jizz一区二区| 97涩在线观看视频| 色综合亚洲欧洲| 久久不射影院| 在线视频中文亚洲| 性欧美xxxx免费岛国不卡电影| 国产精品视频导航| 亚洲精选在线| 影音先锋成人资源网站| 久久久久一区二区三区四区| 一级毛片免费视频| 欧美日韩一区二区三区在线看 | 欧美日韩调教| 日本精品二区| 久久精品视频免费| 你懂的视频在线观看| 国产黄人亚洲片| 天天操天天爱天天爽| 欧美日韩一区二区在线| 大香伊人久久| 欧美精品videos另类日本| 欧美福利专区| 日韩欧美一级在线| 一区二区在线观看视频在线观看| 亚洲欧美视频一区二区| 色爱av美腿丝袜综合粉嫩av | 午夜精品久久99蜜桃的功能介绍| 日韩亚洲视频| 国产精品嫩草影院com| 国产免费av高清在线| 亚洲日韩中文字幕| 国产精品成人一区二区不卡| 国内外成人激情免费视频| 午夜精品在线视频一区| 日韩欧美看国产| 91视频8mav| 久久综合久久99| 免费在线看黄色| 日本精品久久久久久久| 精品一区二区三区蜜桃| 佐山爱痴汉视频一区二区三区| 亚洲视频777| 好吊视频一区二区三区四区| 亚洲乱码国产一区三区| 日韩欧美在线网站| 黄色不卡一区| 男女av免费观看| 日韩视频一区二区三区在线播放| 欧美电影在线观看免费| 一区二区三区四区在线视频| 精品成人在线视频| 天堂久久av| 亚洲一区二区三区精品在线观看| 伊人开心综合网| 国产精品一区二区精品| 亚洲午夜高清视频| 在线观看免费一区| 日韩aaa久久蜜桃av| 男人日女人视频网站| 日韩欧美一二三四区| 成人在线免费观看91| 中文字幕在线导航| 中文字幕日韩av电影| 日韩电影在线一区二区| 免费黄网站在线观看| 97久久超碰福利国产精品…| 高清不卡在线观看| av小说在线播放| 久久精品国产一区二区三区不卡| 99久久影视| 熟女人妇 成熟妇女系列视频| 精品久久久久香蕉网| 精品视频三区| 国产在线精品成人一区二区三区| 欧美成免费一区二区视频| 亚洲日本成人女熟在线观看| 亚洲三级av在线| 2021国产精品久久精品| 一区二区亚洲视频| 天天爽天天狠久久久| 欧美性黄网官网| 日韩精品中文字幕有码专区| 亚洲一区二区3| 在线免费观看视频一区| 国产精品国产一区二区| 99久久精品国产麻豆演员表| 老司机av在线免费看| 国产精品夜间视频香蕉| 中文字幕一区二区三区四区| 欧美成人免费全部网站| av在线观看地址| 一区二区三区视频在线 | 国产成人天天5g影院在线观看| 午夜精品一区二区三区在线播放| 99精品视频在线观看| 老司机精品视频网| 国产97在线 | 亚洲| 久久精品人人做人人爽| 国产成人欧美日韩在线电影| 都市激情久久综合| a级网站在线观看| 亚洲欧美制服综合另类| 国产盗摄视频一区二区三区| 成人美女黄网站| 三级在线免费观看| 中日韩美女免费视频网站在线观看| 成人黄色在线网站| 精品国产亚洲一区二区三区| jizz18女人| 国产精品成人免费视频| 婷婷久久综合九色国产成人| 色欧美自拍视频| 欧美激情视频在线播放| 国产又爽又黄ai换脸| 亚洲精品自拍第一页| 99视频国产精品| 亚洲免费中文字幕| 欧美一区二区三区喷汁尤物| 久久国产影院| 一级毛片在线播放| 国产精品影片在线观看| 亚洲高清在线精品| 国内成人在线| 中文字幕有码在线视频| 奇米777四色影视在线看| 久久久www成人免费精品| 亚洲女与黑人做爰| 国产精品av一区二区| 青青草原av在线| 日本xxxxxxxxxx75| 欧美中文字幕在线播放| 91成人在线观看喷潮| 狠狠久久亚洲欧美| 免费看久久久| www.黄在线观看| 青青草综合在线| 欧美日本黄视频| 欧美性猛交xxxxx水多| 热久久国产精品| 91成人精品在线| 北岛玲一区二区三区| 996这里只有精品| 国产精品第100页| 精品国一区二区三区| 欧美激情一二三区| 日韩午夜在线| 成人激情久久| 欧美另类自拍| 欧美日韩dvd| 国产免费久久av| 亚洲福利视频专区| 亚洲日本电影在线| 欧美成人性福生活免费看| 精品国偷自产在线| 亚洲精品精品亚洲| 久久都是精品|