---
# System prepended metadata

title: '實作以Keras與Python實現語音辨識 - Hands-On Speech Recognition Engine with Keras and Python - [原著網址](https://fortes-arthur.medium.com/hands-on-speech-recognition-engine-with-keras-and-python-c60488ac53cd)'
tags: [Python3, TensorFlow2]

---

# 實作以Keras與Python實現語音辨識 - Hands-On Speech Recognition Engine with Keras and Python - [原著網址](https://fortes-arthur.medium.com/hands-on-speech-recognition-engine-with-keras-and-python-c60488ac53cd)
###### tags: `TensorFlow2` `Python3` 
## 主要步驟
	
	1. 安裝 Anaconda 並創建或載入建立環境
	2. 在 Google Colab 上運用TPU訓練模型
	3. 在本地端實現語音辨識
    

### 1.安裝 Anaconda 並創建或載入建立環境
從Anaconda官方網站[Link](https://www.anaconda.com)下載並安裝Python執行環境。

	Anaconda 常用指令
	*  conda env list --查看目前電腦上現有的執行環境
	*  conda env create -f YOURENV.yml(需要導入的環境) --導入先前的環境
	*  conda create --name YOURENV python=VERSION --建立特定Python版本的環境
	*  conda activate YOURENV(自己建立的環境) --啟動環境
	*  conda deactivate YOURENV(自己建立的環境) --關閉環境
	*  conda env remove --name YOURENV --刪除環境
導入先前建立好的環境，[tf2-7.yml](https://drive.google.com/file/d/1-9S5POwgDHkVvyRbq-G52N3soiWBxqrF/view?usp=sharing)，或者前往作者網站查看建立環境。

導入環境方法:

開啟Anaconda-Navigator 在左手邊點擊Environments(環境)，之後會看到base(root)，點擊播放鍵，選擇(在Windows為)Open CMD (在Mac為) Open Terminal，輸入`conda env create -f YOURENV.yml(需要導入的環境與路徑)`，之後等待完成即可，裡面已經建立好本次實作所需的套件。
### 2.在 Google Colab 上運用TPU訓練模型
由於原著者為使用Nvidia的GPU來做模型的訓練，~~但實驗室目前沒有設備可以快速的得到訓練好的模型~~，我們可以藉由修改些許的程式碼，以使用Google提供為加速機器學習所打造的處理器-TPU來做模型訓練。

程式修改的內容，點擊Link以暸解更多！：

* Change GRU to LSTM [Link](https://ithelp.ithome.com.tw/articles/10194201 )
* Use the TPU to train model [Link](https://www.tensorflow.org/guide/tpu )
* Update TensorFlow1.x to 2.x [Link](https://zhuanlan.zhihu.com/p/121824083 )
* Change Keras model architecture [Link](https://stackoverflow.com/questions/63068639/valueerror-unknown-layer-functional)
* Keras architecture [Link](https://ithelp.ithome.com.tw/articles/10234389)

訓練步驟

1. 把語音資料集的檔案夾新增捷徑至自己的GoogleDrive。 [語音資料集](https://drive.google.com/drive/folders/1nsn_M_w7mhuVjbWh3GkCxGR1Lsm_a_Lt?usp=sharing) ![](https://i.imgur.com/9Z3qFi6.png =400x150)
2. 開啟 colab [Speech2Text_Approach_Using_the_TPU.ipynb](https://colab.research.google.com/drive/1IoAcKAupDmf1rhImg3vDnnMEjIrLy4Yj?usp=sharing)，點選繼續執行。![](https://i.imgur.com/u85rkLg.png =400x150)
3. 更改`labels`中的List為自己想訓練的指令，例如 `labels = ['yes','no','off','on]`。
4. ~~更改 `train_audio_path` 後面的括弧為自己的路徑，可以點選左手邊資料夾的圖案，之後點選drive、MyDrive，之後找到模型存放的資料夾，點選三個點，複製路徑。~~ 由於使用新增捷徑至自己的GoogleDrive，所以不需要做更改。 
5. 更改`model.save`後面的括弧為自己儲存模型的路徑。
5. 過程中Colab會詢問GoogleDrive的權限，請點同意。
6.  一步一步在Colab上執行。
7. 到`model.save`時，恭喜你！可以得到模型了。

### 3.在本地端實現語音辨識

1. 檢查電腦是否有麥克風
2. 以Anaconda執行Python環境 `conda activate YOURENV`
3. 執行[語音辨識程式](https://drive.google.com/file/d/1BzZ-43uo5RwKX38kTZHol6xYtP1JzdGK/view?usp=sharing)`python YOURCODE`
4. 恭喜你，完成了語音辨識模型的訓練與測試！

