如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。
顯示具有 人工智慧 標籤的文章。 顯示所有文章
顯示具有 人工智慧 標籤的文章。 顯示所有文章

2023年5月16日

市面上有哪些AI聊天機器?

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2023-5-16

上網搜尋並簡單整理一下現在市面有哪些AI聊天機器? 

Open AI "ChatGPT", playground , 採用OpenAI GPT3, GPT4 model。
Google "Bard" : 免費, 使用Google LaMDA model
Google "Socratic" : 免費,專為學童打造的 AI 聊天機器人, 只提供行動版 App,使用Google支援的model
Microsoft Bing AI聊天功能 : 免費,採用OpenAI GPT4 model
GitHub Copilot : 使用OpenAI Codex
Amazon CodeWhisperer : 使用自建的model

Anthropic "Claude" : 創辦人Dario Amodei曾擔任 OpenAI 研究副總裁,主導的正是安全團隊。使用Proprietary model
DeepMind "Sparrow" (註: DeepMind知名的產品是2019年擊敗了圍棋名手李世石的人工智慧圍棋軟體"AlphaGo") 介紹
Jasper AI: 採用OpenAI GPT3, GPT4 model。
YouChat " 免費, 採用OpenAI GPT3 model。
Writesonic "Chatsonic" : 免費,使用OpenAI GPT-4

Copy.ai  為業務及行銷人員產生文案, 使用OpenAI GPT-3 model。
INK 滿足 SEO 優化行銷需求
Perplexity.ai 以 Chrome 擴充功能之姿現身並強調能改進人們探索並分享資訊, 使用OpenAI GPT-3 and GPT-4 model
Rtr 創造高品質內容並自稱 AI文案助理

HuggingChat : 使用OpenAssistant LLaMa model
KoalaChat : 使用OpenAI GPT-3.5 Turbo model
ZenoChat :  使用4 自建的 models; OpenAI's GPT-3.5 and GPT-4
Personal.ai : 使用自建的 GGT-P; OpenAI's GPT-3 model
Poe : 使用Sage, Dragonfly, Claude, OpenAI GPT-3 and GPT4
Character.AI : 使用自建的model
AI Test Kitchen : Google開發的一個實驗性專案,使用Google LaMDA model


資料來源 : 

2023年3月7日

人工智慧會讓程式設計師失業嗎? 人工智慧輔助開發工具(Codex, Copilot)的優點與注意事項

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2023-3-7

人工智慧會讓程式設計師失業嗎? 甚麼人工智慧技術會讓程式設計師失業?  有興趣的可以往下看。

    BCC 2021年9月8日的一篇報導,"人工智能:編程員為何喜愛這些可能令他們失業的新科技?" 文章中訪問了幾個專業程式設計人員,為什麼喜歡人工智慧工具,優點在哪裡,這篇文章也點出人工智慧工具的限制與注意事項。

    今年3/1日openAI公司發布了"chatGPT API"提供個人或企業自行開發對話機器人相關應用。相較chatGPT,更令我感興趣的是OpenAI公司2021年發布名為Codex的"程式碼產生與處理"APIs,以及以Codex為基礎開發出來的GitHub Copilot(需付費)工具。開發軟體的過程中可以運用此些工具協助快速產生程式,大幅提高生產力。

    OpenAI官網提供了Codex Javascript的測試網頁,只要輸入英文(自然語言)就可以幫你產生想要的Javascript程式碼,有網友藉由這個測試網頁單靠英語對話就開發出一個簡單的遊戲。因此Codex與Copilot被認為是讓程式設計師失業的人工智慧技術。

      但是,不需要專業程式設計訓練,就可以完成一套完整的系統嗎? 下面整理AI輔助開發程式的

優點與注意事項 :  

優點
1 透過AI輔助開發程式,相同的時間可以寫更多的程式。
2 減少查詢語法的時間,如正規表示式這些複雜難記的語法等。

注意事項
1 難以發現的錯誤 : 美國紐約大學2021 年研究發現 AI 建議的程式碼並不可靠,試驗了 89 個場景中,約有 40% 以 Copilot 編寫而成的程式碼具弱點[2]。 史丹佛大學電腦科學家研究發現,程式設計師在 Github Copilot 等 AI 輔助下,較容易對程式碼的品質產生錯誤的信任,因此寫出的程式碼相較獨立的程式設計師更不可靠[2]。
 
