"Anlaşılması Gereken Bir Resim" Bilgisayarla Görü Tanıma'nın Kısa Tarihi: AlexNet, ResNet'ten Mask RCNN'ye

Xinzhiyuan Derlemesi

Son zamanlarda, nesne tanıma, bilgisayar görüşü ve yapay zekanın en heyecan verici alanlarından biri haline geldi. Sahnedeki tüm nesneleri anında tanıma yeteneği artık bir sır değil gibi görünüyor. Evrişimli sinir ağı mimarisinin geliştirilmesi ve büyük eğitim veri kümelerinin ve gelişmiş bilgi işlem teknolojisinin desteğiyle, bilgisayarlar artık belirli ayarlarla (yüz tanıma gibi) görevlerde insan tanıma yeteneklerini aşabilir.

Bilgisayarla görü tanıma konusunda ne zaman inanılmaz bir gelişme olursa, birinin bunu tekrar etmesi gerektiğini hissediyorum. Bu yüzden bu tabloyu yaptım. Nesne tanımanın modern tarihini en özlü dille ve en çekici şekilde anlatmaya çalışır. Hikaye 2012 yılında AlexNet'in ILSVRC'yi (ImageNet Büyük Ölçekli Görsel Tanıma Yarışması) kazandığı zaman başladı. İnfografik 2 sayfadan oluşmaktadır: İlk sayfa önemli kavramları özetlemektedir ve ikinci sayfa tarihçeyi özetlemektedir. Her diyagram, daha tutarlı ve anlaşılması kolay olacak şekilde yeniden tasarlandı. Tüm referanslar, okuyucunun ayrıntılı açıklamayı nerede bulacağını bilmesi için dikkatlice seçilmiştir.

Bilgisayarla görmenin 6 anahtar teknolojisi

  • Görüntü sınıflandırması: Görüntünün ana içeriğine göre sınıflandırma. Veri seti: MNIST, CIFAR, ImageNet

  • Nesne lokalizasyonu: alandaki nesneleri tanımlamak için ana nesneyi içeren görüntü alanını tahmin edin. Veri kümesi: ImageNet

  • Nesne tanıma: görüntüde görünen tüm nesneleri bulun ve sınıflandırın. Bu süreç genellikle şunları içerir: alanın işaretlenmesi ve ardından içindeki nesnelerin sınıflandırılması. Veri seti: PASCAL, COCO

  • Anlamsal bölümleme: görüntüdeki her pikseli örnekteki insan, koyun ve çimen gibi kendi nesne kategorisine ayırın. Veri seti: PASCAL, COCO

  • Örnek bölümleme: görüntüdeki her pikseli nesne kategorisine ve kendi nesne örneğine bölün. Veri seti: PASCAL, COCO

  • Anahtar nokta tespiti: İnsan vücudundaki veya yüzündeki kilit noktalar gibi bir nesne üzerindeki önceden tanımlanmış anahtar noktalar kümesinin konumunu tespit edin. Veri kümesi: COCO

Anahtar kişi

Bu şekil, nesne tanıma teknolojisindeki önemli figürleri listeler: J. Schmidhuber; Yoshua Bengio; Yann Lecun; Georey Hinton; Alex Graves; Alex Krizhevsky; Ilya Sutskever; Andrej Karpathy; Christopher Olah; Ross Girshick; Matthew Zeiler; Rob Fergus ; Kaiming He; Pierre Sermanet; Christian Szegedy; Joseph Redmon; Shaoqing Ren; Wei Liu; Karen Simonyan; Andrew Zisserman; Evan Shelhamer; Jonathan Long; Trevor Darrell; Springenberg; Mordvintsev; V. Dumoulin; Francesco Vide;

Önemli CNN kavramları

1. Özellikler (modeller, nöronların aktivasyonu, özellik algılama)

Giriş alanında (alıcı alan) belirli bir model (özellik) sunulduğunda, gizli bir nöron etkinleştirilecektir.

Nöronlar tarafından tanınan kümeler şu şekilde görselleştirilebilir: 1) nöronların aktivasyonunu en üst düzeye çıkarmak için giriş alanını optimize etmek (derin rüya); 2) gradyanı görselleştirmek veya nöronu giriş piksellerinde yönlendirmek Meta aktivasyon gradyanı (geri yayılma ve yönlendirilmiş geri yayılma) 3) Eğitim veri setindeki en aktif nöronlarla görüntü alanını görselleştirin.

