成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識(shí)庫 > PyTorch 編寫代碼遇到的問題及解決方案

PyTorch 編寫代碼遇到的問題及解決方案

熱門標(biāo)簽:地圖標(biāo)注面積 所得系統(tǒng)電梯怎樣主板設(shè)置外呼 北瀚ai電銷機(jī)器人官網(wǎng)手機(jī)版 朝陽手機(jī)外呼系統(tǒng) 市場上的電銷機(jī)器人 小蘇云呼電話機(jī)器人 北京電銷外呼系統(tǒng)加盟 儋州電話機(jī)器人 佛山400電話辦理

PyTorch編寫代碼遇到的問題

錯(cuò)誤提示:no module named xxx

xxx為自定義文件夾的名字

因?yàn)樗阉鞑坏?,所以將?dāng)前路徑加入到包的搜索目錄

解決方法:

import sys
sys.path.append('..') #將上層目錄加入到搜索路徑中
sys.path.append('/home/xxx') # 絕對(duì)路徑
import os
sys.path.append(os.getcwd()) #  #將當(dāng)前工作路徑加入到搜索路徑中

還可以在當(dāng)前終端的命令行設(shè)置

export PYTHONPATH=$PYTHONPATH:./

錯(cuò)誤提示:AttributeError: ‘NoneType' object has no attribute ‘shape' height, width, channel = img.shape

在Linux系統(tǒng)下img.shape報(bào)錯(cuò)AttributeError: ‘NoneType' object has no attribute ‘shape'

img=cv2.imread(),讀取一張圖片時(shí),img.shape是包含三個(gè)量的元組,分別是:

img.shape[0]:圖像的高度

img.shape[1]:圖像的寬度

img.shape[2]:圖像的通道數(shù)

解決方法:讀的文件出錯(cuò) 或者查看文件路徑是否正確

錯(cuò)誤提示 :TypeError: slice indices must be integers or None or have an index method

cropped_im = img[ny1 : ny2, nx1 : nx2, :]

解決方法:需要將ny1 : ny2, nx1 : nx2轉(zhuǎn)換成int類型

錯(cuò)誤提示 :Input type (torch.cuda.DoubleTensor) and weight type (torch.cuda.FloatTensor) should be the same

以下三小段分別是Data type CPU tensor GPU tensor

32-bit floating point torch.FloatTensor torch.cuda.FloatTensor

64-bit floating point torch.DoubleTensor torch.cuda.DoubleTensor

出錯(cuò)在類型轉(zhuǎn)換

np.float更改為np.float32

import torchvision.transforms as transforms
import numpy as np
transform = transforms.ToTensor()
def convert_image_to_tensor(image):
    """convert an image to pytorch tensor
        image: numpy array , h * w * c
        image_tensor: pytorch.FloatTensor, c * h * w
        """
    image = image.astype(np.float32) 
    return transform(image)

錯(cuò)誤提示:RuntimeError: zero-dimensional tensor (at position 0) cannot be concatenated

版本問題 舊式寫法

import torch
x = torch.tensor(0.1)
y = torch.tensor(0.2)
z = torch.cat((x, y))

改成新式寫法

x = torch.tensor([0.1])
y = torch.tensor([0.2])
z = torch.cat((x, y))
print(z)

結(jié)果

tensor([0.1000, 0.2000])

錯(cuò)誤提示:TypeError: ‘float' object is not subscriptable

多了下標(biāo) a = x.tolist()[0]

去除下標(biāo) a = x.tolist()

錯(cuò)誤提示:argument ‘input' (position 1) must be Tensor, not list

需要將list轉(zhuǎn)換成tensor

假設(shè)a是list

torch.tensor(a)

GPU模型和CPU模型之間的轉(zhuǎn)換

假設(shè)原來保存的是GPU模型,要轉(zhuǎn)換為CPU模型

torch.save(model, os.path.join( "./complete.pth"))
cpu_model = torch.load("./complete.pth", map_location=lambda storage, loc: storage)
dummy_input = torch.randn(1, 3, 224, 224)

假設(shè)原來保存的是CPU模型,要轉(zhuǎn)換為GPU模型