知名程式設計問答網站 Stack Overflow 官方宣佈,暫時禁止使用者分享由聊天機器人 ChatGPT 產生的回覆,根據官方表示:「由於從 ChatGPT 獲得正確答案的平均比例太低,發表由 ChatGPT 創造出的答案對網站上,不利於詢問或尋找正確答案的使用者。」[3]
 
AI產生的程式碼中的微小錯誤有可能非常難被發現,可能導致非常大的代價。因此Copilot雖然能提供相對好的程式碼,但有時候會需要一些微調。如果你經驗不足,或正在嘗試學習,可能會出一些差錯但是卻沒有意識到[1]。

2 侵權問題 : "使用AI工具「有可能會侵犯一些開源程式碼許可,因為它可能會有些東西是來源於訓練代碼」。而這可能會令你掉進剽竊的漩渦。”[1] -- BCC

3 只是輔助工具 : AI只提供一些短的程式片段,不會編寫完整的軟體程序[1]。

4 覆核與測試的重要性 : 程式碼仍然需要全面覆核,而且要進行完整的測試如單元測試與整合測試[1]。

5 程式語言限制 : 
Codex目前支援的程式語言: Bash, C#, Go, Java, Javascript, Python, Ruby, Rust。
Github Copilot目前支援的程式語言 : C, C++, C#, Go, Java, Javascript, PHP, Python, Ruby, Scala, Typescript。。

由上面幾個事項,可以了解AI輔助工具很好用但還沒有強大到可以取代專業程式設計師。
參考 

由上面幾個事項,可以了解AI輔助工具很好用但還沒有強大到可以取代專業程式設計師。Codex, Copilot背後的人工智慧模組仍持續學習與進步中,值得持續關注,或許有一天上面這些問題都會解決。

人工智慧程式設計輔助開發工具 - GitHub Copilot介紹

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2023-3-7

       今年3/1日因chatGPT爆紅的openAI公司正式發布了"chatGPT API",提供ChatGPT的引擎與應用程式庫給個人或企業自行開發對話機器人相關應用,加上該公司原有的文字產生與處理,程式碼產生與處理,影像產生與處理等APIs,給有人工智慧應用開發需求的個人或企業更豐富的選擇。

    相較chatGPT API我更感興趣的是OpenAI公司在2021年發布的"程式碼產生與處理"APIs,OpenAI公司將這部分命名為Codex。OpenAI官網提供了Javascript的測試網頁,只要輸入英文(自然語言)就可以幫你產生想要的Javascript程式碼

    除此之外,我找到以Codex為基礎建立的開發工具GitHub Copilot,包含許多IDE的插件,可以在開發軟體的過程中運用AI幫助自己快速產生程式,大幅提高生產力。如果這個工具可以運用到自己的工作上,就太好了,很可惜目前支援的程式語言不包含PHP。

    下面是整理自網路的GitHub Copilot介紹。

簡介

GitHub Copilot是GitHub和OpenAI合作開發的一個人工智慧工具,使用者在使用Visual Studio Code、Microsoft Visual Studio、Vim或JetBrains整合式開發環境時,可以透過GitHub Copilot自動補全代碼。GitHub於2021年6月29日對開公開該軟體。(維基百科)

GitHub Copilot 由 OpenAI Codex 提供支援,OpenAI Codex 是由人工智慧研究實驗室 OpenAI 建立的人工智慧模型。(維基百科)
OpenAI Codex 是 GPT-3(生成型已訓練變換模型 3) 的修改後生產版本,GPT-3 是一種使用深度學習生成類人類文字的語言模型。例如,當給出一個自然語言的程式問題時,Codex能夠產生解法代碼。它也可以用英語描述輸入代碼和在不同程式語言之間翻譯代碼。Codex的GPT-3僅授權給 GitHub 的母公司微軟。(維基百科)
Copilot的OpenAI Codex接受了一系列英語語言、公共 GitHub 儲存庫和其他公開可用原始碼的訓練。這包括來自 5400 萬個公共 GitHub 儲存庫的 159 GB Python 代碼的過濾資料集。(維基百科)

功能與準確度

