陳擎文教學網:工作流程的AI自動化
工作流程的自動化有2種做法:
1.做法1:使用google apps script【NeedCode需要寫程式碼】
2.做法2:使用No Code自動化工具Zapier,Coze,Make,n8n【NoCode 不需要程式碼】:

示意圖1示意圖2示意圖3示意圖4
可以控制各種app與軟體,達到工作流程自動化(例如:Google 文件、試算表、簡報和表單、AdSense、Analytics、Calendar、Drive、Gmai、Maps、支援 Add-ons,用來擴展 之功能)


資源(Resource)

chp0.課程簡介

【一,自動化工具的各種應用】

自動化工具的各種應用:

自動化工具已經成為現代工作和生活中不可或缺的一部分,它們可以幫助我們簡化流程、提高效率、節省時間和精力。以下是一些自動化工具的應用場景,涵蓋了各種不同的領域:

1. 自動化:

(1).流程自動化工具: 像是 Zapier、Automate.io、IFTTT 等工具,可以將各種應用程式連接起來,自動執行重複性任務,例如將 Google Tasks 的新任務添加到 Google Sheets、將 Google Form 的提交數據同步到 Google Drive 等。
(2)自動化腳本工具: 像 google apps script 等語言可以編寫自動化腳本,完成更複雜的自動化任務,例如自動處理數據、生成報告等。

2 客戶服務:

(1).無代碼客戶服務工具: 像 Zendesk、Intercom、User.com、Freshdesk 等平台,提供客戶支持中心、聊天機器人、知識庫等功能,幫助企業更有效地管理客戶服務。
(2).自動化客服: 可以利用自動化工具結合ChatGPT AI 與Line Bot技術,建立自動化的客服機器人,自動回复常見問題,提高客戶服務效率。

3. 行銷:

(1).無代碼行銷工具: 像 HubSpot Marketing Hub、Mailchimp、User.com、GetResponse 等平台,提供電子郵件行銷、社群媒體行銷、內容行銷、網站分析等功能,幫助企業更有效地進行行銷活動。
(2).自動化行銷: 像 Zapier 和 Automate.io 可以將行銷工具與其他工具整合,實現自動化行銷流程,例如將訂閱者信息同步到 CRM 系統、根據用戶行為發送個性化郵件等。

4. 文件處理:

(1).無代碼文件處理工具: 像 Google Docs、Google Sheets、Notion 等工具,可以方便地創建、編輯、分享和協作處理各種文件。
(2).自動文件生成: 可以使用自動化工具,例如 Zapier 或 Python 腳本,根據數據自動生成報告、郵件、合約等文件。

5. 數據分析:

(1).無代碼數據分析工具: 像 Google Data Studio、Tableau、Power BI 等工具,可以幫助使用者無需編寫代碼即可進行數據可視化和分析。
(2).自動化數據分析: 可以使用自動化工具,例如 Python 腳本,自動收集、處理和分析數據,生成數據報告和图表。

6. 人事管理:

(1).無代碼人事管理工具: 像 BambooHR、Gusto、Zoho People 等工具,提供更便捷的人事管理功能,例如招聘、薪資管理、績效考核等。
(2).自動化人事流程: 可以使用自動化工具,例如 Zapier 或 Python 腳本,自動完成一些人事流程,例如發送入職通知、更新員工信息等。

7. 財務管理:

(1).無代碼財務管理工具: 像 Xero、QuickBooks、Zoho Books 等工具,提供更便捷的財務管理功能,例如發票管理、帳款管理、报表生成等。
(2).自動化財務流程: 可以使用自動化工具,例如 Zapier 或 Python 腳本,自動完成一些財務流程,例如發送發票提醒、生成財務报表等。

8. 物流管理:

(1).無代碼物流管理工具: 像 ShipStation、ShipBob、ShipMonk 等工具,提供更便捷的物流管理功能,例如訂單管理、庫存管理、配送追蹤等。
(2).自動化物流流程: 可以使用自動化工具,例如 Zapier 或 Python 腳本,自動完成一些物流流程,例如生成運單、更新配送狀態等。

9. 教育和培訓:

(1).無代碼學習平台: 像 Moodle、Canvas、Thinkific 等工具,提供更便捷的線上學習平台,例如課程管理、學習進度追蹤、線上考試等。
(2).自動化教學流程: 可以使用自動化工具,例如 Zapier 或 Python 腳本,自動完成一些教學流程,例如發送課程提醒、評估學生作業等。

10. 建置網站:

(1).無代碼網站建構平台: 像是 Webflow、Wix 、Weebly 等平台,讓使用者即使沒有程式設計經驗也可以輕鬆搭建網站。這些工具通常提供拖放式的介面,使網頁設計和功能添加變得直觀易懂。
(2).專業網站建構平台: 像 Squarespace、Shopify 等平台,提供更多樣化的模板和功能,適合需要更專業的網站或電商平台。
(3).企業級網站建構平台: 對於需要更多管理層級、客製化功能或整合企業內部系統的公司,可以使用像 Strapi、Contentful、WordPress 等平台。

11. 語音指令:

(1).無代碼語音工具: 像是 Voiceflow 和 Otter.ai 等工具,幫助使用者創建語音應用程式,例如語音機器人、語音助手等,提供更便捷的語音交互體驗。
(2).語音識別技術: 像 Google Cloud Speech-to-Text 和 Amazon Transcribe 等服務,可以將語音轉換為文字,為語音助手、語音搜尋等應用提供基礎。
(3).語音合成技術: 像 Google Cloud Text-to-Speech 和 Amazon Polly 等服務,可以將文字轉換為語音,為語音助手、播報系統等應用提供基礎。

12. 專案管理:

(1).無代碼專案管理工具: 像 Notion、Airtable、Asana、Trello 等工具,提供更便捷的專案管理功能,例如任務分配、進度追蹤、協作工具、文件管理等。
(2).自動化任務管理: 像 Zapier 和 Automate.io 可以將專案管理工具與其他工具整合,實現自動化任務提醒、進度更新等功能。

13. 其他應用:

(1).遊戲開發: 像 GDevelop、Stencyl、GameMaker Studio 2 等工具,提供更便捷的遊戲開發功能,例如遊戲設計、圖像製作、遊戲邏輯設計等。
(2).App開發: 像 Thunkable、Appy Pie、Adalo 等工具,提供更便捷的App開發功能,例如應用程式設計、介面設計、數據庫整合等。

自動化工具的應用範圍非常廣泛,它們不斷發展並提升著工作和生活效率,未來將會有更多應用場景被發掘,為我們帶來更多便捷和可能性。

一,工作流程的自動化有2種做法:

1.做法1:使用google apps script【NeedCode需要寫程式碼】
(1).可以控制各種google服務與app工具,達到google工具自動化(包括 Google 文件、試算表、簡報和表單、AdSense、Analytics、Calendar、Drive、Gmai、Maps、支援 Add-ons,用來擴展 之功能)
(2).也可以當作伺服器的雲端後端中控中心,控制前端的web,或是line bot。
(3).也可以控制各種外部apps的訊息傳遞(例如:傳遞openai的chatgpt與linebot之間的資料傳遞)



2.做法2:使用No Code自動化工具Zapier,Coze,Make,n8n【NoCode 不需要程式碼】:
(1).使用自動化工具,它可以讓你在不寫任何代碼的情況下,將不同的應用程式連接起來,實現各種自動化任務
(2).支援涵蓋了各種領域和功能,例如電子郵件、社交媒體、文件管理、數據分析、行銷、會計等。你可以在自動化工具後台網站查看所有支援的應用程式和相關的觸發器和操作器
(3).可以使用自動化工具平台 將 ChatGPT 與 Line 等通訊平台整合,實現無縫通信
(4).可以使用篩選器(Filter)和格式化器(Formatter)來自定義每一個自動化流程(例如:Zap)。篩選器可設定一些條件來決定是否執行操作器
(5).可以使用排程(Scheduler)和延遲(Delay)來控制 工作流程(例如Zap) 的執行時間

示意圖1示意圖2示意圖3示意圖4

【二,使用Google Apps Script實作工作流程自動化】

範例6-1.讀取Google Sheet工作表,然後繪柱狀圖

【試算表】

【Apps Script】

【三,Line Bot聊天機器人與生成式AI的整合應用】

範例32-1-可以把【對方問題】回复的Line Bot聊天機器人(結合Apps Script)

相關的Apps Script

範例33-1-可以多模態回复的Line Bot聊天機器人(結合Apps Script)

相關的Apps Script

【四,自動化工具Zapier的各種工作流程自動化】

範例41-1-新增Google Tasks任務工作,同時在試算表備份

參考教學文件1

Zapier自動化工具的官網

【成果範例】Google 試算表

注意:免費版的Zapier,資料傳遞會有時間差,大概12分鐘

範例41-1-新增Google Tasks任務工作,同時在試算表備份

參考教學文件1

Zapier自動化工具的官網

【成果範例】Google 試算表

注意:免費版的Zapier,資料傳遞會有時間差,大概12分鐘