2. Alıcı alan (karakteristik giriş alanı)

Giriş görüntüsü alanı, özelliğin etkinleştirilmesini etkileyecektir. Başka bir deyişle, özellik referans alanıdır.

Genel olarak, daha yüksek katmanlardaki özellikler daha geniş bir kabul aralığına sahip olacak ve bu da daha karmaşık / soyut kalıpları yakalamayı öğrenmesine izin verecektir. ConvNet'in mimarisi, katman sayısı değiştikçe alıcı alanın nasıl değiştiğini belirler.

3. Özellik haritası (gizli katmanın kanalı)

Bir kayan pencerede (örneğin, evrişim) bir giriş haritasındaki aynı özellik algılayıcısının farklı konumlara uygulanmasıyla oluşturulan bir dizi özelliği ifade eder. Aynı özellik haritasındaki özellikler, aynı kabul edilebilir şekle sahiptir ve farklı konumlarda aynı modeli arayacaktır. Bu, ConvNet'in uzamsal değişmezliğini oluşturur.

4. Özellik (evrişimde gizli katman)

Bu, bir dizi özellik haritasıdır ve her harita, girdi haritasındaki sabit konumlarda belirli özellikleri arayacaktır. Tüm özelliklerin alıcı alan boyutu aynıdır.

5. Özellik miktarı olarak tamamen bağlı katman