GitHub Copilot協助程式設計師的功能,包含 :
一 寫上函數名稱自動補全程式碼
二 將註釋轉換成程式碼(Convert comments to code)
三 自動補全重覆的程式碼(Autofill for repetitive code)
四 自動產生測試案例
GitHub 報告稱,Copilot 的自動完成功能大約有一半時間是準確的; 例如,當使用者提供Python 函式頭代碼後,Copilot 在第一次嘗試時有 43% 的時間正確地自動完成了函式體代碼的其餘部分,而在十次嘗試後有 57% 的時間正確地自動完成了函式體代碼的其餘部分。
GitHub 表示,Copilot 的功能能夠幫助程式設計師減省閱讀軟體文件的時間,快速瀏覽不熟悉的編碼框架和語言。

支援的程式語言

GitHub Copilot目前支援的程式語言有C, C++, C#, Go, Java, Javascript, PHP, Python, Ruby, Scala, Typescript

功能介紹

一 寫上函數名稱自動補全程式碼
例如寫一個函數 calculateDaysBetweenDates(date1, date2),你只要函數名稱語意清楚,Copilot會自動填入程式碼。 

二 將註釋轉換成程式碼(Convert comments to code)
例如寫一段註釋,註釋中描述要處理的邏輯,Copilot就會自動產生程式碼。 

三 自動補全重覆的程式碼(Autofill for repetitive code)
例如: 你寫一個常數集合,內容為各種程式語言的註釋符號,你寫了三個程式語言後,Copilot會自動填入其他程式語言。
四 自動產生測試案例
完成一個函示後,可以讓Copilot針對此函示產生測試案例程式。

費用

Copilot個人版: 每月 10 美元,或每年 100 美元。

Copilot企業版 :每個月19美元


安裝與使用



資料來源 
1 維基百科
4.Github - About GitHub Copilot for Individuals
 

2022年3月14日

Python學習資源整理 - 基礎,資料分析,機器學習等

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2022-3-14, 最近更新日期 : 2022-3-28

一 Python基礎

網站

  1. Python交互式學習 (莫烦Python)
  2. Python台灣使用者群組 Python/第一次用就上手
  3. Gitbook.net - Python教學
  4. Python 入門指南 V2.00
  5. Openhome - 語言技術:Python Gossip
  6. Openhome - Python 3 Tutorial(Python 3.5)

Youtube教學

  1. python基础 中文 (x36) (莫烦Python)
  2. 我阿嬤都會的python (x22)
  3. Python 入門教學課程 (x35) (彭彭的課程) 
    • 含基礎教學, 網路爬蟲, 網站開發, Pandas資料分析
  4. python-巨量資料整理 (x7) (容噗玩Data) 
  5. Python 教學 含基礎教學,網路爬蟲,自然語言處理, 資料視覺化 (x29) (吳佳鑫)

課程講義

  1. 台大系統訓練班課程網頁(林奇賦)

電子書

  1. Python核心編程(第二版) - Wesley J. Chun著, Prentice Hall
  2. 简明 Python 教程 Swaroop, C. H. 著

  1. 精通 Python|運用簡單的套件進行現代運算, 2/e

 

 

二 Python 資料分析 

 

網站

  1. 政治大學磨課師課程-蔡炎龍-成為python數據分析達人的第一門課 (影音課程)
  2. Numpy & Pandas Python3 把玩你的數據 (莫烦Python) 
    • Numpy & Pandas 簡介、Numpy 學習、Pandas 學習、附加內容
  3. NumPy教程
  4. 從零開始學資料科學:Numpy 基礎入門
  5. 使用Python進行資料分析 :: 2018 iT 邦幫忙鐵人賽
  6. NumPy 101:資料科學的基石

Youtube教學

  1. Numpy & Pandas Python 教学 学习教程 (x18) (莫烦Python)
  2. Python NumPy 入門教學課程 (x18) (彭彭的課程)
  3. Pandas 教程 | Pandas数据分析入门到实战 (x43) (蚂蚁学Python)

電子書

  1. OReilly 利用Python进行数据分析
  2. Numpy User Guide R1.22.0
  3. pandas - powerful Python data analysis toolkit R1.4.1

  1. Python 資料科學學習手冊

 

 

三 Python機器學習 

 

3-1 機器學習觀念

