日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

基于深度學習自動化的前端開發(fā)解析

zhKF_jqr_AI ? 來源:未知 ? 作者:佚名 ? 2018-04-11 10:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:Ashwin Kumar編譯:weakish

編者按:Ashwin Kumar之前是Sway Finance的聯(lián)合創(chuàng)始人,Sway Finance是Y Combinator孵化的一家初創(chuàng)企業(yè),使用機器學習技術自動化會計。后來去了Insight,在Insight開發(fā)了一個模型,允許用戶從手繪的示意圖創(chuàng)建可以工作的HTML網(wǎng)站。現(xiàn)任Mythic深度學習科學家。

所有規(guī)模的公司而言,創(chuàng)建直觀、沉浸式的用戶體驗都是一個關鍵的目標。創(chuàng)建用戶體驗是一個以原型、設計、測試為周期的快速過程。Facebook這樣的巨頭有充足的資源,可以在設計過程中投入整個團隊,設計過程可能長達數(shù)周,涉及多個相關者;小企業(yè)沒有這樣的資源,因此它們的用戶界面做出來可能會不太好。

我在Insight的目標是使用現(xiàn)代深度學習算法顯著地流水線化設計工作流程,賦能任何企業(yè)快速創(chuàng)建和測試網(wǎng)頁。

今天的設計工作流程

經(jīng)過多個相關者的設計工作流程

一個典型的設計工作流程可能是這樣的:

產(chǎn)業(yè)經(jīng)理進行用戶研究,得出一些規(guī)格要求

設計師接收需求,探索低保真原型,并逐漸創(chuàng)建高保真模型

工程師將設計實現(xiàn)為代碼并最終交付產(chǎn)品至用戶

研發(fā)周期的長度可能很快成為瓶頸,Airbnb這樣的公司開始使用機器學習使這一過程更高效。

盡管看起來這是一個很有前途的機器輔助設計的樣例,我們并不清楚這一模型多大程度上是完全基于端到端訓練的,多大程度上依賴手工提取的特征。我們無法知道確切的答案,因為這是一個閉源的專有實現(xiàn)。我希望開發(fā)一個繪圖到代碼技術的開源版本,面向更廣泛的開發(fā)者和設計師。

理想情況下,我的模型將可以接受一個簡單的手繪網(wǎng)站設計原型,并立刻基于圖像生成可以工作的HTML網(wǎng)站:

SketchCode模型接受手繪示意圖,生成HTML代碼

事實上,上圖是我的模型在測試圖像集上生成的真實網(wǎng)站!相關代碼發(fā)布在我的GitHub上:ashnkumar/sketch-code

從圖像標注汲取靈感

我打算解決的問題屬于程序生成任務,自動生成可以工作的源代碼。不過,程序生成大多涉及從自然語言規(guī)格聲明或執(zhí)行追蹤(execution trace)生成代碼,而我的案例將基于圖像(手繪示意圖)生成代碼。

在機器學習中,圖像標注是一個研究很充分的領域,圖像標注尋找能夠將圖像和文本相聯(lián)系的學習模型,特別是基于源圖像內(nèi)容生成描述。

文本:一個扔飛盤的婦女

受最近的pix2code論文和Emil Wallner的相關項目的啟發(fā),我決定重塑我的任務為圖像標注任務,以手繪網(wǎng)站示意圖為輸入圖像,相應的HTML代碼為輸出文本。

獲取合適的數(shù)據(jù)集

從圖像標注的角度來說,理想的數(shù)據(jù)集將是數(shù)以千計的成對的手繪草圖和相應的HTML代碼。毫不意外,我沒法找到這樣的數(shù)據(jù)集,我需要為這一任務創(chuàng)建自己的數(shù)據(jù)集。

我從pix2code論文的開源數(shù)據(jù)庫開始,其中包含1750張合成的網(wǎng)站截屏以及相關的源代碼。

pix2code數(shù)據(jù)集

這是一個很好的數(shù)據(jù)庫,可以作為我自己的數(shù)據(jù)集的基礎:

數(shù)據(jù)集中生成的網(wǎng)站包含一些簡單的Bootstrap元素的組合,例如按鈕、文本框和div。盡管這意味著我的模型的“詞匯表”將限于少數(shù)元素——可供選擇的生成網(wǎng)站的元素——這一方法可以簡單地推廣至更大的元素詞匯表。

每個樣本的源代碼包含一個領域特定語言(DSL)的token,該DSL是論文作者專門創(chuàng)建的。每個token對應一段HTML和CSS,有一個編譯器將DSL編譯成可以工作的HTML代碼。