Tamamen bağlantılı katmanlar (genellikle tanıma görevlerinde bir ConvNet'in sonuna eklenen fc katmanları), bu özellik miktarı her özellik düşüşünde bir özelliğe sahiptir ve alma alanı tüm görüntüyü kaplayacaktır. Tamamen bağlı katmandaki ağırlık matrisi W, bir CNN çekirdeğine dönüştürülebilir.

Bir çekirdek wxhxk'yi bir CNN özelliğine wxhxd dönüştürmek, 1x1xk özelliği (= k düğümlü FC katmanı) elde edecektir. Bir 1x1xk özellik miktarı elde etmek için 1x1xk filtre çekirdeğini 1x1xd özellik miktarına dönüştürün. Tamamen bağlı katmanları evrişimli katmanlarla değiştirmek, ConvNet'in her boyuttaki görüntülere uygulanmasını sağlar.

6. Ters Evrişim

Bu işlem, eğimi evrişimde geriye doğru yayar. Başka bir deyişle, evrişim katmanının ters geçişidir. Ters evrişim normal bir evrişim olarak kullanılabilir ve giriş özelliklerine herhangi bir ekleme gerektirmez.

Solda, kırmızı giriş birimi üstteki dört birimin (dört renkli kutu) etkinleştirilmesinden sorumludur ve gradyan bu çıktı birimlerinden elde edilebilir. Bu gradyan geri yayılımı, ters evrişim (sağdaki görüntü) aracılığıyla dağıtılabilir.

7. Uçtan uca nesne tanıma hattı (uçtan uca öğrenme / sistem)

Bu, tek bir nesne işlevini optimize ederek bir bütün olarak eğitilebilen tüm adımları (ön işleme, bölge önerisi oluşturma, öneri sınıflandırması, son işleme) içeren bir nesne tanıma işlem hattıdır. Tek bir nesne işlevi, farklılaştırılabilen ve tüm işlem adımları için değişkenler içeren bir işlevdir. Bu uçtan-uca ardışık düzen, geleneksel nesne tanıma hattının tam tersidir. Bu sistemlerde, belirli bir adımın değişkenlerinin genel performansı nasıl etkilediğini hala bilmiyoruz, bu nedenle her adım bağımsız olarak eğitilmeli veya sezgisel olarak programlanmalıdır.

Önemli hedef tanıma kavramları

1. Sınırlayıcı kutu teklifi

Bir sınırlayıcı kutu gönderin (Sınırlayıcı kutu teklifi, ilgi alanı, gönderim alanı, gönderim kutusu olarak da bilinir)

Girdi görüntüsü üzerinde, tanımlanacak potansiyel nesneleri içeren dikdörtgen bir alan. Gönderimler sezgisel arama (nesne, seçim araması veya bölgesel gönderim ağı RPN) ile oluşturulur.

Bir sınırlayıcı kutu, 4 elemanlı bir vektörle veya iki köşe koordinatı (x0, y0, x1, y1) olarak veya bir merkez koordinatı ve genişlik ve yükseklik (x, y, w, h) olarak gösterilebilir. Sınırlayıcı kutuya genellikle nesneyi içerme olasılığını belirten bir güven endeksi eşlik eder.

İki sınırlayıcı kutu arasındaki fark genellikle vektör gösterimlerinde L2 mesafesiyle ölçülür. w ve h, mesafeyi hesaplamadan önce logaritmik olacaktır.

2. Birlik Üzerinden Kesişme

Birlik Üzerinden Kesişme (Birlik Üzerinden Kesişme, IoU olarak da bilinir, Jaccard benzerliği)

İki sınırlayıcı kutunun benzerliğinin bir ölçüsü = üst üste binen alanların ortak alana bölünmesi

3. Non-Maxium Suppression (Non Maxium Suppression, aynı zamanda NMS olarak da bilinir)

Çakışan sınırlayıcı kutuları birleştirmek için genel bir algoritma (gönderilen veya algılanan). Yüksek güvenirlik sınırlayıcı kutularla açıkça örtüşen tüm sınırlayıcı kutular (IoU > IoU_threshold) bastırılır (kaldırılır).

4. Sınırlayıcı kutu regresyonu (sınırlayıcı kutunun ince ayarı)

Bir giriş alanını gözlemleyerek, nesne sadece kısmen görünür olsa bile, gizli nesne için daha uygun bir sınırlayıcı kutu elde edebiliriz. Aşağıdaki şekil, nesnenin sadece bir kısmı görüldüğünde bir kesinlik kutusu elde etme olasılığını göstermektedir. Bu nedenle, regresör, giriş alanını gözlemlemek ve giriş alanı çerçevesi ile gerçek çerçeve arasındaki ofseti (x, y, w, h) tahmin etmek için eğitilebilir. Her bir nesne kategorisinin bir gerileyicisi varsa, buna belirli bir kategori gerileyicisi denir, aksi halde bilinmeyen kategori olarak adlandırılır (sınıftan bağımsız, tüm kategoriler için bir gerileyici kullanılır). Sınırlayıcı kutu regresörüne, sınırlayıcı kutudaki nesnenin varlığının güvenilirliğini değerlendirmek için genellikle bir sınırlayıcı kutu sınıflandırıcı (güvenilirlik puanlayıcı) eşlik eder. Sınıflandırıcı, belirli bir kategori veya bilinmeyen bir kategori olabilir. Birincil kutu tanımlanmamışsa, giriş alanı kutusu birincil kutu rolünü oynayacaktır.

5. Birincil kutu (Önceki kutu, varsayılan kutu olarak da bilinir, bağlantı kutusu)

Giriş alanı tek birincil kutu olarak kullanılmıyorsa, her biri aynı giriş alanını gözlemleyen, ancak ilgili birincil kutuları farklı olan birden çok sınırlayıcı kutu regresörü eğitebiliriz. Her regresör, birincil çerçevesi ile gerçek çerçeve arasındaki kaymayı tahmin etmeyi öğrenir. Bu şekilde, farklı birincil kutuları olan regresörler, farklı özelliklere (en boy oranı, boyut, konum) sahip sınırlayıcı kutuları tahmin etmeyi öğrenebilir. Giriş alanına göre, birincil kutu önceden tanımlanabilir veya kümeleme yoluyla öğrenilebilir. Eğitimin yakınlaşması için uygun kutu eşleştirme stratejisi çok önemlidir.

6. Çerçeve eşleştirme stratejisi

Bir sınırlayıcı kutu regresörünün, girdi alanından veya birincil kutusundan (daha yaygın olarak) çok uzakta olan bir nesne sınırlayıcı kutuyu tahmin etmesini bekleyemeyiz. Bu nedenle, hangi birincil kutunun gerçek kutu ile eşleştiğini belirlemek için bir kutu eşleştirme stratejisine ihtiyacımız var. Her maç, regresyon için bir eğitim örneğidir. Olası stratejiler şunlardır: (çoklu kutu) her bir gerçek çerçeveyi en yüksek IoU ile eşleştirme; (SSD, FasterRCNN) 0,5'ten yüksek IoU ile herhangi bir gerçek çerçeveyi eşleştirme.

7. Zor olumsuz örnek madencilik

Her birincil kutu için, içindeki nesnelerin olasılığını değerlendirmek için bir sınırlayıcı kutu sınıflandırıcısı vardır. Kutular eşleştirildikten sonra, diğer tüm birincil kutular negatiftir. Tüm bu negatif örnekleri kullanırsak, pozitif ve negatif arasında bariz bir dengesizlik olur. Olası çözümler şunlardır: Negatif örnekleri rastgele seçin (FasterRCNN) veya en ciddi sınıflandırıcı hataları olan örnekleri seçin, böylece negatif ve pozitif arasındaki oran yaklaşık 3: 1 olur.

Önemli görsel model geliştirme: AlexNet ZFNet VGGNet ResNet MaskRCNN

Her şey burada başlıyor: Modern nesne tanıma, ConvNets'in geliştirilmesiyle gelişti ve her şey 2012'de AlexNet'in ILSVRC 2012'yi büyük bir avantajla kazandığı zaman başladı. Lütfen tüm nesne tanıma yöntemlerinin ConvNet tasarımına ortogonal olduğunu unutmayın (herhangi bir ConvNet herhangi bir nesne tanıma yöntemiyle birleştirilebilir). ConvNets, genel görüntü özelliği çıkarıcılar olarak kullanılır.

2012 AlexNet : AlexNet, veri geliştirme, ReLU, bırakma ve GPU uygulamasını birleştiren onlarca yıllık LeNet'e dayanmaktadır. ConvNet'in etkinliğini kanıtladı, ConvNet'in muhteşem geri dönüşünü başlattı ve yeni bir bilgisayar vizyonu çağını başlattı.

RCNN: Bölge tabanlı ConvNet (RCNN), sezgisel bölge önerme yöntemi ve ConvNet özellik çıkarıcısının doğal bir kombinasyonudur. Giriş görüntüsünden, yaklaşık 2000 sınırlayıcı kutu teklifi oluşturmak için seçici aramayı kullanın. Bu dışa itilmiş alanlar kırpılır ve sabit boyutlu 227x227 görüntüye dönüştürülür. Sonra, AlexNet her bir eğri görüntü için 4096 özelliği (fc7) çıkarır. Ardından deforme olmuş görüntüdeki nesneleri 4096 özelliklerini kullanarak sınıflandırmak için bir SVM modeli eğitin. Sınırlayıcı kutuyu iyileştirmek için birden çok kategoriye özgü sınırlayıcı kutu regresörünü eğitmek için 4096 ayıklanmış özellikleri kullanın.

OverFeat : OverFeat, AlexNet'i, bir girdi görüntüsünün birden çok düzeyi altında, eşit aralıklarla yerleştirilmiş birden çok kare pencereden özütlemek için kullanır. Pool5 katmanındaki (339x339 alıcı etki alanı penceresi) her 5x5 alanındaki nesneleri sınıflandırmak için bir nesne sınıflandırıcı ve kategoriden bağımsız bir kutu regresörü eğitin ve sınırlayıcı kutuyu iyileştirin. OverFeat, çok ölçekli görüntüleri tahmin edebilmek için fc katmanını 1x1xN evrişimli katmanla değiştirir. Pool5'te bir pikseli hareket ettirirken, alıcı alan 36 piksel hareket ettiğinden, pencere genellikle nesneyle mükemmel bir şekilde hizalanmaz. OverFeat, kapsamlı bir havuzlama şeması sunar: Pool5, girişinin her ofsetine uygulanır ve bu da 9 Pool5 birimiyle sonuçlanır. Pencere artık 36 piksel yerine sadece 12 pikseldir.

2013 yılında ZFNet: ZFNet, ILSVRC 2013'ün şampiyonudur. Aslında AlexNet'e dayanan bir ayna modifikasyonudur: ilk evrişimli katman, daha fazla bilgiyi saklamak için 11 × 11 çekirdek yerine 7 × 7 çekirdek kullanır .

SPPNet : SPPNet (Uzamsal Piramit Havuzlama Ağı) esasen bir RCNN yükseltmesidir.SFFNet iki önemli kavram sunar: uyarlanabilir boyutlu havuzlama (SPP katmanı) ve özellik miktarı yalnızca bir kez hesaplanır. Aslında, Fast-RCNN bu kavramları da ödünç alır ve ayna ayarı yoluyla RCNN'nin hızını artırır.

SPPNet, her görüntüde 2000 bölge (bölge önerileri) oluşturmak için seçici aramayı kullanır. Ardından, görüntünün tamamından ortak bir özellik miktarı elde etmek için ZFNet-Conv5'i kullanın. SPPNet, oluşturulan her alan için, alan özelliğini tüm özellik miktarından bir araya getirmek ve alanın sabit uzunlukta bir temsilini oluşturmak için uzamsal piramit havuzunu (SPP) kullanır. Bu gösterim, hedef sınıflandırıcıyı ve kutu regresörü eğitmek için kullanılacaktır. Tüm özellik havuzlama özelliklerinden, tüm görüntü kırpıntılarını (ekinleri) RNN gibi eksiksiz bir CNN'ye girmek yerine, SPPNet hızı 2 kat artırır. SPP işlemi ayırt edilebilir olmasına rağmen yazarın bunu yapmadığı belirtilmelidir, bu nedenle ZFNet sadece ImageNet üzerinde ince ayar yapılmadan eğitilmiştir.

Çoklu Kutu : Çoklu Kutu, hedef tanıma gibi değil, daha çok ConvNet tabanlı alan oluşturma çözümü gibidir. MultiBox, bölge teklif ağı (RPN) ve önceki kutu kavramını popüler hale getirerek, evrişimli sinir ağlarının eğitimden sonra sezgisel yöntemlerden daha iyi bölge önerileri oluşturabileceğini kanıtlıyor. O zamandan beri sezgisel yöntemler yavaş yavaş RPN ile değiştirildi. MultiBox önce tüm veri kümesindeki tüm gerçek kutu konumlarını kümeler, 200 centroid (centroid) bulur ve ardından bunları önceki kutunun merkezi için kullanır. Her giriş resmi kırpılacak ve ortadan 220 × 220 olacak şekilde yeniden boyutlandırılacaktır. Daha sonra MultiBox, 4096 özellikleri (fc7) çıkarmak için ALexNet'i kullanır. Hedef güven puanını tahmin etmek için 200 sigmoid katman ve önceki her kutudan merkez ofseti ve kutu önerisini tahmin etmek için 4 × 200 doğrusal katman ekleyin. Aşağıdaki şekilde gösterilen kutu regresörlerinin ve güven puanlarının tüm görüntüden yakalanan özelliklere baktığına dikkat edin.

2014 VGGNet : ILSVRC'nin şampiyonu olmasa da, VGGNet bugün hala en yaygın evrişimli mimarilerden biridir, çünkü basit ve etkilidir. VGGNet'in ana fikri, çok sayıda küçük çekirdek evrişimli katman katmanını istifleyerek büyük çekirdek evrişimli katmanı değiştirmektir. VGGNet, adım boyutu ve 1 dolgu ile 3 × 3 evrişim ve adım boyutu 2 olan 2 × 2 maksimum paylaşım katmanı kullanır.

Yıl 2014 Başlangıç: Başlangıç (GoogLeNet), 2014 ILSVRC şampiyonudur. Konvolüsyon ve makspooling katmanlarının geleneksel sıralı yığınlamasından farklı olarak, Inception, birden çok paralel evrişim katmanı ve farklı çekirdek boyutlarına sahip birçok makspooling katmanı içeren Inception modüllerini istifler. Başlangıç, özellik çıktısının derinliğini azaltmak için 1 × 1 evrişimli katman kullanır. Şu anda Inception'ın 4 sürümü var.

Hızlı RCNN : Hızlı RCNN esasen SPPNet'tir. Fark, Hızlı RCNN'nin eğitimli bir özellik çıkarma ağına sahip olması ve SPP katmanını değiştirmek için RolPooling'i kullanmasıdır.

YOLO : YOLO (Sadece Bir Kez Bakarsınız) doğrudan Çoklu Kutu'dan türetilmiştir. YOLO, kutu regresörü ve kutu sınıflandırıcı katmanları ile yan yana duran bir softmax katmanı ekleyerek, alan tarafından orijinal olarak oluşturulan Çoklu Kutuyu, hedefin türünü doğrudan tahmin edebilen bir hedef tanıma yöntemine dönüştürür.

2015 ResNet : ResNet, 2015 ILSVRC yarışmasını inanılmaz bir% 3,6 hata oranıyla (% 5-10 insan seviyesinde) kazandı. ResNet, girdi ifadesini bir çıktı gösterimine dönüştürmez, ancak artık blokları sırayla istifler, her blok kendi girdisine istediği değişikliği (kalıntı) hesaplar ve çıktı gösterimini üretmek için girdisine ekler. . Bunun güçlendirme ile bir ilgisi var.

Daha hızlı RCNN : Multibox'tan esinlenen Daha Hızlı RCNN, bölge oluşturma ağını (RPN) sezgisel bölge oluşturma ile değiştirir. Daha Hızlı RCNN'de, PRN, hareketli bir pencerede conv5_3'ün tüm özelliklerini görüntülemek için çok küçük bir evrişimli ağdır (3 × 3 dönüşüm 1 × 1 dönüşüm 1 × 1 dönüşüm). Her mobil pencerenin alıcı alanıyla ilgili 9 önceki kutusu vardır. PRN, önceki her kutu için sınırlayıcı kutu regresyonu ve kutu güven skorlaması yapacaktır. Yukarıdaki üçünün kaybını ortak bir genel özellik miktarıyla birleştirerek, tüm boru hattı eğitilebilir. Burada RPN'nin yalnızca küçük bir girdi alanına odaklandığına dikkat edin; önceki kutu kutunun merkez konumunu ve boyutunu kontrol eder ve Hızlı RCNN'nin kutu tasarımı MultiBox ve YOLO'nunkinden farklıdır.

2016 SSD : SSD, yalnızca nesnenin güvenirliğini sınıflandırmak için değil (YOLO'ya benzer), nesneleri doğrudan önceki kutularda sınıflandırmak için Daha Hızlı RCNN'nin RPN'sini kullanır. RPN'yi farklı derinliklerde birden çok evrişimli katman üzerinde çalıştırarak önceki kutunun çözünürlük çeşitliliğini artırın.

2017 Maskesi RCNN : Belirli bir nesne maskesi tahmini sınıfı ekleyerek, Maske RCNN, mevcut sınırlayıcı kutu regresörleri ve nesne sınıflandırıcılarıyla paralel olarak örnek segmentasyonu için Daha Hızlı RCNN'yi genişletir. RolPool, ağ girişi ve çıkışı arasında pikselden piksele hizalama için tasarlanmadığından, MaskRCNN onu RolAlign ile değiştirdi. RolAlign, RolPooling'in maksimum havuzlama yöntemi yerine her alt pencerenin giriş özelliğinin tam değerini hesaplamak için çift doğrusal enterpolasyon kullanır.

Referanslar

Shaanxi sonbaharı Qinling Dağları değil görüyor "Küçük Pekin" olarak bilinen bu bin yıllık şehir, dağların her tarafında kırmızı yapraklarla dolu.
önceki
"Dağıtım indirimi" bizi ne kadar kandırdı? Netizen: Artık aşk yok
Sonraki
Ye Maozhong: Küçük çatışmalar ihtiyaçlardan, büyük çatışmalar arzulardan kaynaklanır
Seri üretim yaklaşıyor: Tesla Model 3 ayrıntıları ortaya çıktı, Model S ve X değerlendirmesi düşürüldü
Ginkgo ülke çapında haritayı görüntülerken, kalbinizi attıracak bir tane her zaman vardır!
Petrodollar zayıflayabilir, küresel para Çin pazarına daha hızlı akabilir, Buffett: Lütfen daha fazlasını yapın
19 puan düşürüldü! Kandırılmış "patlayan sokak arabası" araştırıldı
Wu Xiaobo'nun son konuşması: Yeni perakende, devrim kim? Kim devrim yapacak?
Eğlence çemberinin yarısının daraldığı yer ...
Hangi araba yeni bir enerji lisansı alabilir? Okuduktan sonra anlıyorsun
Bırakın sinir ağı programı sizin için: otomatik program sentezini elde etmek için derin öğrenmeyi nasıl kullanırsınız
Messi ligin ilk turunda iki gol attı, aura devam ediyor! Neyse ki hala futbol var!
Renminbi keskin bir şekilde yükseldi ve petrol fiyatları aniden keskin bir şekilde düştü.
Renren Chen Yizhou: Yeni ortaya çıkan ürünlere ve şirketlere her zaman hayran kalmalıyız
To Top