【機器學(xué)習(xí)快速入門教程1】前期準(zhǔn)備

章節(jié)1:前期準(zhǔn)備

本文包含本教程所需要的編程語言Python和開發(fā)環(huán)境Anaconda的簡單介紹。

Anaconda安裝

之所以推薦使用Anaconda,是為了讓大家省去復(fù)雜的安裝和配置Tensorflow的時間,快速入門機器學(xué)習(xí)。而Anaconda指的是一個開源的Python發(fā)行版本,其包含了conda、Python、numpy、tensorflow等等180多個科學(xué)包及其依賴項??梢愿鶕?jù)這篇文章來安裝Anaconda,安裝完成打開后有以下界面,可以在右邊Environments中配置或?qū)肽闼枰目茖W(xué)包(后面課程有用到),而本教程接下來使用Jupyter notebook來進(jìn)行機器學(xué)習(xí)的編程練習(xí)。

Python基礎(chǔ)

我們只回顧后面學(xué)習(xí)中將要使用的Python的一些核心概念,如果你已經(jīng)熟悉了Python,可以跳過以下內(nèi)容。如果你是Python的初學(xué)者,在全面了解Python后再學(xué)習(xí)后面的章節(jié)會更好。

Python在線學(xué)習(xí)資源

變量

在Python中,你可以將任何值直接賦予一個變量,接著就可以直接引用和操作該變量。

myVariable = 'hello world'
print(myVariable)
hello word

列表

我們從Python中最基本的數(shù)據(jù)容器列表講起,

# basic list in Python# basic 
X = [2, 5, 7, -2, 0, 8, 13]
# lists are 0-indexed, so index 2 is the third element in X
print(X[2])
7

分片

指的是列表的子集(下標(biāo)從0開始)

# slicing
y = X[0:2]
print(y)
y = X[:-2]  # equivalent to x[0:4] 
print(y)
[2, 5]
[2, 5, 7, -2, 0]

列表操作

列表中的各種方法:

  • 在列表中找到值為7的下標(biāo)
print(X.index(7))
2
  • 計算列表中的元素個數(shù)
print(len(X))
7
  • 在列表末尾添加元素
X.append(99)
print(X)
[2, 5, 7, -2, 0, 8, 13, 99]
  • 在下標(biāo)為1的地方插入元素
X.insert(1, 55)
print(X)
[2, 55, 5, 7, -2, 0, 8, 13, 99]

復(fù)雜列表

在Python中創(chuàng)建列表最便捷的方法就是通過對其他的列表進(jìn)行操作,注意:** 是指數(shù)乘法操作,x**2指x^2。
新列表是x的平方

z = [x**2 for x in X]
print(z)
[4, 3025, 25, 49, 4, 0, 64, 169, 9801]

新列表是True/False(根據(jù)元素是否大于3)

z = [x>3 for x in X]
print(z)
[False, True, True, True, False, False, True, True, True]

字典

字典是另一種存儲數(shù)據(jù)的方法,可以使用key來查找數(shù)據(jù)

z = {'name':'Gene', 'apples':5, 'oranges':8}
print(z['name'])
print(z['oranges'])
if 'apples' in z:
    print('yes, the key apples is in the dict z')
Gene
8
yes, the key apples is in the dict z

循環(huán)

for循環(huán)

names = ['Alice', 'Bob', 'Carol', 'David']
for name in names:
    print('Hi %s' % name)
Hi Alice
Hi Bob
Hi Carol
Hi David

從range中的兩個端點獲取一組整數(shù)

for i in range(5, 9):
    print(i)
5
6
7
8

函數(shù)

函數(shù)是指一段可以重復(fù)使用的代碼塊

def myFunction(myArgument):
    print('Hello '+myArgument)
    
myFunction('Alice')
myFunction('Bob')
Hello Alice
Hello Bob

類給Python帶來了面向?qū)ο缶幊?/p>

class MyClass(object):
    def __init__(self, message): # constructor
        self.message = message   # assign local variable in object
    
    def print_message(self, n_times=2):
        for i in range(n_times):
            print('%s' % self.message)

M = MyClass('Hello OF Course!')
M.print_message(3)
Hello OF Course!
Hello OF Course!
Hello OF Course!

Python中有許多可以使用的函數(shù)庫
讓我們來導(dǎo)入兩個庫:math和matplolib.pyplot(化名為plt)
用math庫來計算1的余弦值

import matplotlib.pyplot as plt
import math

z = math.cos(1)
print(z)
0.5403023058681398

繪圖

我們來繪制sine函數(shù)的曲線,后面我們將學(xué)習(xí)更多關(guān)于繪圖方面的概念

X = [0.1*x for x in range(-50,50)]
Y = [math.sin(x) for x in X]

# make the figure
plt.figure(figsize=(6,6))
plt.plot(X, Y)
plt.xlabel('x')
plt.ylabel('y = sin(x)')
plt.title('My plot title')
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容