資源
上課工具 線上黑板( Online blackboard) 廣播教學 上課錄影影片 Goole輸入法(Input:exe)
證照考試:商用數據應用師 考試題庫 (從中約抽70題) 報名證照相關說明與方法 考試方式:100題單選題,每題1分,70分及格 考試指定用書
數據集,資料集,dataset UCI的各種資料集 Kaggle的各種資料集 考試方式:100題單選題,每題1分,70分及格 考試指定用書
上課參考教材 書籍:跨領域學 Python:資料科學基礎養成 書籍:Python 資料科學與人工智慧應用實務 書籍:一行指令學Python:用機器學習掌握人工智慧
書籍:用Pandas掌握商務大數據分析 進階書籍:Python商業數據分析:零售和電子商務案例 pandas官網(英文) w3schools的pandas教學(英文)
pandas參考教材 w3Cschool的pandas教學(中文) Steam教學網-python 蓋若pandas 教程 pandas的df的操作函數
colab繪圖如何顯示中文,方法1 ☎#colab顯示繁體中文,方法1 問題:matplotlib繪圖,會發生中文無法顯示的問題
參考:colab繪圖如何顯示中文
程式碼
#--------------------------------
# colab繪圖顯示繁體中文
#--------------------------------
import matplotlib
# 先下載台北黑體字型
!wget -O taipei_sans_tc_beta.ttf https://drive.google.com/uc?id=1eGAsTN1HBpJAkeVM57_C7ccp7hbgSz3_&export=download import matplotlib
# 新增字體
matplotlib.font_manager.fontManager.addfont('taipei_sans_tc_beta.ttf')
# 將 font-family 設為 Taipei Sans TC Beta
# 設定完後,之後的圖表都可以顯示中文了
matplotlib.rc('font', family='Taipei Sans TC Beta')
colab繪圖如何顯示中文,方法2 ☎#colab顯示繁體中文,方法2 ☎程式碼
#--------------------------------------
# 課本的中文處理
#--------------------------------------
import matplotlib as mpl
import matplotlib.font_manager as fm

!wget "https://www.wfonts.com/download/data/2014/06/01/simhei/simhei.zip"
!unzip "simhei.zip"
!rm "simhei.zip"

fm.fontManager.addfont('SimHei.ttf')
mpl.rc('font', family='SimHei')
# 這一行能讓字體變得清晰
%config InlineBackend.figure_format = 'retina'
windows的spyder繪圖如何顯示中文 ☎解決:windows的spyder,會發生中文無法顯示的問題
參考:windows繪圖如何顯示中文
程式碼
#在windows 10 的spyder,繪圖如何顯示中文
#使用微軟正黑體(Microsoft JhengHei)
plt.rcParams['font.sans-serif'] = ['Microsoft JhengHei']

#有些中文字體在碰到負號時,會無法正常顯示,尤其是內建的字體,加入以下語法就可以解決『負號無法顯示』問題
plt.rcParams['axes.unicode_minus'] = False
在colab如何更改目錄 ☎解決:在colab如何更改目錄的問題
程式碼
import os
os.chdir("/content/drive/MyDrive/Colab Notebooks")
!ls
解決簡體字csv造成亂碼 ☎解決簡體字csv,打開後都是亂碼的問題:

第2 種方式:
(1)先執行Excel 軟體,新增空白活頁簿,
(2)然後在上方功能選項中點選「資料」➜「取得外部資料」➜ 「從文字檔」 → 「選擇csv文件」,
選擇你的CSV 檔,
在「匯入字串精靈」對話框中選擇檔案原始格式65001:Unicode(UTF-8) 即可。

若是utf-8還是有亂碼,再改成
在「匯入字串精靈」對話框中選擇檔案原始格式54986:簡體中文(GB18080) 即可。

(3)打勾:我的資料有標題
(4)分隔符哈:逗號

程式模板 ☎存入excel檔案,並且畫柱狀圖
程式模板chp8-6.樞紐分析表的必要指令:展開 ☎輸出excel檔案:建立3個資料表sheet(英文成績,數學成績,中文成績)
打開chrome網頁線上英文字典功能 ☎如何安裝google chrome的網頁線上英文字典工具:
➜google chrome的右上角工具➜更多工具➜擴充功能
➜左上角主選單➜開啟chrome線上應用程式商店
➜勾選:google製作,免費
➜搜尋:google dictionary➜安裝
➜到chrome右上擴充功能➜點按google dictionary的『詳細資料』➜擴充功能選項
➜my language=chinese
➜打勾2個:Pop-up definitions:
(1)反白單字翻譯:Display pop-up when I double-click a word
(2)ctrl+拖曵整段翻譯: Display pop-up when I select a word or phrase

上課用excel 學生成績-chinese 學生成績-有缺值-chinese 學生成績-物理歷史-chinese 學生成績-amy-simon-chinese
學生成績-生日-chinese 學生成績-分組-chinese 人事資料-chinese 男女時薪-chinese
學生成績-english 學生成績-有缺值-english 學生成績-分組-english 圖書資料-chinese
上課用csv 小費tips-chinese 小費tips-english 學生成績-chinese 學生成績-english
圖書資料-chinese
上課用其它資料庫 mySQL-ch09 SQLite-student json-學生成績 xml-personnel
課本商業範例資料庫 商業銷售分析-sales csv 系所生源分析-excel 股市分析-台積電聯發科股票線型-excel 問卷資料分析-excel
pandas參考教材 十分鐘入門 Pandas(英文) 十分鐘入門 Pandas(英文) 10分鐘的Pandas入門-繁中版 十分鐘入門 Pandas(中文)
pandas參考教材 pandas官網全部章節翻譯 pandas官網全部章節翻譯
pandas參考教材(英文) kaggle pandas教學 100 pandas tricks to save you time and energy 官網0.22.0:pandas documentation
pandas參考教材(中文) Pandas 101:資料分析的基石 資料科學家的pandas 實戰手冊:掌握40 個實用 簡明 Python Pandas 入門教學 資料分析必懂的Pandas DataFrame處理雙維度資料方法
pandas速查手冊 pandas 速查手册 - 盖若 Pandas速查手冊中文版 - 知乎專欄 Pandas速查手冊中文版- 騰訊雲開發者社區
pandas速查手冊 Pandas中DataFrame基本函數整理(全) Pandas 魔法筆記(1)-常用招式總覽 pandas的df的操作函數
資料集dataset 小費資料集Tips Dataset(csv) kaggle小費資料集範例A Waiter's Tips example 【視覺化】小費(tips)資料集分析 小費(tips)資料集提取和檢視相應資料
SQL語法 SQL語法教程 pandas vs SQL
資料分析4大模組(runoob) numpy pandas matplotlib scipy
w3c、w3school、w3cschool、runoob、w3capi比較 runoob流量監控儀表板
w3school vs runoob 1.w3school中文版是直接google翻譯英文版
2.runoob.com翻譯自英文版w3schools,但重新排版
3.runoob = run + noob(菜鳥,小白)
4.runoob是python,html,javascript中文版最好的教學網
官網 python官網 vscode官網    
python 教學網站 python 3(官網手冊中文) python 3教學(中文) python 3教學(中文) 簡易1小時教學
w3school(英文版)      
線上執行python online

https://www.python.org/shell/(建議用這個)

https://repl.it/languages/python3


https://www.onlinegdb.com/online_python_compiler

https://www.tutorialspoint.com/execute_python_online.php

用Anacond寫python(*建議使用)

到Anacond官網下載安裝

 
chp1-1.前言
1.課程簡介投影片 2.學習程式的3種方法
1.現今企業的數據有哪些 2.運用數據三階段 3.資料生產的四步驟 3.資料最基本的三個概念
5.什麼是大數據Big Data 6.大數據分析與傳統商業分析的差異 7.大數據的分析步驟 8.視覺化常用工具
9.什麼是大數據Big Data 10.大數據分析與傳統商業分析的差異 11.大數據的分析步驟 12.大數據的類型:結構化、非結構化、半結構化資料

1.現今企業的數據有哪些

1.現今企業的數據有哪些:
(1)所謂大數據,即是透過不同來源、渠道取得的海量數據資料,
現今企業如果想做數據蒐集的方法變得非常多元,包括:

(2)來自用戶的第一方數據:
☎傳統的用戶資料建檔、問卷調查,
☎網頁的瀏覽行為等數據的追蹤,
☎App應用程式的瀏覽行為等數據的追蹤、
☎物聯網IoT設備傳遞的數據等,
這些都是可以蒐集到。

還有更多可捕捉用戶站外資訊的非第一方數據也漸漸被重視,
(3)透過交換共享得到的第二方數據:
☎第二方數據 (也稱為第二方或 2P 數據):是另一個同行公司收集的數據,但可由另一家公司通過購買或協作訪問。
☎營銷人員在希望擴展其營銷資料庫以吸引新的潛在客戶時,通常會購買它。
☎例如,如果一個為女性製作的服裝品牌決定增加一個男裝系列,並且需要相關的目標來行銷,就可以向外同行公司購買男裝的數據資料庫。

(4)任何與商業需求有關的第三方數據:
☎第三方數據 (也稱為第三方或3P數據):是來自第三方的數據,該第三方已聚合了多個數據源並使其可供購買。
☎第三方數據的缺點:是它可能缺乏準確性和品質,因此重要的是了解數據來自何處以及數據使用年限.