device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
torch.save(model, os.path.join( "./complete.pth"))
gpu_model = torch.load("./complete.pth", map_location=lambda storage, loc: storage.cuda)
dummy_input = torch.randn(1, 3, 224, 224)
dummy_input = dummy_input.to(device)

錯(cuò)誤提示 RuntimeError: Subtraction, the - operator, with a bool tensor is not supported. If you are trying to invert a mask, use the ~ or logical_not() operator instead.

原代碼

# Store only unsuppressed boxes for this class
image_boxes.append(class_decoded_locs[1 - suppress])
image_labels.append(torch.LongTensor((1 - suppress).sum().item() * [c]).to(device))
image_scores.append(class_scores[1 - suppress])

更改為

image_boxes.append(class_decoded_locs[~suppress])
image_labels.append(torch.LongTensor((~ suppress).sum().item() * [c]).to(device))
image_scores.append(class_scores[~suppress])

錯(cuò)誤提示 RuntimeError: Expected object of scalar type Byte but got scalar type Bool for argument #2 ‘other' in call to _th_max

原代碼

suppress = torch.zeros((n_above_min_score), dtype=torch.uint8).to(device) 

更改為

suppress = torch.zeros((n_above_min_score), dtype=torch.bool).to(device)  

UserWarning: volatile was removed and now has no effect. Use with torch.no_grad(): instead.

#之前舊版本
...
x = Variable(torch.randn(1), volatile=True)
return x

#新版
with torch.no_grad():
    ...
    x = torch.randn(1)
return x

錯(cuò)誤提示

RuntimeError: Attempting to deserialize object on CUDA device 1 but torch.cuda.device_count() is 1. Please use torch.load with map_location to map your storages to an existing device.

或者是 RuntimeError: expected device cuda:0 but got device cuda:1

錯(cuò)誤原因之一

使用了CUDA 1顯卡訓(xùn)練保存的模型文件,使用CUDA 0驗(yàn)證

代碼中寫了

device = torch.device(“cuda” if torch.cuda.is_available() else “cpu”)

可以在命令行設(shè)置讓哪些GPU可見

export CUDA_VISIBLE_DEVICES=1 #GPU編號(hào)
export CUDA_VISIBLE_DEVICES=0,1,2,3#4張顯卡可見

也可以在代碼里改成

checkpoint = torch.load(checkpoint,map_location=‘cuda:0')

錯(cuò)誤提示

raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=8097): Max retries exceeded with url: /update (Caused by NewConnectionError('urllib3.connection.HTTPConnection object at 0x7f3111915e80>: Failed to establish a new connection: [Errno 111] Connection refused',))
Exception in user code:

解決方案

因?yàn)闆]有啟動(dòng)visdom可視化程序,所有報(bào)錯(cuò)

在終端執(zhí)行命令 visdom之后就能看到如下信息

Checking for scripts.
It's Alive!
INFO:root:Application Started
You can navigate to http://localhost:8097

nn.Module.cuda() 和 Tensor.cuda()

無論是對(duì)于模型還是數(shù)據(jù),cuda() 都能實(shí)現(xiàn)從CPU到GPU的內(nèi)存遷移,但是他們的作用效果有所不同。

Model:

model = model.cuda()
model.cuda()

上面兩句能夠達(dá)到一樣的效果,即對(duì)model自身進(jìn)行的內(nèi)存遷移

Tensor:

model = Model()
tensor = torch.zeros([2, 3, 10, 10])
model.cuda()
tensor.cuda()
tensor_cuda = tensor.cuda()
model(tensor) # 會(huì)報(bào)錯(cuò)
model(tensor_cuda) # 正常運(yùn)行

和 nn.Module 不同,調(diào)用 tensor.cuda 只是返回這個(gè) tensor 對(duì)象在 GPU 內(nèi)存上的拷貝,而不會(huì)對(duì)自身進(jìn)行改變。因此必須對(duì) tensor 進(jìn)行重新賦值,即 tensor = tensor.cuda()

PyTorch 0.4 計(jì)算累積損失的不同

