Как я изучаю машинное обучение (11 часть серии)
Numpy – мощный python Пакет Для трех основных причин:
- Python медленный и Numpy написан в основном в C один из самых быстрых языков, когда-либо созданных языков.
- Numpy – это позвоночник других пакетов.
- Это позволяет легко работать с массива и Матрицы Отказ
Ядро машинного обучения – найти узоры через много чисел, поэтому Numpy – Необходимо Отказ
Оглавление:
- Анатомия Numpy Array
- Импорт numpy.
- 1 мерные массивы
- 2 мерных массива
- 3 мерных массива
- Создание массивов с Numpy
- Пример массива
- Почему все?
- Полезные функции и методы
- Dtype
- Тип
- Размер
- Форма
- Недействительный
- Arange.
- Растинг
- Случайный
- Случайность в программировании
- Манипулирующие массивы
- Дополнения
- Вычитание
- Разделение и умножение
- Пол Дивизион и сила
Анатомия Numpy Array
Примеры были сделаны курсом обучения машины по МРДБУРКЕ
В машине обучение наше основное внимание будет на том, как форма наших данных будет выстраиваться с другими данными и выходами и примечаниями Numpy, технически называемые NDARRAYS. или N-мерные массивы, будут основы.
Импорт numpy.
Не забуду бы самое главное, вы бы вы?
1 мерные массивы
Первый тип NDARRAY является наиболее простым: массив с одним измерением, обычно называемым векторами:
У каждого массива есть Форма , что в этом случае составляет 1 и 3.
2 мерных массива
2-мерный массив обычно называется Матрица и очень похоже на Pandas DataFrames:
Очевидно, даже изменение формы.
3 мерных массива
3-мерный массив – это когда концепция многомерный Массив действительно важен. После этого массив просто называется N-мерным массивом:
Теперь форма имеет даже глубину в ней.
Если вы помните в последнем посте, когда я упомянул ось, это где она становится важным.
Создание массивов с Numpy
Мы видели анатомию массива в Numpy, но, очевидно, создание того, что всегда набирает все ценность, было бы неэффективным и бесполезным.
Пример массива
Мы можем создать первый примерный массив с функцией из них () , но если мы используем ярлык Shift + Tab. Мы можем увидеть, какая функция делает без поиска документации, вместо этого появится под самой функцией:
Но это не хватает информации. Мы можем видеть больше, нажав на X, чтобы на самом деле прокрутить весь документ в маленьком окне, или на ^ для позиционирования дока в нижней части экрана:
И прокрутка вниз, в этом случае мы можем даже увидеть примеры того, как использовать функцию:
Теперь мы знаем, что мы можем вводить в функцию и что ожидать:
Мы определили Форма Из массива и вывода, соответствующие таблице двух строк и четырех столбцов, или массив, который содержит две массивы, каждый с четырьмя элементами.
Почему все?
Иногда, прежде чем начать работу, мы можем захотеть быть уверенным в Форма Из нашего массива, поэтому мы можем захотеть создать один наполненный одним или нулями – еще одна функция numpy – что создает простой массив с Первоначальный форма.
Полезные функции и методы
В этом разделе мы погрузимся в самые полезные функции и методы, которые numpy предлагает, чтобы затем представить концепцию случайных чисел.
Dtype
Метод Ntype Numpy показывает нам тип данных массива. Использование предыдущего массива:
Создание массива с функцией, как в этом случае, тип по умолчанию будет float64 Отказ
Тип
Функция типа будет просто показать нам, какой тип массива у нас, в Numpy, он всегда приведет к NDARRay, как мы уже заявили:
Размер
Метод размера покажет нам, сколько элементов находятся в массиве.
Форма
Функция формы покажет форму массива:
Недействительный
Метод NDIM показывает, сколько измерений имеет массив:
В этом случае этот массив представляет собой матрицу, затем 2 измерения.
Arange.
Arange позволяет нам генерировать цифры в пределах диапазона. Нажатие Shift + Tab в середине кронштейнов мы можем прочитать документ, чтобы лучше понять, что он делает:
Docstring: arange([start,] stop[, step,], dtype=None) Return evenly spaced values within a given interval. Values are generated within the half-open interval ``[start, stop)`` (in other words, the interval including `start` but excluding `stop`). For integer arguments, the function is equivalent to the Python built-in `range` function, but returns a ndarray rather than a list
Но это, несмотря на то, что я очень ясно, это слишком много слоев, если мы видим примеры
Examples -------- >>> np.arange(3) array([0, 1, 2]) >>> np.arange(3.0) array([ 0., 1., 2.]) >>> np.arange(3,7) array([3, 4, 5, 6]) >>> np.arange(3,7,2) array([3, 5])
Таким образом, первый аргумент является началом диапазона, второй – это конец, а третья – этап, давайте увидимся на практике:
Растинг
Мы можем создать даже Случайные Массивы в диапазоне номеров с функцией Random.randint. Нажатие вкладки Shift + мы можем прочитать:
Docstring: randint(low, high=None, size=None, dtype=int) Return random integers from `low` (inclusive) to `high` (exclusive). Return random integers from the "discrete uniform" distribution of the specified dtype in the "half-open" interval [`low`, `high`). If `high` is None (the default), then results are from [0, `low`).
Но лучший способ всегда изучен:
Первый аргумент по умолчанию 1, поэтому, если мы просто вводите число и форму в функцию, она создаст значения между 0 и числом, который мы вводим в него.
Мы создали массив со значениями, которые диапазоны от 4 до 9 и с формой 2 и 5.
Случайный
Но если мы хотим просто создать случайное массив без точного диапазона, мы можем просто использовать случайную функцию. Мы должны ввести только форму:
Random.random идет от 0,0 до 1,0.
Случайность в программировании
Компьютер работает только с двоичными значениями, 0 и 1, поэтому Как компьютер может создавать случайные значения? Компьютер создает псевдослучайная Значения через функцию вызываемой, по Конвенции, семя . Если мы всегда будем использовать одинаковое семена для случайных значений, эти значения всегда будут одинаковыми, в противном случае numpy всегда будет изменять семена для создания значений, которые выглядят случайно:
Мы можем вручную Объявите семя, чтобы даже если числа ранзом при запуске команды они всегда будут одинаковыми, потому что основаны на одном семесе:
Манипулирующие массивы
Numpy предлагает нам много способов манипулировать массивом через технику под названием вещание Отказ Давайте начнем с создания новых массивов, которые мы можем сделать наши тесты:
С Numpy мы можем сделать основные арифметические расчеты, которые мы увидим сейчас, и другие вещи, которые мы увидим во второй части:
Дополнения
Мы можем выполнить исчисление в массивах напрямую, используя оператор, но в какой-то случае он может дать результат, что мы не хотим:
Так что лучше использовать выделенные функции, которые предлагает Numpy:
И это результат, который мы хотим, [1, 2, 3] + [4, 5, 6] дает нам третий массив с внутри [5, 7, 9].
Вычитание
Без функции у нас будет ошибка, но используя его, все работает как предполагаемое:
Но при использовании функции numpy мы не должны просто использовать массивы, мы даже можем просто понизить все элементы массива одного или любого числа, которые мы хотим:
разделение и умножение
Использование выделенных функций Numpy все будет работать нормально:
Пол Дивизион и сила
Если мы не хотим, когда мы разделяем наши массивы, мы можем использовать функцию разделения пола, которая вернет массив, разделенный без десятичных средств плюс тип, что мы не хотим – мы можем исправить его с помощью TOLIST-функции:
Для силы двух массивов, это то же самое:
Последние мысли
Это была первая часть на использовании Numpy для машинного обучения, если у вас есть какие-либо сомнения, не стесняйтесь оставлять комментарий.
Как я изучаю машинное обучение (11 часть серии)
Оригинал: “https://dev.to/gabrieleboccarusso/how-i-am-learning-machine-learning-week-3-python-and-numpy-part-one-27b4”