single
Tensorien Luominen
Pyyhkäise näyttääksesi valikon
Perustason tensorin alustajat
tf.constant(): tämä on yksinkertaisin tapa luoda tensori. Kuten nimestä voi päätellä, tällä menetelmällä alustetut tensorit sisältävät vakioarvoja ja ovat muuttumattomia;
12345import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
tf.Variable(): toisin kuintf.constant(),tf.Variable()-funktiolla määritelty tensori on muuttuva. Tämä tarkoittaa, että sen arvoa voidaan muuttaa, mikä tekee siitä sopivan esimerkiksi mallien opetettaville parametreille;
12345import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros(): luo tensorin, joka on täytetty nollilla;
12345import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones(): vastaavasti tämä luo tensorin, joka on täytetty ykkösillä;
12345import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
tf.fill(): luo tensorin, joka on täytetty tietyllä arvolla;
12345import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
tf.linspace()jatf.range(): erinomaisia sekvenssien luomiseen;
123456789import tensorflow as tf # Generate a sequence of numbers starting from 0, ending at 9 tensor_range = tf.range(10) print(tensor_range) # Create 5 equally spaced values between 0 and 10 tensor_linspace = tf.linspace(0, 10, 5) print(tensor_linspace)
tf.random: luo tensoreita satunnaisilla arvoilla. Tässä moduulissa on saatavilla useita jakaumia ja funktioita, kutentf.random.normal()normaalijakaumasta saataville arvoille jatf.random.uniform()tasaisesta jakaumasta saataville arvoille.
Voit myös asettaa kiinteän siemenen saadaksesi johdonmukaiset tulokset jokaisella satunnaislukugeneroinnilla käyttämällä tf.random.set_seed(). Huomaa kuitenkin, että näin tehdessäsi saat saman luvun kaikissa TensorFlow'n satunnaisgeneroinneissa.
Jos haluat saada johdonmukaiset luvut vain tietylle komennolle, voit antaa kyseiselle komennolle seed-argumentin haluamallasi siemenarvolla.
1234567891011121314import tensorflow as tf # Set random seed tf.random.set_seed(72) # Tensor of shape (2, 2) with random values normally distributed # (by default `mean=0` and `std=1`) tensor_random = tf.random.normal((2, 2), mean=4, stddev=0.5) print(tensor_random) # Tensor of shape (2, 2) with random values uniformly distributed # (by default `min=0` and `max=1`) tensor_random = tf.random.uniform((2, 2), minval=-2, maxval=2) print(tensor_random)
Datarakenteiden välinen muuntaminen
TensorFlow-tensorit voidaan saumattomasti muuntaa tutuiksi Python-datarakenteiksi ja takaisin.
- Numpy-taulukoista: TensorFlow-tensorit ja Numpy-taulukot ovat hyvin yhteensopivia. Käytä
tf.convert_to_tensor();
12345678910import numpy as np import tensorflow as tf # Create a NumPy array based on a Python list numpy_array = np.array([[1, 2], [3, 4]]) # Convert a NumPy array to a tensor tensor_from_np = tf.convert_to_tensor(numpy_array) print(tensor_from_np)
- Pandas DataFrameista: Pandas-kirjaston käyttäjille DataFrame- tai Series-olion muuntaminen TensorFlow-tensoriksi on yksinkertaista. Käytä myös
tf.convert_to_tensor();
12345678910import pandas as pd import tensorflow as tf # Create a DataFrame based on dictionary df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) # Convert a DataFrame to a tensor tensor_from_df = tf.convert_to_tensor(df.values) print(tensor_from_df)
Varmista aina, että alkuperäisten rakenteidesi (Numpy-taulukot tai Pandas DataFrame -objektit) tietotyypit ovat yhteensopivia TensorFlow-tensorien tietotyyppien kanssa. Jos tietotyypeissä on ristiriita, harkitse tyyppimuunnosta.
- Vakio-tensorin muuntaminen
Variable-muotoon: voit alustaaVariable-olion useilla tensorin luontimenetelmillä, kutentf.ones(),tf.linspace(),tf.randomja niin edelleen. Anna vain funktio tai olemassa oleva tensori parametrinatf.Variable()-funktiolle.
12345678910111213import tensorflow as tf # Create a variable from a tensor tensor = tf.random.normal((2, 3)) variable_1 = tf.Variable(tensor) # Create a variable based on other generator variable_2 = tf.Variable(tf.zeros((2, 2))) # Display tensors print(variable_1) print('-' * 50) print(variable_2)
Tensorien luomisen harjoittelua voi tehostaa kokeilemalla erilaisia muotoja ja arvoja. Lisätietoja yksittäisistä komennoista löytyy virallisesta TensorFlow-dokumentaatiosta. Sieltä löytyy kaikki tarvittava tieto kirjaston komennoista ja moduuleista.
Swipe to start coding
Tehtävänä on luoda, muokata ja muuntaa erilaisia tensoreita käyttäen TensorFlow'ta.
Osa 1 — Tensorien alustaminen
- Luo tensor nimeltä
tensor_A, jonka muoto on(3, 3)ja kaikki alkiot ovat 5. - Luo muokattava tensor nimeltä
tensor_B, jonka muoto on(2, 3)ja arvot voit valita vapaasti. - Luo tensor nimeltä
tensor_C, jonka muoto on(3, 3)ja joka on täytetty nollilla. - Luo tensor nimeltä
tensor_D, jonka muoto on(4, 4)ja joka on täytetty ykkösillä. - Luo tensor nimeltä
tensor_E, jossa on 5 lineaarisesti jakautunutta arvoa väliltä 3 ja 15. - Luo tensor nimeltä
tensor_F, jossa on satunnaisia arvoja ja muoto(2, 2).
Osa 2 — Muunnokset
- Muunna NumPy-taulukko
np_arrayTensorFlow-tensoriksi nimeltätensor_from_array. - Muunna DataFrame
dfTensorFlow-tensoriksi nimeltätensor_from_dataframe.
Huomio
- Käytä kuhunkin operaatioon sopivinta TensorFlow-funktiota:
tf.fill()tensorille, jossa on yksi toistuva arvo;tf.Variable()muokattaville tensoreille;tf.zeros()/tf.ones()nolla- ja ykköstäytteisille tensoreille;
tf.linspace()lineaarisesti jakautuneille tensoreille;tf.random.normal()satunnaisille tensoreille;- Käytä
tf.convert_to_tensor()muunnoksiin NumPy-taulukoista tai pandas DataFrameista; - Vältä
tf.constant()-funktion käyttöä — käytä yllä mainittuja tarkempia funktioita sen sijaan.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme