全程使用国内镜像的Anaconda 安装

Anaconda下载安装

国内直接从官网安装Anaconda实在是太慢了。
因此总结一下关于Anaconda安装的过程与步骤;

Anaconda下载

直接从国外下载很慢,可以从国内镜像进行下载,清华镜像中有给出:
全程使用国内镜像的Anaconda 安装_第1张图片
注意要选择合适的操作系统,然后跟着指令一步一步安装就可以了。

安装Anaconda后进行包下载

Anaconda本身就是一个环境与依赖包的管理器,因此在安装完成后可以进一步进行包安装,此处以Keras为例。若直接从Anaconda默认的源中下载安装依赖包,还是很慢。所以需要把Anaconda中的源进行修改;

Windows操作系统下

Step1:打开Anaconda prompt,必须使用prompt的原因是Windows中不可以直接创建.condarc文件,需要使用prompt 中执行

conda config --set show_channel_urls yes

Step2:找到C:\Users\当前用户名.condarc的文件;
然后需要把文件中的源替换为清华源中的路径。写博客的时候的,这些路径是:

channels:
  - defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

如果时间过了太久,需要自己去清华源中帮助界面寻找目录地址:
Step3: 保存并关掉这个文件,再次打开Anaconda prompt,清除缓存中的索引:

conda clean -i

再去下载库的时候就从清华源而不是国外了,在国内的话会快很多;

Linux操作系统下

更简单了,直接打开.condarc文件,进行源替换,保存就可以使用了;

Keras 安装

安装一个Keras包来练练手,打开Anaconda prompt,直接在App列表里找就有了。
在这里直接安装在Base环境中:

conda install keras

以Keras中IMDB数据集为例,直接下载数据集过慢,进行数据集手动下载替换。

在Keras中有几个内嵌数据集,直接在脚本中包含然后默认下载会很慢,可以手动下载后覆盖掉原先的文件。
我是从另一位博主的分享中下载下来的,连接在这儿。
在windows中
找到当前环境的地址,比如我的base环境地址为C:/Users/ASUS/.keras/dataset,把下载好的数据集替换,就可以了。

来试试运行一个简单的IMDB情感分析模型吧


# -*- coding: utf-8 -*-
"""
Created on Mon May 25 10:37:03 2020

@author: ASUS
"""

import keras
import imdb
import numpy as np
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import RMSprop
from keras import losses
from keras import metrics
import matplotlib.pyplot as plt
 
'''
Load data
num_words=1000:Most frewuent 10000 words
train_data和test_data是评论列表,数据里的单词序列已被转换为整数序列,每个整数代表字典中的特定单词
train_labels and test_labels is a list of "0"and "1",1 for ‘pos’,0 for 'neg'
'''
print('reading imdb_data')

(train_data, train_labels), (test_data, test_labels) = imdb.load_data(num_words=10000)

 

 
 
# data preprocessing function
def vectorize_sequences(sequences, dimension=10000):
    results = np.zeros((len(sequences), dimension))
    for i, sequence in enumerate(sequences):
        results[i, sequence] = 1.
    return results
 
# Vectorize data
print('imdb_data preprocessing')
X_train = vectorize_sequences(train_data)
X_test = vectorize_sequences(test_data)
 

 
# Vectorize label
print('label processing')
y_train = np.asarray(train_labels).astype('float32')
y_test = np.asarray(test_labels).astype('float32')
# print(y_train[0])
 
# Initialize model
print('initialize model')
model = Sequential()
model.add(Dense(16, activation='relu', input_shape=(10000, )))
model.add(Dense(16, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
 
# compile model
print('compile model')
model.compile(optimizer='rmsprop',
              loss='binary_crossentropy',
              metrics=['accuracy'])
 
model.compile(optimizer=RMSprop(lr=0.001),
              loss='binary_crossentropy',
              metrics=['accuracy'])
 
model.compile(optimizer=RMSprop(lr=0.001),
              loss=losses.binary_crossentropy,
              metrics=[metrics.binary_accuracy])
 
X_val = X_train[: 10000]
partial_x_train = X_train[10000:]
 
y_val = y_train[: 10000]
partial_y_train = y_train[10000:]
 print('Getting accuracy data')
history = model.fit(partial_x_train,
                    partial_y_train,
                    epochs=20,
                    batch_size=512,
                    validation_data=(X_val, y_val))
 
history_dict = history.history
print(history_dict.keys())
 
# 绘制loss-acc图
print('plot figure')
acc = history.history['binary_accuracy']
val_acc = history.history['val_binary_accuracy']
loss = history.history['loss']
val_loss = history.history['val_loss']
epochs = range(1, len(acc) + 1)
 

# figure show 
# "bo" is for "blue dot"
plt.plot(epochs, loss, 'bo', label='Training loss')
plt.plot(epochs, acc, 'ro', label='Training acc')
# b is for "solid blue line"
plt.plot(epochs, val_loss, 'b', label='Validation loss')
plt.plot(epochs, val_acc, 'r', label='Validation acc')
plt.title('Loss and Acc')
plt.xlabel('Epochs')
plt.ylabel('Loss and Acc')
plt.legend()
 
plt.show()

运行与结果

打开Anaconda Navigator,一般base有默认下载Spyder,Launch之后,可以打开之前写好的脚本运行了。
全程使用国内镜像的Anaconda 安装_第2张图片
结果就已经展示在上面了,这个训练好的模型可以保存再预测,这个下次再写。


你可能感兴趣的:(NLP,自然语言处理)