Categories
程式開發

蘋果、谷歌紛紛公佈“2019年度最佳App”

蘋果、谷歌紛紛公佈“2019年度最佳App” 1

google play

12月3日,蘋果、谷歌各自公佈了App Store與Google Play上的“年度最佳App”。每到年底,公佈“年度App榜單”已經成為蘋果和谷歌的慣例。

一、蘋果:2019年度App與遊戲名單

今年,蘋果從iPhone、iPad、Mac和Apple TV上各選出一款年度App和遊戲,並從Apple …

Categories
程式開發

AssemblyScript如何幫助WebAssembly發揮潛力?

WebAssembly(或Wasm)是Web瀏覽器中相對較新的功能,但它有潛力極大地擴展Web作為一個應用程序服務平台的能力。 Web開發人員在入門WebAssembly時可能會經歷艱難的學習過程,而AssemblyScript就提供了一種解決辦法。首先我們來看一下為什麼WebAssembly是一項很有前途的技術,然後再介紹AssemblyScript是怎樣幫助WebAssembly發揮潛力的。

WebAssembly

WebAssembly是針對瀏覽器使用的底層語言,為開發人員提供了JavaScript之外的Web編譯目標。它使網站代碼可以在安全的沙盒環境中以接近原生的速度運行。

它是根據所有主流瀏覽器(Chrome、Firefox、Safari和Edge)代表的意見開發的,這些代表於2017年初達成了設計共識。所有這些瀏覽器現在都支持WebAssembly,意味著整個市場中約87%的瀏覽器可以使用它。

WebAssembly以二進制格式交付,這意味著與JavaScript相比,WebAssembly在大小和加載時間上均佔優勢。但它也有供人類閱讀的文本…

Categories
程式開發

程序員自我欺騙的9個謊言

“我們對計算機的自信可能使我們犯錯誤,因為我們希望將現實世界都轉化為代碼。”

程序員有充分的理由感到自豪,因為其他人是無權進入數據庫並更改的。世界越是依賴計算機定義,程序員的能力就越強。

實際上,沒有什麼代碼是完美的代碼,計算機也會經常犯錯誤。

當然,許多問題源於我們的程序員所做的假設,這些假設雖然在某些時候是正確的,但在根本上是不正確的。正如馬克·吐溫(Mark Twain)所說:“這不是讓您陷入困境的原因,但是您肯定會知道事實。”

編程語言不同

曾經我們也滿是理想,我們曾寫過很長的項目啟動宣言,然後向老闆保證,這次,採用新的語言將改變一切,同時精彩的軟件功能將從鍵盤上快速湧現,以至每個項目都將提前完工。…

Categories
程式開發

那些本以為能在2020年成為現實的“黑科技”

懸浮汽車滿天飛、機器人管家滿街跑、克隆人危機出現、人類已經面臨著來自外太空的挑戰…

不知道上面這些場景你有沒有在科幻小說、電影裡見到過,乍看之下感覺似乎很遙遠,但是如果有人告訴你:“這些技術都在2020年實現了”,你會不會用看“傻子”的眼神凝視他幾秒,心中默念“有病”然後默默離開?

2020,這個看似遙遠實則只剩一個月就到來的年份,被不少作者設定為“未來發生年代”,在作者的想像中,這個神奇的年代擁有著高度發達的黑科技,人們也早已過上充滿科技感的“未來生活”。

今天的文章,InfoQ將盤點一些“本以為能夠在2020年實現”的技術,看看我們今天的生活離所謂的未來還有多遠?

全智能機器人

機器人幾乎是所有科幻作品裡都會涉及到的元素。

電影《終結者》中,機器人控制人類的橋段給不少人留下了深刻印象,“天網”這樣的監控系統更是讓人不寒而栗,這也使得人們對於人工智能技術形成了比較負面的刻板印象。

《終結者》的故事背景設定在2015年,距今已經過去了四年,但是目前的機器人仍然只能進行簡單的、流程化的操作,比如工廠流水線上的機械臂。近兩年,一家名叫波士頓動力的公司在機器人設計上取得了不錯的進展,他們製造的兩足機器人已經可以奔跑、跳躍,甚至做出後空翻這樣高難度的動作:

image