(5)比較:第一方、第二方和第三方數據之間的差別:
第一方、第二方和第三方數據之間的主要區別在於:『來源』。
☎第一方數據:由其『存儲/擁有的公司』收集。
☎第二方數據:由『同行公司』收集,並由另一家公司購買(或通過合作協定與他們共用)。
☎第三方數據:是從『多個未知來源』收集的,並由一家公司購買。


(6)參考文獻:
1.第一方、第二方、第三方和零數據對廣告商意味著什麼
2.分析大數據在各領域的應用

2.運用數據三階段

1.市場上的數據需求,主要分為四個階段:
☎數據蒐集、
☎數據分析、
☎數據應用

(1)數據蒐集:蒐集第一方、第二方和第三方數據

☎傳統的用戶資料建檔、問卷調查,
☎網頁的瀏覽行為等數據的追蹤,
☎App應用程式的瀏覽行為等數據的追蹤、
☎物聯網IoT設備傳遞的數據等,

☎第二方數據:向同行公司購買數據。

☎第三方數據:向『其他管道,如:數據收集公司』購買。


(2)數據分析:原始數據(raw data)要先處理過

☎透過多元渠道獲取大量數據資料往往是原始數據(raw data),無法直接使用,
☎必須經過一層又一層的處理過程
☎處理方法1:數據檢查(data inspecting)
☎處理方法2:數據清理(data cleansing)
☎處理方法3:數據轉換(data transforming)


(2-1)處理方法2:數據清理(data cleansing)
A.資料清理是資料前處理的第一步,需要先將資料中的問題處理。
B.收載資料時一定會遇到各式髒資料,有的資料樣態會導致無法轉入資料庫,而有的資料會在塞入資料庫時,出現錯位、亂碼等各式各樣非預期的情況,此時倉儲資料清理的準則變得極為重要,因將攸關於整個系統資料的統一。
C.資料清理的準則設定可以從三個角度著手:
☎「檔案類型」問題的清理
☎「欄位型態」問題的清理
☎「資料邏輯」問題的清理
D.☎數據清洗:按照一定的規則剔除或者填充不滿足實際需要的業務資料。
E.☎清洗主要包括三部分的內容:
第一部分是測試資料、
第二個是錯誤的資料,
第三個是缺失的資料。
錯誤的資料我們可以關注:『資料是否重複』、格式是否『錯誤、欄位描述』的資訊是否錯誤。





D.(2-1-a)例如:資料來源檔案類型:純文字檔
☎資料內容以純文字的方式儲存的特色:
欄位與欄位之間以特定符號作為分隔,
例如:逗號、分號或|等等,
☎較常被使用的是「逗號」

☎可能發生的問題:
然而使用各符號作為分隔時,會遇到其中一種情況是:以逗號為例,如該欄位內容包含逗號,將會造成欄位內容分割時發生錯誤,但此逗號明明屬於資料的內容,卻被誤認為是分隔符號,使得分割完的資料對應到錯誤的欄位

☎解決的辦法:
將內容值前後都加上雙引號後,再以逗號分隔串連各欄位資料


D.(2-1-a)例如:檔案類型:資料庫
☎讀取資料庫文字欄位型態的資料時,內容包含換行符號,系統就認為這筆資料已經讀取完,則換行符號後面的資料內容即為下一筆資料的開頭,無法完整的將一筆資料讀取進來。
☎解決辦法:是移除換行符號,若需要保留換行符號,


D.(2-1-b)例如:欄位型態:日期
☎格式:同時出現以 斜線分隔(YYYY/MM/DD)、無分隔符號(YYYYMMDD) 或 連接號(YYYY-MM-DD) 的日期格式。
☎處理方式:透過判斷式將內容使用的符號,或沒有符號的純文字格式,換成資料庫可接受的日期格式。

☎西元年/民國年:同一欄位參雜西元年與民國年的日期。
☎處理方式:若以西元年格式存入資料庫,年若小於1911,則將 年份+1911 ;年若大於1911,則直接轉入。

☎值異常:例如日期出現2月30日、年份早於1911年等,或是不可為NULL的欄位卻出現NULL值等非正常的日期。
☎處理方式:異常的日期通常已經無法追溯到正確的值,或來源的日期就是髒資料,可統一為特定日期(如:1911年1月1日),日後看到即可確定來源的資料因有異常而清理過。


D.(2-1-b)例如:欄位型態:特殊字元
☎說明:文字是最容易造成轉檔失敗的型態,因為此型態可容許輸入任何類型的字元,例如:特殊字元,但資料庫本身並非接納的了所有字元,較特別的會無法轉入,或需要做其他特殊的轉換才能收載。
☎處理方式:必須找出那一筆,替換掉『特殊字元』後,再登錄進資料庫。


D.(2-1-c)例如:資料邏輯:縣市代碼
☎台灣曾經經歷過縣市升格為直轄市,有更換過縣市的中文名稱,那麼資料也須跟著配合調整。
☎處理方式:是做一張新舊對照縣市代碼與名稱的轉換表,日後資料若有縣市資訊需求,即可勾稽此資料表,讓縣市升格前與後的資料,能自由並適當的轉換,得到想要的資訊。


D.(2-1-c)例如:資料邏輯:身分證號的規則判斷
☎身分證號的編碼有固定的規則,
第一碼是初次戶籍所在的縣市代碼,
第二碼是性別(1:男性;2:女性),
第三到九碼是流水碼,
最後一碼第十碼是檢查碼,檢查碼會以第一到第九碼之英數字組合經過權重計算而得。
☎若要確認身分證是否有效,可依據這些規則去做判斷。


(2-3)處理方法3:數據轉換(data transforming)
A.☎數據轉化:按照一定的規則、技術手段轉化不同格式,或者顆粒度不同的資料。
B.(1)例如:格式的轉換,比如說時間格式,在不同的業務系統可能會有不同的時間格式,但是到我們大資料系統,為了方便下游資料的使用,我們會統一轉換成一種資料格式。包括一些欄位編碼也是這樣。
C.(2)資料顆粒度的轉換:我們在DW層的資料明細層到資料應用層的整個過程,都是顆粒度不斷轉化的一個過程。還包括一些業務規則、商務規則和一些指標。


☎補充:數據顆粒度:資料顆粒度指數據的細緻程度。
資料顆粒度越高,細緻程度越高,意味著可以進行更準確的分析。
然而,需要指出的是,資料顆粒度直接決定資料庫需要的儲存空間。
高顆粒度的資料需要更多儲存空間;如果資料顆粒度太高,能夠識別出背後的資料,隱私相關挑戰也會加大。

(4)參考文獻:
1.資料指標體系(1)如何理解資料顆粒度、維度以及指標

3.資料生產的四步驟

1.資料生產的四步驟:
• 資料指標體系搭建
• 資料獲取
• 資料存儲
• 數據清洗

2.建立資料後,即可開始資料分析

4.資料最基本的三個概念

1.資料最基本的三個概念:
☎顆粒度
☎維度
☎指標

(1)顆粒度
☎資料的顆粒度是指數據的 “粗細”,也就是我們看資料的視野的大小,或者說格局的大小。
☎例如:
一個電商公司,同樣是看GMV(總銷售額),CEO關注的可能是『今年總的GMV』是多少,
而業務老闆關注的可能是『每月的GMV』如何,
具體到某個小團隊,關注的點可能就是某些商品,『每天的GMV』如何了。

☎資料顆粒度最常見的劃分是:時間


(2)維度
☎資料的維度:是指看待事物不同的角度。
☎是從不同角度來看一件事,會得到不同的結論。
☎在做資料分析時也是一樣的。分析一個活動,或者一個策略對用戶的吸引時,如果我們以『新增用戶數』作為分析的指標(也就是展開方式,分析點),

☎可以列為『維度』進行拆分的項目:
• 時間維度:拆分為早晨、中午、晚上
• 性別維度:男性、女性、未知
• 受教育程度:小學、中學、大學、研究生、博士
☎通過維度的分解,我們可以看到每個部分的變動,和整體的變化趨勢是否相同,是否存在不同,而哪些不同點往往會成為我們接下來分析的重點。

☎顆粒度和維度的『相似性』:例如“時間”這個要素,在兩個部分都出現了
☎顆粒度和維度的『差異性』:不同在於拆分的方式不同
• 顆粒度:是一種縱向的聚合,類似於金字塔的形狀,不同的顆粒度都代表著不同的聚合程度
• 維度:是一種橫向拆分的模式。類似于把鏡子打碎成不同的部分,每個部分都是獨立的,把所有部分合在一起又能拼成完整的整體


(2-1)指標
☎資料指標:是衡量事物發展方式及程度的一種單位或者方法,一般通過對原始資料進行加減乘除等操作生成得到。
☎例如:長度,是把所有部分加在一起得到的一種衡量外在大小的單位。

☎列舉一些常見網路流量的資料指標:
• DAU(daily active user):每天,“活躍”過的用戶數的加總,count(distinct user_id) group by day
• MAU(monthly active user):每個月,“活躍”過的用戶的加總,count(distinct user_id) group by month
• 留存率(次日、7日、30日):今天“活躍”過的用戶的總量,一段時間後的某個時間點,還活躍的比例
• 轉化率:兩個有遞進的環節之間,從上層到下層用戶轉化的比例,例如:CTR=實際點擊次數/展示量



