Python||1. 使用LSTM模型进行乘客的数目预测;2.对文件rest-api-asr_python_audio_16k.m4a进行语音识别

1. 使用LSTM模型进行乘客的数目预测

  • 数据集 international-airline-passengers.csv
  • (可以不在意精度和loss)
python 复制代码
import pandas as pd
import numpy as np
filename = r'C:\Users\15002\Desktop\data1\international-airline-passengers.csv'
data = pd.read_csv(filename)
data.head()      # 取前五条数据
python 复制代码
from matplotlib import pyplot as plt
plt.rcParams['axes.unicode_minus']=False # 设置负号正常显示,不然会乱码
temp = data["passengers"]
temp_10days = temp[:1440] # 前10天共有1440个数据点
temp_10days.plot(color='#FFA509')
plt.show()
python 复制代码
# 删除日期列
data_process = data.drop('Month',axis = 1)

# 数据标准化
from sklearn import preprocessing
data_process = preprocessing.scale(data_process)
# data_process.dtype
data_process.shape
python 复制代码
import numpy as np
samples = 5000 
lookback = 12  

X = np.zeros((samples, lookback, data_process.shape[-1]))
y = np.zeros((samples,))
print(X.shape, y.shape)
python 复制代码
delay = 1 
min_index = lookback 
max_index = len(data_process)-delay-1
#print(min_index,max_index)
rows = np.random.randint(min_index, max_index, size=samples)

# 转换下数据类型不然下面取iloc会报错
data_process = pd.DataFrame(data_process)

for j, row in enumerate(rows):
    indices = np.arange(row - lookback, row)
    X[j] = data_process.iloc[indices,:]
    y[j] = data_process.loc[row + delay,0] 
python 复制代码
from keras.models import Sequential
from keras.layers import Dense, LSTM
model = Sequential()

model.add(LSTM(32, input_shape=(None, X.shape[-1])))
model.add(Dense(1))

from tensorflow.keras.optimizers import RMSprop
# 损失函数为平均绝对误差(MAE)
model.compile(optimizer=RMSprop(), loss='mae', metrics='accuracy')
python 复制代码
model.summary()
python 复制代码
history = model.fit(X, y, 
          epochs=10, 
          batch_size=128, 
          verbose=1, # verbose: 0, 1 或 2。日志显示模式。 0 = 安静模式, 1 = 进度条, 2 = 每轮一行。
          validation_split=0.2)
python 复制代码
model.save('tempDu.h5')

acc = history.history['accuracy']
loss = history.history['loss']
val_loss = history.history['val_loss']
val_acc = history.history['val_accuracy']

epochs = range(len(acc))
plt.title('Accuracy and Loss')
plt.plot(epochs, acc, 'red', label='Training accuracy')
plt.plot(epochs, loss, 'blue', label='Training loss')
plt.plot(epochs, val_loss, 'yellow', label='Validation loss')
plt.plot(epochs, val_acc, 'green', label='Validation accuracy')

plt.legend()
plt.show()

时间序列分析的目的是通过找出样本内时间序列的统计特性和发展规律性,构建时间序列模型,进行样本外预测。时序数据特征的方法有四种:基于统计方法的特征提取,基于模型的特征提取,基于变换的特征提取,基于分形理论的特征提取。时序数据分析可分为线性模型和神经网络模型。本次实验运用LSTM模型来进行样本预测。

2. 对文件rest-api-asr_python_audio_16k.m4a进行语音识别

python 复制代码
from aip import AipSpeech #导入语音识别包
def get_file_content(file_name):
    with open(file_name, 'rb') as fp: # rb 二进制读取模式打开文件
        return fp.read()
python 复制代码
APP_ID = '25751645'
API_KEY = 'OLWQqY1OsYD8Plh1rDXp2Fh5'  
SECRET_KEY = 'ZQPC8mrS65GKWbLBAkgF4dEGMgsr5hQ2'

aipSpeech = AipSpeech(APP_ID, API_KEY, SECRET_KEY)# 初始化识别模型

file_name=r'C:\Users\15002\Desktop\data\rest-api-asr_python_audio_16k.m4a' # 语音文件

result = aipSpeech.asr(get_file_content(file_name),
                       'm4a', # 文件格式,即后缀名,文件后缀 pcm/wav/amr/m4a 格式
                       16000, # 采样率
                       {'dev_ip': '1536'})#  1537 表示识别普通话,使用输入法模型。
print (result['result'][0])

语音识别技术通过对数据采样,构建基本框架,特征提取,实现对人类语音中的词汇转化成计算机可输入的序列这一功能。本次实验运用了百度语音开放平台为用户提供免费的语音识别和语音合成服务的工具包:baidu-aip,实现了对语音文件的识别。

相关推荐
IT_陈寒3 分钟前
Redis实战精要:5种高频使用场景与性能优化全解析|得物技术
前端·人工智能·后端
Coder_Boy_12 分钟前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音控制-单片机交互代码
java·人工智能·后端·嵌入式硬件
deephub14 分钟前
Scikit-Learn 1.8引入 Array API,支持 PyTorch 与 CuPy 张量的原生 GPU 加速
人工智能·pytorch·python·机器学习·scikit-learn
KG_LLM图谱增强大模型15 分钟前
因果知识图谱增强大模型重构生命历程风险路径和慢病防控新范式:从妊娠期糖尿病到痴呆症的研究突破
人工智能·重构·知识图谱
万俟淋曦22 分钟前
【论文速递】2025年第37周(Sep-07-13)(Robotics/Embodied AI/LLM)
人工智能·ai·机器人·大模型·论文·robotics·具身智能
free-elcmacom25 分钟前
机器学习高阶教程<11>当数据开始“折叠”:流形学习与深度神经网络如何发现世界的隐藏维度
人工智能·python·神经网络·学习·算法·机器学习·dnn
阿杰学AI26 分钟前
AI核心知识61——大语言模型之Embedding (简洁且通俗易懂版)
人工智能·机器学习·ai·语言模型·自然语言处理·embedding·词向量
红宝村村长30 分钟前
【学习笔记】全解深度学习
笔记·深度学习·学习
RockHopper202536 分钟前
一种面向服务LLM应用系统的显式世界模型架构原理
人工智能·llm·世界模型·显式模型
tap.AI39 分钟前
(一)初识 Stable Diffusion 3.5 —— 下一代多模态架构详解
人工智能·stable diffusion