MIT的校園裡,也有一群外形酷似小狗的四足機器人正在列隊進行後空翻,這款名為這款“迷你獵豹”(Mini Cheetah …

Categories
程式開發

深度迁移学习在NLP中的应用:选BERT还是被评逆天的GPT 2.0?

迁移学习是什么?前百度首席科学家、斯坦福的教授吴恩达(Andrew Ng)曾经说过:迁移学习将会是继监督学习之后的下一个机器学习商业成功的驱动力。不可否认,机器学习在产业界的应用和成功主要是受监督学习、深度学习及大量标签数据集的推动。但是,当我们没有足够的来自于任务域的标注数据来训练可靠模型时,应该怎么办?本文,InfoQ采访了百分点首席算法科学家苏海波,聊聊深度迁移学习在NLP中的应用实践以及被评效果逆天的GPT 2.0到底咋样?

深度迁移学习在NLP中的应用:选BERT还是被评逆天的GPT 2.0? 3

为什么需要迁移学习?

过去几年,我们已经具备了将模型训练得越来越准确的能力,现今比较先进的模型在很多任务上已经达到了不错的效果,大幅降低了使用者的门槛。但这些模型的共同特点都是极其重视数据,依靠大量的标注数据才能实现理想的效果。

但是,在真实的业务环境中,标注数据往往是不足的,而且标注的代价比价高,迁移学习可以帮助处理这些场景,使机器学习在没有大量标注数据的任务域中规模化应用。那么,什么是迁移学习?迁移学习是指利用数据、任务或模型之间的相似性,将在旧领域学习过的模型,应用于新领域的一种学习过程。

概括来说,之所以需要迁移学习,是因为要解决以下四个问题:

  1. 深度学习和少标注之间的矛盾:目前深度学习只有在拥有充足标注数据的场景下,才能发挥它的威力。但是在实际的很多问题中,我们没有足够的标注数据,这时就需要迁移学习;

  2. 强算力与弱资源之间的矛盾:某些海量数据的模型训练任务,需要非常大的算力,大公司才能烧得起这个钱,而普通人的机器资源是很有限的,需要让他们也能利用这些数据和模型;

  3. 通用模型与个性化需求之间的矛盾:通用的模型可以解决绝大多数的公共问题,但是具体到个性化的需求,都存在其独特性,通用模型根本无法满足。因此,需要将这个通用的模型加以改造和适配,使其更好地服务于各种个性化需求;

Categories
程式開發

谷歌兩位聯合創始人退位:桑達爾·皮猜統領Alphabet及谷歌

2019年12月3日,谷歌官網發布了一封來自創始人拉里·佩奇和謝爾蓋·布林的公開信。信中表明:46歲的創始人拉里·佩奇和謝爾蓋·布林于12月3日雙雙卸任谷歌母公司Alphabet的CEO和總裁職務,正式向47歲的桑達爾·皮猜(Sundar Pichai)交接大權,他將正式成為Alphabet的首席執行官,佩奇和布林則以大股東身份繼續留在公司董事會。至於這樣做的原因,佩奇和布林在年度公開信中表示他們從不是貪戀權位之人,現在公司有更好的管理方式,Google和Alphabet不需要兩位CEO,皮猜是最佳人選。

谷歌兩位聯合創始人退位:桑達爾·皮猜統領Alphabet及谷歌 7

這次調整也並非毫無徵兆,拉里·佩奇和謝爾蓋·布林已經很少在公開場合露面,皮猜則在谷歌一直處於很重要的位置。 Alphabet最大的子公司是Google,主要負責原有的核心互聯網業務。其他子公司包括DeepMind、GV、CapitalG、Google X和Google Fiber等,分別負責投資、無人車、寬帶網絡、無人機等前沿實驗項目。其中,核心業務組成Google,由皮猜擔任CEO。母公司Alphabet則由佩奇擔任CEO,布林擔任總裁。如今,Google和Alphabet均交由皮猜負責,也沒有讓大眾特別驚訝,谷歌的漲價還出現了一些漲幅。

據了解,皮猜1972年7月出生於印度泰米爾納德邦,今年47歲。他本科畢業於印度理工學院坎普爾分校,讀的是冶金工程專業。之後在斯坦福大學的材料科學與工程專業上,獲得了理學碩士學位,此後又拿下了賓夕法尼亞大學沃頓商學院的 MBA。畢業之後,皮猜先是在一家半導體公司Applied …

Categories
程式開發

AWS re:Invent第二天:SageMaker開發者工俱全家桶閃亮登場

拉斯維加斯時間2019年12月3日,AWS re:Invent大會進入第二天。在早上的主題演講環節,AWS CEO Andy Jassy再次發布了一連串新服務,簡單挑選部分、總結如下,供各位讀者參考。

基礎架構層

新的EC2實例:M6g、R6g與C6g

這三款新實例採用了第二代AWS定制的ARM芯片——graviton2。有意思的是這次的實例不再以A系列命名(第一代使用graviton的實例名稱叫做A1),而是直接放入了M系列、R系列與C系列。

新的EC2實例:

Categories
程式開發

從業 20 年的程序員,“盤”出來的 5 種編程經驗

一個擁有20年編程經驗的“熟手”,編程乾貨有多少?本文的作者是一名從業20年的程序員,在本文中,他分享了自己這20年來學到的5種編程經驗:重複的知識最糟糕、把代碼當成一種債務、對高級開發人員信任但去驗證、使用TDD、用“證據”證明自己的代碼更好。下文是關於這5種經驗的具體描述。

今年,我對DEV開發平台越來越熟悉。眾多激憤的Reddit評論者和“不過如此”的鑑賞家們構成了一片荒漠,在這片荒漠之中,DEV已經成為了一個令人耳目一新且充滿積極力量的綠洲。

這個社區有著很有趣的一面,它似乎非常注重初學者。我經常在這裡看到行業新手寫的帖子。我所說的新手是指那些在訓練營中尋找入門級工作,或者那些在不幸的“初級”程序員崗位上工作的有抱負的程序員。

我覺得這很有趣。相對的新手,通常對這個行業充滿著熱情和激情,這種激情是有感染力的。但這也讓我覺得自己是這個行業的熟手。

從業 20 年的程序員,“盤”出來的 5 種編程經驗 9

我想起鮑勃·馬丁在播客或演講中說過的話。

在過去的四、五十年裡,行業對程序員的需求急劇增長,以至於程序員的數量總是每五年翻一番。因此,擁有5年經驗的程序員佔據著整個行業一半以上的職位。

熟手的地位

Categories
程式開發

攜程度假智能客服機器人背後是這麼玩的

隨著人工智能的發展,人機交互技術愈發成熟,應用場景也越來越多。智能客服是人機交互在客服領域的一個應用,服務於客人以及相關的客服人員。本文將介紹智能客服在旅遊場景下的主要技術和應用。

當前度假的智能客服主要用於C端(客戶端)面向客人,以及客服端輔助客服的兩個角色。

面向客服端的是智能客服助手,用於對話窗口的側邊欄,提示客服人員當前客人問題的答案,客服人員可視情況來採納;而面向C端的智能客服則是直接服務於客人,回答客人問題。

智能客服又分為單輪問答的QA Bot和多輪對話的Task Bot,在攜程的旅遊場景下,以多輪對話的Task Bot居多。一般多輪對話的智能客服系統會切分為以下幾個模塊:客人的問題(Query)進來後首先經過NLU模塊抽象化為客人的意圖(intent)以及關鍵信息槽位(slot),意圖及槽位傳給DM模塊後,經過DST、DPL、NLG模塊返回答案。

  • NLU(Nature Language Understand
Categories
程式開發

餓了麼監控體系:從架構的減法中演進而來

本文由 dbaplus 社群授權轉載。

大家好!很榮幸有這樣的機會和大家交流,今天分享的主題為《餓了麼監控體系的演進》。

我差不多是2015年中加入餓了麼,主要是負責餓了麼整個監控平台的搭建,從0開始搭建這套監控系統。

今天主要從以下四塊給大家講一下,整個過程我們遇到了哪些問題,怎麼來解決這些問題,以及用怎麼樣的設計來支撐起這個系統。

一、背景

其實整個餓了麼監控系統在演進過程中主要分為如下3個階段:

餓了麼監控體系:從架構的減法中演進而來 29

  • 第一階段:主要由Statsd/Graphite/Grafana負責業務層的監控,ETrace負責全鏈路監控,Zabbix負責服務器層面的監控,ELog負責分佈式日誌搜索;
  • 第二階段:整個餓了麼也從單IDC演進成異地多活架構,所以對監控也提出了更高的要求,基於這個我們也自研LinDB,以支持多活架構下的監控,Zabbix慢慢被ESM/InfluxDB/Grafana所替換,使用ELK替換原來的日誌方案;