<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 如何開始深度學習的時間序列預測(7 天迷你課程) > 原文: [https://machinelearningmastery.com/how-to-get-started-with-deep-learning-for-time-series-forecasting-7-day-mini-course/](https://machinelearningmastery.com/how-to-get-started-with-deep-learning-for-time-series-forecasting-7-day-mini-course/) ### 時間序列預測速成課程的深度學習。 #### 在 7 天內為您的時間序列項目帶來深度學習方法。 時間序列預測具有挑戰性,尤其是在處理長序列,噪聲數據,多步預測和多個輸入和輸出變量時。 深度學習方法為時間序列預測提供了許多希望,例如時間依賴的自動學習和趨勢和季節性等時間結構的自動處理。 在本速成課程中,您將了解如何開始并自信地開發深度學習模型,以便在 7 天內使用 Python 進行時間序列預測問題。 這是一個重要且重要的帖子。您可能想要將其加入書簽。 讓我們開始吧。 [![How to Get Started with Deep Learning for Time Series Forecasting (7-Day Mini-Course)](https://img.kancloud.cn/72/48/72487ef0db83a800d32e411013a3f6b2_640x480.jpg)](https://3qeqpr26caki16dnhd19sv6by6v-wpengine.netdna-ssl.com/wp-content/uploads/2018/11/How-to-Get-Started-with-Deep-Learning-for-Time-Series-Forecasting-7-Day-Mini-Course.jpg) 如何開始深度學習時間序列預測(7 天迷你課程) 攝影: [Brian Richardson](https://www.flickr.com/photos/seriousbri/3736154699/) ,保留一些權利。 ## 誰是這個崩潰課程? 在我們開始之前,讓我們確保您在正確的位置。 以下列表提供了有關本課程設計對象的一般指導原則。 你得知道: * 您需要了解時間序列預測的基礎知識。 * 你需要了解基本的 Python,NumPy 和 Keras 的深度學習方法。 你不需要知道: * 你不需要成為一個數學家! * 你不需要成為一名深度學習專家! * 你不需要成為時間序列專家! 這個速成課程將帶您從了解一點機器學習的開發人員到可以為您自己的時間序列預測項目帶來深度學習方法的開發人員。 **注意**:這個速成課程假設你有一個有效的 Python 2 或 3 SciPy 環境,至少安裝了 NumPy 和 Keras 2。如果您需要有關環境的幫助,可以按照此處的分步教程進行操作: * [如何使用 Anaconda 設置用于機器學習和深度學習的 Python 環境](https://machinelearningmastery.com/setup-python-environment-machine-learning-deep-learning-anaconda/) ## 速成課程概述 這個速成課程分為 7 節課。 您可以每天完成一節課(推薦)或在一天內完成所有課程(硬核)。這取決于你有空的時間和你的熱情程度。 以下 7 個課程將通過深入學習 Python 中的時間序列預測來幫助您開始并提高工作效率: * **第 01 課**:深度學習的承諾 * **第 02 課**:如何轉換時間序列數據 * **第 03 課**:時間序列預測的 MLP * **第 04 課**:時間序列預測的 CNN * **第 05 課**:時間序列預測的 LSTM * **第 06 課:** CNN-LSTM 用于時間序列預測 * **第 07 課**:編碼器 - 解碼器 LSTM 多步預測 每節課可能需要 60 秒或 30 分鐘。花點時間,按照自己的進度完成課程。在下面的評論中提出問題甚至發布結果。 課程期望你去學習如何做事。我將給你提示,但每節課的部分內容是強迫你學習去哪里尋求幫助,以及深入學習,時間序列預測和 Python 中最好的工具(提示, _ 我直接在這個博客上找到了所有答案,使用搜索框 _)。 我確實以相關帖子的鏈接形式提供了更多幫助,因為我希望你建立一些信心和慣性。 在評論中發布您的結果,我會為你歡呼! 掛在那里,不要放棄。 **注**:這只是一個速成課程。有關更多詳細信息和 25 個充實教程,請參閱我的書,主題為“[深度學習時間序列預測](https://machinelearningmastery.com/deep-learning-for-time-series-forecasting/)”。 ## 第一課:深度學習的承諾 在本課程中,您將發現時間序列預測的深度學習方法的前景。 通常,像 Multilayer Perceptrons 或 MLP 這樣的神經網絡提供的功能很少,例如: * **強健噪音**。神經網絡對輸入數據和映射函數中的噪聲具有魯棒性,甚至可以在存在缺失值的情況下支持學習和預測。 * **非線性**。神經網絡不會對映射函數做出強有力的假設,并且很容易學習線性和非線性關系。 * **多變量輸入**。可以指定任意數量的輸入要素,為多變量預測提供直接支持。 * **多步驟預測**。可以指定任意數量的輸出值,為多步驟甚至多變量預測提供 直接支持。 僅就這些功能而言,前饋神經網絡可用于時間序列預測。 ### 你的任務 在本課程中,您必須提出卷積神經網絡和循環神經網絡的一種功能,這些功能可能有助于建模時間序列預測問題。 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [循環神經網絡對時間序列預測的承諾](https://machinelearningmastery.com/promise-recurrent-neural-networks-time-series-forecasting/) 在下一課中,您將了解如何轉換時間序列預測的時間序列數據。 ## 課程 02:如何轉換時間序列的數據 在本課程中,您將了解如何將時間序列數據轉換為監督學習格式。 大多數實際機器學習使用監督學習。 監督學習是輸入變量(X)和輸出變量(y)的地方,您可以使用算法來學習從輸入到輸出的映射函數。目標是近似真實的底層映射,以便在有新輸入數據時,可以預測該數據的輸出變量。 時間序列數據可以表達為監督學習。 給定時間序列數據集的數字序列,我們可以將數據重組為看起來像監督學習問題。我們可以使用前面的時間步長作為輸入變量,并使用下一個時間步作為輸出變量。 例如,系列: ```py 1, 2, 3, 4, 5, ... ``` 可以轉換為具有輸入和輸出組件的樣本,這些組件可以用作訓練集的一部分,以訓練監督學習模型,如深度學習神經網絡。 ```py X, y [1, 2, 3] 4 [2, 3, 4] 5 ... ``` 這稱為滑動窗口轉換,因為它就像在先前觀察中滑動窗口一樣,用作模型的輸入以預測序列中的下一個值。在這種情況下,窗口寬度是 3 個時間步長。 ### 你的任務 在本課程中,您必須開發 Python 代碼,將每日女性分娩數據集轉換為具有一定數量輸入和一個輸出的監督學習格式。 你可以從這里下載數據集: [daily-total-female-births.csv](https://raw.githubusercontent.com/jbrownlee/Datasets/master/daily-total-female-births.csv) 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [時間序列預測作為監督學習](https://machinelearningmastery.com/time-series-forecasting-supervised-learning/) * [如何將時間序列轉換為 Python 中的監督學習問題](https://machinelearningmastery.com/convert-time-series-supervised-learning-problem-python/) * [如何為長期短期記憶網絡準備單變量時間序列數據](https://machinelearningmastery.com/prepare-univariate-time-series-data-long-short-term-memory-networks/) 在下一課中,您將了解如何開發用于預測單變量時間序列的多層感知器深度學習模型。 ## 第 03 課:時間序列預測的 MLP 在本課程中,您將了解如何為單變量時間序列預測開發多層感知器模型或 MLP。 我們可以將一個簡單的單變量問題定義為整數序列,使模型適合該序列,并讓模型預測序列中的下一個值。我們將問題框架為 3 輸入和 1 輸出,例如:[10,20,30]作為輸入,[40]作為輸出。 首先,我們可以定義模型。我們將通過第一個隱藏層上的 _input_dim_ 參數將輸入時間步數定義為 3。在這種情況下,我們將使用隨機梯度下降的有效 Adam 版本并優化均方誤差(' _mse_ ')損失函數。 一旦定義了模型,它就可以適合訓練數據,并且擬合模型可以用于進行預測。 下面列出了完整的示例。 ```py # univariate mlp example from numpy import array from keras.models import Sequential from keras.layers import Dense # define dataset X = array([[10, 20, 30], [20, 30, 40], [30, 40, 50], [40, 50, 60]]) y = array([40, 50, 60, 70]) # define model model = Sequential() model.add(Dense(100, activation='relu', input_dim=3)) model.add(Dense(1)) model.compile(optimizer='adam', loss='mse') # fit model model.fit(X, y, epochs=2000, verbose=0) # demonstrate prediction x_input = array([50, 60, 70]) x_input = x_input.reshape((1, 3)) yhat = model.predict(x_input, verbose=0) print(yhat) ``` 運行該示例將使模型適合數據,然后預測下一個樣本外的值。 給定[50,60,70]作為輸入,模型正確地預測 80 作為序列中的下一個值。 ### 你的任務 在本課程中,您必須下載每日女性分娩數據集,將其分為訓練集和測試集,并開發一個可以對測試集進行合理準確預測的模型。 你可以從這里下載數據集: [daily-total-female-births.csv](https://raw.githubusercontent.com/jbrownlee/Datasets/master/daily-total-female-births.csv) 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [多層感知器神經網絡速成課程](https://machinelearningmastery.com/neural-networks-crash-course/) * [Keras 中深度學習的時間序列預測](https://machinelearningmastery.com/time-series-prediction-with-deep-learning-in-python-with-keras/) * [用于時間序列預測的多層感知器網絡的探索性配置](https://machinelearningmastery.com/exploratory-configuration-multilayer-perceptron-network-time-series-forecasting/) 在下一課中,您將了解如何開發用于預測單變量時間序列的卷積神經網絡模型。 ## 第 04 課:CNN 進行時間序列預測 在本課程中,您將了解如何開發用于單變量時間序列預測的卷積神經網絡模型或 CNN。 我們可以將一個簡單的單變量問題定義為整數序列,使模型適合該序列,并讓模型預測序列中的下一個值。我們將問題框架為 3 輸入和 1 輸出,例如:[10,20,30]作為輸入,[40]作為輸出。 與 MLP 模型的一個重要區別是 CNN 模型需要具有[_ 樣本,時間步長,特征 _]形狀的三維輸入。我們將以[_ 樣本,時間步長 _]的形式定義數據并相應地重新整形。 我們將通過第一個隱藏層上的 _input_shape_ 參數將輸入時間步數定義為 3,將要素數定義為 1。 我們將使用一個卷積隱藏層,后跟最大池池。然后,在由 Dense 層解釋并輸出預測之前,將濾鏡圖展平。該模型使用隨機梯度下降的有效 Adam 模型,并優化均方誤差(' _mse_ ')損失函數。 一旦定義了模型,它就可以適合訓練數據,并且擬合模型可以用于進行預測。 下面列出了完整的示例。 ```py # univariate cnn example from numpy import array from keras.models import Sequential from keras.layers import Dense from keras.layers import Flatten from keras.layers.convolutional import Conv1D from keras.layers.convolutional import MaxPooling1D # define dataset X = array([[10, 20, 30], [20, 30, 40], [30, 40, 50], [40, 50, 60]]) y = array([40, 50, 60, 70]) # reshape from [samples, timesteps] into [samples, timesteps, features] X = X.reshape((X.shape[0], X.shape[1], 1)) # define model model = Sequential() model.add(Conv1D(filters=64, kernel_size=2, activation='relu', input_shape=(3, 1))) model.add(MaxPooling1D(pool_size=2)) model.add(Flatten()) model.add(Dense(50, activation='relu')) model.add(Dense(1)) model.compile(optimizer='adam', loss='mse') # fit model model.fit(X, y, epochs=1000, verbose=0) # demonstrate prediction x_input = array([50, 60, 70]) x_input = x_input.reshape((1, 3, 1)) yhat = model.predict(x_input, verbose=0) print(yhat) ``` 運行該示例將使模型適合數據,然后預測下一個樣本外的值。 給定[50,60,70]作為輸入,模型正確地預測 80 作為序列中的下一個值。 ### 你的任務 在本課程中,您必須下載每日女性分娩數據集,將其分為訓練集和測試集,并開發一個可以對測試集進行合理準確預測的模型。 你可以從這里下載數據集: [daily-total-female-births.csv](https://raw.githubusercontent.com/jbrownlee/Datasets/master/daily-total-female-births.csv) 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [用于機器學習的卷積神經網絡的速成課程](https://machinelearningmastery.com/crash-course-convolutional-neural-networks/) 在下一課中,您將了解如何開發長短期記憶網絡模型以預測單變量時間序列。 ## 課 05:時間序列預測的 LSTM 在本課程中,您將了解如何開發長期短期記憶神經網絡模型或 LSTM 以進行單變量時間序列預測。 我們可以將一個簡單的單變量問題定義為整數序列,使模型適合該序列,并讓模型預測序列中的下一個值。我們將問題框架為 3 輸入和 1 輸出,例如:[10,20,30]作為輸入,[40]作為輸出。 與 MLP 模型的重要區別在于,與 CNN 模型一樣,LSTM 模型需要具有形狀[_ 樣本,時間步長,特征 _]的三維輸入。我們將以[_ 樣本,時間步長 _]的形式定義數據并相應地重新整形。 我們將通過第一個隱藏層上的 _input_shape_ 參數將輸入時間步數定義為 3,將要素數定義為 1。 我們將使用一個 LSTM 層來處理 3 個時間步的每個輸入子序列,然后使用 Dense 層來解釋輸入序列的摘要。該模型使用隨機梯度下降的有效 Adam 模型,并優化均方誤差(' _mse_ ')損失函數。 一旦定義了模型,它就可以適合訓練數據,并且擬合模型可以用于進行預測。 下面列出了完整的示例。 ```py # univariate lstm example from numpy import array from keras.models import Sequential from keras.layers import LSTM from keras.layers import Dense # define dataset X = array([[10, 20, 30], [20, 30, 40], [30, 40, 50], [40, 50, 60]]) y = array([40, 50, 60, 70]) # reshape from [samples, timesteps] into [samples, timesteps, features] X = X.reshape((X.shape[0], X.shape[1], 1)) # define model model = Sequential() model.add(LSTM(50, activation='relu', input_shape=(3, 1))) model.add(Dense(1)) model.compile(optimizer='adam', loss='mse') # fit model model.fit(X, y, epochs=1000, verbose=0) # demonstrate prediction x_input = array([50, 60, 70]) x_input = x_input.reshape((1, 3, 1)) yhat = model.predict(x_input, verbose=0) print(yhat) ``` 運行該示例將使模型適合數據,然后預測下一個樣本外的值。 給定[50,60,70]作為輸入,模型正確地預測 80 作為序列中的下一個值。 ### 你的任務 在本課程中,您必須下載每日女性分娩數據集,將其分為訓練集和測試集,并開發一個可以對測試集進行合理準確預測的模型。 你可以從這里下載數據集: [daily-total-female-births.csv](https://raw.githubusercontent.com/jbrownlee/Datasets/master/daily-total-female-births.csv) 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [專家對長短期記憶網絡的簡要介紹](https://machinelearningmastery.com/gentle-introduction-long-short-term-memory-networks-experts/) * [深度學習的循環神經網絡崩潰課程](https://machinelearningmastery.com/crash-course-recurrent-neural-networks-deep-learning/) 在下一課中,您將了解如何針對單變量時間序列預測問題開發混合 CNN-LSTM 模型。 ## 第 06 課:CNN-LSTM 用于時間序列預測 在本課程中,您將了解如何開發用于單變量時間序列預測的混合 CNN-LSTM 模型。 該模型的好處是該模型可以支持非常長的輸入序列,可以通過 CNN 模型作為塊或子序列讀取,然后由 LSTM 模型拼湊在一起。 我們可以將一個簡單的單變量問題定義為整數序列,使模型適合該序列,并讓模型預測序列中的下一個值。我們將問題框架為 4 輸入和 1 輸出,例如:[10,20,30,40]作為輸入,[50]作為輸出。 當使用混合 CNN-LSTM 模型時,我們將進一步將每個樣本分成更多的子序列。 CNN 模型將解釋每個子序列,并且 LSTM 將來自子序列的解釋拼湊在一起。因此,我們將每個樣本分成 2 個子序列,每個子序列 2 次。 CNN 將被定義為每個子序列有一個特征需要 2 個時間步長。然后將整個 CNN 模型包裝在 TimeDistributed 包裝層中,以便可以將其應用于樣本中的每個子序列。然后在模型輸出預測之前由 LSTM 層解釋結果。 該模型使用隨機梯度下降的有效 Adam 模型,并優化均方誤差('mse')損失函數。 一旦定義了模型,它就可以適合訓練數據,并且擬合模型可以用于進行預測。 下面列出了完整的示例。 ```py # univariate cnn-lstm example from numpy import array from keras.models import Sequential from keras.layers import LSTM from keras.layers import Dense from keras.layers import Flatten from keras.layers import TimeDistributed from keras.layers.convolutional import Conv1D from keras.layers.convolutional import MaxPooling1D # define dataset X = array([[10, 20, 30, 40], [20, 30, 40, 50], [30, 40, 50, 60], [40, 50, 60, 70]]) y = array([50, 60, 70, 80]) # reshape from [samples, timesteps] into [samples, subsequences, timesteps, features] X = X.reshape((X.shape[0], 2, 2, 1)) # define model model = Sequential() model.add(TimeDistributed(Conv1D(filters=64, kernel_size=1, activation='relu'), input_shape=(None, 2, 1))) model.add(TimeDistributed(MaxPooling1D(pool_size=2))) model.add(TimeDistributed(Flatten())) model.add(LSTM(50, activation='relu')) model.add(Dense(1)) model.compile(optimizer='adam', loss='mse') # fit model model.fit(X, y, epochs=500, verbose=0) # demonstrate prediction x_input = array([50, 60, 70, 80]) x_input = x_input.reshape((1, 2, 2, 1)) yhat = model.predict(x_input, verbose=0) print(yhat) ``` 運行該示例將使模型適合數據,然后預測下一個樣本外的值。 給定[50,60,70,80]作為輸入,模型正確地預測 90 作為序列中的下一個值。 ### 你的任務 在本課程中,您必須下載每日女性分娩數據集,將其分為訓練集和測試集,并開發一個可以對測試集進行合理準確預測的模型。 你可以從這里下載數據集: [daily-total-female-births.csv](https://raw.githubusercontent.com/jbrownlee/Datasets/master/daily-total-female-births.csv) 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [CNN 長短期記憶網絡](https://machinelearningmastery.com/cnn-long-short-term-memory-networks/) * [如何在 Python](https://machinelearningmastery.com/timedistributed-layer-for-long-short-term-memory-networks-in-python/) 中為長期短期內存網絡使用時間分布層 在下一課中,您將了解如何開發用于多步時間序列預測的編碼器 - 解碼器 LSTM 網絡模型。 ## 課程 07:編碼器 - 解碼器 LSTM 多步預測 在本課程中,您將了解如何為多步時間序列預測開發編碼器 - 解碼器 LSTM 網絡模型。 我們可以將一個簡單的單變量問題定義為整數序列,使模型適合該序列,并讓模型預測序列中的下兩個值。我們將問題框架為 3 輸入和 2 輸出,例如:[10,20,30]作為輸入,[40,50]作為輸出。 LSTM 模型需要具有[_ 樣本,時間步長,特征 _]形狀的三維輸入。我們將以[_ 樣本,時間步長 _]的形式定義數據并相應地重新整形。使用編碼器 - 解碼器模型時,輸出也必須以這種方式成形。 我們將通過第一個隱藏層上的 _input_shape_ 參數將輸入時間步數定義為 3,將要素數定義為 1。 我們將定義一個 LSTM 編碼器來讀取和編碼 3 個時間步的輸入序列。對于使用 RepeatVector 層的模型所需的兩個輸出時間步長,模型將重復編碼序列 2 次。在使用包含在 TimeDistributed 層中的 Dense 輸出層之前,這些將被饋送到解碼器 LSTM 層,該層將為輸出序列中的每個步驟產生一個輸出。 該模型使用隨機梯度下降的有效 Adam 模型,并優化均方誤差(' _mse_ ')損失函數。 一旦定義了模型,它就可以適合訓練數據,并且擬合模型可以用于進行預測。 下面列出了完整的示例。 ```py # multi-step encoder-decoder lstm example from numpy import array from keras.models import Sequential from keras.layers import LSTM from keras.layers import Dense from keras.layers import RepeatVector from keras.layers import TimeDistributed # define dataset X = array([[10, 20, 30], [20, 30, 40], [30, 40, 50], [40, 50, 60]]) y = array([[40,50],[50,60],[60,70],[70,80]]) # reshape from [samples, timesteps] into [samples, timesteps, features] X = X.reshape((X.shape[0], X.shape[1], 1)) y = y.reshape((y.shape[0], y.shape[1], 1)) # define model model = Sequential() model.add(LSTM(100, activation='relu', input_shape=(3, 1))) model.add(RepeatVector(2)) model.add(LSTM(100, activation='relu', return_sequences=True)) model.add(TimeDistributed(Dense(1))) model.compile(optimizer='adam', loss='mse') # fit model model.fit(X, y, epochs=100, verbose=0) # demonstrate prediction x_input = array([50, 60, 70]) x_input = x_input.reshape((1, 3, 1)) yhat = model.predict(x_input, verbose=0) print(yhat) ``` 運行該示例將使模型適合數據,然后預測接下來的兩個樣本外值。 給定[50,60,70]作為輸入,模型正確地預測[80,90]作為序列中的下兩個值。 ### 你的任務 在本課程中,您必須下載每日女性分娩數據集,將其分為訓練集和測試集,并開發一個可以對測試集進行合理準確預測的模型。 你可以從這里下載數據集: [daily-total-female-births.csv](https://raw.githubusercontent.com/jbrownlee/Datasets/master/daily-total-female-births.csv) 在下面的評論中發表您的答案。我很樂意看到你發現了什么。 ### 更多信息 * [編碼器 - 解碼器長短期存儲器網絡](https://machinelearningmastery.com/encoder-decoder-long-short-term-memory-networks/) * [多步時間序列預測的 4 種策略](https://machinelearningmastery.com/multi-step-time-series-forecasting/) * [Python 中長期短期記憶網絡的多步時間序列預測](https://machinelearningmastery.com/multi-step-time-series-forecasting-long-short-term-memory-networks-python/) ## 結束! (_ 看你有多遠 _) 你做到了。做得好! 花點時間回顧一下你到底有多遠。 你發現: * 深度學習神經網絡對時間序列預測問題的承諾。 * 如何將時間序列數據集轉換為監督學習問題。 * 如何為單變量時間序列預測問題開發多層感知器模型。 * 如何建立一個單變量時間序列預測問題的卷積神經網絡模型。 * 如何為單變量時間序列預測問題開發長短期記憶網絡模型。 * 如何為單變量時間序列預測問題開發混合 CNN-LSTM 模型。 * 如何為多步時間序列預測問題開發編碼器 - 解碼器 LSTM 模型。 這只是您深入學習時間序列預測的旅程的開始。繼續練習和發展你的技能。 下一步,查看我的書[深度學習時間序列](https://machinelearningmastery.com/deep-learning-for-time-series-forecasting/)。 ## 摘要 **你是如何使用迷你課程的?** 你喜歡這個速成班嗎? **你有什么問題嗎?有沒有任何問題?** 讓我知道。在下面發表評論。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看