Quantcast
Channel: CAVEDU教育團隊技術部落格
Viewing all 678 articles
Browse latest View live

[ 新品介紹 ] 2018.09.07- 尺寸真的粉重要喔!!為您介紹全世界最小的Arduino相容開發板—— PICO

$
0
0
原文作者 由Pico團隊 圖片

由Pico團隊提供

翻譯 宗諭 審閱 阿吉老師
說明

圖、文內容經Pico團隊同意翻譯,特此致謝!原文請見這裡

PICO是一款非常小的Arduino相容開發板,大小只有0.6x 0.6英吋,與其他常見的Arduino開發板相較,它非常靈活且易於使用,尤其在開發小型應用的時候。

圖1

 

PICO在使用上非常簡單,只要用USB傳輸線連接電腦,然後上傳程式碼便可以開始使用。正如任何其他Arduino開發板一樣,PICO包括一個板載的USB接頭,腳位相容於麵包板且預裝了開機程式。PICO的尺寸使它在處理微型的應用時非常靈活,例如各種小型機器人、無人機、智慧眼鏡⋯⋯等等。因為標準尺寸的Arduino開發板通常無法用在這麼小的情境之中。

圖2

 

PICO團隊表示在募資活動結束之後就會釋出檔案,使這塊硬體完全開放原始碼。

圖3

 

至於PICO該如何使用?很簡單,就是連接電腦、上傳程式,然後盡情發揮它的功能吧!!

圖4

 

最後,一起來看看PICO的詳細規格吧!

圖5

 

想更進一步了解Arduino PICO,請到PICO的Kickstarter頁面看看。另外,也歡迎來機器人王國商城購買各種Arduino系列開發板,期待您做出各種有趣的作品。

 

相關文章


[ LinkIt 7697 ] 環保的錦囊妙計:如何用LinkIt 7697搭配聯發科技MCS,製作出魚菜共生裝置

$
0
0

現今,由於環保意識抬頭,社會各界紛紛意識到對環境友好的農耕方法,以及永續經營的重要性。所以,魚菜共生的高用水性,以及養魚、蝦所產生廢棄物的再生利用,是非常好永續利用環境、資源的一種耕種方式。這一篇文章,就是用手把手的方式,教大家如何自己做一個魚菜共生的裝置,一起來看看!

作者/攝影

CAVEDU教育團隊 薛皓云

文章分類 教學技術文
時間 2小時
成本 3700+元
難度 ***
材料表 1.LinkIt 7697開發板*1

(若欲購買,請洽機器人王國商城。)

2.RK IoT EXShield擴充板*1

(若欲購買,請洽機器人王國商城。)

3.5V1A變壓器*1

4.EIC 170孔麵包板*1

5.LED點矩陣 *1

6.土壤溼度感測器*1

7.繼電器模組*1

8.臥式有刷小水泵*1

9.Gravity:Waterproof DS18B20 Sensor Kit*1

(若欲購買,請洽機器人王國商城。)

10.Gravity:類比式酸鹼值感測器模組 *1

(若欲購買,請洽機器人王國商城。)

11.發泡煉石 60兩

12.SAMLA 11/22公升收納盒專用分隔板,透明 *1

13.SAMLA 收納盒 22公升 *1

14.跳線(母對母)10p

15.跳線(公對母)10p

16.塑膠軟管 45cm

 

需要的工具:

1.電工膠帶

2.熱熔膠槍

3.螺絲起子

硬體組裝:

1.將沉水馬達線透過杜邦線延長(紅正白負)

圖1

 

2.將沉水馬達利用熱融膠,黏至SAMLA收納盒 22公升底部角落。

圖2

 

3.將沉水馬達的線,利用熱融膠沿著箱子角落固定住。

圖3

 

4.接上塑膠軟管至沉水馬達上,並放著。

圖4

 

5.將RK IoT EXShield擴充板,利用熱融膠黏至SAMLA收納盒22公升側面(寬的那一面)。

圖5

 

圖6

 

6.在RK IoT EXShield擴充板上方,黏上繼電器。

圖7

 

7.將沉水馬達的白色電線接至繼電器上NO腳位

8.從繼電器COM腳位接一條跳線,至RK IoT EXShield的GND上。

圖8

 

9.繼電器上VCC、GND、IN,分別接上RK IoT EXShield的5V、GND、D8。

10.沉水馬達的正極,接於杜邦母頭左上角數來第4腳位。

圖9

 

11.將Waterproof感測器的水下感測器的黃、紅、黑線,分別接上Waterproof感測器轉接器的A、B、C。

圖10

 

12.將Waterproof感測器轉接器黏至外箱右上角上

圖11

 

13.將Waterproof感測器轉接器,接至RK IoT EXShield擴充版的D2。

14.將Waterproof感測器,放至SAMLA收納盒 22公升中。

圖12

 

15.裁切pH計的泡棉收納盒

圖13

 

圖14

 

16.將裁切完的泡棉,黏至SAMLA收納盒 22公升側面中間(窄的那一面)。

圖15

 

17.在SAMLA收納盒 22公升側面(窄的那一面),左下角黏上pH計轉接器。

18.接上pH計並放入泡棉收納盒中

圖16

 

19.將pH計轉接器,接至RK IoT EXShield擴充版的A1。

20.土壤感測器S、+、-,分別接至RK IoT EXShield擴充版的A0、5V、GND。

圖17

 

21.將發泡煉石,裝至SAMLA 11/22公升收納盒,專用分隔板中約5cm高。

圖18

 

22.將SAMLA 11/22公升收納盒專用分隔板,放至SAMLA 收納盒 22公升上,並將塑膠軟管從SAMLA 11/22公升收納盒專用分隔板中間穿出。

圖19

 

23.將土壤感測器置入發泡煉石中

圖20

 

24.將DHT11黏至RK IoT EXShield擴充板右下角

圖21

 

25.將DHT11的VCC、DATA、GND,分別接到RK IoT EXShield擴充版的VCC、A2(P16)、GND。

這樣硬體部分就大功告成囉!!

圖22

 

接下來是程式部分:

1.申請MCS(MediaTek Cloud Sandbox,簡稱MCS,由聯發科技所推出的雲端服務)帳號。

2.新增產品原型名稱設定如圖23

圖23

 

3.新增完畢後點選詳情

圖24

 

4.新增顯示通道酸鹼值——ID:ph;資料型態:浮點數;單位:N/A。

圖25

 

5.新增顯示通道水下溫度——ID:temp_wa;資料型態:浮點數;單位:攝氏。

圖26

 

6.新增顯示通道土壤溼度——ID:Mo;資料型態:分類Key1名稱:乾;Key1值:D;Key2名稱:濕;Key2值:W。

圖27

 

7.新增顯示通道室內溫度——ID:T;資料型態:整數;單位:攝氏。

圖28

 

8.新增顯示通道室內溼度——ID:H;資料型態:整數;單位:百分比。

圖29

 

9.新增測試裝置

圖30

 

10.完成後前往詳情

圖31

 

11.記下自己的 DeviceID 及 DeviceKey

圖32

 

12.開啟程式ino

13.將第7、8行的WiFi帳號密碼,更改成為自己的WiFi帳號密碼。

圖33

 

14.第10行中的MCS DeviceID及DeviceKey改成自己的ID及Key

圖34

 

15.將程式燒入至LinkIt 7697中,並將7697裝至RK IoT EXShield擴充板上。

16.接上5V1A電源等待7697連上網

 

這樣,我們自己的魚菜共生裝置就完成了!趕快動手嘗試一下喔!

 

相關文章

[ 介紹文 ] 2018.09.13- 從Apple秋季新品發表會,整理Apple目前最新的機器學習應用

$
0
0
文字撰寫

宗諭、阿吉老師

審閱

阿吉老師

照片來源 pixabay 發表會地點 Steve Jobs Theater
發表會時間

2018年9月13日

部分觀點、看法參考自WIRED網站文章:APPLE’S LATEST IPHONES ARE PACKED WITH AI SMARTS  ,特此致謝!

完整看完這次的Apple秋季新品發表會,其中真是有相當多的亮點,包括更強大的Apple watch、最新的A12 Bionic 手機晶片、革新的iPhone照相系統,更為環保的手機生產、製造、回收方式⋯⋯等等。本文將把焦點放在新一代iPhone上所整合的AI人工智慧功能。小編將為讀者們整理出Apple將機器學習功能應用在最新一代iPhone手機上的幾個重點。

圖1 Apple更多將機器學習應用至新一代iPhone上

 

