kan
Bases: rpn
A model implementing the KAN architecture using RPN architecture.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dims
|
list[int] | tuple[int]
|
A list or tuple of integers representing the dimensions of each layer in the KAN model. Must contain at least two dimensions. |
required |
name
|
str
|
The name of the KAN model. Default is 'rpn_kan'. |
'rpn_kan'
|
grid_range
|
tuple
|
The range of the grid for B-spline expansion. Default is (-1, 1). |
(-1, 1)
|
t
|
int
|
The number of grid points. Default is 5. |
5
|
d
|
int
|
The degree of the B-spline expansion. Default is 3. |
3
|
enable_bias
|
bool
|
Whether to enable bias in the layers. Default is False. |
False
|
with_lorr
|
bool
|
Whether to enable LoRR parameter reconciliation in the layers. Default is False. |
False
|
r
|
int
|
The rank parameter for the LoRR parameter reconciliation. Default is 3. |
3
|
channel_num
|
int
|
The number of channels in each layer. Default is 1. |
1
|
width
|
int
|
The number of parallel heads in each layer. Default is 1. |
1
|
device
|
str
|
The device to use for computation ('cpu' or 'cuda'). Default is 'cpu'. |
'cpu'
|
*args
|
optional
|
Additional positional arguments for the |
()
|
**kwargs
|
optional
|
Additional keyword arguments for the |
{}
|
Raises:
Type | Description |
---|---|
ValueError
|
If |
Methods:
Name | Description |
---|---|
__init__ |
Initializes the KAN model and builds its layers. |
Source code in tinybig/model/rpn_kan.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
|
__init__(dims, name='rpn_kan', grid_range=(-1, 1), t=5, d=3, enable_bias=False, with_lorr=False, r=3, channel_num=1, width=1, device='cpu', *args, **kwargs)
Initializes the KAN model.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dims
|
list[int] | tuple[int]
|
A list or tuple of integers representing the dimensions of each layer in the KAN model. Must contain at least two dimensions. |
required |
name
|
str
|
The name of the KAN model. Default is 'rpn_kan'. |
'rpn_kan'
|
grid_range
|
tuple
|
The range of the grid for B-spline expansion. Default is (-1, 1). |
(-1, 1)
|
t
|
int
|
The number of grid points. Default is 5. |
5
|
d
|
int
|
The degree of the B-spline expansion. Default is 3. |
3
|
enable_bias
|
bool
|
Whether to enable bias in the layers. Default is False. |
False
|
with_lorr
|
bool
|
Whether to enable LoRR parameter reconciliation in the layers. Default is False. |
False
|
r
|
int
|
The rank parameter for the LoRR parameter reconciliation. Default is 3. |
3
|
channel_num
|
int
|
The number of channels in each layer. Default is 1. |
1
|
width
|
int
|
The number of parallel heads in each layer. Default is 1. |
1
|
device
|
str
|
The device to use for computation ('cpu' or 'cuda'). Default is 'cpu'. |
'cpu'
|
*args
|
optional
|
Additional positional arguments for the |
()
|
**kwargs
|
optional
|
Additional keyword arguments for the |
{}
|
Raises:
Type | Description |
---|---|
ValueError
|
If |