(4)參考文獻:
1.大數據前的資料清理
2.分析大數據在各領域的應用

5.什麼是大數據Big Data

1.為什麼有大數據的問題
現在的企業資料,因為以下的興起,造成大量數據的需求: ☎網路網路資料(社交網站,交易資料)
☎物聯網IoT, Internet of Things
☎感測器sensor


2.大資料的來源
資料來源主要分為以下三類:
(1)社交數據:
☎顧名思義,社交資料來源於社交媒體評論、發帖、圖片以及與日俱增的視頻檔。隨著全球 4G 和 5G 蜂窩網路的普及,到 2023 年,全球手機視頻使用者將增至 27.2 億。
☎雖然社交媒體及其使用趨勢瞬息萬變、難以預測,但作為數位資料的主要來源,其穩定增長趨勢是不會改變的。

(2)機器數據:
☎物聯網設備和機器都配有感測器,能夠發送和接收數位資料。物聯網感測器能夠幫助企業採集和處理來自整個企業的設備、工具和裝置的機器資料。
☎從天氣和交通感測器到安全監控,全球範圍內的資料生成設備正在迅速增多。
☎據 IDC 估計,到 2025 年,全球物聯網設備數量將超過 400 億,生成的資料量幾乎占全球數位資料總量的一半。

(3)交易資料:
☎交易資料是世界上發展速度和增長速度最快的資料。
☎例如,一家大型國際零售商每小時處理超過 100 萬筆客戶交易,全球那麼多採購和銀行交易,生成的資料量會有多麼驚人。
☎此外,交易資料越來越多地由『半結構化』資料組成,包括圖片和注釋等,使得管理和處理難度不斷增加。



3.大數據的五大特性:

(1)大數據的3V特性: ☎資料量(Volume)
☎資料類型(Variety)。
☎資料傳輸速度(Velocity)

☎Volume(資料量) 無論是天文學、生物醫療、金融、聯網物間連線、社群互動…每分每秒都正在生成龐大的數據量,如同上述所說的 TB、PB、EB 規模單位。

☎Variety(資料多元性)
真正困難的問題在於分析多樣化的資料:從文字、位置、語音、影像、圖片、交易數據、類比訊號… 等結構化與非結構化包羅萬象的資料,彼此間能進行交互分析、尋找數據間的關聯性。

☎Velocity(資料即時性)
大數據亦強調資料的時效性。隨著使用者每秒都在產生大量的數據回饋,過去三五年的資料已毫無用處。
一旦資料串流到運算伺服器,企業便須立即進行分析、即時得到結果並立即做出反應修正,才能發揮資料的最大價值。


(2)大數據的4V特性:
☎資料量(Volume)
☎資料類型(Variety)
☎資料傳輸速度(Velocity)
☎資料真實性(Veracity)
在3V成為大數據的主要定義後,隨著儲存資料的成本下降、取得成本也下降,大數據發展出第四個特性:Veracity,意旨除了資料量,也需要確認資料的真實性,過濾掉造假的數據與異常值後,分析出來的結果才能達到準確預測的目的。



(3)大數據的5V特性:
☎資料量(Volume)
☎資料類型(Variety)
☎資料傳輸速度(Velocity)
☎資料真實性(Veracity)
☎價值(Value)
大量、快速取得,來源多樣的資料,經過真實性考驗之後,擁有一定的價值,是大數據的核心架構




4.多大的資料量才算大數據Big Data
☎資料量要多大才能說是大數據?
根據維基百科的定義,資料大小從幾TB(Terabyte)到幾PB(Petabyte)不等




5參考文獻:
(1).什麼是大數據
(2).巨量資料(wiki)
(3).大數據到底是什麼意思?事實上,它是一種精神
(4).認識大數據定義、分析與工具
(5).大數據,不只是很大的數據

6.大數據分析與傳統商業分析的差異

1.大數據分析與傳統商業分析的差異

(1)大數據分析:
☎分析方法:使用原始資料➜統計分析➜產生視覺化圖表➜產生報表
☎使用技術:原始資料,大數據,使用程式碼(python/R)進行結構化分析
☎預測方法:找出數據間的關聯性➜建立預測模型➜完成預測

2.參考文獻:
(1).大數據,不只是很大的數據

7.大數據的分析步驟

1.大數據的分析步驟:取得,儲存,運算,視覺化

☎大數據分析第一步:取得
數據隨時隨地都在產生,就連你上班時的行走路線,都可以成為商家選擇新店地址的參考資料。若是擁有大量使用者的企業,蒐集使用者的活動紀錄就可達到以數據預測未來的目標;若是較小型的企業,則可主動邀請使用者填寫問卷,逐步累積資訊量。

☎大數據分析第二步:儲存
由於資料量龐大,突破儲存技術式處理大數據的第一個難關。因此處理大數據時多使用分散式處理系統,透過分割資料與備份儲存,突破記憶體過小的障礙。

☎大數據分析第三步:運算
為達成預測未來的目的,機器可以透過分類、迴歸分析、排序、關聯分析等方式找出其中規律,並運用決策樹、遺傳演算法、人工神經網路等模型進行計算。

☎大數據分析第四步:視覺化
經過分析後的數據仍是數字與列表,不易閱讀。因此可搭配視覺化工具,將數據轉化為較容易閱讀與理解的形式。

2.參考文獻:
(1).認識大數據定義、分析與工具

8.視覺化常用工具

1.三大視覺化工具:Power BI,Tableau,Data Studio
功能:都能夠製作Dashboard(互動儀表板,報表平台)


(1)Power BI:微軟Microsoft
(1-1)費用:
☎免費版:若要編輯或瀏覽 Power BI Dashboard 僅能確保每個使用者都有在桌面下載 Power BI。
但免費PC版 Power BI 僅能在 Windows 上使用,
Mac 使用者僅能夠過網頁/付費方式使用
☎付費版:Power BI 可透過企業全體購買 Pro License(每個月300元),進而能夠做到網頁版共用。

☎付費版:公司內可以購買整個 Office 365 package(已經包含 Power BI Pro License),以利內部資料互通,大家也不用另外在電腦下載應用程式,直接網路編輯與瀏覽即可,Mac 使用者也能進而編輯
☎付費版:Power BI Premium,每月每個人600元。
Power BI定價參考網址

(1-2)功能:
Power BI 基本上功能與Tableau大同小異。
Power BI的操作比較簡單,更直覺化(Tableau操作較複雜)。
Power BI同時可支援 Python & R 的視覺化工具,
Power BI 的 DAX 語法相較 Tableau 好懂。


(2)Tableau
(2-1)費用:
☎Tableau Public 是一個免費的平台
☎Tableau Prep 免費試用30天
☎Tableau Desktop 免費試用14天
☎Tableau Server 免費試用
☎CRM Analytics(原稱 Tableau CRM)
認識大數據定義、分析與工具
☎Tableau 在企業級規模部署時Power BI比較便宜,因為雖然Power BI 隨附於O365中,但若要企業級部署,考慮Power BI Pro與Power BI Premium 間的功能差距,若真的要能做到 Tableau Server 大部分的功能,是一定需要 Premium 的,不然會受到算力、數據量大小、協作功能等的差距影響,很難做到企業級部署。
而Power BI Premium 在2021/02時所記錄的起始報價為 台幣 150,120。
Tableau的產品生態:


(2-2)功能:
☎功能強大。
☎2020/01年時統計,世界500強企業裡面96%是Tableau的客戶。


(3)Data Studio
(3-1)費用:
☎google雲端軟體,完全免費的平台

(3-2)功能:
☎優點:因為 Google 產品大多都是可開權限共享,
所以要結合Google 其他應用程式(Big Query, Google Analytics),就可以直接串接到 Data Studio,因為便利而使用它。
☎優點:雲端使用,是目前線上最流暢的(因為google產品都是雲端產品),而且可以共同編輯
☎缺點:功能性而言,現在 Data Studio 在細節調整上還是略輸 Power BI 與 Tableau 一些


2.BI(Business Intelligence,商業智慧)市場分成2類:
(1)自助式分析組別:
組織裡面每個人都有能力利用此組別內的BI工具連接數據與探索數據,發表屬於自己的數據見解
例如:Power BI,Tableau,Data Studio

(2)報表組別:
大部份情況之下,因需要撰寫大量函式或需要寫SQL,需要由統一專業部門開發,如IT單位
例如:Finereport,Microstrategy



3.參考文獻:
(1).Tableau 與 Power BI 完整比較指南
(4).Tableau VS. PowerBI

9.大數據的類型:結構化、非結構化、半結構化資料

1.大數據的類型:結構化、非結構化、半結構化資料




(1)結構化資料:這類資料最容易整理和搜索,
☎主要包括:財務資料、機器日誌、人口統計明細等。
結構化資料很好理解,類似於 Excel 試算表中預定義的行列佈局。
這種結構下的資料很容易分門別類,資料庫設計人員和管理員只需要定義簡單的演算法就能實現搜索和分析。
不過,即使結構化資料數量非常大,也不一定稱得上大資料,因為結構化資料本身比較易於管理,不符合大資料的定義標準。
一直以來,資料庫都是使用 SQL 程式設計語言管理結構化資料。
SQL 是由 IBM 在 20 世紀 70 年代開發的。

