# 定義資料科學 | ![由 [(@sketchthedocs)](https://sketchthedocs.dev) 繪製的手繪筆記](../../sketchnotes/01-Definitions.png) | | :----------------------------------------------------------------------------------------------------: | | 資料科學的定義 - _由 [@nitya](https://twitter.com/nitya) 繪製的手繪筆記_ | --- [![資料科學定義影片](../../../../translated_images/zh-TW/video-def-ds.6623ee2392ef1abf.webp)](https://youtu.be/beZ7Mb_oz9I) ## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/0) ## 什麼是資料? 在我們的日常生活中,我們不斷被資料包圍著。你現在正在閱讀的文字就是資料。你智慧型手機中朋友的電話號碼列表是資料,手錶上顯示的當前時間也是資料。作為人類,我們自然地與資料互動,例如計算我們擁有的金錢或寫信給朋友。 然而,隨著電腦的誕生,資料變得更加重要。電腦的主要功能是進行計算,但它們需要資料來操作。因此,我們需要了解電腦如何存儲和處理資料。 隨著網際網路的出現,電腦作為資料處理設備的角色更加重要。如果仔細想想,我們現在使用電腦更多是用於資料處理和通信,而不是進行實際的計算。當我們寫電子郵件給朋友或在網際網路上搜尋資訊時,我們本質上是在創建、存儲、傳輸和操作資料。 > 你能記得上一次真正用電腦進行計算是什麼時候嗎? ## 什麼是資料科學? 在 [維基百科](https://en.wikipedia.org/wiki/Data_science) 中,**資料科學**被定義為 *一個科學領域,使用科學方法從結構化和非結構化資料中提取知識和洞察,並將資料中的知識和可行洞察應用於廣泛的應用領域*。 這個定義突出了資料科學的以下重要方面: * 資料科學的主要目標是從資料中**提取知識**,換句話說,就是**理解**資料,找到一些隱藏的關係並建立**模型**。 * 資料科學使用**科學方法**,例如概率和統計。事實上,當*資料科學*這個術語首次被提出時,有些人認為資料科學只是統計學的一個新潮名稱。如今,顯然這個領域要廣泛得多。 * 獲得的知識應用於產生一些**可行的洞察**,即可以應用於實際商業情境的實用洞察。 * 我們應能操作**結構化**和**非結構化**資料。我們稍後會在課程中討論不同類型的資料。 * **應用領域**是一個重要概念,資料科學家通常需要在問題領域中至少具備一定程度的專業知識,例如:金融、醫學、行銷等。 > 資料科學的另一個重要方面是研究如何使用電腦收集、存儲和操作資料。雖然統計學為我們提供了數學基礎,資料科學則應用數學概念來實際從資料中獲得洞察。 根據 [Jim Gray](https://en.wikipedia.org/wiki/Jim_Gray_(computer_scientist)) 的說法,資料科學可以被視為一種獨立的科學範式: * **實證科學**,主要依賴觀察和實驗結果 * **理論科學**,從現有科學知識中產生新概念 * **計算科學**,基於一些計算實驗發現新原則 * **資料驅動科學**,基於發現資料中的關係和模式 ## 其他相關領域 由於資料無處不在,資料科學本身也是一個廣泛的領域,涉及許多其他學科。
資料庫
一個重要的考量是如何存儲資料,也就是如何以允許更快處理的方式結構化資料。有不同類型的資料庫可以存儲結構化和非結構化資料,這些我們會在課程中進一步探討
大數據
我們經常需要存儲和處理結構相對簡單但數量非常龐大的資料。有一些特殊的方法和工具可以將這些資料分散存儲在計算機集群中,並高效地進行處理。
機器學習
理解資料的一種方法是建立模型,該模型能夠預測所需的結果。從資料中開發模型被稱為機器學習。你可以查看我們的機器學習初學者課程以了解更多。
人工智慧
機器學習的一個分支領域稱為人工智慧(AI),它也依賴於資料,並涉及建立模仿人類思維過程的高複雜度模型。AI方法通常能夠將非結構化資料(例如自然語言)轉化為結構化洞察。
視覺化
大量的資料對人類來說是難以理解的,但一旦我們使用這些資料創建有用的視覺化,我們就能更好地理解資料並得出一些結論。因此,了解多種視覺化資訊的方法非常重要——這是我們在課程第三部分中會涵蓋的內容。相關領域還包括資訊圖表人機互動
## 資料的類型 如我們之前提到的,資料無處不在。我們只需要以正確的方式捕捉它!區分**結構化**和**非結構化**資料是很有用的。前者通常以某種良好結構化的形式表示,通常是表格或多個表格,而後者則僅僅是文件的集合。有時我們也可以談論**半結構化**資料,它具有某種結構,但可能差異很大。 | 結構化 | 半結構化 | 非結構化 | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | --------------------------------------- | | 人員及其電話號碼的列表 | 帶有連結的維基百科頁面 | 《大英百科全書》的文字 | | 過去20年中每分鐘建築物所有房間的溫度 | 以JSON格式存儲的科學論文集合,包括作者、出版日期和摘要 | 公司文件的文件共享 | | 進入建築物的所有人的年齡和性別資料 | 網頁 | 監控攝像機的原始視頻流 | ## 資料的來源 資料的來源有很多,列舉所有來源是不可能的!然而,我們可以提到一些典型的資料來源: * **結構化** - **物聯網**(IoT),包括來自不同感測器(如溫度或壓力感測器)的資料,提供了許多有用的資料。例如,如果辦公樓配備了物聯網感測器,我們可以自動控制供暖和照明以降低成本。 - **調查問卷**,例如在購物後或訪問網站後要求用戶完成的問卷。 - **行為分析**,例如幫助我們了解用戶瀏覽網站的深度以及離開網站的典型原因。 * **非結構化** - **文字**可以是豐富的洞察來源,例如整體**情感分數**,或提取關鍵字和語義含義。 - **圖片**或**視頻**。監控攝像機的視頻可以用來估算道路上的交通流量,並通知人們可能的交通堵塞。 - 網頁伺服器的**日誌**可以用來了解我們網站的哪些頁面最常被訪問,以及訪問的時長。 * **半結構化** - **社交網絡**圖表可以是用戶個性和信息傳播潛力的絕佳資料來源。 - 當我們擁有一堆派對照片時,我們可以嘗試通過建立人們互相拍照的圖表來提取**群體動態**資料。 了解不同的資料來源後,你可以嘗試思考不同的情境,應用資料科學技術來更好地了解情況並改善業務流程。 ## 資料的用途 在資料科學中,我們專注於資料旅程的以下步驟:
1) 資料獲取
第一步是收集資料。雖然在許多情況下這可能是一個簡單的過程,例如資料從網頁應用程式進入資料庫,但有時我們需要使用特殊技術。例如,來自物聯網感測器的資料可能過於龐大,使用像IoT Hub這樣的緩衝端點來收集所有資料以進行後續處理是一個好方法。
2) 資料存儲
存儲資料可能具有挑戰性,特別是當我們談論大數據時。在決定如何存儲資料時,考慮未來希望如何查詢資料是有意義的。資料可以通過以下幾種方式存儲:
3) 資料處理
這是資料旅程中最令人興奮的部分,涉及將資料從原始形式轉換為可用於視覺化/模型訓練的形式。當處理非結構化資料(如文字或圖片)時,我們可能需要使用一些AI技術來提取特徵,從而將其轉換為結構化形式。
4) 視覺化 / 人類洞察
為了理解資料,我們通常需要對其進行視覺化。擁有多種視覺化技術,我們可以找到合適的方式來獲得洞察。通常,資料科學家需要“玩轉資料”,多次進行視覺化並尋找一些關係。此外,我們可能使用統計技術來測試假設或證明不同資料之間的相關性。
5) 訓練預測模型
由於資料科學的最終目標是能夠根據資料做出決策,我們可能希望使用機器學習技術來建立預測模型。然後,我們可以使用這些模型對具有相似結構的新資料集進行預測。
當然,根據實際資料的不同,有些步驟可能會缺失(例如,當我們已經在資料庫中擁有資料,或者當我們不需要模型訓練時),或者有些步驟可能會重複多次(例如資料處理)。 ## 數位化與數位轉型 在過去的十年中,許多企業開始理解在做出商業決策時資料的重要性。要將資料科學原則應用於企業運營,首先需要收集一些資料,也就是將業務流程轉化為數位形式。這被稱為**數位化**。將資料科學技術應用於這些資料以指導決策,可以顯著提高生產力(甚至是業務轉型),這被稱為**數位轉型**。 讓我們來看一個例子。假設我們有一門資料科學課程(像這門課程),我們在線上向學生提供,並希望利用資料科學來改進它。我們該怎麼做? 我們可以先問自己“什麼可以數位化?”最簡單的方法是測量每位學生完成每個模組所需的時間,並通過在每個模組結束時進行選擇題測試來測量所獲得的知識。通過計算所有學生的平均完成時間,我們可以找出哪些模組對學生來說最具挑戰性,並著手簡化它們。 > 您可能會認為這種方法並不理想,因為模組的長度可能不同。或許更公平的做法是將時間除以模組的長度(以字元數計算),然後比較這些值。 當我們開始分析多選測驗的結果時,可以嘗試找出學生難以理解的概念,並利用這些資訊來改進內容。為了做到這一點,我們需要設計測驗,使每個問題都能對應到某個特定的概念或知識塊。 如果我們想進一步深入分析,可以將每個模組所需的時間與學生的年齡類別進行對比。我們可能會發現某些年齡層完成模組所需的時間過長,或者學生在完成模組之前就中途退出。這可以幫助我們為模組提供年齡建議,並減少因錯誤期望而導致的不滿。 ## 🚀 挑戰 在這次挑戰中,我們將嘗試通過分析文本來找出與資料科學領域相關的概念。我們將選取一篇關於資料科學的維基百科文章,下載並處理文本,然後建立一個像這樣的文字雲: ![資料科學文字雲](../../../../translated_images/zh-TW/ds_wordcloud.664a7c07dca57de0.webp) 請訪問 [`notebook.ipynb`](../../../../1-Introduction/01-defining-data-science/notebook.ipynb ':ignore') 閱讀程式碼。您也可以執行程式碼,並即時查看它如何進行所有的資料轉換。 > 如果您不知道如何在 Jupyter Notebook 中執行程式碼,可以查看 [這篇文章](https://soshnikov.com/education/how-to-execute-notebooks-from-github/)。 ## [課後測驗](https://ff-quizzes.netlify.app/en/ds/quiz/1) ## 作業 * **任務 1**:修改上述程式碼,找出與 **大數據** 和 **機器學習** 領域相關的概念 * **任務 2**:[思考資料科學場景](assignment.md) ## 致謝 本課程由 [Dmitry Soshnikov](http://soshnikov.com) 用 ♥️ 編寫。 --- **免責聲明**: 本文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。儘管我們努力確保翻譯的準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵信息,建議使用專業人工翻譯。我們對因使用此翻譯而產生的任何誤解或誤釋不承擔責任。