角落

记录一下生活和思考

可以把 AI 模型理解成一个数学公式,公式输入 X,输出 Y,所谓的参数和权重,就是公式里待求解的系数。

训练模型,本质上是在寻找一组最优的系数:给定输入 X,模型输出预测值 Y,让 Y 尽可能贴近真实值。

当系数确定之后,模型就“定型”了,可以部署上线,对外提供推理服务。

以最简单的线性模型为例:

Y = wX + b

其中 w 和 b 都是系数,在模型里统称为参数:w 叫权重,b 叫偏置

比如用面积预测房价:X 是面积,Y 是房价。训练就是在历史成交数据里找到最合适的 w 和 b,让「面积 × w + b」算出来的价格尽可能接近真实成交价。

真实的大模型本质上是同一个思路,只是公式更复杂、参数更多——从几个系数变成上千亿个,但它依然是一个「输入 X、输出 Y」的函数。

这个星期突然下定决心在cloudflare上买了一个域名。挑了一个最便宜的cc域名:duranc.cc,其中duran是我的英文名,价格是每年8美元,按当下汇率,大约是54元人民币。

在cloudflare上,摸索了一下,学习了DNS记录类型的知识,主要类型有3种:A,AAAA和CNAME。

  • A类型记录指向Ipv4地址。
  • AAAA类型记录指向IPv6地址。
  • CNAME类型记录指向另一个域名,相当于给一个另一个域名起了别名。

我开始思考怎么使用这个域名,突然想起很久以前我在github pages上有一个博客,它的地址是duranchen.github.io.我可以新建一个二级域名blog.duranc.cc。然后把它指向我的github博客地址。
我问了一下deepseek,github博客是支持自定义域名,我很快就设置好了。

从blog.duranc.cc打开博客,发现最后写一篇博客日志已经是10年前。

如何开始从0开始写作

  1. 日记
  2. 文章
  3. 文案

写作的本质——销售

销售的是什么?

作者销售价值。
读者用注意力和阅读时间购买。

为什么看你的文章?

第一眼看到价值,

为什么要继续阅读下去?

具体直观的价值。

我是不是现在要花5到10分钟读完它?

作者销售的是文章的价值。

文字背后的人

  1. 读者
  2. 作者

读者

年轻,压力大,迷茫,没有压力,缺钱,特别痛苦,觉得出路。

所有特别看重技能,方法,思维方式。

解决对方的痛苦,带去愉悦。

需要了解对方的需求

作者

文字要有人情味,你是什么样的人,你的文字就是什么味道。

理性的人
感性的人

不仅做信息的传递,情感的传递。

人的认知模式

  1. 我们在故事中思考
  2. 集中注意力,其他东西视而不见。
  3. 情感决定一切事物的意义
  4. 人类依靠具体的形象来思考
  5. 大脑思考按照因果关系来构建
  6. 大脑厌恶随意,更喜欢有规律的模式

写作的方法论

  1. 写作的模式
    故事+干货+人情味(和朋友对话)
    讲故事的七条方法
    只讲自己相信又打动自己的事
    让读者有兴趣读下去最重要
    不要讲废话,讲核心
    一次只讲一个主题
    结论还要写原因
    一定要加入情感
    将故事的4条技法
    时间顺序
    倒着写
    反着写
    标题应该如何写
    标题作用,让人阅读第一句话。
    呈现价值和好处
    引起读者情绪变化
    如何写好第一句话

用不同的词和不同人沟通?
目标感比较强,直接列重点
情感,塑造轻松场景
逻辑,数据,列表
保守,口碑

如何从0开始写作

  1. 树立信念。

32岁前,没写过1000字
对自己说,写作我也可以。
写什么?

  1. 写读者想看,写你自己擅长的。

读书笔记,app使用,
如何与人沟通,如何建设一个网站

想好了才写

边想边写

写完再改

写完之后删掉,重新写。

  1. 功能性写作

解决实实在在的问题,如何做菜,如何编程

  1. 心灵型写作

Provisioning

Server Setup

First login

1
ssh root@192.168.1.1

Software Udapte

1
yum update

Nonroot User

1
2
3
4
5
adduser deploy