讓圖像看起來像是手繪的

轉換彩色網(wǎng)站圖像至手繪版本

為了修改數(shù)據(jù)集以適應我自己的任務,我需要讓這些網(wǎng)站圖像看起來像是手繪的。我嘗試使用python中的OpenCV和PIL庫修改每張圖像,例如轉換為灰度圖像,等高線檢測。

最終,我決定直接修改原網(wǎng)站的CSS樣式表,進行以下操作:

修改網(wǎng)頁元素的圓角邊框以曲線化按鈕和div的邊角。

調(diào)整邊框的厚度,以模擬手繪草圖,并添加下降陰影。

修改字體為手繪風格字體。

最后,我通過添加傾斜、移動、旋轉以增強這些圖像,以模擬實際手繪草圖的變化性。

使用圖像標注模型架構

現(xiàn)在我已經(jīng)有數(shù)據(jù)了,終于可以把數(shù)據(jù)傳給模型了!

我使用了一個圖像標注的模型架構,主要包含三部分:

使用卷積神經(jīng)網(wǎng)絡(CNN)從源圖像提取圖像特征的計算機視覺模型

基于門控循環(huán)單元(GRU)的編碼源代碼token序列的語言模型

接受前兩步的輸出作為輸入,預測序列中的下一個token的解碼器模型(也是GRU)

訓練使用token序列作為輸入的模型

為了訓練這一模型,我將源代碼拆分成token序列。模型的單個輸入是一個序列和源代碼圖像,標簽為文檔中的下一個token。模型使用交叉熵作為損失函數(shù),比較模型的下一個token預測和實際的下一個token。

在推理階段,當模型用來從頭生成代碼的時候,過程略有不同。圖像仍然由CNN處理,但文本過程僅僅使用一個開始序列作為種子。在每一步中,模型將預測的下一token序列附加到當前輸入序列,并傳給模型作為新輸入序列。不斷重復這一過程,直至模型預測一個token,或過程達到預先定義的文檔token數(shù)限制。

一旦模型生成了預測token的集合,編譯器轉換DSL token至可由任何瀏覽器渲染的HTML。

使用BLEU分數(shù)評估模型

我決定使用BLEU分數(shù)評估模型。BLEU分數(shù)是機器翻譯任務中一個常用的指標,這一指標衡量機器生成文本在多大程度上接近由人類基于相同輸入生成的文本。

基本上,BLEU比較生成文本和參考文本的n元序列,以創(chuàng)建準確率變體。用BLEU評估這一項目很合適,因為它基于實際生成的HTML元素,以及元素之間的關系。

最棒的是,我可以通過查看生成網(wǎng)站實際看到BLEU分數(shù)!

可視化BLEU分數(shù)

給定源圖像,完美的BLEU分數(shù)(1.0)意味著正確的元素位于正確的位置,而較低的分數(shù)預測錯誤的元素,或者元素位于錯誤的位置。最終模型能夠在評估數(shù)據(jù)集上取得0.76的BLEU分數(shù)。

額外獎勵——定制風格

我意識到模型提供了一個額外獎勵,由于模型僅僅生成網(wǎng)頁的骨架,我可以在編譯過程中加入定制的CSS層,然后立刻獲得所得網(wǎng)站的不同風格。

同一草圖對應不同風格

樣式解耦模型生成過程帶來了很大的優(yōu)勢:

想要在自家公司使用SketchCode模型的前端工程師可以如原樣使用模型,僅僅修改一個CSS文件,使網(wǎng)站適配公司的風格指南

內(nèi)置可伸縮性——基于單一源圖像,模型的輸出可以立刻編譯至5、10、50種不同的預定義分割,因此用戶可以可視化多個版本的網(wǎng)站,并在瀏覽器中瀏覽查看。

總結和未來方向

利用圖像標注方面的研究,SketchCode能夠接受手繪網(wǎng)站示意圖,并在數(shù)秒之內(nèi)將它們轉換為可以工作的HTML網(wǎng)站。

這一模型具有一些限制,這也意味著未來可以做的改進:

由于訓練模型的詞匯表僅包括16個元素,它無法預測在數(shù)據(jù)中未見的token。下一步可能使用更多元素生成額外的網(wǎng)站樣本,例如圖像、下拉菜單、表單——Bootstrap組件是一個很好的開始。

生產(chǎn)環(huán)境中的實際網(wǎng)站有很多變化。創(chuàng)建更能反映這些變化的訓練數(shù)據(jù)集的一個很好的方法是抓取實際網(wǎng)站的HTML/CSS代碼和網(wǎng)站內(nèi)容截屏。