以廣泛使用的模式 total_loss += loss.data[0] 為例。Python0.4.0 之前,loss 是一個(gè)封裝了 (1,) 張量的 Variable,但 Python0.4.0 的 loss 現(xiàn)在是一個(gè)零維的標(biāo)量。對(duì)標(biāo)量進(jìn)行 索引是沒有意義的(似乎會(huì)報(bào) invalid index to scalar variable 的錯(cuò)誤)。使用 loss.item() 可以從標(biāo)量中獲取 Python 數(shù)字。所以改為:

total_loss = total_loss + loss.item()

如果在累加損失時(shí)未將其轉(zhuǎn)換為 Python 數(shù)字,則可能出現(xiàn)程序內(nèi)存使用量增加的情況。這是因?yàn)樯厦姹磉_(dá)式的右側(cè)原本是一個(gè) Python 浮點(diǎn)數(shù),而它現(xiàn)在是一個(gè)零維張量。因此,總損失累加了張量和它們的梯度歷史,這可能會(huì)產(chǎn)生很大的 autograd 圖,耗費(fèi)內(nèi)存和計(jì)算資源。

自適應(yīng) CPU 和 GPU設(shè)備的 trick

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model = Model().to(device)

total_loss = 0
for input, target in train_loader:
 input, target = input.to(device), target.to(device)
 ...
 total_loss = total_loss + loss.item()

with torch.no_grad():
 for input, target in test_loader:
 ...

torch.Tensor.detach的使用

官方說明:Returns a new Tensor, detached from the current graph,The result will never require gradient

假設(shè)有模型 A 和模型 B,我們需要將 A 的輸出作為 B 的輸入,但訓(xùn)練時(shí)我們只訓(xùn)練模型 B. 那么可以這樣做:

input_B = output_A.detach

它可以使兩個(gè)計(jì)算圖的梯度傳遞斷開,從而實(shí)現(xiàn)我們所需的功能。

pytorch中l(wèi)oss函數(shù)的參數(shù)設(shè)置

以CrossEntropyLoss為例:

CrossEntropyLoss(self, weight=None, size_average=None, ignore_index=-100, reduce=None, reduction='elementwise_mean')

若 reduce = False,那么 size_average 參數(shù)失效,直接返回向量形式的 loss,即batch中每個(gè)元素對(duì)應(yīng)的loss.

若 reduce = True,那么 loss 返回的是標(biāo)量:

如果 size_average = True,返回 loss.mean.

如果 size_average = False,返回 loss.sum.

weight : 輸入一個(gè)1D的權(quán)值向量,為各個(gè)類別的loss加權(quán),如下公式所示:

ignore_index : 選擇要忽視的目標(biāo)值,使其對(duì)輸入梯度不作貢獻(xiàn)。如果 size_average = True,那么只計(jì)算不被忽視的目標(biāo)的loss的均值。

reduction : 可選的參數(shù)有:‘none' | ‘elementwise_mean' | ‘sum', 正如參數(shù)的字面意思。

多GPU的處理機(jī)制

使用多GPU時(shí),應(yīng)該記住 PyTorch 的處理邏輯是:

在各個(gè)GPU上初始化模型。

前向傳播時(shí),把batch分配到各個(gè)GPU上進(jìn)行計(jì)算。

得到的輸出在主GPU上進(jìn)行匯總,計(jì)算loss并反向傳播,更新主GPU上的權(quán)值。

把主GPU上的模型復(fù)制到其它GPU上。

訓(xùn)練時(shí)損失出現(xiàn)nan的問題

訓(xùn)練模型時(shí)出現(xiàn)損失為 nan 的情況

可能導(dǎo)致梯度出現(xiàn) nan 的三個(gè)原因:

梯度爆炸。也就是說梯度數(shù)值超出范圍變成 nan. 通??梢哉{(diào)小學(xué)習(xí)率、加 BN 層或者做梯度裁剪來試試看有沒有解決。

損失函數(shù)或者網(wǎng)絡(luò)設(shè)計(jì)。比方說,出現(xiàn)了除 0,或者出現(xiàn)一些邊界情況導(dǎo)致函數(shù)不可導(dǎo),比方說log(0)、sqrt(0).

臟數(shù)據(jù)??梢允孪葘?duì)輸入數(shù)據(jù)進(jìn)行判斷看看是否存在 nan.