passwd deploy

usermod -a -G wheel deploy

SSH Key-Pair Authentication

1
ssh deploy@192.168.1.1

in your local machine if you do not have key-Pair

1
ssh-keygen

private key: ~/.ssh/id_rsa
public key: ~/.ssh/id_rsa.pub

1
scp -P 28705 ~/.ssh/id_rsa.pub deploy@192.168.1.1:

if ~/.ssh does not exist in your server, create it.

1
2
3
4
5
6
7
mkdir ~/.ssh
touch ~/.ssh/authorized_keys
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

chown -R deploy:deploy ~/.ssh;
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Disable Password and Root Login

1
vi /etc/ssh/sshd_config

edit settings as the bellow values.

1
2
PasswordAuthentication no
PermitRootLogin no
1
service sshd restart

PHP-FPM

Install

1
2
3
4
5
rpm -Uvh https://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

rpm -Uvh https://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

yum -y --enablerepo=epel,remi,remi-php56 install php-fpm php-cli php-gd php-mbstring php-mcrypt php-mysqlnd php-opcache php-pdo php-devel

Global Configuration

1
vim /etc/php-fpm.conf
1
2
emergency_restart_threshold = 10
emergency_restart_interval = 1m

Pool Configuration

1
vim /etc/php-fpm.d/www.conf
1
2
3
4
5
6
7
8
9
10
11
user = deploy
group = deploy
listen = 127.0.0.1:9000
listen.allowed_clients = 127.0.0.1
pm.max_children = 25
pm.start_servers = 2
pm.min_spare_servers =2
pm.max_spare_servers = 4
pm.max_requests = 500
slowlog = /var/log/php-fpm/www-slow.log
request_slowlog_timeout = 5s
1
service php-fpm restart

nginx

install

1
yum install nginx
1
vim /etc/nginx/conf.d/example.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
server {
listen 80;
server_name example.com;
index index.php;
client_max_body_size 50M;
error_log /home/deploy/apps/logs/example.error.log;
access_log /home/deploy/apps/logs/example.access.log;
root /home/deploy/apps/example.com/current/public;

location / {
try_files $uri $uri/ /index.php$is_args$args;
}

location ~ \.php {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
}
}
1
service nginx restart

in your local machine

1
vim /etc/hosts

add new line as below:

1
192.168.1.1 example.com

visit in your browser: example.com

如何读一本书

书籍大体何以分两类:

  1. 虚构类书籍
  2. 非虚构类书籍

虚构类书籍

比如,小说,科幻,漫画等等

读法:从头读到尾。

小说最主要就是制造悬念,所以需要按照作者安排的顺序读下去,一步一步解开谜底,将会获得很好的阅读体验。

非虚构类书籍

比如,手册,技术文献,学术论文等等

你的目的是为尽快找到你想要的信息,并记住, 所以不要从头到尾地阅读,而是来回跳读,略读,用所有能用的技巧去发现,理解和记住作者所要说的, 在最小的时间里从书中获取最多的信息。

下面的方法,将让你在6~8个小时内读完一本300页的书籍或文献。

  1. read the whole thing!

  2. decide how much time you will spend

  3. have a purpose and a strategy

  4. read actively

  5. read it three times

  6. focus on parts with high information content

  7. Use PTML (personal text markup language)

  8. Know the author(s) and organizations

  9. Know the intellectual context

  10. Use your unconsicious mind

  11. Rehearse, and use multiple modes.

  12. 确定能花多少时间

  13. 确定阅读目的,并制定策略

  14. 读三遍的策略,

    1. 通读全文,搞清概况
    2. 关注细节,理解内容
    3. 用自己话做笔记。
  15. 了解知识背景,包括作者和机构

  16. 演练,用各种方法演练

对半途而废的思考

每个人数一数自己一生到底做了多少半途而废的事情,多到已经数不清了吧。相信我,你并不孤独,大多数人都一样,能坚持的凤毛菱角,半途而废的多如牛毛,不然世界上怎么有那么多一事无成,又毫无特长的人。

所以对为什么半途而非的思考非常重要。只有弄清楚了为什么,怎么解决也就不言而喻了,不是吗?

