亚洲色成人网站www永久,亚洲欧美人成视频一区在线,亚洲国产成人高清在线观看,亚洲精品久久久久久动漫,亚洲国产精品久久电影欧美

數(shù)據(jù)專欄

智能大數(shù)據(jù)搬運工,你想要的我們都有

科技資訊

科技學(xué)院

科技百科

科技書籍

網(wǎng)站大全

軟件大全

PyTorch 60 分鐘入門教程:PyTorch 深度學(xué)習(xí)官方入門中文教程http://pytorchchina.com/2018/06/25/what-is-pytorch/ PyTorch 60 分鐘入門教程:自動微分 http://pytorchchina.com/2018/12/25/autograd-automatic-differentiation/ PyTorch 60 分鐘入門教程:神經(jīng)網(wǎng)絡(luò) http://pytorchchina.com/2018/12/25/neural-networks/ PyTorch 60 分鐘入門教程:PyTorch 訓(xùn)練分類器 http://pytorchchina.com/2018/12/25/training-a-classifier/ PyTorch 60 分鐘入門教程:數(shù)據(jù)并行處理 http://pytorchchina.com/2018/12/11/optional-data-parallelism/ PyTorch 60 分鐘安裝入門教程 http://pytorchchina.com
前沿探索
2020-08-17 23:36:41
PyTorch windows 安裝教程:兩行代碼搞定 PyTorch 安裝http://pytorchchina.com/2018/12/11/pytorch-windows-install-1/ PyTorch Mac 安裝教程 http://pytorchchina.com/2018/12/11/pytorch-mac-install/ PyTorch Linux 安裝教程 http://pytorchchina.com/2018/12/11/pytorch-linux-install/
前沿探索
2020-08-17 23:36:37
什么是 PyTorch?PyTorch 是一個基于 Python 的科學(xué)計算包,主要定位兩類人群: NumPy 的替代品,可以利用 GPU 的性能進行計算。 深度學(xué)習(xí)研究平臺擁有足夠的靈活性和速度 開始學(xué)習(xí) Tensors (張量) Tensors 類似于 NumPy 的 ndarrays,同時 Tensors 可以使用 GPU 進行計算。 from __future__ import print_function import torch 構(gòu)造一個 5×3 矩陣,不初始化。 x = torch.empty(5, 3) print(x) 輸出: tensor(1.00000e-04 * [[-0.0000, 0.0000, 1.5135], [ 0.0000, 0.0000, 0.0000], [ 0.0000, 0.0000, 0.0000], [ 0.0000, 0.0000, 0.0000], [ 0.0000, 0.0000, 0.0000]]) 構(gòu)造一個隨機初始化的矩陣: x = torch.rand(5, 3) print(x) 輸出: tensor([[ 0.6291, 0.2581, 0.6414], [ 0.9739, 0.8243, 0.2276], [ 0.4184, 0.1815, 0.5131], [ 0.5533, 0.5440, 0.0718], [ 0.2908, 0.1850, 0.5297]]) 構(gòu)造一個矩陣全為 0,而且數(shù)據(jù)類型是 long. Construct a matrix filled zeros and of dtype long: x = torch.zeros(5, 3, dtype=torch.long) print(x) 輸出: tensor([[ 0, 0, 0], [ 0, 0, 0], [ 0, 0, 0], [ 0, 0, 0], [ 0, 0, 0]]) 構(gòu)造一個張量,直接使用數(shù)據(jù): x = torch.tensor([5.5, 3]) print(x) 輸出: tensor([ 5.5000, 3.0000]) 創(chuàng)建一個 tensor 基于已經(jīng)存在的 tensor。 x = x.new_ones(5, 3, dtype=torch.double) # new_* methods take in sizes print(x) x = torch.randn_like(x, dtype=torch.float) # override dtype! print(x) # result has the same size 輸出: tensor([[ 1., 1., 1.], [ 1., 1., 1.], [ 1., 1., 1.], [ 1., 1., 1.], [ 1., 1., 1.]], dtype=torch.float64) tensor([[-0.2183, 0.4477, -0.4053], [ 1.7353, -0.0048, 1.2177], [-1.1111, 1.0878, 0.9722], [-0.7771, -0.2174, 0.0412], [-2.1750, 1.3609, -0.3322]]) 獲取它的維度信息: print(x.size()) 輸出: torch.Size([5, 3]) 注意 torch.Size 是一個元組,所以它支持左右的元組操作。 操作 在接下來的例子中,我們將會看到加法操作。 加法: 方式 1 y = torch.rand(5, 3) print(x + y) Out: tensor([[-0.1859, 1.3970, 0.5236], [ 2.3854, 0.0707, 2.1970], [-0.3587, 1.2359, 1.8951], [-0.1189, -0.1376, 0.4647], [-1.8968, 2.0164, 0.1092]]) 加法: 方式 2 print(torch.add(x, y)) Out: tensor([[-0.1859, 1.3970, 0.5236], [ 2.3854, 0.0707, 2.1970], [-0.3587, 1.2359, 1.8951], [-0.1189, -0.1376, 0.4647], [-1.8968, 2.0164, 0.1092]]) 加法: 提供一個輸出 tensor 作為參數(shù) result = torch.empty(5, 3) torch.add(x, y, out=result) print(result) Out: tensor([[-0.1859, 1.3970, 0.5236], [ 2.3854, 0.0707, 2.1970], [-0.3587, 1.2359, 1.8951], [-0.1189, -0.1376, 0.4647], [-1.8968, 2.0164, 0.1092]]) 加法: in-place # adds x to y y.add_(x) print(y) Out: tensor([[-0.1859, 1.3970, 0.5236], [ 2.3854, 0.0707, 2.1970], [-0.3587, 1.2359, 1.8951], [-0.1189, -0.1376, 0.4647], [-1.8968, 2.0164, 0.1092]]) Note 注意 任何使張量會發(fā)生變化的操作都有一個前綴 ‘_’。例如:x.copy_(y), x.t_(), 將會改變 x. 你可以使用標準的 NumPy 類似的索引操作 print(x[:, 1]) Out: tensor([ 0.4477, -0.0048, 1.0878, -0.2174, 1.3609]) 改變大?。喝绻阆敫淖円粋€ tensor 的大小或者形狀,你可以使用 torch.view: x = torch.randn(4, 4) y = x.view(16) z = x.view(-1, 8) # the size -1 is inferred from other dimensions print(x.size(), y.size(), z.size()) Out: torch.Size([4, 4]) torch.Size([16]) torch.Size([2, 8]) 如果你有一個元素 tensor,使用 .item() 來獲得這個 value。 x = torch.randn(1) print(x) print(x.item()) Out: tensor([ 0.9422]) 0.9422121644020081 PyTorch 入門教程: http://pytorchchina.com/2018/06/25/what-is-pytorch/
前沿探索
2020-08-17 23:36:30
可選擇:數(shù)據(jù)并行處理(文末有完整代碼下載)作者:Sung Kim 和 Jenny Kang 在這個教程中,我們將學(xué)習(xí)如何用 DataParallel 來使用多 GPU。 通過 PyTorch 使用多個 GPU 非常簡單。你可以將模型放在一個 GPU: device = torch.device("cuda:0") model.to (device)然后,你可以復(fù)制所有的張量到 GPU: mytensor = my_tensor.to (device)請注意,只是調(diào)用 my_tensor.to (device) 返回一個 my_tensor 新的復(fù)制在 GPU 上,而不是重寫 my_tensor。你需要分配給他一個新的張量并且在 GPU 上使用這個張量。在多 GPU 中執(zhí)行前饋,后饋操作是非常自然的。盡管如此,PyTorch 默認只會使用一個 GPU。通過使用 DataParallel 讓你的模型并行運行,你可以很容易的在多 GPU 上運行你的操作。 model = nn.DataParallel(model) 這是整個教程的核心,我們接下來將會詳細講解。 引用和參數(shù) 引入 PyTorch 模塊和定義參數(shù) import torch import torch.nn as nn from torch.utils.data import Dataset, DataLoader # 參數(shù) input_size = 5 output_size = 2 batch_size = 30 data_size = 100 設(shè)備 device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") 實驗(玩具)數(shù)據(jù) 生成一個玩具數(shù)據(jù)。你只需要實現(xiàn) getitem. class RandomDataset(Dataset): def __init__(self, size, length): self.len = length self.data = torch.randn(length, size) def __getitem__(self, index): return self.data[index] def __len__(self): return self.len rand_loader = DataLoader(dataset=RandomDataset(input_size, data_size),batch_size=batch_size, shuffle=True) 簡單模型 為了做一個小 demo,我們的模型只是獲得一個輸入,執(zhí)行一個線性操作,然后給一個輸出。盡管如此,你可以使用 DataParallel 在任何模型(CNN, RNN, Capsule Net 等等.) 我們放置了一個輸出聲明在模型中來檢測輸出和輸入張量的大小。請注意在 batch rank 0 中的輸出。 class Model(nn.Module): # Our model def __init__(self, input_size, output_size): super(Model, self).__init__() self.fc = nn.Linear(input_size, output_size) def forward(self, input): output = self.fc(input) print("\tIn Model: input size", input.size(), "output size", output.size()) return output 創(chuàng)建模型并且數(shù)據(jù)并行處理 這是整個教程的核心。首先我們需要一個模型的實例,然后驗證我們是否有多個 GPU。如果我們有多個 GPU,我們可以用 nn.DataParallel 來 包裹 我們的模型。然后我們使用 model.to (device) 把模型放到多 GPU 中。model = Model(input_size, output_size) if torch.cuda.device_count() > 1: print("Let's use", torch.cuda.device_count(), "GPUs!") # dim = 0 [30, xxx] -> [10, ...], [10, ...], [10, ...] on 3 GPUs model = nn.DataParallel(model) model.to (device)輸出: Let's use 2 GPUs! 運行模型: 現(xiàn)在我們可以看到輸入和輸出張量的大小了。 for data in rand_loader: input = data.to (device)output = model(input) print("Outside: input size", input.size(), "output_size", output.size()) 輸出: In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) 結(jié)果: 如果你沒有 GPU 或者只有一個 GPU,當我們獲取 30 個輸入和 30 個輸出,模型將期望獲得 30 個輸入和 30 個輸出。但是如果你有多個 GPU,你會獲得這樣的結(jié)果。 多 GPU 如果你有 2 個 GPU,你會看到: # on 2 GPUs Let's use 2 GPUs! In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) In Model: input size torch.Size([15, 5]) output size torch.Size([15, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) In Model: input size torch.Size([5, 5]) output size torch.Size([5, 2]) Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) 如果你有 3 個 GPU,你會看到: Let's use 3 GPUs! In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) In Model: input size torch.Size([10, 5]) output size torch.Size([10, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) 如果你有 8 個 GPU,你會看到: Let's use 8 GPUs! In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([4, 5]) output size torch.Size([4, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) Outside: input size torch.Size([30, 5]) output_size torch.Size([30, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) In Model: input size torch.Size([2, 5]) output size torch.Size([2, 2]) Outside: input size torch.Size([10, 5]) output_size torch.Size([10, 2]) 總結(jié) 數(shù)據(jù)并行自動拆分了你的數(shù)據(jù)并且將任務(wù)單發(fā)送到多個 GPU 上。當每一個模型都完成自己的任務(wù)之后,DataParallel 收集并且合并這些結(jié)果,然后再返回給你。 更多信息,請訪問: https://pytorch.org/tutorials/beginner/former_torchies/parallelism_tutorial.html 下載完整 Python 代碼: http://pytorchchina.com/2018/12/11/optional-data-parallelism/
前沿探索
2020-08-17 23:36:28
https://devblogs.nvidia.com/announcing-cuda-on-windows-subsystem-for-linux-2/
前沿探索
2020-08-17 23:36:23
由于特殊原因(原因很特殊(手動狗頭))并不能使用 cuda 自帶的隨機函數(shù)。
因此,翻車了....。
目的:在不使用 cuda 自帶的隨機函數(shù)前提下,使用 cuda/opencl 的一個內(nèi)核函數(shù)生成 10000 個高斯分布的隨機數(shù)。
本人已嘗試一下步驟:
1.在 cpu 生成 10000 的隨機函數(shù)(應(yīng)該是線性同余算法)
2.在 cpu 使用 The Box – Muller transform (聽說和線性同余算法使用起來會翻車..)算法將步驟 1 的隨機數(shù)轉(zhuǎn)成正態(tài)分布
3.然后檢驗是否為正態(tài)分布,結(jié)果是對的.
4.至此,已經(jīng)生成了一個 10000 個服從高斯分布的隨機數(shù)啦,將其保存到數(shù)組 a。
事實上需要不斷生成并使用數(shù)組 a。
因此考慮 GPU
分析:上述的 cpu 代碼是序列進行的,也就是只有一個隨機種子,然后在一個線程內(nèi)完成了 10000 個隨機數(shù)的生成。
然后將代碼改改放到 GPU 上面來生成。(目標是實現(xiàn)與 cuda 的函數(shù) curandGenerateNormal(cuda::generator, cudaRand, number, 0.0, 1.0); 一摸一樣的功能)。
為了得到與 curandGenerateNormal 函數(shù)相同的結(jié)果,我嘗試每個內(nèi)核線程維護一個種子,也就是有 10000 個隨機數(shù)種子。(調(diào)用一次內(nèi)核,然后執(zhí)行一萬個線程,每隔線程使用自己的種子生成一個隨機數(shù),然后組合到數(shù)組 a 中) 但是目前,我做了試驗中,如果每個內(nèi)核線程維護一個種子,每個線程維護 a[i](i 為線程 id),最后的出來的并不服從高斯分布。
也就是說,縱向去看的話( cpu 串行)是可以得到高斯分布的隨機數(shù),橫向并不行。
也就是說,假如有 a 數(shù)組,b 數(shù)組....z 數(shù)組中,每個數(shù)組自個是高斯分布,但是 a...z 中,各取一個出來,組合在一起,并不服從高斯分布。
而如果從直觀上出發(fā),上述應(yīng)該也服從高斯分布,但是由于隨機種子的問題,可能導(dǎo)致其 a....z 可能有相關(guān)性。具體原因我也不是很清楚。
不知道表達清楚沒,各位兄臺有沒有了解過相關(guān)的信息?
一句話概括就是:curandGenerateNormal 函數(shù)相同的功能...
所以想問問大伙有做過相關(guān)的研究嗎?
前沿探索
2020-08-17 23:36:21
指的是雙精度。
不知道是不是編譯的時候雙精度需要添加一些其他指令?
下面是 kernel。
void CSR(int i,unsigned int N, unsigned int *xadj,unsigned int *adjncy, double *dataxx,double *datayy,double *datazz, double *Cspin, double *CHDemag,double *CH)
{ if(i < N) { double dot[3]={0,0,0}; for(int n = xadj[i] ; n < xadj[i+1]; n++) { unsigned int neigh=adjncy[n]; printf("%d\n",n); printf("%f,%f,%f\n",dataxx[n],datayy[n],datazz[n]); double val[3] = {dataxx[n],datayy[n],datazz[n]}; for(unsigned int co = 0 ; co < 3 ; co++) { dot[co]+=(val[co]*Cspin[3*neigh+co]); } } double a=CHDemag[3*i]; double b=CHDemag[3*i+1]; double c=CHDemag[3*i+2]; CH[3*i]=a+dot[0]; CH[3*i+1]=b+dot[1]; CH[3*i+2]=c+dot[2]; }
}
通過顯卡參數(shù)來看,rtx 應(yīng)該是沒有雙精度計算單元的。而 titan v 的雙精度應(yīng)該還行。
而我跑的時候,titan v 比 rtx 慢了三分之一。。
求解
前沿探索
2020-08-17 23:36:14
大概是從昨天開始的,估計北美以外地區(qū)很快就都可以了,非常非常非常非常期待。^_^
前沿探索
2020-08-17 23:36:10
非常杯具,App 明明已經(jīng)是 Ready for Sale 了,可是里面的 iAd 缺都是讀取失敗 。。。之后到 iAd Manager 里才發(fā)現(xiàn)原來 iAd 狀態(tài)還是 Not Ready for Sale ... 真希望是蘋果的問題 。。。 p.s. 感覺添加 iAd 其實并不復(fù)雜(我是老老實實按照說明做的),難道是我漏掉了什么步驟?
前沿探索
2020-08-17 23:35:57
今天偶然發(fā)現(xiàn)的,從我的一個小應(yīng)用上:隨便看了一會兒,大概看到至少 5 個 App 的廣告 。。。 p.s. App 是從中國區(qū)商店下載的。
前沿探索
2020-08-17 23:35:51
http://developer.apple.com/iphone/library/samplecode/iAdSuite/Introduction/Intro.html 7月22號發(fā)布的,今天才看到 。。。 p.s. 其中有一個例子是演示如何在 Tabbar based apps 里設(shè)置 iAd 的,很不錯。
前沿探索
2020-08-17 23:35:47
因為應(yīng)用特殊性,所以不能上架,打算網(wǎng)頁分發(fā)
前沿探索
2020-08-17 23:35:41
據(jù)說本月22號就會全球開放?我已經(jīng)把一個很便宜的 App 免費成 iAd 版了,希望有好的效果 ...
前沿探索
2020-08-17 23:35:38
Guideline 3.2.2 - Business - Other Business Model Issues - Unacceptable
We noticed that your app includes an interface that displays or promotes mini programs for third-party apps, which is not appropriate for the App Store.
Next Steps
To resolve this issue, please remove any features in your app that promote programs for third-party apps.
以上是 appstore 審核員,拒絕我們的理由
我的 APP 是做微信小程序的,之前做的第一個版本是審核通過了,但最近想更新(其實沒有做任何的內(nèi)部更新),卻被拒絕了,我猜測拒絕的原因是我 APP 里面有個學(xué)院模塊可以發(fā)布文章,里面的確有幾篇寫了關(guān)于小程序的文章,但刪掉之后,還是告訴我不通過,真的無語了,請問有大神知道如何解決么
前沿探索
2020-08-17 23:35:33
前一段時間看到新聞?wù)f廣電要求所有游戲都要申請版號. 但是我不是開發(fā)者所以沒太關(guān)注后續(xù).現(xiàn)在想要研究一下 iOS 開發(fā), 準備搞個小游戲練練手, 單機的, 類似掃雷, 打磚塊這種規(guī)模的. 然后就想到難道這種小游戲上架也要申請版號嗎? 我看 AppStore 里好多小游戲都不像廣電審核過的樣子啊. 如果要搞的話感覺太麻煩了.
前沿探索
2020-08-17 23:35:20
友盟統(tǒng)計高級產(chǎn)品經(jīng)理@羅曼羅 原創(chuàng)文章,如需轉(zhuǎn)載還請注明作者及出處。
先和大家解釋下我為什么要談“留存”這么一個老梗?
最近和一個做游戲的朋友聊天,他說公司一款 ARPG 游戲內(nèi)測期間的開服新用戶次日留存率達到了 55%,感覺比業(yè)內(nèi)流傳的 40-20-10 的標準高很多,但和其他同類的活躍留存對比,又低了……
作為ARPG游戲來說,新服有55%的次日留存的確不錯了。但是我不得不說:40-20-10這個留存率標準采用的是另外的統(tǒng)計口徑……
很多朋友都會把不同統(tǒng)計口徑的留存率弄混。作為一個數(shù)據(jù)產(chǎn)品人,羅曼羅想,不妨來科普一下四種留存率的統(tǒng)計方法以及分析方式。
留存的四種計算口徑
留存的計算有兩個維度,基于設(shè)備或賬號,基于活躍或新增。
對這個計算方式做排列組合,有四種留存的定義:基于設(shè)備的活躍留存、基于賬號的活躍留存、基于設(shè)備的新增留存、基于賬號的新增留存。
我們使用一個統(tǒng)計系統(tǒng)來分析留存率,一定要先搞清楚是哪種口徑的留存率。
活躍設(shè)備第N日留存:某日的活躍設(shè)備,在N天后啟動了APP
新增設(shè)備第N日留存:某日的新增設(shè)備,在N天后啟動了APP
活躍賬號第N日留存:某日的活躍賬號,在N天后登陸了APP
新增賬號第N日留存:某日的新增賬號,在N天后登陸了APP
筆者找到了一個公開的 App 數(shù)據(jù),大家可以直觀感受一下不同留存率的區(qū)別。
如果你對比以上所有的留存率,可能會有一些數(shù)據(jù)上的疑問。
Q:賬號留存和設(shè)備留存怎么對不上?
可能存在兩種情況:
一臺設(shè)備登陸有多個賬號,尤其是APP正在推廣基于賬號的優(yōu)惠活動時,比如首單優(yōu)惠活動可能導(dǎo)致刷單、賬號之間互送金幣活動可能導(dǎo)致注冊小號等。
一個賬號登陸了多臺設(shè)備。比如我們在pad上購物,用手機來支付完成交易。
一般來說,賬號留存和設(shè)備留存會存在一定的誤差,但是不會差距太大。如果差距較大,就需要思考是否是運營活動或者是產(chǎn)品設(shè)計加大了這個誤差了。
Q:活躍留存為什么比新增留存高?
活躍用戶包括新用戶和老用戶。老用戶經(jīng)歷了跟APP相遇相知相磨合的階段,忠誠度比新用戶高是正常的。我們同時可以看到,活躍留存的下降的速度比新增留存慢。理論上,如果活躍用戶全部是老用戶,可能你會發(fā)現(xiàn)活躍留存曲線是一條接近水平線的曲線。
App 的類型不同,老用戶占活躍用戶的比例的多少,都會使活躍留存和新增留存的差值不同。
回到最開始的問題。40-20-10 標準屬于基于設(shè)備的新增留存。業(yè)內(nèi)大部分的統(tǒng)計分析系統(tǒng)都提供這種留存率的統(tǒng)計,譬如友盟統(tǒng)計:
開服新用戶的留存率是基于賬號的。另外,這個留存是針對新開服務(wù)器的新用戶,可能其中有很多用戶是從其他服務(wù)器遷移過來的。這部分用戶對于新服來說是新用戶,但是對于整個游戲來說是系統(tǒng)的老用戶。所以不難理解,為什么這個留存率比新增留存高那么多。
友盟君會不定期分享實戰(zhàn)運營案例,歡迎投稿!稿件一經(jīng)采用,我們會將作者信息和文章來源標注在稿件中,發(fā)布到多個自媒體渠道,還會為您送出特別的友盟定制禮品。再次呼喚廣大開發(fā)者投稿友盟,投稿郵箱: [email?protected] 。
點擊: http://mp.weixin.qq.com/s?__biz=MzAxNDQwODM0Mw==&mid=207286451&idx=1&sn=d42059b506e78a44f66f09212cd0c107&3rd=MzA3MDU4NTYzMw==&scene=6#rd 進入原文鏈接
前沿探索
2020-08-17 23:35:01
我記得剛買的那一年( OS X 10.9 )一直保持著 38 39 的溫度 但是一更新 10.10 之后到目前的 10.11.1 溫度一直在 50 度附近徘徊 不知道正常不正常 大家平時的溫度都是多少?
前沿探索
2020-08-17 23:35:14
開發(fā)的一款 Mac app 上架好幾天了,后臺服務(wù)器上也顯示有人下載使用,但 itunesconnect 上看不到任何記錄呢?“ APP 分析”,"付款和財務(wù)報告“,”銷售和趨勢“ 這幾塊都找不到任何 Mac app 的信息。還是 itunesconnect 只能查看 iOS app ?
前沿探索
2020-08-17 23:35:07
1. U.S. Tax Forms 下有這個問題:Do you have any U.S. Business Activities? In general, you have U.S. Business Activities if you have employees in the United States, or own, lease or control equipment or other assets in the United States that you use to derive revenue from the iPhone Developer Program. 如果我的 App 在美國賣,是否得回答 Yes ? control equipment or other assets 是否包含 App? 2. U.S. Tax Forms 下有這個問題: Are you required to file a U.S. income tax return (whether an individual return or corporate return) with respect to the income you earn from the iPhone Developer Program? 我也不知道是否必須 file a U.S. income tax return ,這個寫是還是否? 3. 如果 問題1 寫了 Yes,會填寫一個美國納稅表? Certificate of Foreign Status of Beneficial Owner for United States Tax Withholding 4. Special rates and Conditions 這個不用填寫吧? 5. 如果總部不在加拿大和澳大利亞,但是在這兩個國家的 App Store 銷售,還有必要填寫這兩個地區(qū)的 Tax Forms 嗎? 感謝。
前沿探索
2020-08-17 23:34:53
我有個app被審核駁回了,但有個現(xiàn)存的別人的已上線APP與我的app核心功能一致,造成了“不公平”的結(jié)果。請問我有沒有可能、有什么辦法與蘋果溝通讓app審核通過?被駁回理由是侵犯數(shù)字版權(quán),我的app里會完整打開一些包含視頻直播的網(wǎng)頁(并沒有截取網(wǎng)頁),比如CNTV的網(wǎng)頁。至于這個是否侵犯版權(quán)我不想多爭論,我只是不希望看到不一致的審核標準。
前沿探索
2020-08-17 23:34:48
看到一個一星評論如下,為了避嫌,我就把一個關(guān)鍵字給去掉了=================我是分隔線============ 評論如下: 不得不說你這app太差了,還有顏面收費???純粹騙錢!大家不要上當??!你去看看安卓平臺一個叫做“XXX”的app(www.XXX.cn),人家同樣利用余世維的理論做的,水平比你們不知道高到哪里去了! =================我是分隔線============ 安卓平臺和我的iOS有App有競爭關(guān)系么,為神馬跑過來惡意評論啊。好吧,我發(fā)郵件過去質(zhì)問一下,結(jié)果人家否認啊。這很明顯好不好,用戶在評論中發(fā)個產(chǎn)品名稱也就算了,怎么可能還會貼網(wǎng)址啊。 他的App Logo配色結(jié)構(gòu)和我的顏色一模一樣啊,我那個Logo是我自己做的,但實話說我認為TA的Logo比我的那個要好看一些。 這評論,真的不像用戶發(fā)的啊,你們覺得呢,有啥辦法沒。
前沿探索
2020-08-17 23:34:43
今年個人用業(yè)余時間做了兩款軟件。一款免費軟件,上線半年,5W左右的下載量 https://itunes.apple.com/cn/app/ai-ting/id563919129?ls=1&mt=8 一款收費軟件,上線一月,1W左右的下載量 https://itunes.apple.com/app/good-maps-google-maps-offline/id657016140 現(xiàn)在兩款軟件都歸于平靜。每天的下載數(shù)量都穩(wěn)定在一兩百左右。 一個人業(yè)余太累,從初始的需求調(diào)查,到最終的測試上線,無數(shù)的問題都要自己解決。但現(xiàn)在的量又無法支撐自己全職投入--風(fēng)險太大。我自己都不確定這兩個產(chǎn)品能走多遠。 不知道論壇里有沒有過來人,給指點以下。
前沿探索
2020-08-17 23:34:35
"That's a hard pill to swallow, but we should let it sink in. We pour all our creativity, time, and passion into creating basically worthless products."http://floriankugler.com/blog/2013/9/30/worth-less-than-a-cup-of-coffee
前沿探索
2020-08-17 23:34:32
比如說一個app,已經(jīng)賣給了用戶,用戶也已經(jīng)使用較長時間了,后來經(jīng)營策略有變,在新的版本想改成iap,用戶會不會抵觸?或者說,如何把這個影響降到最低。我的看法是,用戶花0.99或者很少的錢,只是這個版本的使用權(quán),不可能所有的版本都使用。就像我們在pc上購買軟件,也只是這個版本,多數(shù)軟件在大版本更新還是要付費的。 但對于用戶來講,這樣可能是不爽,是否可以這樣,舊功能全部免費,新功能采用iap。如果是采用年費的方式,可以對在某一天前激活(可能是付費用戶),贈送一年的收費服務(wù)。
前沿探索
2020-08-17 23:34:30
上架指能被用戶搜索到。我搜到的資料(http://oleb.net/blog/2011/05/at-what-time-is-an-app-released-on-the-app-store-when-set-to-specific-release-date/ )是,如果設(shè)定某個日期,會在那天凌晨 0 點上架。 我想知道的是,同一個國家不同城市之間會有延遲嗎?延遲是多少?
前沿探索
2020-08-17 23:34:15
http://techcrunch.com/2011/06/23/ifund-stats/ p.s. http://www.kpcb.com/initiatives/ifund/companies
前沿探索
2020-08-17 23:34:11
http://peterpings.com/ Peterpings helps you easily create & send the perfect launch email to 171 different tech blogs in just one click.
前沿探索
2020-08-17 23:34:05
如果還沒有收到新年禮物,感興趣的話 留下郵箱 ,會送出兌換碼一枚. >>> Mac App Store - zClock 無論過去的一年是否遂意,愿你對明天都抱有一份美好期待 。
Mac App Store
前沿探索
2020-08-17 23:33:52
電視果 5S(18M1)和天貓魔投 4K(cost M18)選哪個比較好?
主要是出差用,想投手機到酒店的電視上用.目前看中了 2 款投屏盒子: 電視果 5S(18M1):到手 248,送一個月 iqiyi 會員. 天貓魔投 4K(cost M18):249 元,補貼價到手 139 元.
2 款推薦哪個或者有其他更好的投電視選擇嗎?
前沿探索
2020-08-17 23:33:43
想想透明屏幕量產(chǎn)以后,等成本降得足夠低,廣告牌全換成這種。
看看是賽博朋克 2077 先發(fā)售還是賽博時代先到來。(手動滑稽,這游戲發(fā)布太慢了)
前沿探索
2020-08-17 23:33:37
北美 LG 官網(wǎng)上這臺 LG 32UN880 發(fā)布了,鏈接: https://www.lg.com/us/monitors/lg-32un880-b-4k-uhd-led-monitor
原廠這個自帶集線功能的液壓桿觀感很棒,唯一的缺點是 USB-c 只有 60w ?,F(xiàn)在用的是一臺 27UL600,所以是再買一臺 27UL 系列(帶 usb-c )的,還是單獨入一臺 32UN880 好呢? 699 刀的價格感覺很美好。
使用場景:2019 RMBP15,GTX-1060 PC
前沿探索
2020-08-17 23:33:36
入手不久,挺好玩的,寫個文檔記錄下,主要也用來干下面的事了 做網(wǎng)盤 做 Web 相冊 掛 PT 開 SMB 系統(tǒng)監(jiān)控 GPIO 編程
V 站原則不建議全文轉(zhuǎn)載,那我貼個記錄地址 http://love67.net/2020/08/11/Raspberry_Pi_Cool
前沿探索
2020-08-17 23:33:32
cpu+主板 r53500x+微星 b450m 1350 顯卡 影馳 1660s 1699 內(nèi)存 阿斯嘉特 3200 赫茲 8g?2 340 ssd 西數(shù) 500g 電源 航嘉 500w 機箱+風(fēng)扇+扇熱 隨便 300
前沿探索
2020-08-17 23:33:22
tdp 釋放了也就 30w 左右啊
一般充電器還滿足不了?
前沿探索
2020-08-17 23:33:19
我對 AMD 還是很有情懷的,AMD 5000+和 HD4830 隨我度過了中學(xué)歲月,那真是如同錦繡的年華。
后來銳龍出來以后,我陸續(xù)用過 Ryzen 2500U 2200G 2600 2600X 3600 的機器,現(xiàn)役臺式是 3900X
這一代 Ryzen 4000 的移動版本系列可以說是強到?jīng)]朋友,把嚶特爾按在地上打了一次,所以也讓我覺得換機的時候來了。
我大致考察了以下機器: 幻 14 聯(lián)想 Yoga 14s 聯(lián)想小新 Pro 13 2020 機械革命 code01 / s2 air 華為 /榮耀幾臺機器
4700U 這樣沒有超線程的型號就完全排除掉了,因為多核性能差太多。
最后因為散熱還有換內(nèi)存的原因選了 code01 。
張大媽上寫了個評測,v2ex 不鼓勵全文轉(zhuǎn)載,故給出鏈接如下:
https://post.smzdm.com/p/apz0l6o7/
前沿探索
2020-08-17 23:33:14