(2)非結構化資料:
☎因為web2.0盛行後產生很多非結構資料。
☎(web 2.0內容:透過網路應用,以使用者為中心,促進網路上人與人間的資訊交換和協同合作)
☎(web 2.0範例:網路社群、網路應用程式、社群網站、部落格、Wiki)
☎資料包括:社交媒體內容、音訊檔、圖片、開放式客戶評論等。
☎這些資料符合大數據定義中:『大而複雜』的要求,也因此這些資料通常很難用標準的行列關係型數據庫捕獲。
大多數情況下企業若想搜索、管理或分析大量非結構化資料,只能依靠繁瑣的手動流程。
毫無疑問,分析和理解這類資料能夠為企業帶來價值,但是執行成本往往太過高昂。而且,由於耗時太長。
但是因為無法存儲在試算表或關係型數據庫中,所以非結構化資料通常存儲在資料湖、資料倉庫和 NoSQL 資料庫中。

(3)半結構化資料:
☎半結構化資料是結構化資料和非結構化資料的混合體。
☎例如:電子郵件,
因為其中的正文:屬於非結構化資料,
而寄件者、收件人、主題和日期:屬於結構化資料。
使用地理標記、時間戳記或語義標記的設備也可以同時提供結構化資料和非結構化內容。


3.參考文獻:
(1).什麼是大數據
(2).web 2.0
(4).Tableau VS. PowerBI

 

 

範例1-2.數據分析3部曲,與對應的工作職缺

(1)研究數據分析的3步驟圖:
☎步驟1:學習基礎數據分析1:pandas
☎步驟2:學習基礎數據分析2:SQL
☎步驟3:學習進階數據分析3:人工智慧(機器學習,深度學習)



(2)數據分析的相關工作職缺(數據分析職位的技能光譜圖):
☎工作職稱:DA/BA/DS/DE:
Business Analyst商業分析師(商業決策建議)
Data Engineer數據工程師(基礎第一線數據處理)
Data Analyst資料分析師(適用各領域的數據處理工作)
Data Scientist資料科學家(建模,人工智慧)




(3)商業分析決策的4步驟圖:
☎1.資料處理
☎2.資料分析
☎3.資料視覺化
☎4.商業分析決策




(4)資料分析常用工具:
☎1.python/pandas
☎2.SQL
☎3.power BI,tableau
☎4.機器學習,深度學習



 

範例1-3.數據分析常用工具


(1)資料分析常用工具:
☎1.python/pandas
☎2.SQL
☎3.power BI,tableau
☎4.機器學習,深度學習




(2)數據相關工具的職缺數排行榜2016:





(3)數據相關工具的職缺數排行榜2020:


 

範例1-4.數據相關的證照


(1)資料分析相關的證照:

☎1.中華企業資源規劃學會,大數據分析師
☎2.商用數據應用師

 

範例1-5.數據分析的內容是什麼?


數據分析的內容主要分三種(統計,比較,預測)
(統計出現次數,分類比較,預測趨勢)


【一,基礎數據分析(python/pandas)】

1.查詢資料(1)

1.查詢資料(2)

1.查詢資料(3)

2.頻數分析,統計數量

3.(分1群)比較分析

4.描述性統計分析,直方圖,箱型圖

6.(分2群)交叉分析表,樞紐分析表

7.分群分析的5種題型

8.樞紐分析表,交叉分析圖的花式變化與進階技巧



【二,進階數據分析(機器學習/深度學習)】

11.關聯性分析association

12.迴歸預測分析regression

13.分類預測classification

 
chp1.安裝與使用python的四種方法
1.使用python的四種方法 2.Anaconda下載點 3.安裝anaconda 4.Anaconda cmd指令
5.建立Anaconda虛擬環境 6.使用Spyter編譯器 7.網頁版python編輯器jupyter notebook 8.其它線上雲端可編譯的python平台

1.前言

Python堪稱是大數據與AI時代的最重要程式語言,在資料處理上有著非常重要的地位。而隨著AI的興起,讓傳統的零售業、金融業、製造業、旅遊業,以及政府都爭相投入,無不希望能運用數據分析與預測來協助決策方向,也讓新興的數據分析師、資料分析師成為熱門職業,因此本課程將講解如何使用網絡爬蟲技術以掌握資料爬取分析、視覺化呈現,以及儲存交換應用的關鍵技術。

Python資料處理的三大技術分別是:擷取分析、視覺化呈現與儲存應用。
而其應用的範疇包括:網路爬蟲、資料正規化、資料視覺化、資料儲存與讀取(CSV、Excel、Google試算表、SQLite、MySQL)、批次檔案下載、公開資料應用、API建立、驗證碼辨識。

Python大數據分析最重要的四個模組

1.Python大數據分析最重要的四個模組
Python資料分析最重要的四個模組:pandas、numpy、scipy、matplotlib。

(1)pandas:是基於numpy的資料分析工具,能夠快速的處理結構化資料的大量資料結構和函數。
pandas模組應該是python用來進行一般日常的大數據分析,最重要的模組了。
因為pandas的DataFrame資料結構,可以快速的互通於所有的二維結構資料,包括『excel,csv,json,xml,mysql,任何的資料庫,網頁的表格資料,字典dict,二維串列list』
也就是pandas的DataFrame資料結構,可以與它們之間互相簡易的存取。
然後再根據DataFrame來進行想要的大數據分析,它提供內建的演算法與資料結構,能夠用一個指令,就可以進行二維資料的『排序,篩選,關鍵字查詢,任意區間範圍查詢,統計學計算,平均值,變異數,標準差,字串檢索,字串取代,欄位樞紐分析、小記、欄位加總,把二維資料任意方式圖形視覺化顯示』
而建立pandas的DataFrame資料結構,有兩種方式,可以用column的方式來輸入資料,也可以用row的方式來輸入資料。
所以pandas是大數據分析,非常實用的利器工具,是python資料分析的首選。

(2)Numpy: Numpy專門用來處理矩陣,它的運算效率比列表list串列更高效。
Numpy是Python進行專業的數值計算之重要模組,因為大多數提供科學計算的包都是用numPy的陣列作為構建基礎,因此在進行高等數學計算時,numpy就是大數據分析的最重要工具了,因為高等數學運算,都是以矩陣的方式來進行運算,例如人工智慧,機器學習,深度學習,類神經網路計算等。

(3)sscipy:是基於numpy的科學計算包,包括統計、線性代數等工具。

(4)matplotlib:是最流行的用於繪製資料圖表的 Python 庫
也可以結合pandas模組來繪圖。

2.執行python的四種方法

1.要編寫python有三種的方法:
一、方法1:安裝python單純的python
缺點:功能陽春,沒有太多的模組,無法馬上寫大數據分析程式。
安裝網址:python官網下載

二、方法2:安裝Anaconda
優點:會同時安裝python、1000多種數學繪圖模組、Spyder編輯器,能夠支援大數據分析。
缺點:會安裝了很多你用不到的模組,浪費硬碟空間。
安裝網址:到Anacond官網下載安裝

三、方法3:使用python官網線上shell
使用repl線上python

四、方法4:使用google雲端硬碟的雲端軟體:Cola,colaboratory
優點:Google 的 Colab 是一個讓你用網頁瀏覽器就能寫 Python 程式、並且執行的平台。
優點:Colab 提供免費的 GPU 讓你高效運算機器學習與深度學習演算法。
優點:Google Colab 預先幫你安裝好大家最常用的 Python 套件,幫你解決了一半以上的煩惱,讓 Python 新手可以不用在剛起步就學習環境部署的麻煩事。數據分析常用的 Pandas 與 Numpy、資料視覺化好用的 Seaborn 與 Matplotlib、還有機器學習必備的 xgboost 或 Tensorflow,這些都是 Colab 預先安裝好的套件。
不需要再自行安裝套件:(Terminal)輸入 pip install
優點:可以從 Google Drive 取得你要用的檔案、然後透過 Python 程式讀取;
優點:可以與google其它軟體整合,例如:也可以匯入 Google Sheet 的表格資料,然後用你最愛的視覺化套件(例如 Matplotlib)畫出美麗的圖表。
優點:Colab 其中一個厲害的地方就是,你除了可以執行 Python、也能執行 Command Line,只要在 Command Line 指令加上驚嘆號就能做到,像是 !mkdir。你可以在 Colab 裡 Python 程式碼寫到一半的時候,突然加進幾行 Command Line 來操作檔案,完成後,再讓 Python 程式碼接著寫下去,Python 與 Command Line 可以無痛切換。
優點:%%timeit:算出你的程式碼區塊花多少時間執行,分析你的演算法效率時很好用。
優點:%run my_script.py:執行你的另一個 Python 程式,如果你的程式還需要呼叫另一個程式,就需要使用。


3.Anaconda下載點

Anacond官網