我发现在我坚持的学习或者某件事的过程中,我常常会自觉地,不自觉地进行着两个活动:

  1. 与过去比较
  2. 对未来的预测

这两个活动对我能否坚持有非常大的影响。

1. 与过去比较

当我们坚持学一项有对自己而言难度的技能或者运动时,经常会不自觉地拿今天和昨天比,看有没有进步,有没有成绩?或者这周和上周比,有没有进步,有没有成绩。

答案可能是进展缓慢,原地踏步,甚至有时可能是不如昨天。

于是,就开始找借口,觉得学不学其实也不太重要,也不知道以后用不用的上;觉得自己可能没有那个天赋,觉得其他领域可能更适合自己,于是开始另一个从开始到放弃的的悲壮历程,甚至有些心理脆弱的人,最后自暴自弃,从此什么都不学,什么也不做了。

为什么会这样?

因为我们大多数人认为的学习进步的曲线是一个向上的线性增长的斜线!

实际上,学习进步的曲线并不是线性增长斜线,而是非线性

比如学英语,为了读懂英文书,发现好多单词不懂,开始背单词,词汇量突飞猛进,觉得进步了很多,可是一读句子还是弄不明白了,发现原来语法不行,又开始学语法,语法学好了,又发现组成段落,又不明白了,原来还需要背景知识,甚至逻辑训练,一路下来,你才能达到你的目的。

这些就是曲线上一个个坑,一不小心就会跌到在凹槽里再也起不来。

再比如健身,为了有一个好身材,按视频教程计划每天做半小时有氧运动。一开始训练心肺能力,上气不接下气,坚持不了十分钟,一个月过去,终于可以勉强熬过半小时,接着按计划继续,却发现始终在勉强完成的状态,特别是有些需要上肢力量的训练里。这就是一个平台期,只要强化一下上肢力量,就会迎来新的新进展。

这样短期的比较,会有原地踏步,甚至是退步的感觉,但是只要你稍微目光往回看远点,你看一下最初的起点,你就知道你是在进步,在成长的啊。

这里还有两个从网上搜索到的例子:

  1. Perfect practice and nonlinear learning
  2. learning curve

如果你在学习,做事时,也曾经有过豁然开朗,山穷水尽疑无路,柳暗花明又一村的经历,你一定明白,这就是事实啊!

认识这个事实无比重要,认识到了,你就知道所有的阻碍,所有的缓慢,停滞不前,甚至退步,都是正常现象,而且所有人都一样,无一例外!。

所以,记录下自己每天情况,不要和明天比,也不要和上周比,把时间跨度拉长,和上个月比,上一年比,难度越大,相应比较的时间跨度也要越长。

如果没有记录的习惯,笃信这个事实,也许也是一个好方法。

2. 对未来的预测

没有通过大量严谨的逻辑思考,使自己笃信自己所学的所做的,在未来一定有用处,一定有成绩。

李笑来写作课第一课笔记

写作的定义

写作 = 输入+处理(思考)+输出

所以写作也就是对输入处理(思考)过的输出。

同样是去庐山,苏东坡写:横看成岭侧成峰,远近高低各不同;你可能就是流水账,或者连流水账都没有,只有几百兆照片。

为什么?因为苏东坡早就有大量的输入和处理。

没有输入,没有处理,不可能有输出,更不可能有高质量的输出。

写作是思考的结果

很多人思考就不对,比如谈恋爱应该随便,结婚应该认真;可是很多人谈恋爱很认真,结婚很随便;很多人觉得国内考研比国外简单,实际上国内的考研比国外考研更难

能精彩的思考,就能精彩的写作。没有清楚的输出,就代表没有清楚的思考。很多人并不知道自己表达差,思考不清楚。

王同学的例子,王同学在去哪儿网的遭遇,因为表达不好,没有人关注。文章经过一下修改之后,获得了关注,得到了很好的解决。

初步处理:

  1. 一切没有证据的陈述全部去掉。
  2. 不喊冤,不诉苦,这些没有必要。
  3. 只写去哪儿网到底哪里做的不对。