手繪同樣有很多通過修改CSS無法完全捕捉的變化。在手繪草圖數(shù)據(jù)中生成更多變化的一個很好的方法是使用對抗生成網(wǎng)絡創(chuàng)建逼真的手繪網(wǎng)站圖像。

如前所述,你可以在GitHub上找到此項目的代碼:ashnkumar/sketch-code

原文地址:https://blog.insightdatascience.com/automated-front-end-development-using-deep-learning-3169dd086e82

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

    關注

    73

    文章

    5610

    瀏覽量

    124654
  • 前端開發(fā)

    關注

    0

    文章

    28

    瀏覽量

    4833

原文標題:從草圖到網(wǎng)站:基于深度學習自動化前端開發(fā)

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    TRACO POWER TBL系列工業(yè)電源:自動化應用的理想之選

    的性能和緊湊的設計,為這些應用提供了理想的解決方案。 文件下載: TBL 060-112.pdf 一、產(chǎn)品概述 TBL系列是一系列小型DIN導軌安裝式電源,專為建筑和工廠自動化應用而設計。其超緊湊的低剖面外殼,深度僅55mm,能完美適配建筑
    的頭像 發(fā)表于 04-26 13:50 ?101次閱讀

    工業(yè)自動化中的協(xié)議橋梁:耐達訊自動化EtherCAT轉RS232技術深度解析

    引言:工業(yè)自動化中的通信挑戰(zhàn) 在工業(yè)自動化領域,通信協(xié)議的兼容性問題一直是制約系統(tǒng)升級和設備集成的關鍵瓶頸。隨著智能制造和工業(yè)4.0的深入推進,高速實時以太網(wǎng)技術EtherCAT已成為現(xiàn)代控制系統(tǒng)
    的頭像 發(fā)表于 04-15 14:27 ?591次閱讀
    工業(yè)<b class='flag-5'>自動化</b>中的協(xié)議橋梁:耐達訊<b class='flag-5'>自動化</b>EtherCAT轉RS232技術<b class='flag-5'>深度</b><b class='flag-5'>解析</b>

    【智能檢測】基于AI深度學習與飛拍技術的影像測量系統(tǒng):實現(xiàn)高效精準的全自動光學檢測與智能制造數(shù)據(jù)閉環(huán)

    內(nèi)容概要:文檔內(nèi)容介紹了中圖儀器(Chotest)影像測量儀融合人工智能深度學習與飛拍技術的自動化檢測解決方案。系統(tǒng)通過AI深度學習實現(xiàn)
    發(fā)表于 03-31 17:11

    SGM90516:高集成模擬前端芯片的深度解析

    SGM90516:高集成模擬前端芯片的深度解析 在電子設計領域,高集成度、高性能的模擬前端芯片一直是工程師們追求的目標。SGM90516作為一款由SGMICRO推出的16通道、12位模
    的頭像 發(fā)表于 03-12 10:30 ?238次閱讀

    智能制藥新引擎:解讀耐達訊自動化Profinet轉DeviceNet網(wǎng)關無縫對接之道

    ”,阻礙了數(shù)據(jù)集成。本文將探討耐達訊自動化Profinet轉DeviceNet網(wǎng)關如何作為關鍵技術,打破數(shù)據(jù)壁壘,提升制藥行業(yè)的生產(chǎn)效率與質量控制。 1. 協(xié)議深度解析:Profinet
    的頭像 發(fā)表于 02-06 15:10 ?328次閱讀
    智能制藥新引擎:解讀耐達訊<b class='flag-5'>自動化</b>Profinet轉DeviceNet網(wǎng)關無縫對接之道

    960單面點焊機的智能控制深度解析

    在新能源汽車與儲能產(chǎn)業(yè)高速發(fā)展的背景下,圓柱電池模組焊接工藝的精度與效率成為制約產(chǎn)能的關鍵瓶頸。深圳比斯特自動化設備有限公司推出的BT-960/960XZ單面自動點焊機,憑借其自適應壓力控制系統(tǒng)與的深度融合,實現(xiàn)了焊接質量與生產(chǎn)
    的頭像 發(fā)表于 12-17 16:23 ?1099次閱讀

    深度拆解比斯特1418單節(jié)自動點焊機自動化焊接流程

    比斯特1418單節(jié)自動點焊機的流水線式自動化焊接流程,是一個深度融合了機械工程、機器人學、傳感技術、軟件控制和材料科學的復雜系統(tǒng)。它將焊接從依賴工匠經(jīng)驗的“手藝”,升華為可預測、可復制、可優(yōu)化
    的頭像 發(fā)表于 11-27 15:24 ?509次閱讀

    羅克韋爾自動化邀您共赴2025年自動化博覽會

    11 月 17 - 20 日,作為工業(yè)自動化、信息和數(shù)字轉型領域的全球領先企業(yè)之一,羅克韋爾自動化將在芝加哥舉辦的 2025 年自動化
    的頭像 發(fā)表于 11-17 17:54 ?2200次閱讀

    智慧科研新紀元:善思創(chuàng)興引領AI與自動化變革

    效率。 ?智能測試儀器與自動化平臺:?? 包括薄膜力學斷層掃描測試儀等精密儀器,為材料性能評估和實驗自動化提供強大支持。 ?聚焦核心:深耕能源與材料科學? 善思創(chuàng)興的解決方案深度聚焦兩大前沿領域
    發(fā)表于 09-05 16:55

    干貨分享 | TSMaster MBD模塊全解析:從模型搭建到自動化測試的完整實踐

    在汽車電子MBD開發(fā)中,TSMasterMBD模塊深度集成于TSMaster先進的總線分析、仿真與測試平臺,旨在為工程師提供一套從模型自動編譯、代碼集成到自動化測試的端到端無縫解決方案
    的頭像 發(fā)表于 08-22 20:04 ?2884次閱讀
    干貨分享 | TSMaster MBD模塊全<b class='flag-5'>解析</b>:從模型搭建到<b class='flag-5'>自動化</b>測試的完整實踐

    貿(mào)澤推出全新自動化資源中心

    新技術。借助這些資源,該領域的專業(yè)工程師將能夠了解控制系統(tǒng)、機器人和先進自動化軟件的新進展。 ? 工業(yè)自動化的核心在于提高效率和生產(chǎn)力、增強系統(tǒng)可靠性,同時降低營運成本并強化安全協(xié)議。通過該資源中心,專業(yè)人員可以獲取深度文章,包
    的頭像 發(fā)表于 08-01 16:26 ?935次閱讀
    貿(mào)澤推出全新<b class='flag-5'>自動化</b>資源中心

    玉林在線自動測寬儀 包帶自動化產(chǎn)線升級

    度檢測,如布、皮、革等。 在線自動測寬儀使包帶自動化產(chǎn)線升級,通過非接觸式光學測量、實時數(shù)據(jù)反饋與智能控制系統(tǒng)深度融合,顯著提升了生產(chǎn)精度與效率。 測寬儀的核心技術原理與功能優(yōu)勢 光電測量 采用物方遠心
    發(fā)表于 07-23 15:23

    自動化測試平臺ATECLOUD推出AI算法功能

    作為納米軟件自主研發(fā)的自動化測試平臺,ATECLOUD 始終致力于為用戶提供高效優(yōu)質的測試解決方案。面對5G、AI等前沿技術的迭代發(fā)展,平臺深度融合新技術持續(xù)升級測試能力,最新推出的AI算法功能更在自動化測試領域實現(xiàn)突破性創(chuàng)新。
    的頭像 發(fā)表于 07-22 16:10 ?1031次閱讀
    <b class='flag-5'>自動化</b>測試平臺ATECLOUD推出AI算法功能

    自動化計算機的功能與用途

    工業(yè)自動化是指利用自動化計算機來控制工業(yè)環(huán)境中的流程、機器人和機械,以制造產(chǎn)品或其部件。工業(yè)自動化的目的是提高生產(chǎn)率、增加靈活性,并提升制造過程的質量。工業(yè)自動化在汽車制造中體現(xiàn)得最為
    的頭像 發(fā)表于 07-15 16:32 ?925次閱讀
    <b class='flag-5'>自動化</b>計算機的功能與用途

    自動化生產(chǎn)線如何依賴驅動芯片?關鍵技術解析

    解析傳送帶、泵類設備對電機控制的高精度需求,揭示華芯邦芯片在工業(yè)自動化中的穩(wěn)定表現(xiàn)。
    的頭像 發(fā)表于 05-29 17:56 ?752次閱讀
    屯门区| 长汀县| 灵川县| 平南县| 大方县| 甘谷县| 渝北区| 津市市| 东山县| 沈丘县| 三河市| 阳新县| 柏乡县| 宣威市| 嫩江县| 海阳市| 大港区| 金阳县| 商都县| 庆元县| 当雄县| 开封市| 隆林| 神池县| 怀安县| 柏乡县| 景东| 威宁| 玉溪市| 永平县| 龙胜| 庆阳市| 濮阳市| 田东县| 丹棱县| 泰安市| 双柏县| 聊城市| 河源市| 昌江| 灯塔市|