3.安裝anaconda 3.安裝anaconda
功能:原始的python功能太陽春,若下載anaconda,則可以提供300多種的科學數學模組,可以提供大數據資料分析
(1)Anaconda是一個免費的Python和R語言的發行版本,用於計算科學(資料科學、機器學習、巨量資料處理和預測分析)
(2)因為Anaconda有很多的數據分析模組,所以大數據分析會使用到的『pandas、Numpy、Scipy』python package套件,在anaconda安裝完成時就已經包含在裡面了。
(3)Anaconda中文是森蚺(大蟒蛇)。
1)可以把Anaconda當作是Python的懶人包,除了Python本身(python2, 3) 還包含了Python常用的資料分析、機器學習、視覺化的套件
2).完全開源和免費
3).額外的加速、優化是收費的,但對於學術用途可以申請免費的 License
4).全平台支持:Linux、Windows、Mac
5).支持 Python 2.6、2.7、3.3、3.4,可自由切換,
6).內帶spyder 編譯器(還不錯的spyder編譯器)
7).自帶jupyter notebook 環境 (就是網頁版的python編輯器,副檔名為IPthon)

(4)常用套件:

Numpy: Python做多維陣列(矩陣)運算時的必備套件,比起Python內建的list,Numpy的array有極快的運算速度優勢
Pandas:有了Pandas可以讓Python很容易做到幾乎所有Excel的功能了,像是樞紐分析表、小記、欄位加總、篩選
Matplotlib:基本的視覺化工具,可以畫長條圖、折線圖等等…
Seaborn:另一個知名的視覺化工具,畫起來比matplotlib好看
SciKit-Learn: Python 關於機器學習的model基本上都在這個套件,像是SVM, Random Forest…
Notebook(Jupyter notebook): 一個輕量級web-base 寫Python的工具,在資料分析這個領域很熱門,雖然功能沒有比Pycharm, Spyder這些專業的IDE強大,但只要code小於500行,用Jupyter寫非常方便,Jupyter也開始慢慢支援一些Multi cursor的功能了,可以讓你一次改許多的變數名稱
(5)優點:省時:一鍵安裝完90%會用到的Python套件,剩下的再用pip install個別去安裝即可
(6)缺點:占空間:包含了一堆用不到的Python的套件(可安裝另一種miniconda)

(7)下載網址:https://www.anaconda.com/
選擇個人版:indivisual
https://www.anaconda.com/products/individual
→Download
→Windows
Python 3.7(會自動幫你安裝Python 3.7)
64-Bit Graphical Installer (466 MB)
32-Bit Graphical Installer (423 MB)

(8)安裝過程,要勾選
不勾選:add the anaconda to the system PATH(但是2020年,ananconda不建議勾選這個,容易發生錯誤)
勾選:Register anaconda as system Python 3.7

(9)安裝結束
→在windows開始→anaconda有6個項目,最常用的有3個
(1)anaconda prompt:可以直接下cmd指令
(2)Spyter:編譯器(還不錯的spyder編譯器)
(3)jupyter notebook(網頁版的python編輯器,副檔名為IPthon)
4.Anaconda prompt:cmd指令 4.使用anaconda prompt:直接下cmd指令
注意:windows 10 必須使用管理員來執行(點選anaconda prompt→滑鼠右鍵→以系統管理員身份進行)
(1)列出目前已經安裝的anaconda的模組與版本:
conda list

(2)對某個模組更新安裝
conda update 模組
範例:conda update ipython

(3)安裝某個模組
方法1:conda install 模組
範例:conda install numpy

# 安裝 NumPy 1.15 以後、 1.16 以前
conda install 'numpy>=1.15,<1.16'

方法2:pip install 模組
範例:pip install numpy

(4)解除安裝某個模組
方法1:conda uninstall 模組
範例:conda uninstall numpy

方法2:輸入 conda remove PACKAGE_NAME可以從目前的工作環境移除指定套件。
# 移除 NumPy
conda remove numpy numpy-base

方法3:pip uninstall 模組
範例:pip uninstall numpy

(5)在anaconda prompt執行python程式
方法1:
先到工作目錄:cd ch1
執行.py程式:python test1.py

方法2:python c:\chp1\test1.py

(6)常用指令
conda --version 檢視 conda 版本
conda update PACKAGE_NAME更新指定套件
conda --help 檢視 conda 指令說明文件
conda list --ENVIRONMENT 檢視指定工作環境安裝的套件清單
conda install PACAKGE_NAME=MAJOR.MINOR.PATCH 在目前的工作環境安裝指定套件
conda remove PACKAGE_NAME 在目前的工作環境移除指定套件
conda create --name ENVIRONMENT python=MAIN.MINOR.PATCH 建立新的工作環境且安裝指定 Python 版本
conda activate ENVIRONMENT 切換至指定工作環境
conda deactivate 回到 base 工作環境
conda env export --name ENVIRONMENT --file ENVIRONMENT.yml 將指定工作環境之設定匯出為 .yml 檔藉此複製且重現工作環境
conda remove --name ENVIRONMENT --all 移除指定工作環境
使用 conda list | grep numpy 檢查 Python 套件清單中是否還有 NumPy 套件
輸入 conda search PACKAGE_NAME可以檢視指定套件在 conda 中可安裝的版本列表。
# 檢視 NumPy 在 conda 中可安裝的版本
conda search numpy=1.16.3
5.用Anaconda prompt來建立虛擬環境 5.使用Anaconda prompt來建立虛擬環境
功能:可以建立多個Anaconda虛擬環境
例如:目前安裝後預設是python 3.x版本的環境,若要創建一個python 2.x的環境,就可以在Anaconda虛擬環境實現
(1)# 檢視電腦中可使用與目前所在的工作環境
conda env list

(2)使用 conda create --name ENVIRONMENT python=MAIN.MINOR.PATCH 指令可以建立出乾淨、極簡且資源隔絕的工作環境。
指令:conda create -n 虛擬環境名稱 python=版本 anaconda

# 建立一個名稱為 demo 的 Python 2 工作環境
conda create --name demo python=2
範例:建立py27env環境
conda create -n py27env python=2.7 anaconda

(3)輸入 conda activate ENVIRONMENT 可以啟動指定工作環境、
方法1:conda activate ENVIRONMENT
方法2:activate ENVIRONMENT
範例:activate py27env

方法3:到windows→開始→點選Anaconda prompt(py27env)

(4)關閉虛擬目錄,回到原本pytohn環境(base)
使用 conda deactivate 則是切換回預設的 base 工作環境。
方法1:conda deactivate
方法2:deactivate

(5)# 檢視 demo 工作環境中的套件
conda list -n py27env

(5)範例 A.建立py27env虛擬環境
conda create -n py27env python=2.7 anaconda
B.切換到py27env虛擬環境
activate py27env
C.檢視 demo 工作環境中的套件
conda list -n py27env
D.# 檢視 Python 版本
python --version
E.關閉虛擬目錄,回到原本pytohn環境(base)
deactivate

(5)複製一個與目前pyhon環境(或是py27env) 完全相同的工作環境
conda create -n 新虛擬環境名稱 --clone root
範例:conda create -n py27env2 --clone root

# 檢查明確所有虛擬環境名稱
conda info -e

(6)移除某個虛擬環境
conda remove -n 虛擬環境名稱 --all
範例:conda remove -n py27env --all

(7)常用指令整理
安裝:conda install
更新:conda update
移除:conda remove

在工作環境管理透過
創建:conda create
啟動:conda activate
停止:conda deactivate
匯出設定檔:conda env export
移除:conda remove
6.使用Spyter編譯器 6.使用Spyter:編譯器
(1)新增一個py檔案
File→ New file

print("你好,歡迎光臨")
print(1+1)

Run➤

(2)開啟已經存在的檔案
方法1:File→ Open
方法2:拖曵檔案總管的py檔案到Spyder

(3)在Spyter使用簡易智慧輸入
方法:按『tab』
範例:
先輸入p
然後按『tab』
出現list清單,都是p開始的指令

(4)程式除錯
方法1:若是這一行有指令寫錯,就會在最左邊出現三角形▲警告icon
方法2:在這個一行最左邊double click,就會出現中斷點(或是這一行按F12)
7.jupyter notebook網頁版的python編輯器 7.jupyter notebook
(1)功能:是網頁版的python編輯器,副檔名為IPthon
會開啟瀏覽器:http://localhost:8888/tree
對應的硬碟目錄 = C:\Users\電腦名稱
(例如: C:\Users\user)

(2)練習線上編輯一個簡單python程式
A.右方→New→Python3
在cell裡面輸入In[1]
a = ("apple","grape","banana")
print(a[2])

B.Run

C.修改檔案名稱→Untitled→exp1-3

D.查詢雲端檔案放置位置:C:\Users\電腦名稱\exp1-3.ipynb

(3)二種不同的Run方式
A.Run:會新增一個new cell
B.Ctrl+Enter:會停留在原本的cell

(4)在jupyter notebook使用簡易智慧輸入
方法:按『tab』
範例:
先輸入p
然後按『tab』
出現list清單,都是p開始的指令

(5)在jupyter notebook編輯的檔案無法讓python IDE編譯
jupyter notebook編輯的檔案是.ipynb
與python的.py不同
改善方法:只能把程式碼複製貼上,在兩個平台交流
8.其它線上雲端可編譯的python平台 8.其它線上雲端可編譯的python平台
網站:http://rep.it/languages/python3
 

 

1.VisLab,VisCam簡介
VisLab:AI圖像檢測軟體
VisCam:AI影像辨識光學模組
VisLab,VisCam簡介簡報

2.VisLab簡介
(1)VisLab:免費,下載使用

☎VisLab軟體下載:
官網:下載VisLab
安裝時,會詢問序號,不理它,再開一次,即可

☎VisLab使用手冊:
官網:VisLab使用說明書

VisLab係由智泰科技耗時數年自主開發的AI模型訓練套裝軟體,可應用於各行各業上。
透過簡易且可視化的操作介面,讓未曾學習過程式語言與不孰悉AI資料庫的各界人士,都能藉由VisLab立即應用AI技術所帶來的便利性

(2)VisLab有影像辨識三大功能:
☎影像分類:辨識這張圖片上貓,狗,是撲克牌9,10,11,12,13,1
☎影像偵測:偵測這張圖片的兩個物件,框框1是貓,框框2是夠
☎影像分割:把這張圖片的貓的區域,分割出來(有範圍,面積),可應用於醫學影像辨識(辨識病灶區域)
成果圖片

(3)三種工具:
上述分類偵測分割三大功能,其中的每個功能皆有『標記、訓練、驗證』三個工具
成果圖片
成果圖片
成果圖片

(4)圖形化操作界面,不需要寫程式碼
在VisLab中有分類、偵測與分割功能,每種功能都具備標記、訓練與驗證工具,使用者透過圖片針對其目的輕鬆進行標記,標記後可依照需求調整參數進行訓練,
目前已有36種網路模型可供使用,訓練過程均可透過可視化介面控制,使用者亦可依照個人時間選擇中斷或接續訓練,最後訓練完成的AI模型,透過可視化的驗證工具輕鬆檢視其訓練成果,決定是否串接設備與重新標記或訓練的依據

(5)AI實力分析:
☎VisLab可以處理大多數的工業影像辨識專案。
☎VisLab可以處理大多數的學界影像辨識研究。
☎智泰科技所負責的業界AI專案,與自行下載的VisLab功能幾乎類似。
☎VisLab幾乎可以處理大多數的AI影像辨識問題。
(可以處理:車牌辨識,物種辨識,醫學影像辨識)
(無法處理:人臉辨識)

(5)各種實際應用:
智慧醫療(影像分割)
智慧醫療(影像分類)
智慧醫療(物件偵測)
鐵道安全檢查(物件偵測)
自動駕駛(影像分類)
智慧零售(物件偵測)

(6)最低硬體配備需求:
智慧醫療(影像分割)

2.VisCam簡介
(1)功能:
☎配備相機鏡頭,可以即時辨識
☎可以事先部署VisLab 的AI參數模型
VisCam功能
VisCam配備示意圖
為深度學習圖像辨識打造的檢測模組,可將VisLab輸出之檢測模型搭載到VisCam系統中,配合專屬的AI相機、光源進行產線即時智慧檢測。此外,VisCam也可同時作為資料蒐集器,截取、管理檢測圖像與資料庫,進而支援深度學習模型在VisLab中接續學習。


2.VisLab,VisCam教學影片
官網:教學用品
共9部教學影片。使用者可依據需求功能選擇觀看的段落,並搭配試用版軟體進行練習。

(1)VisLab軟體下載:
官網:下載VisLab
安裝時,會詢問序號,不理它,再開一次,即可

(1)VisLab使用手冊:
官網:VisLab使用說明書


(1)Classification 分類器
VisLab 教學影片1 - CFL 分類器 標記工具教學Classification Lable Tool
官網:VisLab 教學影片1
VisLab 教學影片2 - CFT 分類器 訓練工具教學Classification Trainer
官網:VisLab 教學影片2
VisLab 教學影片3 - CFV 分類器 驗證工具教學Classification Verify
官網:VisLab 教學影片3

(2)Object Detection 物件偵測
VisLab 教學影片4 - ODL 物件偵測 標記工具教學Object Detection Lable Tool
官網:VisLab 教學影片4
VisLab 教學影片5 - ODT 物件偵測 訓練工具教學Object Detection Trainer
官網:VisLab 教學影片5
VisLab 教學影片6 - ODV 物件偵測 驗證工具教學Object Detection Verify
官網:VisLab 教學影片6

(3)Segmentation 分割
VisLab 教學影片7 - SEL 分割 標記工具教學Segmentation Lable Tool
官網:VisLab 教學影片7
VisLab 教學影片7 - SEL 分割 標記工具教學Segmentation Lable Tool
VisLab 教學影片8 - SET 分割 訓練工具教學Segmentation Trainer
官網:VisLab 教學影片8
VisLab 教學影片7 - SEL 分割 標記工具教學Segmentation Lable Tool
VisLab 教學影片9 - SEV 分割 驗證工具教學Segmentation Verify
官網:VisLab 教學影片9

3.範例1:Classification分類器:標記工具
☎目的:把收集來的圖片素材,加上標記label(例如,貓,狗)
☎方法:使用分類器/標記工具

(1)Classification 分類器教學影片
VisLab 教學影片1 - CFL 分類器 標記工具教學Classification Lable Tool
官網:VisLab 教學影片1
VisLab分類器(操作篇)簡報
官網:VisLab使用說明書


(2)下載圖片素材檔案:
下載圖片素材檔案
☎圖片要分成三個目錄:train,test,output(名稱自訂,可以其它名稱)
示意圖

(3)圖片分類的操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)標記:振作步驟:
步驟一:先建立 train 、testtest 與output output 資料夾。
示意圖
步驟二:將照片分別放置 train 與testtest 資料夾中。
步驟三:開啟 VisLab VisLab VisLab,選取分類器
示意圖
步驟四:點選工具列下方第一個 「開新設定檔」,選取欲標記的資料夾 (train/test) (train/test)。
示意圖
示意圖
示意圖
步驟五:分類標籤新增名稱 (Cats 與Dogs) 並進行標記。
示意圖
進行標記
示意圖
示意圖
步驟六:標記完成,回首頁。

☎注意:先做train的標記
➜做完後,一定要先按Home首頁
➜才能自動產生一個標記xml檔案(LabelMap.pbtxt),才算完成
➜才能開始做下一個test目錄的標記

(5)標記:要記得完成三個目錄的標記(train, test, output):

4.範例2:Classification分類器:訓練工具
☎目的:把加上標記label(例如,貓,狗)圖片,進行訓練
☎方法:使用分類器/訓練工具

(1)Classification 分類器教學影片
VisLab 教學影片2 - CFT 分類器 訓練工具教學Classification Trainer
官網:VisLab 教學影片2
VisLab分類器(操作篇)簡報
官網:VisLab使用說明書

(3)圖片分類的操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)訓練:振作步驟:
步驟一:進入分類器的訓練工具後,從資料中依序將train、test與output資料夾。 資料夾。
示意圖
示意圖
示意圖
示意圖
步驟二:點選開始訓練,開始製作AI 模型檔。
示意圖
步驟三:訓練完成取得AI模型檔,回首頁。
示意圖
☎注意:先做train的標記
➜做完後,一定要先按Home首頁
➜才能自動產生一個標記xml檔案(LabelMap.pbtxt),才算完成
➜才能開始做下一個test目錄的標記


5.範例3:Classification分類器:驗證工具
☎目的:把已經訓練好的模型,拿來驗證圖片
☎方法:使用分類器/驗證工具

(1)Classification 分類器教學影片
VisLab 教學影片3 - CFV 分類器 驗證工具教學Classification Verify
官網:VisLab 教學影片3
VisLab分類器(操作篇)簡報
官網:VisLab使用說明書

(3)圖片分類的操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)驗證:振作步驟:
步驟一:進入分類器的驗證工具後,從資料中依序導入test資料夾與AI模型檔(放置於output資料夾中)。
示意圖
示意圖
示意圖

步驟二:點選開始分析。
示意圖
步驟三:分析完成,看成績。
示意圖
示意圖


6.範例4:Object Detection 物件偵測:標記工具
☎目的:把收集來的圖片素材,加上標記label(例如,撲克牌9,10,11,12,1)
☎方法:使用物件偵測/標記工具

(1)Object Detection 物件偵測教學影片
VisLab 教學影片4 - ODL 物件偵測 標記工具教學Object Detection Lable Tool
官網:VisLab 教學影片4
VisLab物件偵測(操作篇)簡報
官網:VisLab使用說明書

(2)下載圖片素材檔案:
下載圖片素材檔案
☎圖片要分成三個目錄:train,test,output(名稱自訂,可以其它名稱)
示意圖