補(bǔ)充一下nan數(shù)據(jù)的判斷方法:

注意!像 nan 或者 inf 這樣的數(shù)值不能使用 == 或者 is 來判斷!為了安全起見統(tǒng)一使用 math.isnan 或者 numpy.isnan 吧。

import numpy as np
if np.any(np.isnan(input.cpu().numpy())):
 print("Input data has NaN!")
if(np.isnan(loss.item())):
 print("Loss value is NaN!")

pytorch 內(nèi)存泄漏

torch.as_tensor(data, dtype=None,device=None)->Tensor : 為data生成tensor。

如果data已經(jīng)是tensor,且dtype和device與參數(shù)相同,則生成的tensor會(huì)和data共享內(nèi)存。如果data是ndarray,且dtype對(duì)應(yīng),devices為cpu,則同樣共享內(nèi)存。其他情況則不共享內(nèi)存。

import torch
import numpy
a = numpy.array([1, 2, 3])
t = torch.as_tensor(a)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 解決Pytorch中的神坑:關(guān)于model.eval的問題
  • 淺談Pytorch中autograd的若干(踩坑)總結(jié)
  • pytorch掉坑記錄:model.eval的作用說明
  • 解決Numpy與Pytorch彼此轉(zhuǎn)換時(shí)的坑