进一步整理:

  1. 做得最不地道的地方。
  2. 完全没道理的地方在哪里。

写作可以倒逼自己提高的思考和表达能力

可以把写作当做肌肉训练,阅读是训练前的有氧运动。

在思考上进步,才是最本质的。

写作的阶段

  1. 思考能力
  2. 表达能力
  3. 输出价值观
  4. 积累你的影响力
  5. 普度众生

写作与钱无关,虽然有影响力就可以挣钱,实质是,你做了真正的有价值的事,钱就会自己来找你。

会思考就可以开始写作了,那么思考能力怎么培养?

  • 停止直接要答案,比如问怎么挣钱,怎么写好文章等等,开始自己思考分析。
  • 开始写作,写作可以倒逼思考

那么开始写作,该写什么?

从自己思考最深入最熟悉的地方开始写作。

提高输入质量

如何选书?

请看《如何选书》的文章。

选书非常重要,避免被书中错误知识和思想污染,因为抵抗垃圾思想,是非常耗时和耗精力。

要多读书,读好书。

别人看读者 你看读书

别人看中文,你看英文

别人看小说,看专业文献

别人看免费内容,看付费内容。

扔到不符合自己价值观的书籍,从符合自己价值观的书,选出最重要的书,践行,一定要践行才是自己的。

践行之后,用书中的价值观说服他人。

从今往后,在也不向别人索要书单,开始自己选书,选书比选女朋友的更应该慎重。

提高选择标准,比如我读非虚构书籍,读英文,无论如何你要在意你的输入质量

梳理自己的价值观

所有文章都是价值观的体现,你的文章就是你的价值观,为了写好文章,必须要梳理自己的价值观。

价值观是什么?

就是对你而言:
什么是对,什么是错?
什么重要,什么不重要?
什么事必须坚持做,什么事绝对不能做?

另一套方法:

  1. 这是不是对的?
  2. 如果是对的,能不能长期坚持?
  3. 如果是错,那对的又是什么?
  4. 对于你认为对的,你能否长期坚持?

上面的问题,每天每时都要思考来梳理自己的价值观。

价值观就是宪法,有价值观就要遵守,价值观决定你的未来。

有突出的反例动摇你的价值观,要么就是你对你价值观不坚定,要么就是你需要修正你的价值观。

请学习《原则》

这节课主要内容:

  1. 不要小瞧写作
  2. 不要夸大写作
  3. 写作的几个阶段
  4. 提高输入的质量
  5. 梳理自己的价值观

我的总结

  1. 写作的定义

    写作 = 输入+ 处理(思考)+ 输出

  2. 写作是思考的结果

    • 提高输入质量
    • 提高思考质量
  3. 写作是价值观的体现

    • 时刻梳理自己的价值观。

问答:

思考能力怎么培养?
开始思考,停止直接要答案: 怎么挣钱,怎么写好。

写作可以倒逼思考

从自己思考最深入的地方开始写作。

素材积累:平时就应该积累,摘抄,

写朴素的文章,

边做边学更好,边训练思考能力,边写作

付费内容多过免费内容

活在未来,YC创业笔记

长期思考问题,用一点点时间写作

写不出,就是没深入思考

模仿是训练写作的好办法。

你是什么样的,你就写出什么东西

beyond feeling

围城

教父

没有人有义务说服你学一样东西,很残酷。

缺乏内在驱动力-》没有认真思考过未来。

Install PHP Xdebug in OS X

Install Command

1
brew install php56-xdebug

Configure Xdebug

1
sudo vim /usr/local/etc/php/5.6/conf.d/ext-xdebug.ini

Configure Content

1
xdebug.remote_enable = on

在php的Respons里加CORS header太麻烦。 就直接在nginx里加了。

参考:http://enable-cors.org/server_nginx.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
location ~ \.php {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;

#
# Enable CORS
#
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
#
# Custom headers and headers various browsers *should* be OK with but aren't
#
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
#
# Tell client that this pre-flight info is valid for 20 days
#
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain charset=UTF-8';
add_header 'Content-Length' 0;
return 204;
}
if ($request_method = 'POST') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
}
if ($request_method = 'GET') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
}
}
0%