(3)圖片物件偵測操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)標記:振作步驟:
步驟一:先建立 train、test 與output資料夾。
示意圖
步驟二:將照片分別放置 train 與test 資料夾中。
步驟三:開啟 VisLab,選取物件偵測工具
示意圖
步驟四:點選工具列下方第一個「開新設定檔」,取欲標記的資料夾 (train/test) (train/test) 。
示意圖
步驟五:分類標籤新增名稱 (nine (nine至ace) 並進行標記。
示意圖
示意圖
步驟六:標記完成,回首頁。
步驟七:再標記test目錄,再回首頁。

☎注意:先做train的標記
➜做完後,一定要先按Home首頁
➜才能自動產生一個標記xml檔案(LabelMap.pbtxt),才算完成
➜才能開始做下一個test目錄的標記


7.範例5:Object Detection 物件偵測:訓練工具
☎目的:把標記label(例如,撲克牌9,10,11,12,1)進行訓練
☎方法:使用物件偵測/訓練工具

(1)Object Detection 物件偵測教學影片
VisLab 教學影片5 - ODT 物件偵測 訓練工具教學Object Detection Trainer
官網:VisLab 教學影片4
VisLab物件偵測(操作篇)簡報
官網:VisLab使用說明書

(2)圖片物件偵測操作流程:
☎標記
☎訓練
☎驗證
示意圖

(3)訓練:振作步驟:
步驟一:進入物件偵測的訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 traintrain train、testtest 與output output output資料夾。
步驟二:點選開始訓練,製作AI模型檔。
示意圖
步驟三:訓練完成取得AI模型檔,回首頁。

(3)訓練參數說明:
☎招回率 (Recall) :又稱查全率,在資訊檢索系統中,找出相關料的筆數與文件庫中應有相關資料總比值。
☎精確率 (Precision):又稱查準率,在資訊檢索系統中,找出相關料的筆數與系統找出資料總比值。
☎F度量 (F-measure):是一種同時兼顧查準率(precision)與查全率(recall)
的度量方式,其公式為 2XPXR/(P+R 2XPXR/(P+R )

☎舉例: 狗共有 50 張圖片,而在系統回傳的 100 張圖片,只有 20 張是狗的圖片。
招回率: 20/50=0.4
精確率: 20/100=0.2
F度量: 2X0.4X0.2/(0.4+02)=0.27
示意圖


8.範例6:Object Detection 物件偵測:驗證工具
☎目的:驗證test標記label(撲克牌9,10,11,12,1)進行驗證
☎方法:使用物件偵測/驗證工具

(1)Object Detection 物件偵測教學影片
VisLab 教學影片6 - ODV 物件偵測 驗證工具教學Object Detection Verify
官網:VisLab 教學影片6
VisLab物件偵測(操作篇)簡報
官網:VisLab使用說明書

(2)圖片物件偵測操作流程:
☎標記
☎訓練
☎驗證
示意圖

(3)驗證:振作步驟:
步驟一:進入物件偵測 的驗證工具後,從資料中依序導入 test 資料夾與與 AI 模型檔(放置於output資料夾中 )。
示意圖
步驟二:點選開始分析。
步驟三:分析完成,看成績。
示意圖

(3)驗證參數說明:
示意圖
示意圖


9.範例7:Segmentation 分割:標記工具
☎目的:把收集來的圖片素材,加上標記label(例如,矩形,三角形,圓形)
☎方法:使用分割/標記工具

(1)Segmentation 分割教學影片
VisLab 教學影片7 - SEL 分割 標記工具教學Segmentation Lable Tool
官網:VisLab 教學影片7
官網:VisLab使用說明書

(2)下載圖片素材檔案:
下載圖片素材檔案
☎圖片要分成三個目錄:train,test,output(名稱自訂,可以其它名稱)
示意圖

(3)Segmentation 分割操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)標記:振作步驟:
步驟一:先建立 train、test 與output資料夾。
步驟二:將照片分別放置 train 與test 資料夾中。
步驟三:開啟 VisLab,選取Segmentation 分割工具
示意圖
步驟四:點選工具列下方第一個「開新設定檔」,取欲標記的資料夾 (train/test) (train/test) 。
示意圖
步驟五:分類標籤新增名稱 (矩形,三角形,圓形)。
步驟六:使用上方的『矩形工具,圓形工具,三角形工具』圈選範圍,並進行標記
步驟七:標記完成,回首頁。
步驟八:再標記test目錄,再回首頁。

☎注意:先做train的標記
➜做完後,一定要先按Home首頁
➜才能自動產生一個標記xml檔案(LabelMap.pbtxt),才算完成
➜才能開始做下一個test目錄的標記


10.範例8:Segmentation 分割:訓練工具
☎目的:把收集來的圖片素材,加上標記label(例如,矩形,三角形,圓形)
☎方法:使用分割/標記工具

(1)Segmentation 分割教學影片
VisLab 教學影片8 - SET 分割 訓練工具教學Segmentation Trainer
官網:VisLab 教學影片8
官網:VisLab使用說明書

(2)Segmentation 分割操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)分割:訓練步驟:
步驟一:進入物件偵測的訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 訓練工具後,從資料中依序將 traintrain train、testtest 與output output output資料夾。
步驟二:點選開始訓練,製作AI模型檔。
示意圖
步驟三:訓練完成取得AI模型檔,回首頁。




11.範例9:Segmentation 分割:驗證工具
☎目的:驗證test標記label(矩形,圓形,三角形)進行驗證
☎方法:使用分割/驗證工具

(1)Segmentation 分割教學影片
VisLab 教學影片9 - SEV 分割 驗證工具教學Segmentation Verify
官網:VisLab 教學影片9
官網:VisLab使用說明書

(2)Segmentation 分割操作流程:
☎標記
☎訓練
☎驗證
示意圖

(4)分割:驗證步驟:
步驟一:進入物件偵測 的驗證工具後,從資料中依序導入 test 資料夾與與 AI 模型檔(放置於output資料夾中 )。
示意圖
步驟二:點選開始分析。
步驟三:分析完成,看成績。
示意圖
示意圖

(3)驗證參數說明:
示意圖
示意圖



12.範例10:VisCam

1.VisCam簡介
(1)功能:
☎配備相機鏡頭,可以即時辨識
☎可以事先部署VisLab 的AI參數模型
VisCam功能
VisCam配備示意圖
為深度學習圖像辨識打造的檢測模組,可將VisLab輸出之檢測模型搭載到VisCam系統中,配合專屬的AI相機、光源進行產線即時智慧檢測。此外,VisCam也可同時作為資料蒐集器,截取、管理檢測圖像與資料庫,進而支援深度學習模型在VisLab中接續學習。

2.下載安裝VisCam
(1) ☎下載VisCam軟體
官網:下載VisCam軟體
注意:VisCam需要序號(要購買),VisLab是免費版。

2.若沒有webCam,可以用手機安裝iVCam,就可以用手機掃描物件,達成自動辨識
(1)iVCam的功能:
☎取代webCam,能夠把手機的鏡頭,同步轉送到電腦播放
☎注意:在校內使用iVCam,因為校內有封鎖,所以手機的上網必須登入校內wifi,才能使用
☎步驟1:電腦安裝iVCam,手機安裝iVCam
☎步驟2:手機的上網必須登入校內wifi
☎步驟3:查詢電腦的IP4位址

(2)安裝iVCam:
下載安裝iVCam
☎注意:安裝完iVCam,它會自動偵測需要安裝最新版本,還要再安裝一次iVCam。

(3)下載VisCam使用說明書:
下載VisCam使用說明書



13.VisLab 進階操作 &蒐集圖片方式

1.下載講義
下載講義

2.深度學習/資料查詢的工具1:kaggle
(1)功能:
☎在Kaggle上面還有一個Dataset專區。往往我們在做分析的時候,最缺的就是整理好的資料,如果要在自己用API或是爬蟲去抓資料,會耗費許多的時間跟精力,在Dataset專區我們可以看到許多已經被整理好的資料提供大家下載。
☎Kaggle是全世界公認最大的資料科學社群,在Kaggle上隨時都有各種資料分析的比賽正在進行,由於這些比賽都會提供高額的獎金,因此會吸引全世界優秀的資料科學家前來比賽,並有許多熱愛分享的科學家在比賽過後再討論區留下他們的當初思考問題的邏輯以及解題的脈絡,研讀上面的討論串對於提升自己各方面的思考能力有很大的幫助。
☎其他類似的網站像是KDD cup, 中國的天池、DataCastle、DataFountain。
☎在Kaggle上面的比賽有分不同的類別,對於剛入門的初學者來說,上面很多比賽並不是那麼的適合,比如說有些比賽光是資料集就30–40GB,對於一般人的電腦來說,這樣的資料量過大,可能光是試跑一次Model就要好幾天或是Memory Out、以及大部分的影像辨識比賽都需要專門的GPU硬體設備,如果只用CPU也會跑非常久。
(2)網站:
kaggle網站
網站使用教學

3.深度學習/資料查詢的工具2:papers with code
(1)功能:
☎最新機器學習論文哪裡找?免費平台 Papers with Code 可搜尋即時排名、抓code
☎隨著機器學習討論度越來越高,以此為主題的論文數量也越來越多了。要怎麼不花錢、不費時間,又能找到最新最優質的 AI 論文呢?別怕!論文搜尋神器 Papers with Code 可以解決你的困難
☎AI 所有領域最優資料搜尋神器」— Papers with Code
☎網站上有超過 2500 多個排行榜和 20,000 多個論文結果。此外,結果現在可以直接鏈接到 arXiv 中的表格,只需要輕輕一點 result,就能夠提取出論文結果來
(2)網站:
papers with code網站
papers with code網站使用教學

4.自己收集圖片:到google輸入:批量圖片下載
到google輸入:批量圖片下載

5.使用Chrome 擴充功能:Imageye 免費圖片下載器,批次下載網頁所有圖檔
Imageye使用教學
play store下載:Image downloader - Imageye




g