GitHub 最強 AI 數學解題神器!拍照上傳秒給答案,連微積分都難不倒他
Posted on2019/05/27
TO 精選觀點
【為什麼我們要挑選這篇文章】AI 應用越發奇葩,過去寫數學一支筆、一顆腦,現在連腦都不用,帶個 AI 就行。
中國 GitHub 大神研發數學 AI,透過深度學習與影像識別,打造最強解題神器。每個學生都夢寐以求的數學 AI 究竟怎麼下載?怎麼用?接著看下去。(責任編輯:陳伯安)
作者:量子位/ 曉查 銅靈
一位叫 Roger 的中國學霸小哥的拍照做題程式 mathAI 一下子火了,這個 AI,堪稱數學解題神器。
輸入一張包含手寫數學題的圖片,AI 就能辨識出輸入的數學公式,然後給出計算結果。
不僅加減乘除基本運算,就連高等數學中的微積分都不在話下。
就像下面這樣:
還在苦苦糾結高數作業如何求解?還在東奔西走的找學霸借作業?手握 mathAI,不就是手握了新時代的解題利器嗎?
此項目程式碼已半開源
短短幾天時間,這個項目在微博就收穫了上百次轉發。看到畫風如此新奇,似乎還能開啓無限可能應用,網友們紛紛召喚自己的印象筆記(中國版 Evernote)小助手收藏,大呼:以後教數學就是它了。
作者表示,這個專案已經是半開源狀態了,目前開源的部分可以辨識計算加減乘除簡單運算。
如果想要辨識更加複雜的運算式,可以參考數學公式辨識的論文自己進行擴展。
具體來看看這個解題神器。
深度學習辨識數學題,正確率逼近 80%
全能型選手 mathAI 是怎麼實現這個功能的?
作者在 Github 中介紹說,整個程式使用 python 實現,具體處理流程包括:圖像預處理 → 字元辨識 → 數學公式辨識 → 數學公式語義理解 → 結果輸出。
整個系統的處理流程如下:
圖片預處理主要以 OpenCV 作為主要工具,將圖片中的字元單獨切割出來,避免無關變數對字元辨識的影響。
隨後,國際數學公式辨識比賽資料集(CROHME)對通過卷積神經網路進行訓練。
此外,還進行結構分析,對字元的空間關係進行判定。比如一個字元的上標和下標,含義自然不一樣。
在語義分析階段,就需要匯集上面得到的資訊,判斷運算該如何進行了。節點屬性傳遞過程如下圖所示:
作者在用 160 道手寫測試題進行了測試:
結果表明,平均字元辨識率達到了 96.23%,且系統做題的平均正確率達到了 79.38%。
手把手教學怎麼用
來,實際上手操作下。
作者給出兩種使用模式:網頁模式和介面模式(Interface)。介面模式比較直觀,只需打開網頁上傳圖片即可自動給出解題結果。
下面以介面模式為例介紹一下 mathAI 的安裝使用方法。
首先需要安裝 flask、虛擬環境、科學資料庫 numpy、sympy 等,它們都可以用 pip 安裝。
pip install flask
pip install virtualenv
將項目的 lib.zip 檔解壓到系統目錄的 venv 資料夾下。(lib.zip 可以回覆 lib 獲取)
配置置好運行環境後,用 PyCharm 打開下載好的專案,在載入過程中,PyCharm 會自動安裝好專案依賴的軟體資料庫。
使用命令列進入專案所在目錄,並啓動虛擬環境:
. venv/bin/activate
將 FLASK_ENV 環境變數設置為啓用開發模式:
export FLASK_ENV=development
然後使用指令運行 flask 網站框架 :
export FLASK_APP=welcome.py
flask run
打開流覽器,在位址中輸入 127.0.0.1:5000,即可打開項目網頁。在網頁中輸入一張包含數學公式的圖片,就好返回運算結果。
目前 GitHub 專案頁上的程式碼只支持加減乘除這樣的簡單運算。
中國神人 Roger 的其他 GitHub 發明
做出這個自動求解系統的,還是一位元中國少年。
這位 GitHub ID 為 Roger,本名羅文傑,是中山大學資料科學與電腦學院的研一在讀碩士生,主要攻讀電腦視覺方向。
不僅這個解題神器,在 Roger 的 GitHub 主頁上還能看到其此前參與的很多有趣研究。
比如這個基於帖子的校園互助交友平臺 LiBond。用戶可以在裡面發佈任務,然後使用虛擬幣荔枝進行交易。
羅同學的設想是,有閒置時間的同學可以在此平臺上幫助他人,然後結交好朋友,荔枝幣還能用來兌換喜歡的物品。
再比如,一個基於 C++ 的無禁手五子棋 AI,可以通過 openGL 實現圖形介面。
在這個項目中,羅同學使用了最經典的極大極小博弈樹、alpha-beta 剪枝、置換表等演算法,還附上了核心程式碼。
確認過眼神,是學霸無疑了。
資料來源:https://buzzorange.com/techorange/2019/05/27/math-ai/…
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「python flask教學」的推薦目錄:
- 關於python flask教學 在 台灣物聯網實驗室 IOT Labs Facebook 的最讚貼文
- 關於python flask教學 在 紀老師程式教學網 Facebook 的最佳解答
- 關於python flask教學 在 紀老師程式教學網 Facebook 的最讚貼文
- 關於python flask教學 在 コバにゃんチャンネル Youtube 的精選貼文
- 關於python flask教學 在 大象中醫 Youtube 的最佳解答
- 關於python flask教學 在 大象中醫 Youtube 的最讚貼文
- 關於python flask教學 在 [問題] 對於新手,Python 寫Web app - 批踢踢實業坊 的評價
- 關於python flask教學 在 Python Flask 建立簡單的網頁 的評價
- 關於python flask教學 在 彭彭學院- 學會在自己的電腦上用Flask 架設網站之後 - Facebook 的評價
- 關於python flask教學 在 分享Python Flask 入門指南: 輕量級網頁框架教學 - 軟體工程師板 的評價
python flask教學 在 紀老師程式教學網 Facebook 的最佳解答
[免費教學] Python - 100 天從新手到大師(簡中)
網址: https://is.gd/7GAtau
介紹文: https://is.gd/p0dV21 (簡中)
--------(本文開始)--------
很久沒有分享好的學習資源給大家了!一方面是沒有看上眼、可以分享的資源(好東西不是天天有的~ :-D ),另一方面是我忙著趕一些稿件。所以就怠慢了。
不過今天要分享給大家的學習資源,可是在 GitHub 上被標為「喜愛」破萬的 Python 學習資源。它以 100 天的長度,教您從安裝 Python,一直到網頁設計、資料庫、人工智慧...等主題。
整個教學以簡體中文寫成。英文不是那麼流利的同學,也可以安心觀看。
這 100 天的學習內容被分為下列幾個部分:
01. Python 語言基礎 & 進階(為期 30 天)
02. Web 前端開發入門:HTML/CSS/JavaScript/jQuery...(為期 10 天)
03. Linux 作業系統簡介(為期 5 天)
04. 資料庫基礎&進階(為期 5 天)
05. 網頁開發後端:使用 Django(為期 15 天)
06. 網頁開發後端:使用 Flask(為期 5 天)
07. Tornado 網站伺服器介紹(為期 5 天)
08. 爬蟲開發(為期 10 天)
09. 資料科學與機器學習(為期 15 天)
10. 團隊專案開發(為期 10 天)
如果您能精通這 100 天的內容,相信不論到哪家公司,都會很歡迎您成為他們的一份子的。
另外,我個人在 YOTTA 平台發佈的 Python 線上學習課程,正在熱烈販售中。一門課程,除了 Python 基礎語法外,還包含「計算機概論」、「Git & GitHub」等主題。目前獲得 15 位同學評價,一律評等為 5 星!歡迎大家前往觀看選購。
課程首頁: https://is.gd/nF4yBi
希望大家喜歡今天的分享!請大家多多按讚鼓勵、轉發分享。或追蹤我的 FB、YouTube、以及 Instagram 喔~
---------------
Facebook 粉絲頁(歡迎追蹤): https://goo.gl/N1z9JB
YouTube 頻道(歡迎訂閱): https://goo.gl/pQsdCt
Instagram 日常生活: https://goo.gl/nBHzXC
python flask教學 在 紀老師程式教學網 Facebook 的最讚貼文
[免費教學] Python - 100 天從新手到大師(簡中)
網址: https://is.gd/7GAtau
介紹文: https://is.gd/p0dV21 (簡中)
-\-\-\-\-\-\-\-\(本文開始)-\-\-\-\-\-\-\-\
很久沒有分享好的學習資源給大家了!一方面是沒有看上眼、可以分享的資源(好東西不是天天有的~ :-D ),另一方面是我忙著趕一些稿件。所以就怠慢了。
不過今天要分享給大家的學習資源,可是在 GitHub 上被標為「喜愛」破萬的 Python 學習資源。它以 100 天的長度,教您從安裝 Python,一直到網頁設計、資料庫、人工智慧...等主題。
整個教學以簡體中文寫成。英文不是那麼流利的同學,也可以安心觀看。
這 100 天的學習內容被分為下列幾個部分:
01. Python 語言基礎 & 進階(為期 30 天)
02. Web 前端開發入門:HTML/CSS/JavaScript/jQuery...(為期 10 天)
03. Linux 作業系統簡介(為期 5 天)
04. 資料庫基礎&進階(為期 5 天)
05. 網頁開發後端:使用 Django(為期 15 天)
06. 網頁開發後端:使用 Flask(為期 5 天)
07. Tornado 網站伺服器介紹(為期 5 天)
08. 爬蟲開發(為期 10 天)
09. 資料科學與機器學習(為期 15 天)
10. 團隊專案開發(為期 10 天)
如果您能精通這 100 天的內容,相信不論到哪家公司,都會很歡迎您成為他們的一份子的。
另外,我個人在 YOTTA 平台發佈的 Python 線上學習課程,正在熱烈販售中。一門課程,除了 Python 基礎語法外,還包含「計算機概論」、「Git & GitHub」等主題。目前獲得 15 位同學評價,一律評等為 5 星!歡迎大家前往觀看選購。
課程首頁: https://is.gd/nF4yBi
希望大家喜歡今天的分享!請大家多多按讚鼓勵、轉發分享。或追蹤我的 FB、YouTube、以及 Instagram 喔~
-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
Facebook 粉絲頁(歡迎追蹤): https://goo.gl/N1z9JB
YouTube 頻道(歡迎訂閱): https://goo.gl/pQsdCt
Instagram 日常生活: https://goo.gl/nBHzXC
python flask教學 在 コバにゃんチャンネル Youtube 的精選貼文
python flask教學 在 大象中醫 Youtube 的最佳解答
python flask教學 在 大象中醫 Youtube 的最讚貼文
python flask教學 在 Python Flask 建立簡單的網頁 的推薦與評價
本篇介紹如何用Python 與Flask 來建立一個簡單的網站,要學習建立一個網頁最間單的方式就是從Hello World開始,接下來介紹怎麼用Flask建立一個簡單 ... ... <看更多>
python flask教學 在 彭彭學院- 學會在自己的電腦上用Flask 架設網站之後 - Facebook 的推薦與評價
請先學習Flask 基礎環境建置: https://www.youtube.com/watch?v=dYulda6wEWA Python Flask 部屬到Heroku 的完整教學: 1. 建立專案描述檔1.1 建立runtime.txt 1.2 ... ... <看更多>
python flask教學 在 [問題] 對於新手,Python 寫Web app - 批踢踢實業坊 的推薦與評價
大家好,最近一直在找使用 Python 寫 Web app 的教學,
找到 Django 和 Flask 這兩個框架,打算以 Django開發。
只是小弟對 HTML 一竅不通。嘗試過 Visual Studio 開發 Python web,
但都會卡在不曉得怎麼把網頁上元件的行為,和 Python code 作連結這部分,
找不到 Visual Studio 裡面類似 Android Studio 的 Design mode,
能直覺地控制網頁上的東西,並寫上點擊後的行為。
網路上找到很多部屬 app 在 Azure 的新手教學,
不過看了 Azure 只有提供前幾個月免費。
加上現在我只希望能在 Local 端測試就好,也不會用到資料庫。
目前的需求是想要開一個專案,上面有一個按鈕,
按下去後能跳出 "Hello world" 訊息方塊,這樣。
請問有沒有適合的影片能參詳一下呢?
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.17.229
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1510217554.A.FE9.html
曾經想用 Flask,但第一關 Hello world 就有疑惑了。
我照官網的範例這樣寫
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
app.run()
執行後,第一次打開瀏覽器 127.0.0.1:5000
確實可以看到 Hello world!
stop 後,我再往 "Hello world!" 後方加上 xxx 變成 "Hello world!xxx"而已
就又 run 一次測試,127.0.0.1:5000 上的 Hello world! 還是先前的字樣,
後方沒有多 xxx,感覺哪裡理解有誤吧 0..0a
※ 編輯: henry8168 (60.248.17.229), 11/10/2017 09:25:26
比較惱火的是都要求資料庫。
※ 編輯: henry8168 (60.248.17.229), 11/14/2017 08:53:59
... <看更多>