根據小編觀察,Apple在新一代iPhone以自行設計的「A12仿生」手機晶片為基礎整合了更多了機器學習的功能。根據蘋果台灣官網上的資料(https://www.apple.com/tw/iphone-xs/a12-bionic/),這款晶片搭載了一個「神經網路引擎」,每秒能執行五兆次運算來做到「即時的機器學習(Real-time Machine Learning)」。

 

上一段提及的「即時的機器學習」,實際在新一代iPhone上的應用是什麼呢?舉例而言,當小編想使用新一代iPhone照相,當我按下手機上快門後,A12晶片的「神經網路引擎」會快速運作從照片的場景中精確辨識出所要拍攝的人物、臉孔,然後把這項資訊提供給iPhone相機內建的「人像模式」使用,使我們可以在運用「人像模式」拍攝照片完畢後,自由地調整背景虛化。在這裡,真是要給Apple按個讚,因為通常一張照片景深的控制,多半在按下相機快門那一剎那就決定了,現在藉由「神經網路引擎」運用機器學習的技術,可在照片拍攝好後調整背景虛化,的確能夠幫助更多非專業攝影師,拍攝出更具質感、更有創意的照片。

圖2 搭配機器學習的技術,使用者可運用新一代iPhone相機,輕鬆拍攝出具備適合景深的照片。

 

除透過「神經網路引擎」在iPhone上實踐機器學習之外,Apple更首次讓非蘋果的開發人員,可透過Core ML(https://developer.apple.com/documentation/coreml)運用前面提到的「神經網路引擎」。什麼是Core ML呢?簡而言之,它是一個Apple開發的機器學習框架,目的是讓開發者可將機器學習部署至Apple裝置上。這樣的開放、突破將帶出什麼影響呢?預期將會有更多開發者能把機器學習運用到他們所設計的App上,讓使用者在社交、藝術創作⋯⋯等等層面上,有更棒、更豐富的體驗。

 

最後要提到的是,Apple總公司雇用了來自Google的頂尖AI主管John Giannandrea(https://www.apple.com/tw/leadership/john-giannandrea/),擔任機器學習與AI策略的主管,直接向執行長Tim Cook負責。由此可知,Apple加強了在機器學習與AI人工智慧上的發展力道,不僅是開發人員可以運用Apple現有的產品做出更棒的產品,一般使用者也能享受到更好的軟硬體操作體驗。

 

備註:若欲購買CAVEDU自造的AI人工智慧產品,請洽機器人王國商城,謝謝。

 

相關文章

[Raspberry Pi] 電腦跨網段,也可遠端連線樹莓派喔!!

$
0
0

本篇為[Raspberry Pi] 如何使用遠端桌面 的延續文章,使用RealVNC與各位讀者分享,如何不需在同一網段內也可進行遠端連線。

作者/攝影

CAVEDU教育團隊 許鈺莨

文章分類 教學技術文
時間 一小時內
成本 最低1500起
難度

*

材料表
  1. 電腦或其他行動裝置
  2. Raspberry Pi(若欲購買樹莓派,請洽機器人王國商城)

1.在Raspberry Pi上安裝VNC

一開始必須在Raspberry Pi安裝VNC Connect,建議外接螢幕、鍵盤、滑鼠,或用類似像Putty、MobaXterm的軟體SSH登入Raspberry Pi,相關教學請看
[Raspberry Pi] 完全不接螢幕鍵盤滑鼠,電腦一開始就用網路線遠端連線Pi 

 

打開終端機之後,請鍵入:

	sudo apt-get update
	sudo apt-get install realvnc-vnc-server
圖1

 

圖2

 

圖3 按Y同意安裝,即可安裝完成。

 

如何開機自動執行RealVNC

a.有接螢幕、鍵盤、滑鼠

圖4 點選左上角樹莓派圖示,選「Preferences」 ->「Raspberry Pi Configuration」。

 

圖5 選「Interfaces」,再至VNC選「Enabled」。

 

圖6 重新開機即可

 

b.使用Putty或MobaXterm等軟體SSH遠端登入

在終端機輸入:

	sudo raspi-config 

 

圖7

 

會出現選項,如下圖:

圖8 選「Interfacing Options」

 

圖9 再選VNC選項

 

圖10 選擇即可設定完成

 

2.在VNC官網註冊帳號

就和登入臉書或LINE等通訊軟體的概念一樣,要先註冊一組帳號,VNC官網: https://www.realvnc.com/en/onboarding/home/ ,註冊完畢後,便可依自己的帳號登入。

圖11 建立新帳號

 

圖12 勾選「我不是機器人」選項

 

圖13 填寫個人相關資訊

 

圖14 其它行動裝置教學

 

由於RealVNC可由帳號登入,所以不管是電腦或是可上網的行動裝置,只要安裝RealVNC Viewer,皆可遠端登入,讓我們以電腦為例子。

圖15 收到驗證信件

 

圖16 註冊成功

 

如圖15,當收到驗證信件時,請按下「VERIFY EMAIL」按鈕後,會跳轉至官方頁面,顯示如上圖16,表示註冊成功。

 

3.下載RealVNC Viewer至電腦

圖17 下載RealVNC Viewer(以Windows版本為例)

 

圖18 安裝完成畫面

 

圖19 按右上角「Sign in」輸入帳號

 

圖20 登入畫面,右邊為欲登入Raspberry Pi的區域。

 

4.遠端登入Raspberry Pi

圖21 新增連線對象,選「File」->「New connection」。

 

圖22 輸入Raspberry Pi的ip 位置及名稱後,按下OK。

 

圖23 成功新增連線對象Raspberry Pi

 

圖24 輸入驗證的使用者和密碼

 

這裡預設Username為「pi」,Password為「raspberry」。

圖25 第一次連線會出現認證警告,按「Continue」即可。

 

圖26 遠端登入成功畫面

 

相關文章

[ 介紹文 ] 2018.09.19- 純粹創客精神! BARTER X BARTER 小創客平台 孩童創作圓夢 繪出人生新風采

$
0
0
文字撰寫

宗諭

照片

BARTER X BARTER 小創客平台;pixabay

說明

感謝BARTER X BARTER 小創客平台授權使用官網上的文字、圖片及影片、內容,特此致謝!

CAVEDU教育團隊在四月份時,曾報導過一位劉俊民老師 ,他因自身成長背景的緣故,特別樂意幫助偏鄉的孩童學習機器人教育。而這一篇文章,我們要介紹一個小創客平台「BARTER X BARTER」,這個平台成立的主要目的,就是幫助教育資源不足地區的孩童,讓他們可透過繪畫⋯⋯等等的自造作品,在平台上許願,好使圓夢天使(意指更有能力的大人)實現他們的願望。

圖1 小創客完成作品並許願,圓夢天使完成小創客的夢想。

 

首先,讓讀者們看一段「BARTER X BARTER」平台的介紹影片:

 

讀者們大概會好奇,究竟這個平台如何運作呢?其實他的運作模式相當簡單,基本上是「以物易物」,就是小朋友在平台註冊一個帳號,上傳個人的作品;小朋友可以針對這個作品許一個合理的願望,亦即一個想要兌換的物品;之後讓圓夢天使(有能力的大人)幫助小朋友實現願望。當然,這只是平台運作最基本的概念、架構,「BARTER X BARTER」已經為平台設計好一套更為詳細、周延的規範,請參考這裡。而平台也會幫助小朋友們,一起思考作品轉換成產品的可能性,提升作品價值,讓小朋友從小就培養出自力更生的想法和技能。

 

此外,平台本身亦會媒合廠商,協助孩子的創作商品化。若某位孩子的作品被看見,平台會與這位孩子的監護人聯繫,取得進行商品化的授權,讓作品可在許多更正式的場合、管道,被社會大眾看見並欣賞。而其中的利潤,會按照合約分潤給孩子,使孩子能透過創意,改善生活。

圖2 簡單的概念,把小創客與圓夢天使串連起來。

 

特別的是,「BARTER X BARTER」平台的實際辦公室位在台東!為什麼會在台東呢?因為在台東縣政府持續努力下,成立了一個青年創業基地,透過資金、課程上的輔導⋯⋯等等協助,吸引相當多青年人前往台東創業,而「BARTER X BARTER」平台的創辦人——「星期天老師」許琳翊正是其中一位。

 

創立全台灣第一個兒童教育圓夢平台,許琳翊最主要想解決兩個問題:第一提供孩童一個保存作品的空間、平台;第二讓孩子有機會透過創作完成夢想!從最初簡單的想法,至現今「BARTER X BARTER」平台上已有相當多件作品,許琳翊不僅幫助許多孩子圓夢,更協助他們尋覓人生不一樣的可能性。

圖3

 

廣義而言,創客是一群人、一個運動、一種文化,只要是樂於分享並動手做的任何自造者(Maker)都是創客。而「星期天老師」許琳翊創立「BARTER X BARTER」平台,正式創客精神非常好的詮釋。

圖4

 

若讀者們想進一步了解「BARTER X BARTER」平台,請點這裡 。若想購買任何創客相關產品,請洽機器人王國商城,謝謝。

 

相關文章

[ 翻譯 ] 2018.09.21- 認識TensorFlow.js,在瀏覽器就能用JavaScript 訓練機器學習模型喔!

$
0
0
原文作者

Josh Gordon  Sara Robinson

圖片

Josh Gordon、Sara Robinson提供

翻譯 宗諭 審閱 阿吉老師
說明

感謝兩位作者的授權翻譯,特此致謝!原文請見這裡

We’re excited to introduce TensorFlow.js, an open-source library you can use to define, train, and run machine learning models entirely in the browser, using Javascript and a high-level layers API. If you’re a Javascript developer who’s new to ML, TensorFlow.js is a great way to begin learning. Or, if you’re a ML developer who’s new to Javascript, read on to learn more about new opportunities for in-browser ML. In this post, we’ll give you a quick overview of TensorFlow.js, and getting started resources you can use to try it out.

 

我們很興奮能向大家介紹TensorFlow.js。TensorFlow.js是一個完全開放原始碼的函式庫,只要運用Javascript與其高階API,就能在瀏覽器中直接定義、訓練並運行機器學習模型。若您本身是一位Javascript開發者,但對機器學習不是那麼熟悉,那TensorFlow.js是一個很好的學習方式。又或者,您是一位對Javascript不太熟的機器學習開發者,請繼續閱讀本文以幫助您深入了解更多關於瀏覽器內機器學習的新契機。在這篇文章中,我們將快速介紹TensorFlow.js,還有您可用來嘗試TensorFlow.js的快速上手資源。

 

In-Browser ML

Running machine learning programs entirely client-side in the browser unlocks new opportunities, like interactive ML! If you’re watching the livestream for the TensorFlow Developer Summit, during the TensorFlow.js talk you’ll find a demo where @dsmilkov and @nsthorat train a model to control a PAC-MAN game using computer vision and a webcam, entirely in the browser. You can try it out yourself, too, with the link below — and find the source in the examples folder.

 

瀏覽器內的機器學習

在瀏覽器客戶端就能直接執行機器學習程式能帶出許多新契機,例如互動式的機器學習!您可以看看TensorFlow開發者大會直播,在關於TensorFlow.js的分享中有一段是@dsmilkov@nsthorat 正demo一個完全跑在瀏覽器中的範例,運用電腦視覺和網路攝影機訓練一個模型以控制小精靈遊戲。您也可以使用下面的連結親自試一下,並在examples資料夾中找到原始程式碼。

 

If you’d like to try another game, give the Emoji Scavenger Hunt a whirl — this time, from a browser on your mobile phone.

 

如果想試試看其他遊戲,可以試試看Emoji Scavenger Hunt ,但這次請使用您手機上的瀏覽器嘗試。

圖1

 

ML running in the browser means that from a user’s perspective, there’s no need to install any libraries or drivers. Just open a webpage, and your program is ready to run. In addition, it’s ready to run with GPU acceleration. TensorFlow.js automatically supports WebGL, and will accelerate your code behind the scenes when a GPU is available. Users may also open your webpage from a mobile device, in which case your model can take advantage of sensor data, say from a gyroscope or accelerometer. Finally, all data stays on the client, making TensorFlow.js useful for low-latency inference, as well as for privacy preserving applications.

 

由使用者的角度來說,在瀏覽器中就能執行機器學習代表不用再安裝任何函式庫或驅動程式了。只要打開網頁就可以執行程式了。此外,它還可支援GPU加速。TensorFlow.js會自動支援WebGL,當GPU可用的時候,它會在背景中加速您的程式。使用者也可透過行動裝置開啟網頁,這樣一來您的模型就能取用手機的感測器資料,例如陀螺儀或是加速度計。最後,所有資料皆保留在客戶端上,使TensorFlow.js既適用於低延遲推論,也適用於需要保護的應用程式。

 

What can you do with TensorFlow.js?

If you’re developing with TensorFlow.js, here are three workflows you can consider.

  • You can import an existing, pre-trained model for inference. If you have an existing TensorFlow or Kerasmodel you’ve previously trained offline, you can convert into TensorFlow.js format, and load it into the browser for inference.

 

  • You can re-train an imported model. As in the Pac-Man demo above, you can use transfer learning to augment an existing model trained offline using a small amount of data collected in the browser using a technique called Image Retraining. This is one way to train an accurate model quickly, using only a small amount of data.

 

  • Author models directly in browser. You can also use TensorFlow.js to define, train, and run models entirely in the browser using Javascript and a high-level layers API. If you’re familiar with Keras, the high-level layers API should feel familiar.

 

我們可以運用TensorFlow.js做些什麼?

若您正使用TensorFlow.js進行開發,以下三個工作流程是您可考慮的:

  • 您可匯入現有、預先訓練好的模型進行推論。若您有一個現有的TensorFlow或Keras模型,您可將其轉換為js的檔案格式,並將其載入至瀏覽器中進行推論。

 

  • 您可以重新訓練一個已匯入的模型。在前面提及的小精靈遊戲範例中,您可使用遷移式學習,透過使用一種叫做「影像再訓練(Image Retraining)」的技術,運用在瀏覽器中收集到的少量數據,做到在離線狀態下也能訓練現有模型。這是一種只需少量資料也能快速訓練精確模型的方法。

 

  • 直接在瀏覽器中建立模型。您也可以用TensorFlow.js,運用Javascript和高階API,直接在瀏覽器內定義、訓練並運作模型。若您熟悉Keras,那麼這些高層API對您來說應該不陌生。

 

Let’s see some code

If you like, you can head directly to the samples or tutorials to get started. These show how-to export a model defined in Python for inference in the browser, as well as how to define and train models entirely in Javascript. As a quick preview, here’s a snippet of code that defines a neural network to classify flowers, much like on the getting started guide on TensorFlow.org. Here, we’ll define a model using a stack of layers.

 

一起來看看程式碼

若您願意,您可直接使用範例教程開始學習。它們展示了如何匯出用Python定義的模型並在瀏覽器中進行推論,還有如何單單使用Javascript定義並訓練模型。很快提一下,以下的程式碼,它定義了一個可以分類花朵的神經網絡,很類似TensorFlow.org上的入門教學。在此用到了多個層來定義模型。

import * as tf from ‘@tensorflow/tfjs’;
const model = tf.sequential();
model.add(tf.layers.dense({inputShape: [4], units: 100}));
model.add(tf.layers.dense({units: 4}));
model.compile({loss: ‘categoricalCrossentropy’, optimizer: ‘sgd’});

 

The layers API we’re using here supports all of the Keras layers found in the examples directory (including Dense, CNN, LSTM, and so on). We can then train our model using the same Keras-compatible API with a method call:

 

這個layers API支援範例目錄中所有的Keras層(包括Dense、CNN、LSTM等等)。接著,只要呼叫對應的方法就可以使用相容於Keras的API訓練模型。以下是這個方法:

await model.fit(
  xData, yData, {
    batchSize: batchSize,
    epochs: epochs
});

 

The model is now ready to use to make predictions:

這個模型已經可以進行預測了:

// Get measurements for a new flower to generate a prediction
// The first argument is the data, and the second is the shape.
const inputData = tf.tensor2d([[4.8, 3.0, 1.4, 0.1]], [1, 4]);

// Get the highest confidence prediction from our model
const result = model.predict(inputData);
const winner = irisClasses[result.argMax().dataSync()[0]];

// Display the winner
console.log(winner);

 

TensorFlow.js also includes a low-level API (previously deeplearn.js) and support for Eager execution. You can learn more about these by watching the talk at the TensorFlow Developer Summit.

 

TensorFlow.js也包括一個低階的API(前身是deeplearn.js),並且支援Eager execution。請參考TensorFlow開發者大會的內容,您就能更深入了解。

圖2 TensorFlow.js API的概述

 

How does TensorFlow.js relate to deeplearn.js?

Good question! TensorFlow.js, an ecosystem of JavaScript tools for machine learning, is the successor to deeplearn.js which is now called TensorFlow.js Core. TensorFlow.js also includes a Layers API, which is a higher level library for building machine learning models that uses Core, as well as tools for automatically porting TensorFlow SavedModels and Keras hdf5 models. For answers to more questions like this, check out the FAQ.

 

TensorFlow.js與deeplearn.js的關聯是什麼?

這是一個好問題!TensorFlow.js是一個為了機器學習而誕生的JavaScript工具生態系,是deeplearn.js的繼承者,而deeplearn.js現在則被稱為TensorFlow.js Core。TensorFlow.js還包括一個Layers API,這是一個更高階的函式庫,能運用Core來建置機器學習模型,它也是一款自動移植TensorFlow SavedModels與Keras hdf5模型的工具。更多類似問題的答案,請參閱FAQ

 

Where’s the best place to learn more?

To learn more about TensorFlow.js, visit the project homepage, check out the tutorials, and try the examples. You can also watch the talk from the 2018 TensorFlow Developer Summit, and follow TensorFlow on Twitter.

 

哪裡最適合學習TensorFlow.js呢?

想更深入了解TensorFlow.js,請到本專案的首頁查看教學,玩玩看各個範例。您還可觀看2018年TensorFlow開發者大會的演講,並在Twitter上關注TensorFlow

 

Thanks for reading, and we’re excited to see what you’ll create with TensorFlow.js! If you like, you can follow @dsmilkov@nsthorat, and @sqcaifrom the TensorFlow.js team on Twitter for updates.

 

謝謝您耐心讀完本文,我們很期待看到您運用TensorFlow.js做出的成果!喜歡的話,可以在Twitter上關注TensorFlow.js團隊的@dsmilkov@nsthorat@ sqcai 等人的帳號來獲得最新消息。

 

備註:若您想購買AI人工智慧相關產品,請洽機器人王國商城,謝謝。

 

相關文章

[ 介紹文 ] 2018.09.25- 當車子有了智慧,對我們的行車體驗有何影響?來看看Smart Car!

$
0
0
作者

Josh Go成功大學資訊工程系教授
黃崇明/成功大學資訊工程系博士生林士颺

圖片

pixabay

說明

轉載、改寫自「臺灣網路科教館」生活科學補給站內文章,特此致謝!原文請見

現今,車輛多半只負責運送乘客抵達目的地。然而,不久的將來,「智慧車」將提供過往未能達成的許多新功能,例如:主動式安全系統、自動駕駛系統、即時車流導航資訊系統⋯⋯等等。目前只出現在科幻電影內的許多特殊功能,即將實現於本文主角「智慧車」上。

 

什麼是智慧車?

「智慧車」不同於傳統汽車,它結合汽車、半導體、電子、資通訊及光電等科技於一身。其上整合應用多種不同感測器、雷達、無線通訊、攝影機等裝置,以達成我們需要的功能。「智慧車」的開發,通常以車輛安全、舒適便利及環保節能等三方向為主軸,可進一步探討如下:

圖1 廠商開發的智慧車

 

一、安全防護

車輛的安全性始終為車廠與駕駛關注的重要議題。以往,車廠透過許多技術提升車輛安全性,而未來的科技將更進一步於事故可能發生前,即產生安全防護。例如,在主動式防碰撞系統中,車輛利用裝配於其上裝置,提供的資訊進行運算,在事故可能發生前,即警示駕駛或產生相對應動作,例如自動減速⋯⋯等等,降低事故發生機率。

 

二、便利駕駛

未來的「智慧車」將提供更完整、豐富的功能,減輕駕駛負擔。其中一種無人駕駛的智慧車,許多科技大廠正積極研發中。無人智慧車提供語音或觸控螢幕,讓使用者輸入目的地,再依即時車流量資訊選擇最佳路線,將乘客以自動駕駛方式,安全運載至目的地。

圖2 無人智慧車提供語音或觸控螢幕(示意圖)

 

三、即時導航

以往的車輛導航系統,依全球定位系統(GPS)將車輛位置定位後,顯示於螢幕上,並依所設定目的地,找出較佳導航路線。而未來的即時導航系統,在尋找導航路線時,將同時考量車流量與擁塞⋯⋯等資訊,避免將車輛導引至塞車路段,讓駕駛可快速抵達目的地,同時降低廢氣污染,達成環保節能的目標。

 

四、車間通訊

「智慧車」能提供以往無法達成的許多功能。為達到這些功能,彼此交換車間訊息即為必須。除了行車資訊的傳遞和交換,「智慧車」更能透過車間通訊等方式,讓駕駛在車輛上連接各種不同網路。目前,車間通訊的重要發展,以結合通訊(Telecommunications)與資訊(Informatics)的車用資通訊(Telematics)技術為主。

 

五、環保要求

近年來,地球的平均溫度,因二氧化碳大量排放而日趨升高。為保護這獨一無二的地球,「智慧車」將以零汙染、零碳排的電力能源為動力系統。智慧車於日光充足時,利用太陽能電板補給電力;當日光微弱或夜晚時,可利用家用電源補足電力。此外,為便利使用者,不需電線的「無線充電系統」也將使用於智慧車上,只需將車開回車庫內(不需直接連接電源),即可自動替車子充電。

圖3 智慧車以電力能源做動力系統

 

六、延伸應用

除本身能提供的服務和功能外,「智慧車」更能擴展應用領域。例如,結合智慧型運輸系統(Intelligent Transport Systems,ITS) ,以提升先進交通管理服務、先進旅行者資訊服務、先進公共運輸服務、先進車輛控制安全服務、商車營運服務、緊急事故支援服務、電子收付費服務、資訊管理系統、弱勢使用者保護服務等九大領域。

 

小結

為更快速抵達目的地,以及有更安全、舒適的行車體驗,「智慧車」應運而生,並提供過往車輛未能具備的功能。而在不久的將來,過去只有在科幻電影中現身,車輛的種種炫麗功能,將可能一一實現在智慧車上。就讓我們拭目以待吧!

 

相關文章

【臺北市職能發展學院 X CAVEDU教育團隊】實戰!人工智能服務與Opendata大數據專題實作​-學員錄取名單

$
0
0

主辦單位:臺北市職能發展學院

培訓單位:翰尼斯企業有限公司

學員錄取名單:

學號 Participant Name
10710001 魏O儀
10710002 阮O裕
10710003 李O熹
10710004 邱O鈞
10710005 蘇O誠
10710006 黃O曦
10710007 許O升
10710008 張O禎
10710009 蔡O峰
10710010 蕭O山
10710011 何O仁
10710012 李O峯
10710013 謝O吉
10710014 龔O如
10710015 劉O仲
10710016 曾O
10710017 陳O中
10710018 李O娟
10710019 林O昀
10710020 宋O哲
10710021 董O彤
10710022 張O銘
10710023 石O倉
10710024 白O元
10710025 龍O樺
10710026 許O賓

上課地點:臺北市中山區玉門街1號 (台北自造實驗室Fablab Taipei)

 

注意事項:

1.第一次上課請遞交學員資料卡、職能進修契約書,1吋大頭照(2張)、身份證正反面影本。

2.受訓期間膳宿自理,受訓期滿全期訓練成績合格者,由本單位發給結訓證書。於進修課程期間,除公假、病假、喪假外,其餘請假事由一律以事假認定。未依規定辦理請假時,均以曠課論。扣除公假及喪假外,請假時數累積達全期課程總時數1/5(含)以上者、曠課時數達全期課程時數1/10(含)以上者或參訓期間行為不檢,情節重大者,勒令退訓。

3.已報名繳費學員因故無法參訓,得於開訓前申請退還所繳費用,未於開訓前申辦者,已繳交之訓練費用,除該班次停辦外,一概不予退還。

 

更多課程詳情,請參閱CAVEDU教育團隊首頁(http://www.cavedu.com)。


[ 記錄文 ] 2018.09.24-小創客們的驚奇之旅(一)—— 板橋高中國際創客交流團記行

$
0
0

在顏椀君、李瑞婷、林毓琇、李國弘四位老師,以及多位師長、夥伴們共同努力下,新北市立板橋高中國際創客交流團已第四年成行!今年的國際創客交流團,人數幾乎是已往的三倍;行程新增美東線,橫跨兩個州;並要帶領學生們專題發表及自助旅行。雖然,顏老師與夥伴們有時會覺得過程真是「累到爆」!但每每看見參加學生的收穫、成長,心中便覺安慰,更獲得繼續舉辦交流團的動力。現在,就讓我們透過顏椀君老師的文字和照片,一起跟他們來趟跨出人生舒適圈的國際創客交流吧!

作者

顏椀君

圖片

顏椀君

說明

文字、照片皆來自顏椀君老師的臉書貼文,感謝授權,特此致謝!

Day 1——初抵哈佛大學 展開學習冒險

秉持帶領學生全自助的精神,第一天由高一學生負責帶路,展開一趟瘋狂迷路的旅程。30個人就在街口團團轉,上地鐵又下地鐵,再搭上公車,終於抵達哈佛大學。

在哈佛大學的學習任務,除了接受哈佛學子精彩的校園導覽,學生們還必須在大雨滂沱中,限時完成我們所賦予的學習任務。題目(包含指定題)五選三,指定題為個人作業:

 

1.個人夢想題:在白板紙上寫下夢想,並在相關系所的建築物前留影。
2.哈佛名人影片介紹:在相關建築前錄影,以中、英文雙語介紹名人。
3.蒐集哈佛關鍵字(10組以上,包含訪談人背景來源及科系)。
4.哈佛學生訪問:每組訪問5至6人,了解他們的生涯(科系及未來想的志向)。
5.詢問校方可否旁聽一堂課(不同組的學生不能選同一堂課)。

 

一整天下來,學生們不僅全數完成任務,還有兩組學生分別成功進入課堂,旁聽哈佛大學的哲學課及化學課。對我們來說,唯有讓學生積極爭取自己的學習機會,才能化為他們生命中真正主動向前的力量。

當晚的檢討會,我們聚在一起分享近兩小時。過程中,我體會,如何讓每位學生每天都有成長,確實相當具有挑戰。

圖1

 

Day 3——MIT麻省理工學院 聆聽學長經驗談

波士頓的天氣終於放晴,學生們也因著陽光及時差調整,而活躍起來,興奮地在MIT校園內穿梭、訪談,放肆享受著這號稱全球第二聰明大學的種種。

第一站是MIT Museum,展示相當多趣味且神奇的物理機械裝製。

第二站是NuVu Studio。這是個相當特殊的學校,以專案方式為課程主軸,教學區域小而美、小而精,更重要的是,這裡激發許多學生珍貴的想像力、創造力及實踐力NuVu Studio是台灣各級學校推動Maker專題式教學時,在課程設計上相當值得借鏡的學校。

第三站是MIT Media Lab。這裡大概是一天行程中,所有學生印象最深刻的經歷!因為我們特別情商目前在MIT Media Lab的Biomechatronics Leg Lab內,全球知名生物機電跨域整合義肢實驗室計畫主持人Hugh Herr門下,來自台灣的優秀學生謝宗翰,分享他在實驗室內關於仿生義肢、輔具、生物力學、肌肉骨骼系統及神經科學的研究,並帶領所有師生入實驗室內參訪。更感人的是參訪後,謝宗翰分享他一路的求學經歷與人生觀。

圖2 謝宗翰分享在Biomechatronics Leg Lab內的研究經歷

 

最後,在國立臺灣科學教育館陳雪玉館長的引薦及安排下,我們得以邀請到今年就讀MIT二年級的陳韋同同學。在建國中學科學班就讀期間,曾取得國際科展一等獎的韋同,因與學生們年紀相仿,貼近地與學生們分享他的求學經驗,以及在MIT生活的點點滴滴。雖然韋同外表看似個靦腆大男孩,卻有著對自己生涯目標與夢想,明確的執行力與毅力。

圖3 陳韋同同學(坐在椅子上者),與同學們暢談在MIT求學、生活的點滴。

 

一整天行程下來,真的只有「充實」兩個字足以形容。


 

接續本文後,將有更多來自顏椀君老師,關於這次國際創客交流團的第一手分享!請讀者們持續關注CAVEDU教育團隊的技術部落格,謝謝。

 

備註:若想購買創客相關產品,歡迎洽詢機器人王國商城。

 

相關文章

[ AI人工智慧-神經運算 ] 淺談人工智慧實作,開源工具Tensorflow與安裝(Windows篇)

$
0
0

大家在網路、報章雜誌上是不是很常聽到AI人工智慧呢?2018年許多人在研究、開發AI的神經網路運算,您聽過神經網路運算嗎?今天與讀者們快速分享一些AI、神經網路運算資訊,以及我們設計人工神經網路實作課程時,在Windows系統上使用的一些工具。

作者/攝影

CAVEDU教育團隊 徐豐智

文章分類 教學技術文
時間 30分鐘
成本 電腦
難度

**

材料表 Window 10 作業系統

說到人工智慧,相關技術的人會想到機器視覺、自然語言⋯⋯等等專有名詞,今天與讀者們分享的AI課程,是神經網路運算的相關實作。

 

Google的Deepmind團隊使用了Alpha GO 挑戰世界棋王獲勝的事,大家還記得嗎?(快速回憶AlphaGO-連結,這項成果該團隊使用的是神經網路運算技術,工具是Tensorflow。Gmail的垃圾郵件判讀、Google相簿臉部識別、Google翻譯,Google在Tensorflow上以Opensource的方式開放出來,大家可按照自己想做的AI案例收集樣本資料,訓練AI判斷的模型。

 

今年九月起,CAVEDU教育團隊與微軟合作設計AI課程(微軟技術中心上機實作課程-人工智慧實務工作坊:故事連結基於這次經驗,與大家分享如何在Windows作業系統下,安裝AI相關工具套件。首先,我們要安裝的是Tensorflow與keras、Opencv等環境。

 

淺談人工智慧實作

首先,有幾種與運算效能不強的硬體整合的AI方式(想直接安裝Tensorflow,可跳過這一段)。

 

一、使用物聯網將判斷交給雲端處理,並將處理結果回傳

終端裝置(樹莓派、Linkit7688⋯⋯)負責收集影像、語音資料,將這些影像、語音資料上傳至雲端AI(Google、Azure、IBM bluemix⋯⋯等),雲端AI判斷後,將判斷結果回傳至終端裝置,終端裝置再進行動作。

 

A、微軟認知服務,解析人的年齡、性別、情緒實作教學連結

 

B、Google語音助理的服務,將聲音上傳到Google,交由雲端處理(實作教學連結、影片連結)

 

C、IBM Bluemix服務做TJBOT聊天機器人(實作教學連結)

 

二、使用Opensouce的工具,建立自己的AI專案,訓練AI

建立判斷AI的工具,透過AI工具提供的演算法和判斷方法,收集相關資料(比如說,透過圖片判斷動物園的動物種類),訓練AI,提高AI的的推理能力(從可分別猩猩和大象的差別,提升至可分別猩猩和獼猴的差別)。

 

A、Tensorflow與keras的機器學習工具(相關文章連結)

 

B、Caffe的機器學習工具(相關文章連結)

 

三、邊緣運算、智慧邊緣:

結合訓練的AI,將運算交給終端裝置(手機、樹梅派⋯⋯等等),解決將資料傳給雲端,再回傳資料導致的延遲。(比如說,汽車上的AI,如果因網路不順,導致判斷過慢發生車禍等意外;又或者在製造業使用的機器手臂,判斷過慢導致產線的良率不穩。)

 

A、Nvidia的GPU顯示卡,幫助電腦運算

 

B、Intel的低功耗加速AI推理的運算棒(相關文章連結)

 

在Windows上安裝TensorFlow的環境

我們要開在Windows作業系統上安裝Tensorflow的教學。請將安裝的電腦,額外預留5GB的硬碟容量以安裝相關軟體。

 

安裝順序:

一、安裝Anaconda環境

二、建立獨立的Anacoonda(Python)虛擬環境

三、安裝TensorFlow 、 Keras、Opencv

四、執行手寫辨識範例

 

一、安裝Anaconda環境

對AI初學者來說,安裝TensorFlow環境、使用的套件雜亂,相互不匹配,是第一道難關。但Anaconda可將這件事變得很單純,因為Anaconda除了支援Windows,也支援Mac、Linux作業系統。之後有空,再跟大家分享在Windows App上安裝ubuntu作業系統。

 

請先至Anaconda網站上下載軟體,點選下圖左邊的Windows選項

https://www.anaconda.com/download/

圖1

 

選擇下載的安裝環境,有Python3、2兩種版本。因為許多的AI範例使用Python3,建議使用Python 3。並依照電腦規格,選擇64位元 / 32位元的版本下載。

圖2

 

點選下載的檔案,開始安裝,點選下一步、同意。

圖3

 

圖4

 

選擇是否只安裝在這一個Windows的帳號

圖5

 

決定安裝路徑。因為之後會訓練資料,請讀者們盡量選擇讀寫速度較快的硬碟。

圖6

 

點選加入Windows的環境變數(可不選,能讓Windows的CMD視窗也可以呼叫Anaconda),預設使用Python3.6。

圖7

 

安裝完成後,在開始的列表會出現Anaconda的相關工具。

圖8

 

二、建立獨立的Anacoonda(Python)虛擬環境

Python有許多相依的套件,建議讀者們在做不一樣的Python套件實測試時,可重新建立新的環境,每個新的環境會依照名稱顯示。

 

下圖是我建立兩個環境,分別命名為testlesson1、testtensorflow。

圖9

 

首先,在本機磁碟(C),新增一個資料夾[testAI],以便管理環境中的檔案,點選[Anaconda Prompt]。

圖10

 

圖11

 

指令:移動至資料夾[testAI]

>cd \testAI
圖12

 

指令:建立Anaconda環境

>conda create --name testAI python=3.6 anaconda

 

指令功能:

conda create:建立虛擬環境

-name testAI:環境名稱,取名為testAI

python=3.6:Python的版本為3.6

anaconda:建立環境時,會把Python相關的套件也一起安裝,例如:NumPy、SciPy等常用的套件,也有Jupyter Notebook。

圖13

 

Anaconda會詢問你該虛擬環境是否安裝這些套件,輸入指令y

>y
圖14

 

圖15

 

安裝完成後,您可以用下列兩個指令開啟 / 關閉虛擬環境:

>conda activate testAI

>conda deactivate
圖16

 

若成功開啟虛擬環境,命令列最左方的顯示會由(base)改為(testAI)。

圖17

 

三、安裝TensorFlow 、 Keras、Opencv

接著,我們要安裝一些訓練AI模型的套件,這些都是python相關的套件,您可以用pip安裝,也可以用conda安裝。

 

安裝Python的Tensorflow套件:

>conda install tensorflow
圖18

 

圖19

 

安裝Python的keras套件:

>conda install keras
圖20

 

圖21

 

安裝Python的opencv套件:

>conda install opencv
圖22

 

圖23

 

套件安裝的差不多了。如果您有想要訓練的資料集、執行的程式,可以放在資料夾[testAI]裡。

圖24

 

接著移動至指定的資料夾:

cd ./ms-agv-car-master/keras_source

 

回到上一層資料夾:

cd ..

 

指令功能:

cd ./ms-agv-car-master/keras_source:移動資料夾到ms-agv-car-master/keras_source

cd .. :回到上一層資料夾

圖25

 

五、執行手寫辨識範例

最後,我們執行一個訓練資料的手寫辨識範例,確認Tensorflow系統環境都沒有問題。

(資源來自keras中文文檔https://keras-cn.readthedocs.io/en/latest/

 

首先,安裝git套件。

>conda install git
圖26

 

圖27

 

接下來:

1、透過git下載keras的範例

git clone https://github.com/fchollet/keras.git

 

2、移動到範例資料夾

> cd ./keras/examples/

 

3、執行手寫辨識訓練資料,若執行未出現錯誤,恭喜您已安裝成功,可不用等待程式執行完畢,[Ctrl+C]直接跳出訓練畫面

> python mnist_mlp.py
圖28

 

今天的分享至此結束。盼望這篇文章能給讀者們一些幫助,下次見!

 

相關文章

[ 記錄文 ] 2018.10.01-小創客們的驚奇之旅(二)—— Maker faire NYC,我們來啦!!

$
0
0

在顏椀君、李瑞婷、林毓琇、李國弘四位老師,以及多位師長、夥伴們共同努力下,新北市立板橋高中國際創客交流團已第四年成行!今年的國際創客交流團,人數幾乎是已往的三倍;行程新增美東線,橫跨兩個州;並要帶領學生們專題發表及自助旅行。雖然,顏老師與夥伴們有時會覺得過程真是「累到爆」!但每每看見參加學生的收穫、成長,心中便覺安慰,更獲得繼續舉辦交流團的動力。現在,就讓我們透過顏椀君老師的文字和照片,一起跟他們來趟跨出人生舒適圈的國際創客交流吧!

作者

顏椀君

圖片

顏椀君

說明

文字、照片皆來自顏椀君老師的臉書貼文,感謝授權,特此致謝!

Day 5——Maker Faire NYC part 1

我總是覺得每個國家、地區的Maker Faire,都某種程度反應了那個國家、城市的特色。美國舊金山的Maker Faire Bay Area,因有著車庫文化、矽谷的高科技產業聚落、內華達州的Burning Man,因而成為Maker Faire的發源地,規模也是最大。

 

紐約雖為Maker Faire三大旗艦點之一,但這座城市一直有著高速流動、藝術、實驗、創新的特質!因此,這裡的maker們也有著他們特別的呈現。

 

NYC Maker Faire的第一天,我們讓學生盡情在園區中參觀,同時準備明日要進行的發表。在紐約科學教育館及其園區內舉辦的Maker Faire,有著諸多關於科學、太空、STEAM教育的整合性作品,雖然沒有像在舊金山,有如此多科技大廠的資源和參與,卻有非常多令人驚艷的Prototype!我們非常喜歡紐約科學教育館與Maker Faire相互輝映後,呈現出的展場氛圍!

 

這一天結束後,旅館內的餐廳,成為學生夜間準備成果發表的工作區。英文老師忙著協助英文解說發表的內容,其他老師也在進行最後程式、機電問題的排除和救援。兩位技術指導的老師們,一路陪著學生Debug到凌晨三點,期待明天成果發表一切順利!

圖1

 

圖2

 

圖3

 

Day 6——Maker Faire NYC part 2

今天的重頭戲是學生們的上場分享。四年來,我們沒有租用或申請任何固定攤位,就讓學生們帶著作品,與其他熱情的maker們一樣在園區中穿梭、分享。其實對十六、七歲的孩子們來說,這並不是一件容易的事。因此,我們才會在正式分享前,給予他們許多學習任務,讓他們觀察自己最喜愛的互動方式、作品,也去看看與他們年齡相仿的人,如何實踐所謂的maker精神。

 

要讓孩子們把自己的作品理念,轉換成自然交流的英文,是個極其挑戰的學習歷程。儘管到了每天晚上的分享會已疲憊不堪,但老師們還是各司其職,陪伴著學生修改著英文的語句、分享的技巧、與人互動的方式⋯⋯等等。雖然在每個當下,我們總是覺得不夠完美,但當這一天終於來臨,聆聽著孩子們對一整天所見所聞的分享,我們驚喜地發現,他們正飛躍地成長!

 

沒有攤位就想辦法自己找攤位;沒有工具就自己找人救援⋯⋯。透過孩子們的眼睛觀察、親身分享,我們相信,他們會更加理解,要能達到真正的make for fun,一路走來只有認真投入學習,享受創作時的孤寂,以及面對關關難過關關過的挑戰,才能在最後享受作品分享給眾人時的喜悅。

圖4

 

巧遇Maker faire創辦人Dale Dougherty!(哇)

經過與Dale簡單地交流,體會到每年在全世界的不同城市,參與這樣的盛會,或許促使我們多點思考:是什麼讓彼此在此相遇、相識,並願意帶著學生們飛越千百里路,只爲make for fun的信念!

圖5 顏椀君老師與Dale Dougherty

 


 

接續本文後,將有更多來自顏椀君老師,關於這次國際創客交流團的第一手分享!請讀者們持續關注CAVEDU教育團隊的技術部落格,謝謝。

 

備註:若想購買創客相關產品,歡迎洽詢機器人王國商城。

 

相關文章

[ 記錄文 ] 2018.10.03-小創客們的驚奇之旅(完)—— STEAM教育深度交流 激盪更多創新教學理念 等待去實踐!

$
0
0

在顏椀君、李瑞婷、林毓琇、李國弘四位老師,以及多位師長、夥伴們共同努力下,新北市立板橋高中國際創客交流團已第四年成行!今年的國際創客交流團,人數幾乎是已往的三倍;行程新增美東線,橫跨兩個州;並要帶領學生們專題發表及自助旅行。雖然,顏老師與夥伴們有時會覺得過程真是「累到爆」!但每每看見參加學生的收穫、成長,心中便覺安慰,更獲得繼續舉辦交流團的動力。現在,就讓我們透過顏椀君老師的文字和照片,一起跟他們來趟跨出人生舒適圈的國際創客交流吧!

作者

顏椀君

圖片

顏椀君

說明

文字、照片皆來自顏椀君老師的臉書貼文,感謝授權,特此致謝!

 

Day 8:SCARSDALE HIGH SCHOOL的Design Lab

出發前在尋覓交流學校時,依舊是在網海中搜尋又搜尋,關鍵字換了又換,重組再重組,最後在STEAM、maker、innovative education的交叉搜尋中,在教師資料庫內看到一位老師,讓我一眼確定她就是我心中理想的參訪對象。

她是Lisa,SCARSDALE HIGH SCHOOL公立高中的STEAM協調教師,管理SHS Design Lab,教授藝術科目,執行過穿戴式裝置、Take it apart(玩具解構)、身障學生輔具等專案課程。在進一步了解她所屬的學校後,發現其爲全美公立高中各項評筆前25名的高校,並在本質上與板橋高中有非常多相似處。

圖1 Design Lab

 

開張兩年的Design Lab,是一個相當具規模的教學型Lab,明亮且開放的空間,由一位藝術 / 設計專長的教師Lisa,搭配另一位機電整合的技術專長教師Brian,共同教授專題課程,班級人數約16位。此行在教學上的最大收穫,應是Lisa老師分享Take it apart專案(拆解物件結構的作品) 的執行過程。其課程架構是依據Agency by design介紹的思考流程而設計:

  • Looking closely

  • Exploring complexity

  • Finding opportunity

圖2 具有機電整合技術專長的Brian老師

 

在教學評量上,專案任務導向型的課程設計,最大困難往往在於評量的標準和依據,因爲很難以最終的創作成果衡量每位學生。因此,Lisa採用portfolio reflection notes等方式評量,依照哈佛大學Project Zero提出的Agency by Design(maker centered learning)教學規準進行評量。

 

雖然自己研究Project Zero已一段時間,卻一直因許多行政庶務,而無法靜下心盤整出一套適合我們自己的評量方式。因此,很期待這次返台後,能站在巨人的肩膀上,逐步完成這一區塊在教學設計上的最後拼圖。

 

老師們認真交流,學生當然也不遑多讓!上午在Design Lab一起上了設計思考,緊接著紮實跟了三堂課,每個人因學伴的不同而聽了不一樣的課,包括數學、電腦科學、物理、英文文學、歷史等課程。雖然學生因語言和跨級聽課,而無法完全明瞭其學習內容,卻也從跟課過程中,看見許多珍貴的教室學習風景。

圖3

 

傍晚的分享會,除了聽孩子們分享整天下來的交流心得,不可少的還有他們今日的學習任務:「請以小組為單位,繪製一幅漫畫,內容要能充分表現出今天在高校交流時,所經歷的課程,以及與同學有趣、富有意義的對話。」經過一個半小時的共同創作,我相信學生們已為此行的學習交流,留下珍貴且難忘的記錄。

圖4 學生的漫畫作品

 

Day 11:創新的教育學制——IBM P-TECH

尋覓高校參訪時,IBM的P-TECHPathways in Technology Early College High School,前期科技學院高中學校教育路徑)的教育模式,在眾多創新教育中,使我的目光停佇許久。該校是由IBM、紐約市立教育局、紐約市立大學,於2011年共同研發的高中6年學制。而就在今年,台灣分別有台北科大、虎尾科大、高雄應用科大正式導入此學制。

 

今日因緣際會帶領三位學生前去交流。校長不僅詳盡介紹學校的整體教育理念、企業角色和承諾⋯⋯等等,更全程陪同三位孩子至好幾間課堂內,觀看不同的上課風貌。孩子們主動發問、細心筆記、熱烈交流,感覺學習之旅的最後一天,學生們已完全融入美國的學習課堂,甚至連相互的專題、文化分享,都可充份交換彼此的想法。

圖5

 

圖6 學生們相當融入美國的學習課堂

 

下午最後一個行程,我們全體師生前往布魯克林的展望公園,沉澱這12天的美國maker之旅。

圖7 飛!啟程返國

 

圖8 旅程劃下完滿的句點

 

終於把所有學生交給家長,希望今晚可以一夜好眠。學生們收穫非常豐富,但從明天開始,迎接他們的可能是⋯⋯堆積如山的考卷和作業!(大驚)

 

備註:若想購買創客相關產品,歡迎洽詢機器人王國商城。

 

相關文章

[ 介紹文 ] 2018.10.04- 我挖!我挖!!我挖挖挖!!!Tamiya怪手大改造 從線控成為BLE遠端控制

$
0
0
作者

SmallpTsai

圖片

pixabaySmallpTsai

撰稿

宗諭

審閱

鈺莨

說明

感謝專案作者SmallpTsai開放授權,讓CAVEDU教育團隊能撰寫本文,特此致謝!若想更進一步了解專案詳細檔案、資料,請點這裡

 

這次的挑戰,是改裝Tamiya 70170線控怪手,安裝上LinkIt 7697開發板,使手機能透過低功耗藍牙(BLE),遠端控制。看看作者SmallpTsai如何製做。

圖1 SmallpTsai專案的目標

 

第一步:Tamiya 70170怪手組裝

主要按照產品的使用者說明書,一步步組裝。但記得略過步驟1至4,因為這個專案不需線控。至於該如何確認怪手組裝成功呢?必須透過手動接電池測試,確認怪手內的三顆馬達都能正常運作。

 

第二步:電腦端環境設定

如果您過去沒有使用過Arduino IDE,請Google搜尋「Arduino IDE」,接著下載並安裝。近一步Google搜尋「7697設定Arduino IDE」,並根據聯發科技的教學文件設定。而在聯發科技的教學文件中,提供了一個範例程式,請依照教學文件一步步操作,便可將範例程式燒錄至LinkIt 7697。但我們可以在程式中的LRemote.setName(),把括號內的名稱改成自己喜愛的名字。

 

第三步:手機端環境設定

請至App Store(iOS)或Play商店(Android),下載「LinkIt Remote」並安裝。開啟LinkIt Remote後,請按右上角的「refresh」按鈕,讀者們應該會看到自己的裝置名稱,請選擇它。如果一切運作順利,讀者們應會看見下圖:

圖2 LinkIt Remote初始時的使用者介面

 

經過電腦端和手機端的環境設定後,我們需確定能以手機遙控LinkIt 7697上的LED燈。測試方法就是點擊USR LED這個切換按鈕,應該會看見 LinkIt 7697 開發板上內建的USR LED亮起來。

 

第四步:接電路

這個專案運用2個L293D馬達控制板,控制3顆馬達。而控制3顆馬達需用到6個腳位,運用到的腳位,請見下表:

馬達 A腳位 B腳位
Left 17 16
Right 15 14
ARM 13 12

表一

接線圖:

圖3

 

電路接好後,應能以手機控制馬達正轉或反轉。若讀者在接電路部分想更多了解,請至作者的GitHub頁面上交流,謝謝。

 

接下來,就是把程式碼燒錄至Linkit 7697開發板,然後就可用手機遠端控制怪手了。以下是不同學員的作品,給大家參考。雖然Tamiya 70170怪手的外型和結構基本上是固定的,仍可發揮一些巧思,使作品更有創意。

圖4 學員Hanny的怪手

 

圖5 Hanny設計的控制介面

Hanny的控制介面的原始碼

 

圖6 學員Jenny的作品

 

圖7 Jenny設計的控制介面

Jenny的控制介面的原始碼

 

備註:若想購買LinkIt 7697,歡迎洽詢機器人王國商城。

 

相關文章

 

[ 介紹文 ] 2018.10.05- 人工智慧大師Andrew Ng的英文新書Machine Learning Yearning,草稿搶先讀!

$
0
0
文字撰寫

宗諭

圖片

截圖自「Machine Learning Yearning」網站,特此致謝!

審閱 阿吉老師

 

AI人工智慧大師Andrew Ng(相關簡介)的英文新書Machine Learning Yearning,草稿已全部完成。以下是他對這本新著作的分享:

 

Machine Learning Yearning最後幾章草稿完成了!藉由這幾章的內容,您將可學到機器學習資料流(ML pipelines)的錯誤分析(Error Analysis)。舉例來說,如果您有個複雜的系統,比如一輛自駕車,它包含許多子元件。在這樣情況下,您如何決定使用哪個元件?因此,我盼望透過這本書的最後幾章,幫助您與您的團隊,更有效建構各種機器學習專案!

 

目前,本書仍處於草稿階段,為讓它對您與您的團隊更有效益,我非常歡迎任何回饋。請將建議寄我們:hello@deeplearning.ai 。」

 

讀者們如果想試閱這本書的草稿,請點擊這裡。謝謝。

 

備註:若欲購買CAVEDU的AI人工智慧相關產品,請洽機器人王國商城,謝謝。

 

相關文章

 

[ 教學技術文 ] MCS事件觸發功能進階教學——如何用更新後的 Webhook 功能連動外部服務?

$
0
0
作者/攝影

本文改編自聯發科技Cloud Sandbox(MCS)官方部落格上的文章,特此感謝聯發科技的授權,圖文版權均屬於聯發科技。

文章分類 教學技術文

 

在之前的文章中,聯發科技的工程師介紹了在原型開發階段,事件觸發功能的最佳化,包含支援觸發條件的資料通道新增網頁警告的視覺化提示,以及如何自行定義該警告提示的嚴重性名稱而在這一篇文章,他們要教讀者們如何使用最佳化的 Webhook 功能,並以一個實例進行教學。若您尚未閱讀之前的文章,建議可看完後再回本文閱讀,以利交互搭配新功能一起使用。一起來閱讀吧!

延續之前的介紹,讀者們可看見連接MCS的工廠機台,在分別發生警告嚴重性為橘色 / 警告名稱為 Medium,以及警告嚴重性為紅色 / 警告名稱為High 兩種事件時,在測試裝置頁面的呈現,請參考下面2張圖:

圖1 顯示各別資料通道的網頁警示 | mcs.mediatek.com

 

圖2 在裝置列表頁面,僅顯示該裝置所有資料通到中警告嚴重性最高的警示燈號。 | mcs.mediatek.com

 

現在,除了網頁警告提示外,如果讀者們希望在事件發生的同時,能更進一步連動到某個遠端的實體裝置,例如智能音箱、無線燈泡⋯⋯等等,以提示在該地點的管理者,能否透過MCS實現呢?答案是可以的。

 

首先,我們必須選擇想要連動的物聯網裝置。除了挑選情境適合的裝置外,這個物聯網裝置在技術上必須滿足以下條件:

  1. 有對外開放的 API 接口

  2. API 支援 HTTP Restful 的通訊協定

 

讓我們假設情境設定如下:

工廠機台發生上述兩種事件觸發的緊急狀況時,透過 MCS 連動到管理者家中臥房的無線燈泡,而且燈泡直接顯示紅色或橘色燈光。在這個案例中,我選擇使用彩色的Wifi LED智能燈泡——美國LIFX 燈泡(也可選擇較常見的Philip Hue,只是筆者 2 年多前剛好為嘗鮮而購入)。從該公司網站上,我們可以確定產品都支援HTTP Restful的 API 接口,以利外部服務並與其整合。

圖3 截圖來源:美國LIFX 官網 https://www.lifx.com/

 

回到MCS,我們以設定橘色警告燈的Medium 觸發事件1為例。回到原型下事件觸發設定的步驟三進行編輯,在動作類型的選項,下拉新增 Webhooks。

圖4

 

如果過去曾用過Webhook這個功能,眼尖的讀者應該發現目前的Webhook 設定介面,我們新增了三個欄位:動作(Actions)標頭(Headers)內文(Body),這樣的格式也是今日普遍的HTTP Restful 請求格式。

圖5 上圖左為舊版 Webhook功能設定,上圖右為新版 Webhook功能設定。 | mcs.mediatek.com

 

讓我們到LIFX 官方的開發者頁面,找到改變燈泡行為(Set State的教學頁面(https://api.developer.lifx.com/docs/set-state),並將觸發該燈泡所需必要資訊填入MCS上的 Webhook 觸發動作頁面:

圖6

 

圖7 動作類型選取Webhook後的設定選單,填入LIFX 開發者頁面相關資訊。 | mcs.mediatek.com

 

動作:PUT

 

控制此燈泡的 HTTP 要求動作:

URL: https://api.lifx.com/v1/lights/:selector/state

其中selector為變數,可為all、label:[value]、id:[value] 任一種識別資訊指定想要連動的燈泡。

 

標頭Authorization:Bearer XXXXXXXXXXXX Content-Type:application

其中 Authorization 的值為使用者的識別碼,需在登入 LIFX cloud Home 頁面後,創建該 personal access tokens(LIFX 教學頁面有說明如何創建)。內文格式則為json。

 

內文

{
“power”: “on”,
“color”: “orange”
}

 

LIFX 的官方文件中有針對燈光的細節,例如亮度、燈光持續時間、模式等提供更完整說明,且對應的物件都可以放入內文。此情境中僅放入 power 及 color 兩個物件。接著,按下寄發 Webhook 按鈕,測試打到 LIFX服務的 Webhook 是否成功觸發燈泡開啟橘色燈光。讀者們可看見下圖中燈泡成功開啟橘光,按下儲存便完成這個事件觸發設定的更新。

圖8 按下測試按鈕,確認該燈泡有正確開啟橘色燈光。 | mcs.mediatek.com

 

依此類推,讓我們複製同樣設定在高警告嚴重性的 High事件——即當機台運轉狀態轉為弱時,同時觸發家中臥房的 LIFX 燈泡,開啟紅色燈光。在此設定中,除了內文的 「color」修改為「red」外,其餘資訊皆和事件1相同。

圖9 事件2的觸發事件設定內容 | mcs.mediatek.com

 

完成後,可看到在觸發條件和動作列表中,兩個告警事件後方的觸發動作下,已新增 Webhooks。至此,我們完成了工廠機台發生狀況時,透過 MCS 遠端連動家中臥室燈光的設定。

圖10

 

透過MCS事件觸發中的簡單設定,我們可輕鬆遠端連動除了智能燈泡外不同的物聯網裝置。除本文中的 LIFX燈泡或其它物聯網的硬體裝置外,當然也可透過 Webhook 的功能,在事件發生時連動到其他支援HTTP Restful 的軟體服務,如IFTTT、Slack 或 Line⋯⋯等等,讀者們可針對您所需的應用,選擇適當軟硬體產品,並參照該服務網站上的相關說明。

 

最後特別說明一下,這個案例是透過 MCS 本身的 Webhook功能控制 / 連動遠端軟硬體服務;相反地,若要透過第三方的軟體服務和MCS互動,則需透過申請appId及appSecret的方式,並透過該服務的webhook來和MCS互動。有興趣的讀者,可以複習此篇教學。

 

現在,馬上開始建立您的事件觸發情境吧!

 

相關文章


[ 翻譯 ] 2018.10.09- TensorFlow團隊發佈最新的TensorFlow模型最佳化工具包,一起來看看!

$
0
0
原文作者

TensorFlow團隊

圖片 TensorFlow團隊提供

主題圖片:Designed by Freepik

翻譯 宗諭 審閱 阿吉老師
說明

感謝TensorFlow團隊的授權翻譯,特此致謝!原文請見這裡

 

We are excited to introduce a new optimization toolkit in TensorFlow: a suite of techniques that developers, both novice and advanced, can use to optimize machine learning models for deployment and execution.

我們很高興向大家介紹:新的TensorFlow最佳化工具包,它包含了一整套的技術,不論您是入門或進階開發者都可運用這套工具包來最佳化機器學習模型的部署與執行。

 

While we expect that these techniques will be useful for optimizing any TensorFlow model for deployment, they are particularly important for TensorFlow Lite developers who are serving models on devices with tight memory, power constraints, and storage limitations. If you haven’t tried out TensorFlow Lite yet, you can find out more about it here.

我們期待這個工具包對於部署任何TensorFlow模型,都能做到最佳化,然而,這個工具包對TensorFlow Lite的開發者來說尤其重要!因為,TensorFlow Lite的開發者需要在裝置上運作模型,這些裝置不論在記憶體、電源與儲存容量上都更為吃緊。如果您尚未試用過TensorFlow Lite,可在這裡了解更多相關資訊。

 

The first technique that we are adding support for is post-training quantization to the TensorFlow Lite conversion tool. This can result in up to 4x compression and up to 3x faster execution for relevant machine learning models.

這個工具包加入的第一項技術是針對TensorFlow Lite轉換工具的訓練後量化(post-training quantization)功能。針對相關的機器學習模型,這項技術最高可達到4倍的壓縮率,並使執行速度最高加快3倍。

 

By quantizing their models, developers will also gain the additional benefit of reduced power consumption. This can be useful for deployment in edge devices, beyond mobile phones.

藉由量化模型,開發者也將因電源功耗減少而得到額外益處。這有助於部署模型在非手機範圍的邊緣裝置上。

 

Enabling post-training quantization

The post-training quantization technique is integrated into the TensorFlow Lite conversion tool. Getting started is easy: after building their TensorFlow model, developers can simply enable the ‘post_training_quantize’ flag in the TensorFlow Lite conversion tool. Assuming that the saved model is stored in saved_model_dir, the quantized tflite flatbuffer can be generated:

啟用訓練後量化

訓練後量化技術已被整合至TensorFlow Lite轉換工具中。如何開始使用呢?很簡單!在建立TensorFlow模型後,開發者只要在TensorFlow Lite轉換工具中啟用「post_training_quantize」旗標就可以了。假設我們把模型放在saved_model_dir 這個資料夾中,就能產生量化後的「tflite flatbuffer」:

converter=tf.contrib.lite.TocoConverter.from_saved_model(saved_model_dir)
converter.post_training_quantize=True
tflite_quantized_model=converter.convert()
open(“quantized_model.tflite”, “wb”).write(tflite_quantized_model)

 

Our tutorial walks you through how to do this in depth. In the future, we aim to incorporate this technique into general TensorFlow tooling as well, so that it can be used for deployment on platforms not currently supported by TensorFlow Lite.

我們的教學文件會詳細告訴您關於「訓練後量化」這項技術。未來,我們希望把這項技術也納入一般TensorFlow工具中,使它能部署於一些目前TensorFlow Lite尚未支援的平台上。

 

Benefits of post-training quantization

  • 4x reduction in model sizes

  • Models, which consist primarily of convolutional layers, get 10–50% faster execution

  • RNN-based models get up to 3x speed-up

  • Due to reduced memory and computation requirements, we expect that most models will also have lower power consumption

「訓練後量化」的效益:

  • 模型大小最高可減少4倍

  • 主要由卷積層所組成的模型,執行速度可加快10%-50%。

  • 以遞迴神經網路RNN為基礎的模型,最高可加速3倍。

  • 由於減低記憶體和低運算的要求日增,我們期待大多數的模型也能做到低功耗。

 

See graphs below for model size reduction and execution time speed-ups for a few models (measurements done on Android Pixel 2 phone using a single core).

關於降低模型大小與提高執行速度,請參考下面幾張圖表(使用Android Pixel 2 單核心手機)。

圖1 Model Size Comparison: Optimized models are almost 4x smaller 模型大小比較:最佳化後,模型大小幾乎小了4倍。

 

圖2 Latency Comparison: Optimized models are 1.2 to 1.4x faster 延遲比較:經過最佳化的模型加速1.2至1.4倍。

 

These speed-ups and model size reductions occur with little impact to accuracy. In general, models that are already small for the task at hand (for example, mobilenet v1 for image classification) may experience more accuracy loss. For many of these models we provide pre-trained fully-quantized models.

執行加速及降低模型大小對準確性影響不大。總體來說,原本就輕量化、專門針對行動裝置任務的模型(例如用於影像分類的mobilenet v1),準確性可能會損失較多。針對前述這些模型,我們提供預先訓練好的全量化模型

圖3 Accuracy Comparison: Optimized models show negligible accuracy drop, except for mobilenets. 準確性比較:除了mobilenets外,其它最佳化後的模型,準確性幾乎沒有降低。

 

We expect to continue improving our results in the future, so please see the model optimization guide for the latest measurements.

我們未來會繼續改良。關於最新的量測結果請參考模型優化教學。

 

How post-training quantization works

Under the hood, we are running optimizations (otherwise referred to as quantization) by lowering the precision of the parameters (i.e. neural network weights) from their training-time 32-bit floating-point representations into much smaller and efficient 8-bit integer ones. See the post-training quantization guide for more details.

「訓練後量化」如何運作?

我們運作最佳化(又稱為量化)的方式,是藉由降低參數的精確性(例如,神經網路權重),使參數的模型訓練時間,從32位元浮點表示法降低為更小也更有效率的8位元整數。如果讀者想更深入了解,請參考「訓練後量化」教學。

 

These optimizations will make sure to pair the reduced-precision operation definitions in the resulting model with kernel implementations that use a mix of fixed- and floating-point math. This will execute the heaviest computations fast in lower precision, but the most sensitive ones with higher precision, thus typically resulting in little to no final accuracy losses for the task, yet a significant speed-up over pure floating-point execution. For operations where there isn’t a matching “hybrid” kernel, or where the Toolkit deems it necessary, it will reconvert the parameters to the higher floating point precision for execution. Please see the post-training quantization page for a list of supported hybrid operations.

這樣的最佳化,將確保在結果模型中精確性降低後的操作定義能符合內核實作,後者在實作混用了定點和浮點數學。這樣可在精確度較低的情況下做到最多的運算,但其中最敏感且精確性較高的模型,通常不會 (或僅微量)因此導致精確度降低,反之如果是純浮點數執行的話,執行速度則有顯著提升。針對非「混合型」內核的運算,或工具包認為有必要,「訓練後量化」會再將參數轉換為較高精度的浮點數。關於「訓練後量化」支援哪些混合運算,請參考「訓練後量化」網頁。

 

Future work

We will continue to improve post-training quantization as well as work on other techniques which make it easier to optimize models. These will be integrated into relevant TensorFlow workflows to make them easy to use.

未來改進

我們將持續改善「訓練後量化」技術,以及其它模型最佳化技術。而這些技術將被整合至相關的TensorFlow工作流程,使大家能夠更方便使用。

 

Post-training quantization is the first offering under the umbrella of the optimization toolkit that we are developing. We look forward to getting developer feedback on it.

這套還在開發中的最佳化工具包中,「訓練後量化」是我們推出的第一項技術。期待收到大家的回饋。

 

Please file issues at GitHub and ask questions at Stack Overflow.

 

請在GitHub提出你們的建議,並請在Stack Overflow詢問問題。

 

備註:若您想購買AI人工智慧相關產品,歡迎洽詢機器人王國商城

 

相關文章

[ 教學技術文 ] 誰改造了樂高積木!?——WoW!樂高 Power Function 馬達也能以LinkIt7697無線控制

$
0
0
作者/攝影

Mason Chen

文章分類 教學技術文
時間
成本
難度

材料表
  • LinkIt7697 x 1
  • L9110S DC 馬達控制板 x 1
  • 擴充板 x 1(非必要,只是方便接線用)
  • micro USB 線 x 1(燒錄程式及提供電源)
  • 5V 行動電源
  • 手機 x 1 (事先安裝好LinkIt Remote App)
  • 樂高 PF 馬達 x 1 (這裏用的是 PF 8883 M-Motor)
  • 樂高積木

透過樂高的科技磚和 Power Function 動力組馬達來學習結構、齒輪、動力機械⋯⋯等領域,是好玩又容易上手的工具。但 PF 馬達除非另外搭配紅外線套件,不然只能手動及定速使用。

 

這次的發想就是要用 LinkIt 7697開發板,還有方便的 LinkIt Remote App,控制 PF馬達的轉向和速度,讓原本只能定速的馬達,變成可以BLE 無線操控。另外,原本樂高的電池盒也不需要了,直接改用 5V USB 供電。

 

以下跟讀者們分享製作方法:

Step1:剪斷一條樂高馬達擴充線。原本四條線當中的兩條用以控制馬達,我們需要的就是這兩條線。

圖1

 

Step2:按照下圖2,將這兩條線接至 L9110S 的Motor-A(不同的接法,只會影響馬達的轉向)。

圖2

 

Step3:再把 LinkIt 7697 和 L9110S,按照下圖3所標示的方式,以杜邦線連接(務必注意 Vcc 和 GND 不要接反了)。

圖3

 

Step4:請至網址:https://goo.gl/Cgv6aw下載 LinkIt 7697 Arduino 程式,並燒錄至 7697 內。

 

Step5:接上 USB 電源,開啟手機上的 LinkIt Remote 程式,即可尋找到LinkIt 7697 ,並顯示以下畫面控制馬達。我們可以透過LinkIt Remote,控制馬達的轉速和方向。

圖4

 

最後,就請讀者們盡情發揮創意,用樂高積木和馬達做出專屬於自己的有趣作品。 這次筆者自造的是一個小型樂高摩天輪。

 

小型樂高摩天輪影片:

 

備註:如果想要購買LinkIt 7697開發板,或是樂高積木,歡迎洽詢機器人王國商城,謝謝。

 

相關文章

[ 翻譯 ] 2018.10.12-根據TensorFlow團隊,TensorFlow將於2020年1月起,停止支援Python 2

$
0
0
原文作者

TensorFlow團隊

圖片

截圖自https://python3statement.org/

網站,特此致謝!

翻譯 宗諭 審閱 鈺莨
說明

感謝TensorFlow團隊的授權翻譯,特此致謝!

 

以下公告由Martin代表TensorFlow團隊發佈:

 

程式語言Python的開發者們,將於2020年1月1日停止支援Python 2.7(詳見此文)。

 

因此,TensorFlow專案也將停止支援Python 2,當Python 2的上游支援終止於2020年。在2020年1月1日後,團隊針對TensorFlow所有原始碼的改變,將不再需要相容於Python 2。總之,TensorFlow可能自2020年起,不再適用於Python 2。

 

這樣的改變將可簡化我們的程式碼,並且可使用Python 3.x標準函式中的新功能。

 

備註:如果您想購買AI人工智慧相關產品,歡迎洽詢機器人王國商城,謝謝。

 

相關文章

[ 教學技術文 ] 用電腦即時與micro:bit互動!!怎麼做到?一起來看這一篇(有片請入)

$
0
0
作者/攝影

作者:Thomas Kluyver

文字翻譯、整理:宗諭

審閱:阿吉老師

圖片:截圖自相關網站,特此致謝!

文章分類 教學技術文
說明

本文改編自作者Thomas Kluyver的開放原始碼專案,特此感謝作者!原文請見

成本
難度

材料表
  • Micro:bit*1
  • 電腦*1(安裝Linux或Windows作業系統)

 

讓我們先看一段曾正男老師拍攝的影片:

 

在影片中,曾老師試用 Jupyter notebook 上的micro:bit ubit_kernel,即時與micro:bit 互動,不需寫好程式再燒錄至micro:bit 上。

 

在說明如何實現這項功能前,小編先向讀者們簡介MicroPython和Jupyter。

 

MicroPython是Python 3的軟體實作(Software Implementation),經過最佳化以在微控制器上運作。如果讀者們想要在micro:bit上撰寫程式的話,MicroPython是一種強大的程式語言。若想進一步了解MicroPython,請參考micro:bit的官方教學文件

圖1

 

簡單來說,Jupyter是針對交互程式設計的一套工具。而這個ubit_kernel套件使Jupyter介面,可直接在micro:bit上運作MicroPython程式碼。若想進一步了解Jupyter,請參考這裡

圖2

 

簡單介紹完後,接下來,讓我們來看如何操作:

 

Step1:首先,將您的micro:bit接上電腦,我們要確定micro:bit上有安裝MicroPython。如何確認呢?我們要在micro:bit的網頁版編輯器中,產生一段Python程式腳本(Script)。然後根據網頁上的指示,將程式腳本燒錄至micro:bit。在這個步驟中,不論程式腳本執行了什麼都沒有關係。

 

Step2:依據您的作業系統,您也許需要一些額外設定,使作業系統的內核可以告訴您的micro:bit,使用一個序列埠。

 

  • 若您的電腦是Linux系統,您也許需要將您自己加入dialout群組。請執行下面這段指令:
sudo usermod -a -G dialout <your-username>

   然後登出並再次登入。

 

 

Step3:請安裝Jupyter

 

Step4:安裝ubit_kernel套件

pip install ubit_kernel
python3 -m ubit_kernel.install

 

完成上述步驟後,當您開啟Jupyter Notebook,在選單中應該會有一個micro:bit選項,以產生一個新的Notebook。趕快試試看吧!

 

備註:如果您想洽詢micro:bit相關元件,歡迎至機器人王國

 

相關文章

[ 介紹文 ]CAVEDU教育團隊如何看AI 與科技教育

$
0
0
作者/攝影

文:曾吉弘

圖:CAVEDU教育團隊

主題圖片:Designed by Starline

文章分類 介紹文
成本 X
難度

X

時間 X

 

CAVEDU怎麼看 AI 人工智慧

近年來全世界都掀起了一股「大家來coding」的風潮,台灣政府也開始推動基礎程式教育,目標是讓孩子們能在學習程式設計的過程中培養基礎的運算思維(Computational thinking)能力,能對這個快速變動的環境有更多的好奇心與觀察力。另一方面,自從大陸在今年(2018) 4月於上海發表全球第一本AI高中教材《人工智能基礎》之後,大家好像都緊張了起來:

  • 業界:「不 AI 一下,好像不行?得趕快說自己是 AI 產業。

  • 家長、同學:「我要找 AI 相關科系!」(當年的生科與資管也是這樣?)

  • 學校老師:「把原本的課程名稱加上AI兩個字!

 

上述也許誇大了點,但科技領域關鍵字一日數變,AI 領域又包山包海,除了極少數頂尖研究者之外,又有誰敢說自己是 AI大師、AI領航者呢?

 

AI 等資訊科技是現在進行式,今天弄得要死要活的東西,明天說不定點點按鈕就好了?近兩年物聯網教學就是很好的例證,使用 LinkIt 7697 搭配 MCS 雲服務,已經能讓國小學生也能做出簡單的物聯網專案,從網頁與手機就能監看感測器資訊或控制開發板。在此的並非說網路通訊協定不重要,而是對於非專業人士來說,這樣的設計能幫助他們聚焦在最重要的事情上:資料。如果資料對於開發者來說是有意義或是重要的,那先從資料本身開始是個相當好的出發點。

圖1

 

圖2

 

關鍵字會變,但流程與理論基礎不會。CAVEDU從2008年開始使用樂高機器人來教學(如果要回溯到我與鄭建彥最開始接觸樂高的話,那是1999年的RCX了),一路邁入手機App (Android / App Inventor@2010)、互動聯網裝置(Arduino / Rpi / LinkIt…@2013)、物聯網(@2015) 到去年開始如野火燎原一般的 AI。如果只追關鍵字的話,真的會無所適從。

 

根據美國麻省理工學院媒體實驗室終身幼兒園小組的Mitchel Resnick教授表示,幼兒(小學前)時期可說是我們一生中最具創造力的時候。該團隊所開發的 Scratch 已經是小學階段的最主要圖形化程式介面之一,Resnick教授也主張 「Scratch 是幫助孩子們成為創意思考者(Creative Thinker)的絕佳平台」,並致力於讓 Scratch 「很簡單」,他認為程式提供愈多功能或愈多元件反而會限縮孩子們的創造力。(關於創意思考者,請參考 Learning Creative Learning 課程,正體中文由阿吉老師與諸多好朋友一起翻譯完成。)

 

另一方面,MIT App Inventor小組創辦人 Hal Abelson 教授(阿吉老師於2017- 2018 於該實驗室擔任訪問學者)也說:「如果資訊科技一日數變,那為什麼還要讓孩子們和他們的祖父母一樣的方式來學習?” 因此,在這股浪潮下也有另一種反思:「是否人人都需要學如何寫程式?這樣同質化的過程會對孩子造成怎樣的影響?

 

CAVEDU的理念是:根據當前的科技發展趨勢,針對不同學習課群提供合適的教學內容。

 

對於孩子來說,好玩最重要

圖3

 

圖4

 

點我觀看與Hal Abelson教授的訪談   /   點我觀看與Mitchel Resnick教授的訪談

 

使用 Raspberry Pi 實作AI 視覺辨識無人小車

AI 對多數人來說,還是太虛無飄渺了。CAVEDU 為了讓學生理解 AI 諸多領域中最容易有感也是最容易實踐的:視覺辨識,我們使用 Raspberry Pi B3+ (後簡稱 Pi3)所設計的 「邊緣運算 AI 無人自駕小車」。

 

這是我們認為對於基礎 AI 視覺應用的最佳教學套件。之所以選用 Pi3 自然是因為其性價比以及豐富的教學資源,當年還是 Pi 2的時候就有相當不錯的 OpenCV 視覺追蹤效果,各樣的函式庫套件也非常豐富,一下子很多專題都可以使用它來完成,與Arduino 兩者號稱是學生專題救星呢(笑)!

 

AI 視覺應用的難點在於收集影像資料。喜歡養貓的阿吉老師開玩笑說:「我要幫我家的貓要拍多少張照片都沒問題,但是要蒐集十種不同的貓就難囉!」我們所設計的課程會帶學生體驗完整的訓練流程,不使用現成的資料集(因為訓練結果不會差太多),而是針對無人小車的場地實際收集影像,標記,最後選定模型來進行訓練。其中每一個環節都會影響到小車最終的辨識結果。一定有感!

圖5 學員自行收集的影像資料

 

圖6 AI視覺辨識課程實況

 

圖7 視覺辨識課程使用的AI無人小車

 

邊緣運算?

邊緣運算是指終端裝置也具有一定的能力來處理資料 ,可以加快資料的處理與傳送速度,只要把運算後的結果而非原始資料丟回雲端 (不過不一定什麼事情都要與雲端結合,後續會繼續討論)即可,自然能大幅減少因網路頻寬受限而產生的延遲。

 

例如就經濟面的考量,如果要做到抓到臉部之後能進一步辨識情緒/微笑或五官位置這類功能的話。後面的進階功能可以使用 Microsoft Azure 認知服務 或其他類似的雲端服務來做到,但這些雲端服務都需要付費(或部分免費),且多數需要信用卡來進行身份認證,這件事在多數學校就卡關了吧…   因此我們在課程設計上就朝「終端裝置就能做到」這個方向來努力。在此簡單做一些比較:

 

邊緣運算 VS 雲端服務

  1. 程式碼開源雲端服務很厲害,但它不會告訴你他是怎麼算的。我們能做的只能相信這些雲端服務供應商的結果。例如:Facebook 每天都有一大堆人在打卡與自拍,合理推斷在超大量的資料之下,Facebook在辨識臉孔上非常準,當然事實也是如此。如果把這些運算改到邊緣裝置來做的話,由於程式碼已知,就能循序漸進讓學生學到更多東西,也可以針對後續的情境來擴充。
  2. 不受網路環境影響:相信各位老師都體認到了:教室可以上網,不代表可以進行物聯網教學。能夠進行物聯網課程的話,教室的 router 要很夠力,基本要能夠負擔 「上課人數 x 3」的連線數:聯網裝置 + 手機 + 電腦 都要在同一個網段下才行。因此20人上課,連線數的基本需求就是 60。已經有許多學校著手升級網路基本設備,非常欣慰。
  3. 運算即時:以 CAVEDU 的AI教學車為例,這樣的情境就需要即時,而非連結雲端。Rpi 的速度不算太快,拍照上傳雲端,呼叫API,收到回傳結果來決定車子動作,這個過程再怎麼快也要3~5秒,這樣就算偵測到什麼東西,車子也已經撞牆了。因此有些標榜AI語音辨識結合自走車控制,好像有點奇怪⋯⋯。

 

作為邊緣運算裝置,如何提升 Raspberry Pi 的算力?

CAVEDU 的 Pi3 AI無人小車,直接讓 Rpi 執行使用 Keras 神經網路架構來進行視覺辨識,辨識張數每秒約2~5張(0.5 ~ 0.2秒/張)。這大大限制了車子的移動速度。畢竟,Pi 3只要開多一點網頁,系統就到100%了,何況大量的模型訓練呢?在不更換主板的前提下,要如何提升 Raspberry Pi 的算力呢?

 

Intel 所推出的 Movidius NCS神經運算棒來得恰到好處,可以把最耗資源的運算分一點去做。以 Pi3 小車來說,只要搭配一隻 Intel Movidius NCS 就可以讓每秒的張數提升到每秒約14~20張(0.07 ~ 0.05秒/張)。算是相當經濟實惠不錯的選擇,當然也可以期待 Pi 4就是了。根據 Intel 原廠文件表示,可以串接多隻 Movidius 達到更好的效能。

 

的確,覺得Pi 效能不佳的讀者,當然可以購買更高級的硬體例如 Nvidia TX1,但對於學校來說,經費可以買幾台呢?買一台大家圍著看嗎?另一方面,課程的延伸性呢?本課程已經與台灣微軟技術中心合作開辦多梯次的人工智慧實務工作坊(AGV),並搭配其 Azure 雲服務下的資料科學虛擬機器 (Data Science Virtual Machine) 來加速神經網路訓練速度,適合業界人士使用。另一方面,對於教學單位來說,可使用個人電腦來進行訓練,使用我們所提供的架構使用一般的電腦也可以完成訓練,並搭配 Pi3 完成至少一學期的課程(課表已經完成,歡迎來信索取或找我們去辦研習喔!E-mail:service@cavedu.com

圖8 Intel Movidius NCS神經運算棒

 

CAVEDU 提供各式各樣的最新課程,當第一線教學者的強力後盾。如果您也認同CAVEDU的理念,不喜歡好高騖遠的名詞大戰,歡迎來CAVEDU走走看看。

 

相關文章

 

 

Viewing all 678 articles
Browse latest View live