duangsuse::Echo
分类的准确性有点可怕...: 看来线性回归也... 😟 不过很可惜,verifyRegressionAccuracy 只支持数值表项,看来只能另外写准确率判断了: errors = testset[testset['w'] != testset['guess']] In [32]: len(errors) / len(testset) * 100 Out[32]: 8.333333333333332 8.3% 的错误率! — Question: 同一个 linearreg,那原作者分类的准确率为啥那么低…
This media is not supported in your browser
VIEW IN TELEGRAM
皮了一下午,那么就继续吧....
此书我寒假要找时间吐槽的,但是现在显然没有时间关心它
此书我已经看完了,剩下的内容也都已经阅读。
用 Sklearn 之类的框架做机器学习并不困难,只要你有点基础知识就可以,作者也说了,算法细节?呵呵
我们先用一个小数据集测试一下被抽象化的每个算法对预测的准确率,然后直接选好模型(虽然比较死,就是基于 Panda 数据表格的,差一点都不行,计算机视觉也不能搞)就开始上线... 然后... 就没有然后了
然后书本上面还有一些其他算法(比如 kNN)的例子,可以自己去 Sklearn 那里看,教程很详细,先溜了。
此书我寒假要找时间吐槽的,但是现在显然没有时间关心它
此书我已经看完了,剩下的内容也都已经阅读。
用 Sklearn 之类的框架做机器学习并不困难,只要你有点基础知识就可以,作者也说了,算法细节?呵呵
我们先用一个小数据集测试一下被抽象化的每个算法对预测的准确率,然后直接选好模型(虽然比较死,就是基于 Panda 数据表格的,差一点都不行,计算机视觉也不能搞)就开始上线... 然后... 就没有然后了
然后书本上面还有一些其他算法(比如 kNN)的例子,可以自己去 Sklearn 那里看,教程很详细,先溜了。
duangsuse::Echo
#ML #Python 接下来安装一点用于数据分析的东西 pip3 install --user --compile -U pandas matplotlib sklearn 如果有权限你也可以去掉 --user flag,-U 的意思是如果有的话安装更新 我们使用 Python 3,当然,要是有 IPython 和 Spyder 这种为数据分析 REPL 优化的东西就更好了,不过下面直接用 IPython3 现代机器学习算法主要包含概念学习、规则学习、基于解释学习、基于实例学习、遗传学习、强化学习…
还是 sin wave 之类的数据,
Pandas 的
只需要使用 EDSL(内部领域专属语言)操作它的实例就可以快速获得好看的数据图了,不需要不断去 plot 啊 add seris 再设置 xlabel ylabel 啊,都被良好封装(styles, chart type)了
上面本频道也有过 Ruby + GNUPlot 的版本
matplotlib
可以这么用:from math import sin, cos, tan
from numpy import arange, array
from matplotlib import pyplot
from pandas import DataFrame, Series
xs = arange(0, 100, 0.1)
sinys = [sin(x) for x in xs]
cosys = [cos(x) for x in xs]
tanys = [tan(x) for x in xs]
plot.style.use('Solarize_Light2')
DataFrame(array([[xs], [sinys], [cosys], [tanys]]), columns = 'x sin(x) cos(x) tan(x)'.split())
... 不行def kv(name): return (name, globals()[name])
func_tab = DataFrame.from_items(dict(kv(xs), kv(sinys), kv(cosys), kv(tanys)))
... 不行waves = DataFrame()
waves['x'] = xs
waves['sin(x)'] = sinys; waves['cos(x)'] = cosys; waves['tan(x)'] = tanys
waves.index.name = 'x'
waves.plot(title='Triangle waves')
就可以得到好看的折线图了,并且非常容易使用Pandas 的
DataFrame
就是字面意义上的数据框:一打可能有名字(index
)的数据序列(pandas.Series
)只需要使用 EDSL(内部领域专属语言)操作它的实例就可以快速获得好看的数据图了,不需要不断去 plot 啊 add seris 再设置 xlabel ylabel 啊,都被良好封装(styles, chart type)了
上面本频道也有过 Ruby + GNUPlot 的版本
Telegram
duangsuse::Echo
require 'gnuplot'
xs = []; ys = []
_dataset = r.map { |it| it['published'] }
ps = _dataset.sort_by { |d| d.day }.reverse.each { |k| xs << k.day; ys << _dataset.count { |it| it.day == k.day } }
Gnuplot.open do |p|
Gnuplot::Plot.new(p) do |plot|
plot.title…
xs = []; ys = []
_dataset = r.map { |it| it['published'] }
ps = _dataset.sort_by { |d| d.day }.reverse.each { |k| xs << k.day; ys << _dataset.count { |it| it.day == k.day } }
Gnuplot.open do |p|
Gnuplot::Plot.new(p) do |plot|
plot.title…
说到 tan,tanh 函数(双曲函数和三角函数有一定关系)因为其独特的性质也被人工神经网络当作激活函数。激活函数在神经元被传入信号的时候处理产生一个输出,继续正向传播。人工神经网络在回归的时候不需要运行激活函数,但是学习的时候必须运行激活函数。对于梯度下降学习算法来说,激活函数在其值域上必须是可导的,但是我不是很了解这些东西...
Forwarded from duangsuse
这里是
expression.getValueArgument(2)!!
这里是@TypedIntrinsic(IntrinsicType.WORKER_EXECUTE)
public fun <T1, T2> execute(mode: TransferMode, producer: () -> T1, @VolatileLambda job: (T1) -> T2): Future<T2>
所以我很奇怪为什么它会说if (irCallableReference?.getArguments().isNotEmpty() ?:false)
context.reportCompilationError
显然有参数啊... 难不成 Lambda 的参数还不一样?还分隐式参数和显式参数?GitHub
JetBrains/kotlin-native
Kotlin/Native infrastructure. Contribute to JetBrains/kotlin-native development by creating an account on GitHub.
Konan 的 Interop 参数配置: #Kotlin
defFile pkg target
linkerOpts compilerOpts
headers includeDirs linkFiles
dumpParameters
这里可以看到更多
defFile pkg target
linkerOpts compilerOpts
headers includeDirs linkFiles
dumpParameters
这里可以看到更多
GitHub
JetBrains/kotlin-native
Kotlin/Native infrastructure. Contribute to JetBrains/kotlin-native development by creating an account on GitHub.
写完了,但是没有用,好像花了两个小时... 一部分时间是处理 Gradle build 的,熟悉插件,然后 Gradle 也不熟练,也就是能用一点 plugin configuration 和 sourceset.... 很菜的
duangsuse::Echo
https://github.com/Trumeet/Desktop #Kotlin 看起来比较简单,我也想默写一个(部分不默写,比如 bitflags) 这次我会用一点面向对象(Mixins)
好像没有使用 Mixin... 因为那个的确是比较麻烦(有可能还要用 CGLib 什么的)
然后这里也的确没啥东西需要 Mixin 的,何况那个抽象类的方法都是
Commit 明确了一下 parameter 和返回值的传递,都是没有用处的值
然后这里也的确没啥东西需要 Mixin 的,何况那个抽象类的方法都是
protected
的,从外面看也很像 Mixin 了Commit 明确了一下 parameter 和返回值的传递,都是没有用处的值
GitHub
App(Control): Specify block parameters · duangsuse/Essay-Kotlin-Secure-Desktop@aaadd7a
See also https://github.com/Trumeet/Desktop. Contribute to duangsuse/Essay-Kotlin-Secure-Desktop development by creating an account on GitHub.
那我再写一个(求别喷为什么不干有意义的事情)
[DuangSUSE@duangsuse]~/Projects%
META-INF/
Base64AndDDoS.class
org/
[DuangSUSE@duangsuse]~/Projects%
public class Base64AndDDoS {
public Base64AndDDoS();
public static void main(java.lang.String[]) throws java.io.IOException, java.lang.InterruptedException;
}
... 看起来还是不如直接用 Python 之类的写(当然文本处理推荐 Perl)
不过为了方便学习 OkIO, OkHttp 就写点吧...
[DuangSUSE@duangsuse]~/Projects%
jar tf Yuuta\ \(2\).jar|head -n4
META-INF/MANIFEST.MFMETA-INF/
Base64AndDDoS.class
org/
[DuangSUSE@duangsuse]~/Projects%
javap -cp Yuuta\ \(2\).jar Base64AndDDoS
Compiled from "Base64AndDDoS.java"public class Base64AndDDoS {
public Base64AndDDoS();
public static void main(java.lang.String[]) throws java.io.IOException, java.lang.InterruptedException;
}
... 看起来还是不如直接用 Python 之类的写(当然文本处理推荐 Perl)
不过为了方便学习 OkIO, OkHttp 就写点吧...
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Al Pt)
Yuuta.jar
2.1 MB
duangsuse::Echo
Yuuta.jar
反汇编看看,敲重点。
javap -c -cp Yuuta\ \(2\).jar Base64AndDDoS
constructor
然后
javap -c -cp Yuuta\ \(2\).jar Base64AndDDoS
constructor
public Base64AndDDoS();
啥都没有,就一个 invokespecial (call super)然后
main
, 这里第一个本地表(索引 0)因为是 static
方法就代表 args
对象aload_0; arraylength: push args.length
ifle goto 9: if (pop <=0) goto truebr
iconst_1
goto 10: goto falsebr
9:truebr
iconst_0
10:falsebr
dup
istore_1
首先看看有没有参数(<=0),如果有(len>0
),则 #1 被存储为 int 1
,否则 int 0
... 算了,我们来看看如何使用 Kate 以理解程序逻辑为目标阅读 Java 字节码吧。(其实 radare 早就可以绘制流程控制图分析(就是这里的
不要跟我说为什么不直接用 jad, jeb 之类的反编译器算了,JVM 的代码都看不懂这还是人么,顺便求不要提为什么没有立刻继续写书... 目前时间比较少,先看着办
ifle<pc> ifeq<pc>
指令)了不要跟我说为什么不直接用 jad, jeb 之类的反编译器算了,JVM 的代码都看不懂这还是人么,顺便求不要提为什么没有立刻继续写书... 目前时间比较少,先看着办