網站(影音課程) 

  1. 磨課師課程-蔡炎龍-Python實現人工智慧(政治大學) 入門,淺顯異動
  2. 磨課師課程-林怡伶-應⽤機器學習於 Python (政治大學) 
  3. 磨課師課程-簡士鎰-商業人工智慧導論 (政治大學)
  4. 開放式課程-李育杰老師 機器學習 Machine Learning (交通大學)

 Youtube教學

  1. 有趣的机器学习 (x41) (莫烦Python) 
  2. 機器學習首部曲 (x22) (PyInvest)
  3. 機器學習二部曲 (x9) (PyInvest)
  4. Python 全民瘋AI系列 (x30) (10程式中)

講義:

  1. 陳士杰 聯合大學機器學習講義 

  

3-2 啟發式演算法

Youtube教學 : 秒懂进化算法 Evolutionary Algorithms (x3) (莫烦Python)

 

3-3 (類)神經網路

Youtube教學 : 秒懂神经网络 Neural Networks (x21) (莫烦Python) 

 

3-4 分類議題

Youtube教學 : 从零开始 汽车类别分类器 机器学习实战 (x2) (莫烦Python)

 

3-5 深度學習 

網站(含影音課程)

  1. 政治大學磨課師課程-蔡炎龍-深度學習的原理及實務上的應用
  2. 政治大學磨課師課程-張家銘、彭彥璁-資料科學與深度學習
  3. Knock Knock! Deep Learning 系列
  4.  開放式課程-清華大學深度學習

Youtube教學

  1. Python 深度學習 (x41) (台灣機器學習有限公司)
  2. 深度學習-神經網路 (x18) (容噗玩Data)

電子書
  1. O’Reilly, 深度學習入門 - 基於Python的理論與實現

 

3-6 強化學習(增強式學習,Reinforcement Learning)

網站

  1. RL Python 3 強化學習 (莫烦Python) 含影音教學
    • 簡介、Q學習、Sarsa、DQN、Policy Gradients、ActorCritic、基於模型的RL

Youtube教學

  1. 秒懂强化学习 Reinforcement Learning (x12) (莫烦Python)
  2. 从零开始 机械手臂 强化学习 Make a Robot arm from scratch (x5) (莫烦Python)
  3. Deep Reinforcement Learning tutorials (Eng/Python) (x7) (莫烦Python)

  

3-7 Keras

網站:

  1. Keras Python 3 快速搭建神經網路 (莫烦Python) (含影音教學)
    • Keras 簡介、如何搭建各種神經網路、其他應用
  2. Keras: the Python deep learning API 

 Youtube教學

  1. Keras 快速搭建神经网络 (教学 教程) (x18) (莫烦Python)
  2. Keras 深度學習 (HiSKIO)

電子書 :

  1. tutorialspoint - Keras Tutorial

 

3.8 Tensorflow 

  

網站 :

  1. Tensorflow Python 3 搭建自已的神經網路 (莫烦Python)  
    • Tensorflow 簡介、Tensorflow 基礎構架、建造我們第一個神經網路
    • 視覺化好助手Tensorboard、進階內容(多種深度學習網路搭建)
  2. tensorflow python :: 2018 iT 邦幫忙鐵人賽

 Youtube教學

  1. Tensorflow tutorials (Eng Sub) 神经网络 教学 教程 (x44) (莫烦Python)

書籍 :

  1. 白話深度學習與 TensorFlow
  2. 深度學習快速入門 — 使用 TensorFlow (Getting started with TensorFlow)


3-9 PyTorch

網站 : PyTorch Python 3 動態神經網路 (莫烦Python) 

PyTorch 簡介、PyTorch 神經網路基礎、建造第一個神經網路、高級神經網路結構、進階內容

Youtube教學 : PyTorch tutorials 神经网络 教学 (x35)(莫烦Python)

書籍 : PyTorch 深度學習與自然語言中文處理 

 

3-10 Ski-Learn

 

網站

  1. Scikit-Learn Python 3 輕鬆使用機器學習 (莫烦Python) (含影音教學)
    • Sklearn 簡介、一般使用、高級使用
  2. Scikit-Learn 教學:Python 與機器學習 - DataCamp