標(biāo)簽:江蘇 龍巖 商丘 酒泉 金融催收 寧夏 定西 云南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PyTorch 編寫代碼遇到的問題及解決方案》,本文關(guān)鍵詞  PyTorch,編寫,代碼,遇到,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PyTorch 編寫代碼遇到的問題及解決方案》相關(guān)的同類信息!
  • 本頁收集關(guān)于PyTorch 編寫代碼遇到的問題及解決方案的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    伊人一区二区三区久久精品| 2021久久精品国产99国产精品| 久久色在线观看| 好吊色欧美一区二区三区视频| 国产成人综合一区二区三区| 国产欧美日韩精品a在线观看| 亚洲精品福利网站| 91高潮精品免费porn| 里番在线观看网站| 国产区精品区| av一本久道久久综合久久鬼色| 狠狠热免费视频| 欧美成人免费全部观看天天性色| 国产成人鲁鲁免费视频a| 亚洲成人av动漫| 日韩国产欧美亚洲| 手机av在线不卡| 日韩福利在线视频| 精品美女永久免费视频| 亚洲成a人片77777精品| 亚洲一级一区| 蜜桃精品久久久久久久免费影院| 蜜臀av性久久久久蜜臀av麻豆| 亚洲三级免费电影| 做爰高潮hd色即是空| 国产在线一区不卡| 欧美美女一级片| 欧美精品videos| 日本一级一片免费视频| 三年中文高清在线观看第6集| 亚洲精品在线一区二区| 国产99精品一区| 国内精品小视频在线观看| 天天久久人人| 日本一区二区乱| 色婷婷久久久亚洲一区二区三区| 99这里只有久久精品视频| 国产精品综合网站| 激情综合亚洲| 老熟妇一区二区三区啪啪| 天天综合网天天综合| 久久精品动漫| 中文字幕乱码免费| 羞羞网站在线免费观看| 在线中文资源天堂| 日韩视频在线永久播放| 欧美国产一级| 国产精品久久久久久搜索| 国产又粗又猛又爽又黄的| 欧美性受xxxx| www色啪啪| 精品成人av一区二区在线播放| 一区二区三区视频免费在线观看| 亚洲欧美另类综合| 日韩经典av| 蜜桃91在线| 精品久久av| 亚洲区一区二区三| 99久久精品一区二区三区| 一区免费观看视频| 免费黄色网址在线观看| 4hu四虎永久在线观看| 香蕉成人av| 一菊综合网成人综合网| 啊灬啊灬啊灬啊灬高潮在线看| 免费观看亚洲| 正在播放亚洲一区| 91丨porny丨首页| 天天干天天干天天干天天干天天干| 国产精品免费视频一区二区| 视频一区视频二区在线观看| 亚洲精选一区| 日韩中文字幕| 国产69精品久久久久99| 婷婷开心久久网| 精品亚洲精品| 久久久久久com| 丝袜足脚交91精品| 久草视频在线免费看| 欧洲精品视频在线| 久久综合精品一区| 亚洲第一综合网| 国内国产区免费视频| 五月天亚洲综合情| h片在线免费观看| 97欧美在线视频| 精品亚洲aⅴ无码一区二区三区| 欧美性猛交xxxx免费看| 最新地址在线观看| 欧美午夜理伦三级在线观看| 欧美一级手机免费观看片| 色资源在线观看| 欧美不卡三区| 久久日免费视频| 久久久久久久久久久久久久久久久久久久| 亚洲一区二区偷拍| 欧美亚洲国产日韩2020| 国产精品一区二区精品| 日韩日韩日韩日韩日韩| 中文字幕资源在线观看| 久久久久国产视频| 欧美日韩国产中文字幕在线| 久久在线电影| 欧美绝顶高潮抽搐喷水合集| 国产精品一区二区三区在线观| 2021久久精品国产99国产精品| 国产精品久久久久久久小唯西川| 欧美一区二区三区在线视频| 香蕉521av成人网| 人人干狠狠干| 国产精品久久久久久久久久久久午夜片| 日韩激情在线观看| 青青青国产在线观看| 精品国产欧美日韩一区二区三区| 最近中文字幕免费在线观看| 欧美久色视频| 先锋资源久久| 成年人午夜视频| 僵尸再翻生在线观看| 日韩一级高清毛片| 男人午夜天堂| 成人区人妻精品一区二| ...av二区三区久久精品| 中文字幕在线2021| 中文字幕色站| 国产成人精品综合久久久| 亚洲成人在线视频网站| 欧美亚洲丝袜传媒另类| 精品人人视频| 免费的很黄很污的视频网站| 欧美wwwxxxx| 欧美美女视频| 亚洲特级黄色片| 亚洲啪啪91| 日本10禁啪啪无遮挡免费一区二区| 无码任你躁久久久久久久| 久艹视频在线免费观看| 欧美激情电影| 羞羞视频在线观看免费| 日本国产欧美| 狠狠做六月爱婷婷综合aⅴ| 国产精品女主播在线观看| 亚洲女性喷水在线观看一区| 日韩国产成人| 国产精品自在自线| 日韩影视在线| 91久久久亚洲精品| 波多野结衣久久精品| 久久精品国产免费| 91精品综合视频| eeuss影院网站免费观看| 国产一区二区三区四区老人| 欧美女激情福利| 六月婷婷一区| 黄色精品网站| 日本高清不卡在线观看| 91精品久久久久久综合乱菊| 97av在线视频| 精品国产中文字幕| 日韩黄色片在线观看| 一二三在线视频| 欧美成人精品一区二区三区| 日韩精品一区二区视频| 久久国产精品露脸对白| 91精品国产一区二区| 国产精品亚洲a| 中文字幕精品—区二区四季| 国产三区在线观看| 精品91久久久久| 国产综合色精品一区二区三区| 日韩精品中文字幕在线播放| 亚洲高清福利| 欧美成人艳星乳罩| 久久99精品国产一区二区三区| 亚洲成人av中文字幕| 国产大尺度视频| 成人免费小视频| 视频在线精品一区| 日本黄色大片在线观看| xxx欧美老熟| 怡红院红怡院欧美aⅴ怡春院| 色综合影院在线| 国产精品偷伦视频免费观看了| 久久久一本精品| 国产91精品一区二区麻豆亚洲| 狠狠干综合网| 亚洲天天做日日做天天谢日日欢| 黄色av网站在线播放| 自拍亚洲色图| 成人的网站免费观看| heyzo中文字幕在线| 亚洲欧美另类在线视频| 国产精品久久久久久妇女| 欧美日韩国产一中文字不卡| 亚洲综合爱爱久久网| 川上优av中文字幕一区二区| 欧美久久精品午夜青青大伊人| 日韩av网站在线观看| 久久久久99精品成人片三人毛片| 欧美国产日产韩国视频| 一区二区三区区四区播放视频在线观看| 久久伊人91精品综合网站| 韩国三级成人在线| 鲁一鲁一鲁一鲁一澡| 91精品国产一区二区人妖| 在线精品观看| 国产成人综合欧美精品久久| 国产视频手机在线播放| 亚洲国产日韩在线人成电影| 成人亚洲精品| 尤物av一区二区| 日韩精品一级中文字幕精品视频免费观看| 国产精品自拍小视频| 久久成人激情视频| 色视频在线播放| www.久久色.com| 国产裸体美女永久免费无遮挡| 蜜桃视频m3u8在线观看| 亚洲一二三四五| 欧美一区二区综合| 国产精品天干天干在观线| 欧美精品一区二区视频| 国内毛片久久| 欧美日一区二区| 亚洲国产精品精华素| 91久久在线播放| 免费一级a毛片夜夜看| 国产精品久久久久久久久晋中| 特大黑人娇小亚洲女mp4| 亚洲国产精品推荐| 成人av免费在线观看| 亚洲一区二区中文| 亚洲欧美国产高清va在线播放| 黄色18在线观看| 苍井空张开腿实干12次| 亚洲国产欧美日韩| 丝袜美腿高跟呻吟高潮一区| 日韩欧美1区| 一区二区三区在线观看免费视频| 成人小视频在线看| 国产大奶在线| 怡红院怡春院首页| 一区二区三区毛片免费| 亚洲人成电影网站色mp4| 日本青青草视频| 免费a级片网站| 日本a级片久久久| 在线播放你懂得| 亚洲欧美国产制服动漫| av官网在线| 黄色成人在线观看| 亚洲人在线观看视频| 天堂а在线中文在线无限看推荐| 久久久噜噜噜久久人人看| 日韩永久免费视频| 国产一区二区按摩在线观看| 男女午夜激情视频| 日产精品高清视频免费| 欧美日韩黑人| 亚洲最大的免费视频网站| 蜜桃久久影院| 国产在线日本| 久久精品久久久久久国产 免费| 网友自拍视频在线| 日韩免费在线视频观看| yw视频在线观看| 91视视频在线直接观看在线看网页在线看| 91精品国产综合久久精品麻豆| 嫩草影院一区二区三区| 在线免费日韩片| 久草在线资源站手机版| 日本不卡一区视频| 久久这里只有精品9| 亚洲午夜影视影院在线观看| 国产精品区一区二区三含羞草| 黄动漫在线看| 一区二区在线看| 亚洲大胆av| 国产亚洲欧美视频| 精品理论电影在线| 国产乱淫av免费| 亚洲欧洲激情在线| 亚洲看片免费| 久久免费观看视频| 亚洲福利一区二区三区| 亚洲国产最新| 国产一区二区伦理片| 日韩av图片| 情se视频网在线观看| 国产精品一区二区你懂的| 69视频在线| 日本三级韩国三级欧美三级| 国产98在线| 91视频-88av| 欧美xxxxhdvideosex| 97久久夜色精品国产| 5566中文字幕一区二区电影| 欧美成人综合一区| 香蕉精品999视频一区二区| 激情一区二区| 在线播放国产一区中文字幕剧情欧美| 91人妻一区二区三区| 欧美在线免费观看| 好吊妞国产欧美日韩免费观看网站| 精品素人av| 黄色正能量网站| 少妇av一区二区| 茄子视频成人在线观看| 日本亚洲欧美天堂免费| 久久中文字幕免费| 欧美www视频| 伊人久久av导航| 在线观看黄av| 国产伦精品一区二区三区视频孕妇| 欧美日韩国产一区精品一区| 一级性生活免费视频| 日韩欧美在线免费观看| 日韩中文字幕精品视频| 欧美一区二区在线观看| 一区二区三区区四区播放视频在线观看| 一卡二卡在线视频| 日韩限制级电影在线观看| 中文字幕免费高| 久久久久99精品成人片我成大片| 久久综合入口| 北条麻妃一区二区三区中文字幕| av一本久道久久波多野结衣| 国产精品高潮呻吟久久久久|