Youtube教學 : Scikit-learn (sklearn) 优雅地学会机器学习 教学教程 (x13)(莫烦Python)


四 Python繪圖 

網站(含影音教學)

  1. Matplotlib Python 3 數據可視化神器  (莫烦Python) 
    • Matplotlib 簡介、基本使用、畫圖種類、多圖合併顯示、動畫 
Youtube教學
  1. Matplotlib 数据可视化神器 Python (x19) (莫烦Python)
  2. 索哥Python科学绘图入门教程 (x22) (亚斯特拉的索哥)
  3. 索哥Python科学绘图特别篇  (x7) (亚斯特拉的索哥)
  4. Python画图 Scientific plots (x4) (老呆狼杂记myTiros)

 

五 Python 自然語言處理NLTK 

 

Youtube教學

  1. 秒懂自然语言处理 NLP (x9)(莫烦Python)
  2. 机器要说话-自然语言处理 NLP 教学 (x22)(莫烦Python)

電子書 :

  1. Python 3 Text Processing with NLTK 3 Cookbook(2014), Jacob Perkins, Packt Publishing
  2. Natural Language Processing  Python, O'Reilly

 

 

六 Python網路爬蟲 

 

網站(含影音教學)

  1. 政治大學磨課師課程-林哲緯-Python程式設計與網站擷取 (影音課程)
  2. 爬蟲基礎 Python 3 海量爬取網頁訊息 (莫烦Python) 
    • 爬蟲簡介、BeautifulSoup 解析網頁、加速你的爬蟲、進階爬蟲

 Youtube教學

  1. 爬虫基础教学 (Python Scraping 教程) (x13) (莫烦Python)

 

 

 

 

 

 

 

 

2021年11月8日

閒談機器學習/深度學習的Python套件使用經驗

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2021-11-8

 

最近兩三年接觸了一些Python人工智慧相關的技術, 其中機器學習/深度學習的部分的套件,

有下面幾種 : 

我女兒大一修的AI課程(三年前),他們使用Microsoft Azure平台,用到Microsoft Cognitive Toolkit(CNTK)與SciKit-Learn,那時候我協助她完成了幾個作業。

一個朋友在某大集團帶領人工智慧團隊發展智慧製造與智慧大樓,據了解使用的是Keras,我最近在試著用Keras寫一些code, 還滿有意思的。

其中用到一些知識就是三十多年前我念研究所時修的"類神經網路"課程的東西,差別是現在

的電腦快多了,

當年用C寫,跑一次學習認圖形中的文字的程式,要跑好幾個小時才能跑出結果,現在自己

不需要寫太多的Code,直接使用Python套件,開發速度與執行速度都快多了。 


補充 : 一個在交大資工所進修的同仁表示他們用的是PyTorch

 

這幾個套件簡單介紹 :

Microsoft Cognitive Toolkit,前稱CNTK,是一個由微軟研究院開發的深度學習框架。 

Microsoft Cognitive Toolkit透過有向圖將神經網路變化為一系列計算步驟。 

 

Scikit-learn具有各種分類,回歸和聚類算法,包括支持向量機,隨機森林(Random Forest)

,梯度增強,支援向量機SVM(Support Vector Machine),k-means和DBSCAN,可與Python

數值和科學庫NumPy和SciPy互操作。

參考 :

 

Keras是一個用Python編寫的開源神經網路庫,能夠在TensorFlow、Microsoft Cognitive 

Toolkit、Theano或PlaidML之上執行。

Keras包含許多常用神經網路構建塊的實現,例如層、目標、啟用功能、最佳化器和一系列

工具,可以更輕鬆地處理圖像和文字資料。除標準神經網路外,Keras還支援卷積神經網路

和迴圈神經網路。

參考 :  

1. Youtube Python與人工智慧  
2. 書 : Deep learning 深度學習必讀:Keras 大神帶你用 Python 實作 出版社:旗標
 

PyTorch基於Torch, 應用於人工智慧領域,如自然語言處理。 它最初由Facebook的人工

智慧研究團隊開發, 並且被用於Uber的機率編程軟體"Pyro"。 PyTorch主要有兩大特徵: 

1 如NumPy的張量計算,可使用GPU加速 

2 基於帶基自動微分系統的深度神經網路

參考: Youtube PyTorch tutorials 神經網絡 教學